Update : 15 Juli 2019
Cara ini bisa dijalankan untuk Debian 8, Debian 9 dan Debian 10

chain lock
Penjelasan mengenai stunnel bisa dibaca diwebsite resmi stunnel.org. Tutorial kali ini akan menjelaskan cara instalasi stunnel melalui source code

Instalasi stunnel

Login ke Debian, untuk mempermudah tutorial ini, login sebagai root

ssh root@ip.vps.anda

install aplikasi yang dibutuhkan untuk instalasi stunnel

# bersihkan cache paket software dan update
apt-get clean all; apt-get update;
# paket instalasi yang dibutuhkan
apt-get install make gcc nano openssl libssl0.9.8 libssl-dev telnet

Download source code stunnel saat tulisan ini dibuat versi terbaru adalah stunnel-4.56

wget --no-check-certificate  https://www.stunnel.org/downloads/stunnel-4.56.tar.gz

ekstrak file stunnel-4.56.tar.gz dan pindah ke folder stunnel-4.56

tar zxvf stunnel-4.56.tar.gz; stunnel-4.56

compile dan install stunnel

./configure; make; make install

waktu diminta memasukkan

Country Name (2 letter code) [PL]:
State or Province Name (full name) [Mazovia Province]:
Locality Name (eg, city) [Warsaw]:
Organization Name (eg, company) [Stunnel Developers]:
Organizational Unit Name (eg, section) [Provisional CA]:
Common Name (FQDN of your server) [localhost]:

contoh saya menginput

Country Name (2 letter code) [PL]:ID
State or Province Name (full name) [Mazovia Province]:Jakarta
Locality Name (eg, city) [Warsaw]:Jaranguda
Organization Name (eg, company) [Stunnel Developers]:Jaranguda SSL
Organizational Unit Name (eg, section) [Provisional CA]:SSL
Common Name (FQDN of your server) [localhost]:jaranguda.com

Bila tidak ada error maka instalasi tersebut sudah berhasil. Bila terjadi error coba lihat langkah-langkah diatas, apakah anda sudah menjalankannya satu persatu.

Konfigurasi

stunnel yang telah terinstall terletak di /usr/local/etc/stunnel/ pindah ke folder tersebut

cd /usr/local/etc/stunnel/

copy contoh file konfigurasi stunnel

cp stunnel.conf-sample stunnel.conf

dibaris paling bawah stunnel.conf tambahkan

[www]
accept = 8080
connect = ipserver:80

ganti ipserver dengan IP public anda menginstall stunnel tersebut. Sekarang generate certificate mail.pem

openssl req -new -x509 -days 3650 -nodes -out mail.pem -keyout mail.pem

jalankan stunnel dengan perintah

stunnel stunnel.conf

dengan asumsi anda masih berada di direktori /usr/local/etc/stunnel. Untuk melihat apakah service tersebut telah jalan atau tidak, telnet ke port 8080

telnet localhost 8080

tampilan yang muncul, yang menandakan stunnel telah berhasil di install

Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

Menggunakan SSL Letsencrypt

Selain self-signed SSL, bisa juga digunakan SSL berbayar, atau gratisan yang sudah di trusted oleh browser. buat file stunnel.pem (atau apapun namanya), letakkan private key dibagian paling atas, baru sertifikatnya.
kalo untuk letsencrypt yang digenerate dengan acme.sh bisa dengan

cat /root/.acme/DOMAIN/DOMAIN.key /root/.acme/DOMAIN/fullchain.cer > /etc/stunnel/stunnel.pem

lalu restart stunnel

Leave a comment

Your email address will not be published. Required fields are marked *