Cara Install Let’s Encrypt Pada Zimbra
Pengertian Let’s Encrypt
Let’s Encrypt adalah sebuah lembaga penerbit sertifikat non profit yang berada di bawah naungan Internet Research Group sertifikat X.509 untuk enkripsi Transport Layer Security (TLS) tanpa biaya. Let’s Encrypt mampu berjalan dan kompatibel di platform apapun. Tetapi memang yang paling familiar adalah penggunaan sertifikat TLS Let’s Encrypt di panel hosting seperti cPanel, Plesk atau bahkan Webuzo.
Let’s Encrypt juga menggunakan protokol ACME (Automatic Certificate Management Environment). Klien ACME paling populer adalah Certbot yang kini dikembangkan oleh the Electronic Fontier Foundation. Untuk melakukan verifikasi kepemilikan domain dan membaca sertifikat, Certbot dalam secara otomatis mengatur TLS/SSL di server web baik itu Apache maupun Nginx. Tidak hanya itu Let’s Encrypt juga bisa digunakan di Zibra.
Apa Itu Zimbra ?
Sebelum melangkah lebih jauh tentang cara install Let’s Encrypt di Zimbra. Sebagai pengguna harus tahu apa itu Zimbra. Zimbra Collaboration atau yang dulu dikenal dengan Zimbra Collaboration Suite sebelum tahun 2019, adalah collaborative software yang di dalamnya sudah termasuk email server dan web client.
Pada awal kemunculan Zimbra dikembangkan oleh LiquidSys yang kemudian berganti nama menjadi Zimbra, Inc di tahun 2005. Karena kinerjanya yang bagus, dua tahun kemudian Yahoo memutuskan untuk mengakui sisinya.
Setelah itu Zimbra di jual Yahoo ke VMware pada bulan Januari 2010 dan kini Zimbra dimiliki oleh Syanacor. Dan ada sejarah unik mengapa brand ini bernama Zimbra. Kabarnya, mantan CTO dan presiden Zimbra, Scott Dietzen terinspirasi dari salah lagu dari band Talking Heads berjudul “I Zimbra”.
Menyinggung sedikit tentang collaborative software. Collaborative software atau groupware adalah aplikasi perangkat lunak yang di desain untuk membantu orang yang bekerja multitasking, agar mencapai tujuan.
Perangkat lunak ini terdiri dari komponen klien dan server. Ada juga fitur klien desktop, yang disebut dengan Zimbra Desktop. Saat ini terdapat dua versi Zimbra. Yaitu versi open source dan versi yang didukung secara komersial (Network Edition) dengan komponen-komponen yang tertutup antara lain seperti :
- Konektor antarmuka pemrograman
- Aplikasi pesan
- Aplikasi outlook untuk kalender
- Sinkronisasi kontak.
Cara Install SSL Let’s Encrypt di Zimbra
Berikut ini adalah cara install SSL Let’s Encrypt di Zimbra, yaitu :
1. Download certbot
Langkah pertama yang harus dilakukan adalah mendownload certbot ke server Zimbra dengan cara berikut :
# wget https://dl.eff.org/certbot-auto -P /usr/local/bin
2. Mengubah permission
Langkah kedua yang harus dilakukan adalah mengubah permission file certbot-auto. Untuk mengubah permission ini bisa memasukkan perintah sebagai berikut :
# chmod a+x /usr/local/bin/certbot-auto
3. Jalankan perintah Let’s Encrypt
Langkah ketiga adalah memasukkan perintah Let’s Encrypt. Untuk melakukannya bisa melakukan perintah berikut :
# /usr/local/bin/certbot-auto certonly –standalone
Tunggulah beberapa saat sampai semua proses yang berjalan selesai. Setelah itu akan muncul beberapa pertanyaan sebelum dapat menyelesaikannya.
Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to cancel) :
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-Oktober-01-2020.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –
(A)gree/(C)ancel: A
Please enter in your domain name(s) (comma and/or space separated) (Enter ‘c’ to cancel):
mail.beniceday.xyz
Catatan: Yang harus diperhatikan adalah lokasi sertifikat berada pada folder /etc/letsencrypt/live/$domain. Direktori yang digunakan adalah /etc/letsencrypt/live/mail.beniceday.xyz.
4. Edit chain.pem
Edit chain.pem yang ada di direktori diatas, dan tambahkan pada baris paling bawah untuk Root CA berikut :
Z25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
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–
5. Copy seluruh file yang ada di direktori dan ubah ownership file.
Langkah selanjutnya bisa menyalin seluruh file yang ada di direktori /file/etc/letsencrypt/live/mail.beniceday.xyz ke dalam /opt/zimbra/ssl/letsencrypt dan jangan lupa untuk mengubah ownership tersebut dengan memasukkan perintah sebagai berikut :
# mkdir /opt/zimbra/ssl/letsencrypt # cp /etc/letsencrypt/live/mail.beniceday.xyz/* /opt/zimbra/ssl/letsencrypt/ # chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/*
6. Lakukan verifikasi SSL menggunakan akun Zimbra
Langkah keenam adalah membuka folder /optzimbra/let’s encrypt yang baru dibuat tadi. Dan juga melakukan verifikasi SSL menggunakan user Zimbra. Untuk melakukannya bisa melakukan perintah sebagai berikut :
# su – zimbra $ cd /opt/zimbra/ssl/letsencrypt $ /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem
Apabila proses verifikasinya berhasil, maka akan muncul output seperti berikut ini. Tugas Anda adalah memastikan bahwa antara ketiga file tersebut tidak terbalik.
** Verifying ‘/opt/zimbra/ssl/zimbra/letsencrypt/cert.pem’ against ‘/opt/zimbra/ssl/zimbra/letsencrypt/privkey.pem’
Certificate ‘/opt/zimbra/ssl/zimbra/letsencrypt/cert.pem’ and private key ‘/opt/zimbra/ssl/zimbra/letsencrypt/privkey.pem’ match.
** Verifying ‘/opt/zimbra/ssl/zimbra/letsencrypt/cert.pem’ against ‘/opt/zimbra/ssl/zimbra/letsencrypt/chain.pem’
Valid certificate chain: /opt/zimbra/ssl/zimbra/letsencrypt/cert.pem: OK
7. Backup folder SSL zimbra
Langkah selanjutnya adalah melakukan backup terlebih dahulu folder SSL zimbra bawaan dengan memasukkan perintah berikut :
$ cp -a /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra.$(date “+%Y%m%d”)
Kemudian copy privkey.pem ke commercial.key dengan perintah berikut :
$ cp /opt/zimbra/ssl/zimbra/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
8. Deploy SSL Let’s Encrypt
Harus mendeploy SSL Let’s Encrypt dengan memasukkan perintah sebagai berikut :
$ /opt/zimbra/bin/zmcertmgr deploycrt comm /opt/zimbra/ssl/zimbra/letsencrypt/cert.pem /opt/zimbra/ssl/zimbra/letsencrypt/chain.pem
9. Restart Zimbra
Untuk dapat melihat hasilnya dapat memulai ulang service Zimbra dengan memasukkan perintah sebagai berikut :
$ zmcontrol restart
Memperbarui Certificate Lisensi SSL Let’s Encrypt Pada Zimbra
1. Matikan service zimbra yang berjalan
zmcontrol stop
pastikan service zimbra telah non aktif.
2. Selanjutnya jalankan perintah
#>certbot-auto renew
3. Cek certificate file
Cek certificate file pada :
/etc/letsencrypt/live/mail.toyoink.co.id
root@mail:/etc/letsencrypt/live/mail.toyoink.co.id# ls-al total 8 drwxr-xr-x 2 root root 4096 Sep 21 23:22 . drwx------ 3 root root 4096 Sep 21 23:22 .. lrwxrwxrwx 1 root root 42 Sep 21 23:22 cert.pem-> ../../archive/mail.toyoink.co.id/cert1.pem lrwxrwxrwx 1 root root 43 Sep 21 23:22 chain.pem-> ../../archive/mail.toyoink.co.id/chain1.pem lrwxrwxrwx 1 root root 47 Sep 21 23:22 fullchain.pem-> ../../archive/mail.toyoink.co.id/fullchain1.pem lrwxrwxrwx 1 root root 45 Sep 21 23:22 privkey.pem-> ../../archive/mail.toyoink.co.id/privkey1.pem
4. Sesuaikan chain.pm
Sesuaikan chain.pm, tambahkan root ca pada chain.pem dengan mencopy file dibawah pada bagian bawah file chain.pm :
#> nano /etc/letsencrypt/live/mail.toyoink.co.id/chain.pem
----- BEGIN CERTIFICATE ----- EXISTING CHAIN
----- END CERTIFICATE -----
5. Tambahkan file berikut ini di mulai dari BEGIN CERTIFICATE
----- 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 -----
6. Selanjutnya copy semua file pada folder
Cp /etc/letsencrypt/live/$namadomain/* /opt/zimbra/ssl/letsencrypt
root@mail:~# cp /etc/letsencrypt/live/mail.toyoink.co.id/* /opt/zimbra/ssl/letsencrypt/
7. Rubah hak akses owner menjadi zimbra:zimbra
Chownzimbra:zimbra /opt/zimbra/ssl/letsencrypt/*
root@mail:~# chown zimbra:zimbra /opt/zimbra/ssl/letsencrypt/* root@mail:~# ls -la /opt/zimbra/ssl/letsencrypt/ total 24 drwxr-xr-x 2 root root 4096 Jul 15 22:59 . drwxr-xr-x 8 zimbra zimbra 4096 Jul 15 22:59 .. -rw-r--r-- 1 zimbra zimbra 1809 Jul 15 22:59 cert.pem -rw-r--r-- 1 zimbra zimbra 2847 Jul 15 22:59 chain.pem -rw-r--r-- 1 zimbra zimbra 3456 Jul 15 22:59 fullchain.pem -rw-r--r-- 1 zimbra zimbra 1704 Jul 15 22:59 privkey.pem
Masih didalam folder /opt/zimbra/ssl/letsencrypt lakukan Verifikasi sertificate SSL :
#> /opt/zimbra/bin/zmcertmgr verifycrt com privkey.pem cert.pem chain.pem
** Verifying cert.pem against privkey.pem Certificate (cert.pem) and private key (privkey.pem) match. Valid Certificate: cert.pem: OK
8. Mendaftarkan sertifikat tersebut kedalam zimbra mail server.
Biasakan untuk membackup file yang akan di update dalam hal ini akan membackup file sertificate ssl pada zimbra.
#> cp–r/opt/zimbra/ssl/zimbra/opt/zimbra/ssl/zimbra.$(date“+%d%m%y”)
Syntax diatas akan menyalin folder zimbra menjadi “misalnya : zimbra.13122016”
9. Selanjutnya copy privatekey letsencryp ke dalam folder komersil zimbra
cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key
10. Menerapkan sertifikat letsencrypt
Menerapkan sertifikat letsencrypt untuk digunakan di zimbra mail server. Sebagai user root jalankan perintah berikut :
root@mail:/opt/zimbra/ssl/letsencrypt/# /opt/zimbra/bin/zmcertmgr deploycrt comm cert.pem chain.pem
** Verifying cert.pem against /opt/zimbra/ssl/zimbra/commercial/commercial.key Certificate (cert.pem) and private key (/opt/zimbra/ssl/zimbra/commercial/commercial.key) match. Valid Certificate: cert.pem: OK ** Copying cert.pem to /opt/zimbra/ssl/zimbra/commercial/commercial.crt ** Appending ca chain chain.pem to /opt/zimbra/ssl/zimbra/commercial/commercial.crt ** Importing certificate /opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt to CACERTS as zcs-user-commercial_ca...done. ** NOTE: mailboxd must be restarted in order to use the imported certificate. ** Saving server config key zimbraSSLCertificate...failed. ** Saving server config key zimbraSSLPrivateKey...failed. ** Installing mta certificate and key...done. ** Installing slapd certificate and key...done. ** Installing proxy certificate and key...done. ** Creating pkcs12 file /opt/zimbra/ssl/zimbra/jetty.pkcs12...done. ** Creating keystore file /opt/zimbra/mailboxd/etc/keystore...done. ** Installing CA to /opt/zimbra/conf/ca...done.
11. Ketika proses selesai, nyalakan kembali service zimbra. Proses update license selesai GBU.
#> zmcontrol restart