Panduan cara install SSL Let’s Encrypt untuk Openfire di Ubuntu (XMPP/Jabber). Untuk dapat install SSL pada openfire diperlukan domain yang sudah diarahkan ke server dan install web server untuk request SSL seperti langkah-langkah berikut:
1. Install Nginx
apt install nginx -y systemctl start nginx
2. Install Certbot
apt install certbot -y
3. Buat Direktori untuk web root
mkdir -p /var/www/html/.well-known/acme-challenge
4. Atur permission
chown -R www-data:www-data /var/www/html
5. Request Sertifikat SSL Let’s Encrypt
Ganti dengan domain kalian ya.
certbot certonly --rsa-key-size 4096 --webroot --agree-tos --no-eff-email --email [email protected] -w /var/www/html -d idnetter.com -d www.idnetter.com
6. Install Plugin Certificate Manager
- Login ke Halaman Admin openfire http://ip-server:9090
- Pilih menu > Plugins > Available Plugins > Cari dan install Certificate Manager
7. Copy SSL Let’s Encrypt ke direktori untuk pengaturan plugin Cetificate Management (ganti dengan domain aktual kalian ya)
rsync -avz /etc/letsencrypt/archive/idnetter.com/ /usr/share/openfire/resources/security/hotdeploy/
8. Atur permissionnya
chown -R openfire:openfire /usr/share/openfire/resources/security/hotdeploy/
9. Pengaturan Path sertifikat
Setelah berhasil menginstall Cerificate Manager akan ada menu baru
Klik menu Server > TLS/SSL certificates > Management
- Centang Enabled
- Centang Remove old identity store content when installing new data.
Lainnya biarkan saja, klik tombol Save settings
Selesai.
Untuk melihat hasilnya, akses
http://ip-server:9090/security-keystore.jsp?connectionType=SOCKET_S2S
Seperti gambar berikut
10. SSL Alias untuk Server to Server (S2)
Mugnkin server tidak bisa terhubung ke server lain (lawan), dikarenakan DNS record belum diatur atau mungkin SSL untuk Server to Server (S2S) belum dibuat alias. Tapi pada kasus yang saya temui solusinya Domain dan Hostname saya samakan dan mengatur alias TLS/SSL certificate pada kolom Trust store used for connections from other servers.
Berikut caranya agar hubungan Server to Server berjalan lancar.
Lihat dan copy sertifikat SSL
cat /usr/share/openfire/resources/security/hotdeploy/cert1.pem
Paste di kolom Trust store used for connections from other servers.
- Klik menu Server > TLS/SSL Certificates > Kolom Trust store used for connections from other servers > klik Manage Store Contents > klik Import form
- Pada isian Alias:
Letsencrypt
- Pada isian Content of Certificate file: Paste certificate Let’s Encryptnya
- Klik Save
Kalau bingung lihat gambar di bawah ini.
Kalau diperlukan restart openfire.
systemctl restart openfire
Selesai. Semoga bermanfaat dan good luck kawan.