Ön Hazırlık

Kullanacağımız certbot paketi centos yansılarında yer almamaktadır. Bu yüzden epel aktif hale getirmeliyiz.

sudo dnf install epel-release

Epel tamamlandıktan sonra kuruluma geçebiliriz.

sudo dnf install certbot python3-certbot-nginx

Bu komut Certbot istemcisini ve Nginx plugini kuracaktır. Kurulum esnasında size GPG key içeri aktarma sorulduğunda onaylayın.

Let’s Encrypt istemcisi kuruldu ancak sertifikayı almadan önce gerekli portların açık olduğundan emin olmamız gerekiyor. Bunun için firewall ayarlarına bakmalıyız.

 

Firewall Kuralları

Hangi servislerin erişime açık olduğunu öğrenmek için:

sudo firewall-cmd --permanent --list-all

Şuna benzer bir çıktı alacaksınız:

Outputpublic
  target: default
  icmp-block-inversion: no
  interfaces:
  sources:
  services: cockpit dhcpv6-client http ssh
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

Services bölümünde http görmüyorsanız, aktif hale getirmek için:

sudo firewall-cmd --permanent --add-service=http

Güvenli katman https trafiği için:

sudo firewall-cmd --permanent --add-service=https

Değişiklikleri aktif hale getirmek için firewalld servisini yeniden yükleyin:

sudo firewall-cmd --reload

 

Sertifika İsteği

Certbot Let’s Encrypt nginx için SSL sertifikası oluştururken, varsayılan parametreler ile yeni bir SSL sertifikası alacak ve yükleyecektir. Birden çok alan adı veya alt alan adı için geçerli olan tek bir sertifika yüklemek istiyorsanız, bunları komuta ek parametreler olarak ekleyebilirsiniz.

sudo certbot --nginx -d alan_adiniz.com -d www.alan_adiniz.com

Subdomain kullanmadan, tek bir alan adına ssl oluşturmak isterseniz aşağıdaki komut işinizi görecektir:

sudo certbot --nginx -d alan_adiniz.com

Kurulum menüsü, sertifika seçeneklerinizi özelleştirmek için adım adım ilerleyen bir kılavuz sağlayacaktır. Kayıp anahtar kurtarma ve bildirimler için bir e-posta adresi vermenizi ve hizmet şartlarını kabul etmenizi isteyecek.

Daha iyi güvenlik için, Certbot tüm trafiği 443 ssl portuna yönlendirmeyi otomatik olarak yapacaktır. Sitenizi açtığınızda direkt ssl yönlendirmesi alacaksınız. Eskisi gibi .htaccess dosyası ile uğraşmaya gerek yok.

Kurulum tamamlandığında aşağıdaki bilgilendirme yazısı gelecek.

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/your_domain/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/your_domain/privkey.pem
   Your cert will expire on 2021-02-26. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Oluşturulan serfika ve diğer dosyalar /etc/letsencrypt/live dizinine kaydedildi.

Sertifika kurulumunu test etmek için güvenilir bir siteden kontrol sağlayabilirsiniz.

https://www.ssllabs.com/ssltest/analyze.html?d=alan_adiniz.com

1 Ocak itibariyle, varsayılan ayarlar A puanı alıyordu.

LetsEncrypt sertifikaları 3 ay geçerli olmak üzere yayınlanıyor. Süreyi uzatmak için tek yapmanız gereken alttaki komutu vermek ve otomatik olarak üç ay daha uzatılacaktır.

sudo certbot renew