A+ Security Score ReadyNext.js 15+ · Nginx · CloudflareOWASP Top 10 Uyumlu🔒 %100 İstemci Taraflı

Security Headers & CSP Generator

Next.js 15+, Nginx, Cloudflare ve Apache web sunucuları için Content-Security-Policy (CSP), HSTS, X-Frame-Options ve Permissions-Policy güvenlik başlıklarını oluşturun; sitenizi XSS ve clickjacking tehditlerine karşı A+ seviyesinde zırhlayın.

HTTP Security Headers, Content Security Policy (CSP) ve OWASP Güvenlik Rehberi

Modern web uygulamalarında güvenlik yalnızca arka uç (backend) kod kalitesiyle sınırlı değildir. Tarayıcı seviyesinde çalışan HTTP Güvenlik Başlıkları (Security Headers); Siteler Arası Betik Çalıştırma (XSS), Tıklama Sahteciliği (Clickjacking), Ortadaki Adam (MITM) ve veri sızıntılarını sıfıra indiren ilk savunma hattıdır. Bu araç; Next.js 15+, Nginx, Cloudflare ve Apache için tek tıkla A+ Security Score sağlayan başlıkları üretir.

1. Kritik HTTP Güvenlik Başlıkları ve Görevleri

Mozilla Observatory, SecurityHeaders.com ve OWASP güvenlik kriterlerine göre her modern sitede bulunması gereken 6 temel başlık:

Başlık (Header)Tavsiye Edilen DeğerÖnlediği TehditGüvenlik Skoru Etkisi
Content-Security-Policy (CSP)default-src 'self'; script-src 'self'...XSS (Cross-Site Scripting), veri hırsızlığı, yetkisiz kod enjeksiyonu.+30 Puan (En Kritik)
Strict-Transport-Security (HSTS)max-age=63072000; includeSubDomains; preloadMITM (Ortadaki adam), SSL Stripping, güvensiz HTTP bağlantıları.+25 Puan
X-Frame-OptionsDENY (veya SAMEORIGIN)Clickjacking (Sitenin gizli iframe içine gömülerek butonların tıklatılması).+15 Puan
X-Content-Type-OptionsnosniffMIME-type sniffing (Resim veya metin gibi görünen kötü amaçlı scriptlerin çalışması).+10 Puan
Referrer-Policystrict-origin-when-cross-originHassas URL parametrelerinin, oturum token'larının dış sitelere sızması.+10 Puan
Permissions-Policycamera=(), microphone=(), geolocation=()Kullanıcı donanım sensörlerinin (kamera, mikrofon, konum) izinsiz tetiklenmesi.+10 Puan

2. Next.js 15+ next.config.mjs veya Middleware Entegrasyonu

Next.js projelerinde başlıkları next.config.mjs dosyasına eklemek en performanslı yoldur. Tarayıcıya her istekte sunucu seviyesinde yanıt başlığı basılır:

// next.config.mjs /** @type {import('next').NextConfig} */ const nextConfig = { async headers() { return [ { source: '/(.*)', headers: [ { key: 'Content-Security-Policy', value: "default-src 'self'; script-src 'self' 'unsafe-inline' https://apis.google.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:;", }, { key: 'Strict-Transport-Security', value: 'max-age=63072000; includeSubDomains; preload', }, { key: 'X-Frame-Options', value: 'DENY', }, { key: 'X-Content-Type-Options', value: 'nosniff', }, { key: 'Referrer-Policy', value: 'strict-origin-when-cross-origin', }, { key: 'Permissions-Policy', value: 'camera=(), microphone=(), geolocation=()', }, ], }, ] }, } export default nextConfig

3. Nginx Web Sunucusu İçin Üretim Konfigürasyonu

Linux veya Docker üzerinde çalışan bir Nginx ters vekili (reverse proxy) kullanıyorsanız /etc/nginx/conf.d/security.conf içine şu direktifleri yerleştirebilirsiniz:

# Nginx Güvenlik Başlıkları add_header X-Frame-Options "DENY" always; add_header X-Content-Type-Options "nosniff" always; add_header Referrer-Policy "strict-origin-when-cross-origin" always; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always; add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always; add_header Content-Security-Policy "default-src 'self'; img-src 'self' data: https:; script-src 'self' 'unsafe-inline';" always;

Sıkça Sorulan Sorular (SSS)

CSP kuralları Google Analytics veya harici fontları engeller mi?

Varsayılan katı bir CSP kuralı harici kaynakları engeller. Ancak bu araçta yer alan "Preset (Önayarlar)" bölümünden Google Analytics, Google Fonts veya Clerk Auth gibi üçüncü taraf servisleri seçtiğinizde, gerekli domainler (ör. https://www.googletagmanager.com) direktiflere otomatik eklenir.

HSTS Preload listesine girmek neden önemlidir?

HSTS başlığı yalnızca kullanıcı sitenizi ilk kez HTTPS ile ziyaret ettikten sonra devreye girer. Preload listesine (hstspreload.org) kayıt olduğunuzda ise Chrome, Firefox ve Safari sitenizi fabrika çıkışı SSL zorunlu olarak tanır; kullanıcı "http://" yazsa bile tarayıcı ağa çıkmadan önce anında HTTPS'e yönlendirir.

Security Headers SEO puanımı etkiler mi?

Evet. Google, güvenli web deneyimini (HTTPS, no-sniffing, XSS koruması) doğrudan bir sıralama sinyali olarak kabul eder. Ayrıca güvenlik ihlalleri yaşayan web siteleri Google tarafından "Bu site güvenli olmayabilir" uyarısıyla cezalandırılır.