
Web güvenliği gün geçtikçe daha da önem kazanıyor ve ziyaretçilerinizi korumanın en etkili yollarından biri de SSL sertifikası kullanmaktır. Bu rehberde, Ubuntu 18.04 üzerinde Nginx web sunucusu için Let’s Encrypt SSL sertifikası nasıl kurulur, adım adım öğrenelim.
Bölüm 1: Hazırlıklar ve Gereksinimler
Bu bölümde, Let’s Encrypt ile Nginx SSL kurulumuna geçmeden önce yapılması gereken hazırlık adımlarını ve sistem gereksinimlerini detaylandıracağız.
Sistem Güncellemesi:
SSL kurulumuna başlamadan önce, Ubuntu sistemimizi güncellemek çok önemlidir. Terminali açın ve şu komutları sırasıyla girin:
sudo apt update
sudo apt upgrade
Nginx Kurulumu ve Temel Yapılandırma
Nginx’i yüklemek ve temel komutlar hakkında bilgi almak için aşağıdaki yazıyı ziyaret edin
Ubuntu Üzerinde Nginx Kurulumu ve Temel Komutlar
Domain ve DNS Ayarları
- Let’s Encrypt sertifikasını alabilmek için bir alan adına ve doğru DNS ayarlarına ihtiyacımız var. Alan adınızı bir domain kayıt hizmetinden satın alın ve ardından DNS ayarlarını kontrol edin.
- DNS yönetim panelinize giriş yapın ve aşağıdaki kayıtları ekleyin:
- A kaydı:
@
veyawww
için sunucunuzun IP adresi. - CNAME kaydı:
www
için domain adınız (örneğin,www.example.com
).
- A kaydı:
- Bu ayarlar, Let’s Encrypt’in sertifikayı doğrulayabilmesi için gereklidir.
Firewall Ayarları
Sunucunuzda bir güvenlik duvarı varsa, Nginx için HTTP (80) ve HTTPS (443) portlarını açtığınızdan emin olun:
sudo ufw allow 'Nginx Full'
Bu adımları dikkatlice takip ederek, Let’s Encrypt ile Nginx SSL kurulumuna başlamadan önce sisteminizin güncel ve doğru bir şekilde hazır olduğundan emin olabilirsiniz.
Bölüm 2: Let’s Encrypt Kurulumu:
Bu bölümde, Let’s Encrypt ile ücretsiz SSL sertifikasını nasıl alacağınızı ve Nginx ile nasıl entegre edeceğinizi adım adım öğreneceğiz.
Certbot’un Yüklenmesi
Let’s Encrypt sertifikası almak için Certbot’u yükleyin:
sudo apt install certbot
Nginx Konfigürasyonunun Yedeklenmesi
Güvenlik amacıyla Nginx konfigürasyon dosyalarını yedekleyin
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default_backup
Let’s Encrypt SSL Sertifikası Alma ve Kurma
Certbot’u kullanarak SSL sertifikasını alın ve Nginx ile entegre edin
sudo certbot --nginx
Bu komut sizi bir arayüze yönlendirecek ve sertifikayı almak için gerekli adımları takip etmenizi sağlayacaktır.
Sertifikanın doğru bir şekilde kurulduğunu test etmek için tarayıcınızda https://www.domainadi.com (kendi alan adınızla değiştirin) adresine gidin. Yeşil kilit simgesini gördüğünüzde, sertifikanın başarıyla yüklendiğinden emin olabilirsiniz.
Otomatik Yenileme Ayarları
sudo crontab -e
Ardından, aşağıdaki satırı ekleyin:
0 0 * * * /usr/bin/certbot renew --quiet
Sertifika Yenileme Kontrolü
Sertifikanın başarıyla yenilendiğini kontrol etmek için:
sudo certbot renew --dry-run
Bu komut sertifikayı yenileme simülasyonu yapacak ve herhangi bir hata olup olmadığını kontrol etmenize yardımcı olacaktır.
Bölüm 3: Nginx SSL Konfigürasyonu
Bu bölümde, Let’s Encrypt SSL sertifikasını Nginx konfigürasyonuna nasıl entegre edeceğinizi adım adım öğreneceksiniz.
Nginx SSL Konfigürasyon Dosyalarının Güncellenmesi
SSL sertifikasını entegre etmek için Nginx konfigürasyon dosyasını düzenleyin. Genellikle bu dosya /etc/nginx/sites-available/default
veya sitenizin özel konfigürasyon dosyası olabilir.
sudo nano /etc/nginx/sites-available/default
veya
sudo nano /etc/nginx/sites-available/your_domain
Dosyanın içinde aşağıdaki gibi SSL ayarlarını ekleyin:
server {
listen 443 ssl;
server_name your_domain.com www.your_domain.com;
ssl_certificate /etc/letsencrypt/live/your_domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your_domain.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384';
ssl_prefer_server_ciphers off;
# Diğer SSL ayarları buraya eklenebilir
location / {
# Nginx konfigürasyonu devam eder...
}
}
Bu ayarlar, SSL sertifikasının Nginx ile nasıl kullanılacağını belirtir.
Nginx’in Yeniden Başlatılması ve Konfigürasyon Kontrolü
Yapılan değişiklikleri kaydedin ve Nginx’i yeniden başlatın:
sudo systemctl restart nginx
Herhangi bir hata olup olmadığını kontrol etmek için Nginx hata günlüklerini kontrol edebilirsiniz:
sudo tail -f /var/log/nginx/error.log
Hatalar varsa, bu günlükleri inceleyerek sorunları çözebilirsiniz.
Test Etme
Tarayıcınızda https://www.your_domain.com
(kendi alan adınızla değiştirin) adresine giderek SSL sertifikasının başarıyla entegre edilip edilmediğini kontrol edin.
HTTP Yönlendirmesi (Opsiyonel)
HTTP isteklerini HTTPS’e yönlendirmek için aşağıdaki gibi bir ek yönlendirme bloğu ekleyebilirsiniz:
server {
listen 80;
server_name your_domain.com www.your_domain.com;
return 301 https://$host$request_uri;
}
Bu, kullanıcıları otomatik olarak HTTPS’e yönlendirecektir.
Sonuç
Bu rehberi takip ederek, Ubuntu 18.04 üzerinde Nginx web sunucusu için Let’s Encrypt SSL sertifikasını başarıyla kurmayı öğrendiniz. Artık ziyaretçileriniz, güvenli ve şifrelenmiş bir bağlantı aracılığıyla websitesinize erişebilecekler.
SSL sertifikası kullanmak, kullanıcı güvenliğini artırmanın yanı sıra arama motorları tarafından da ödüllendirilir. Bu nedenle, websitesi sahipleri için SSL sertifikası kurulumu artık bir standart haline gelmiştir.
Rehberde öğrendiğiniz temel adımların ötesinde, Nginx ve Let’s Encrypt ile ilgili daha fazla özelleştirmeleri ve gelişmiş konfigürasyonları öğrenerek websitesinizin güvenliğini ve performansını daha da artırabilirsiniz.
Unutmayın ki, SSL sertifikası her 90 günde bir yenilenmelidir. Bu nedenle, otomatik yenileme süreçlerini ve güvenlik önlemlerini düzenli olarak gözden geçirmek önemlidir.
Bir yanıt yazın