Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Cloudflare Arka Uç Sunucu Doğrulaması için Authenticated Origin Pulls Sertifikasını Nginx veya Apache'ye Kurma

devron

Üye
Katılım
14 Mart 2026
Mesajlar
11
Merhaba arkadaşlar, bugün sizlere Cloudflare kullanırken sunucu güvenliğinizi bir üst seviyeye taşıyacak, çok önemli bir konuyu anlatacağım: Authenticated Origin Pulls. Bu yöntem, sadece Cloudflare'in kendi ağından gelen bağlantıların sunucunuza ulaşmasına izin vererek, doğrudan IP üzerinden yapılabilecek saldırıları ve kötü niyetli trafiği büyük ölçüde engeller. Benim yönettiğim tüm sunucularda mutlaka aktif ettiğim bir güvenlik katmanıdır. Gelin birlikte Nginx ve Apache için nasıl kuracağımıza bakalım.

🔍 Authenticated Origin Pulls Nedir?

Basitçe anlatmak gerekirse, Cloudflare ile sunucunuz arasındaki bağlantıyı sertifika ile imzalar. Sunucunuz, gelen bağlantının gerçekten Cloudflare'den geldiğini bu özel sertifikayı kontrol ederek doğrular. Böylece, Cloudflare IP'lerini atlayıp doğrudan sunucu IP'nize gelen istekler (ki buna "orange-to-orange" bypass denir) sunucunuz tarafından reddedilir. Bu, DDoS azaltma ve WAF korumalarınızın atlanmasını önlemek için kritiktir.

⚙️ Cloudflare'de Ayarları Aktif Etme

İlk adım, bu özelliği Cloudflare panelinizden açmak. Çok basit:
1. Cloudflare hesabınıza girin.
2. Domain'inizi seçin.
3. SSL/TLS sekmesine tıklayın.
4. Origin Server bölümüne gelin.
5. Authenticated Origin Pulls seçeneğini bulun ve On (Açık) konumuna getirin.
Bu kadar! Artık Cloudflare, sunucunuza bağlanırken kendi sertifikasını sunacak. Şimdi sıra sunucumuzu bu sertifikayı tanıyacak ve doğrulayacak şekilde yapılandırmakta.

📥 Gerekli Sertifikayı İndirme

Cloudflare'in doğrulama için kullandığı genel (CA) sertifikasını indirmemiz gerekiyor. Bu sertifika, Cloudflare'in kullandığı tüm sertifikaları imzalayan ana sertifikadır. Sunucunuza SSH ile bağlanıp aşağıdaki komutu çalıştırabilirsiniz.

Bash:
sudo wget https://developers.cloudflare.com/ssl/static/authenticated_origin_pull_ca.pem -O /etc/ssl/cloudflare_origin_pull_ca.pem

Bu komut, sertifikayı doğrudan Cloudflare'in geliştirici dokümanlarından alıp /etc/ssl/ dizinine kaydedecek. Bu dosya yolunu birazdan yapılandırma dosyamızda kullanacağız.

⚠️ Nginx için Yapılandırma

Eğer Nginx kullanıyorsanız, bu adımları takip edin. Genellikle /etc/nginx/sites-available/ dizinindeki domain konfigürasyon dosyanızı (örn: siteniz.com) düzenleyeceğiz. Ben örnek olarak default SSL sunucu bloğunu göstereceğim.

NGINX:
server {
    listen 443 ssl http2;
    server_name siteniz.com www.siteniz.com;

    # Kendi SSL sertifikalarınız (Let's Encrypt, vs.)
    ssl_certificate /etc/letsencrypt/live/siteniz.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/siteniz.com/privkey.pem;

    # CLOUDFLARE AUTHENTICATED ORIGIN PULLS AYARI
    ssl_client_certificate /etc/ssl/cloudflare_origin_pull_ca.pem;
    ssl_verify_client on;

    # ... Diğer ayarlarınız (root, index, vs.) ...
}

Buradaki iki kritik satır:
ssl_client_certificate: İndirdiğimiz Cloudflare CA sertifikasının yolunu gösterir.
ssl_verify_client on: Gelen bağlantının bir istemci sertifikası sunmasını ve bunu yukarıdaki CA ile doğrulamasını zorunlu kılar.

Değişiklikleri kaydettikten sonra Nginx'i test edip yeniden başlatmayı unutmayın!

Bash:
sudo nginx -t
sudo systemctl reload nginx

🛡️ Apache için Yapılandırma

Apache kullanıcıları için adımlar biraz farklı. Öncelikle mod_ssl ve mod_ssl'e bağlı olan mod_http2 (eğer kullanıyorsanız) modüllerinin yüklü olduğundan emin olun. Ardından, sanal host (VirtualHost) dosyanızı düzenleyin. Dosya genelde /etc/apache2/sites-available/ dizinindedir.

Kod:
<VirtualHost :443>
    ServerName siteniz.com
    ServerAlias www.siteniz.com

    # Kendi SSL sertifikalarınız
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/siteniz.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/siteniz.com/privkey.pem

    # CLOUDFLARE AUTHENTICATED ORIGIN PULLS AYARI
    SSLVerifyClient require
    SSLVerifyDepth 1
    SSLCACertificateFile /etc/ssl/cloudflare_origin_pull_ca.pem

    # ... Diğer ayarlarınız (DocumentRoot, Directory, vs.) ...
</VirtualHost>

Buradaki kritik direktifler:
SSLVerifyClient require: İstemci sertifikasını zorunlu kılar.
SSLCACertificateFile: İndirdiğimiz Cloudflare CA sertifikasının yolunu belirtir.
SSLVerifyDepth 1: Doğrulama derinliğini belirler, genelde 1 yeterlidir.

Apache yapılandırmasını test edip servisi yeniden başlatalım.

Bash:
sudo apache2ctl configtest
sudo systemctl reload apache2

✅ Test ve Sorun Giderme

Her şeyi doğru yaptıysanız, siteniz Cloudflare üzerinden normal şekilde çalışmaya devam edecek. Ancak doğrudan sunucu IP'niz üzerinden HTTPS ile (örn:
Bu bağlantı ziyaretçiler için gizlenmiştir. Görmek için lütfen giriş yapın veya üye olun.
) erişmeye çalışırsanız, bir SSL hatası almalı veya bağlantı reddedilmelidir. Bu, ayarın çalıştığının kanıtıdır!

Eğer siteniz "400 Bad Request" veya benzeri bir hata verirse, muhtemelen sertifika yolu yanlış girilmiştir veya Cloudflare panelinde ayar açılmamıştır. Komut satırında aşağıdaki gibi bir hata görebilirsiniz: `SSL_CTX_set_client_CA_list`. Bu durumda, tüm adımları ve dosya izinlerini tekrar kontrol edin.

📝 Son Sözler

Arkadaşlar, Authenticated Origin Pulls, Cloudflare kullanan her sunucu yöneticisinin aktif etmesi gereken, neredeyse bedava bir güvenlik katmanı. Kurulumu basit, getirisi ise çok büyük. Özellikle hassas veri barındıran, sık hedef alınan siteler için olmazsa olmaz diyebilirim.

Siz bu konfigürasyonu kendi sunucularınızda nasıl yapıyorsunuz? Farklı bir yönteminiz veya ek bir güvenlik ipucunuz var mı? Ya da kurulum sırasında bir sorunla karşılaştınız mı? Aşağıya yorum olarak yazın, birlikte çözelim. Herkese güvenli hosting'ler!
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Geri