Merhaba arkadaşlar.
Bugün sizlere let’s encrypt free ssl nasıl kurulur.Nasıl otomatik yenileme yapılır onu anlatacağim.
Elimizde bulunan sunucuya ssh ile bağlanıyoruz.
Sunucumuzda git kurulu değilse git i sunucumuza kuruyoruz.
Let’s encrypt GitHub deposundan klon oluşturuyoruz.
Klon oluşturduktan sonra klon oluşturduğumuz dizine geçiyoruz.
Kurulum için aşağıdaki komutu kullanıyoruz.
küçük bir yükleme yapacak sonra size mail adresinizi ve ssl oluşturmak istediğiniz site adresini soruyor.Buraya kullanmak istediğiniz alan adını yazın.
Örnek
Oluşturulan keyleri
dizininin altına oluşturuyor.
Daha sonra kullandığınız webserver a göre ayarlarınızı yapmanız gerekiyor.
Örnek olarak nginx de şu şekilde yapılır.
#http ye geln istekleri https e yönlendiriyoruz.
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
root /var/www/example.com;
index index.php;
#
location / {
try_files $uri /index.php;
}
location ~ /.well-known{
allow all;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Ayarlarımızı yaptıktan sonra webserver restart ediyoruz.
Sitemize tekrar giriş yaptığımızda https ile bağlantı yaptığımızı göreceksiniz.
Gelelim ssl sertifikasının yenilenme ayarlarının yapılmasına.
web serverimizda location izni veriyoruz.
allow all;
}
Aşağıdaki kodu kullanarak ayar dosyasının örneğini kopyalıyoruz.
Daha sonra editor ile ayar dosyamızı açıyoruz.
içeriği şu şekilde olmalı
email = info@example.com(buraya sizin mail adresiniz gelecek)
domains = example.com, www.example.com(Buraya sizin sertifika oluşturduğunuz domainler)
webroot-path = /var/www/example.com(Buraya websitenizin dizini gelecek)
Dizin olarak letsencrypt i indirdiğimiz dizine geçiyoruz.
Aşağıdaki komutu çalıştırıyoruz.
Kontrol yapacak dosyayı curl ile indiriyoruz.
Çalışma izni verelim.
Kaç gün kaldığını control etmek için indirdimiz komut dosyasını kullanacağız.
Bunu cron la otomatik hale getirelim.
30 2 * * 1 le-renew-webroot >> /var/log/le-renewal.log
Cron servisini tekrar başlatıyoruz.
işlemimiz tamamlanmıştır.
yararlı olması dileğiyle.