Zimbra Let’s Encrypt SSL Sertifikasının Süresini Uzatma
Merhabalar,
Zimbra mail server için ücretsiz Let’s Encrypt SSL sertifası kullanıyorsak bunu uzatmak isteyebiliriz.Tabii uzatmadan önce zimbra mail server da daha önce SSL sertifikası almadıysanız onu da en altta link olarak sizinle paylaşacağım.
İlk önce mevcut SSL sertifikasının süresinin ne kadar kaldığına bakalım.Burada 10.10.10.122 makinensin SSL i 18 Haziranda bitiyor.
Zimbra mail server a SSH ile bağlanıyorum.
ilk önce zimbra kullanıcısına geçiş yapıyor ve zimbranın zmproxytctl ve zmmailboxdctl servislerini durduruyorum.
su zimbra
zmproxyctl stop
zmmailboxdctl stop
İkinci adım, git’i Sunucuya Kurmak (apt-get install git/yum install git) ve ardından istediğimiz klasörde projenin git klonunu yapmak
git clone https://github.com/letsencrypt/letsencrypt
Yukarıdaki komut dizininin çalıştırdığımda uyarı alıyorum, çünkü mevcut dizin hali hazırda var.Bu nedenle o dizinin üzerine yazamıyor.
FTP ile sunucuya bağlanıp mevcut letsencrypt klasorünün adını değiştiriyorum, istersem siledebilirim.Unutmayın bu klasör root dizininde
Akabinde tekrar komutu çalıştırdığımda işlem başarılı şekilde gerçekleşiyor.
ilk önce dizinin içine giriyorum aşağıdaki komutu çalıştırıyorum.
cd letsencrypt
./letsencrypt-auto certonly --standalone
Şimdi Let’s Encrypt’i otomatik modda çalıştıralım ve certonly seçeneğini kullanalım, çünkü sertifikayı Zimbra sunucularına otomatik olarak yükleyemiyor.Bu işlemi yapmadan önce http olarak sunucunuza NAT tanımlaması yapılmış olması gerekiyor.Let’s Encrypt sunucusu sizin içerideki zimbra mail sunucusuna http 80üzerinden erişebiliyor olmalıdır.Eğer bu olmazsa sertifika isteme başarılı olmayacaktır.
Aşağıdaki adımda benden sertifika için mail sunucu adını yazmamı istiyor mail.linuxdata.net olarak tanımlayıp ilerliyorum.Sizde kendi sunucu adını yazmalısınız.
Ekrana sertifika başarılı şekilde alındı bilgisi geliyor.
Zimbra Sunucusu için Let’s Encrypt sertifikalarını tutacak bir dizin oluşturmalıyız.Bu dizini komut satırından oluşturabilirim.Ben ilk sertifika kaydını daha önce oluşturduğum için letsencrypt hali hazırda var klasörünü gidip adını değiştiriyorum, istersem siledebilirim. /opt/zimbra/ssl/letsencrypt dizini
Bakın yukarıda bahsettiğim gibi /opt/zimbra/ssl altında letsencrypt klasörü oluşturmaya çalıştığımda uyarı alıyorum.Böyle bir klasörün zaten olduğunu uyarısını veriyor.Klasör ismini değiştiriyorum ve komutu tekrar çalıştırıyorum.
sudo mkdir /opt/zimbra/ssl/letsencrypt
Sertifika dosyalarını kopyalayalım.
CERTPATH=/etc/letsencrypt/live/mail.linuxdata.net
sudo cp $CERTPATH/* /opt/zimbra/ssl/letsencrypt/
Dosyaların başarıyla kopyalandığını onaylayın.
ls /opt/zimbra/ssl/letsencrypt/
Şimdi uygun bir Intermediate CA artı Root CA oluşturmamız gerekiyor. IdenTrust kök Sertifikasını kullanmanız ve onu chain.pem’den sonra birleştirmeniz gerekir.
https://letsencrypt.org/certs/trustid-x3-root.pem.txt
cat $CERTPATH/chain.pem | sudo tee /opt/zimbra/ssl/letsencrypt/zimbra_chain.pem
Dosya içeriğini görüntüleyin:
Chain.pem’i Rott CA ile birleştirin, düzenleme sırası ilk sertifika zincirini yükleyip ardına Root CA i ekliyorum.
sudo tee -a /opt/zimbra/ssl/letsencrypt/zimbra_chain.pem<<EOF
-----BEGIN CERTIFICATE-----
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----
EOF
Ortaya çıkan dosyanın iki sertifikaya sahip olduğunu kontrol edelim.
cat /opt/zimbra/ssl/letsencrypt/zimbra_chain.pem
Dizin için doğru izinleri ayarlayalım.
sudo chown -R zimbra:zimbra /opt/zimbra/ssl/letsencrypt/
Ticari sertifikanızı doğrulayın.Komutun çıktısı herhangi bir hata veya uyumsuzluk vermemelidir
sudo su - zimbra -c '/opt/zimbra/bin/zmcertmgr verifycrt comm /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/letsencrypt/cert.pem /opt/zimbra/ssl/letsencrypt/zimbra_chain.pem'
Geçerli sertifika dosyalarını yedekleyelim.
sudo cp -a /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra.$(date "+%Y%.m%.d-%H.%M")
Private Key i Zimbra SSL yolu altına kopyalayın.
sudo cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
sudo chown zimbra:zimbra /opt/zimbra/ssl/zimbra/commercial/commercial.key
Sonunda yeni Let’s Encrypt SSL sertifikasını kullanabiliriz.Sertifikamızı deploy (dağıtalım) edelim zimbra sunucusuna
sudo su - zimbra -c '/opt/zimbra/bin/zmcertmgr deploycrt comm /opt/zimbra/ssl/letsencrypt/cert.pem /opt/zimbra/ssl/letsencrypt/zimbra_chain.pem'
Sertifika deploy (dağıtma) çıktım aşağıda gösterildiği gibidir
Daha önce durdurduğumuz zimbra servislerini tekrardan başalatalım.
sudo su - zimbra -c "zmcontrol restart"
Son adımda sunucuma tekrar erişiyorum ve sertifika süremi kontrol ediyorum.Ve 3 ay yeniden uzatıldığını görüyorum.
Bu şekilde sertifika süremizi uzattık.Umarım bu bilgi sizler için faydalı olur.
Hocam süper bir yazı dizisi olmuş. Ellerinize sağlık.