Pada postingan kali ini saya akan membahas salah satu VPN yang cukup banyak di gunakan yaitu VPN IPsec. Dikutip dari Wikipedia “IPsec (singkatan dari IP Security) adalah sebuah protokol yang digunakan untuk mengamankan transmisi datagram dalam sebuah internetwork berbasis TCP/IP” . Jadi, dengan VPN IPsec ini nantinya kita akan membuat tunnel dimana kita bisa mengamankan koneksi dari jaringan kita melalui internet dengan metode keamanan yang cukup fleksibel. VPN IPsec akan mengenkripsi lalu lintas jaringan kita. Jadi, tidak ada pihak lain selain user dan vpn server yang bisa melihatnya. Baiklah, langsung saja kita mulai cara install server VPN IPsec di linux :
Cara Install Server VPN IPsec di CentOS
Sebelum memlulai installasi, kita disarankan untuk memperbarui sistem pada CentOS dengan perintah yum update -y
lalu lakukan reboot
pada sistem. Jika sudah, kita masuk ke proses installasi. kita akan menggunakan skrip pengaturan otomatis yang telah di buat oleh Lin Song beserta kontributor lainnya untuk installasi server VPN IPsec.
Pertama, kita download terlebih dahulu skripnya
wget https://git.io/vpnsetup-centos -O vpn.sh
Kedua, kita edit file vpn.sh
dengan editor yang kita miliki
vim vpn.sh
lalu isi nilai pada 3 variable (YOUR_IPSEC_PSK, YOUR_USERNAME dan YOUR_PASSWORD) dengan nilai yang kita tentukan sendiri , contoh :
# Define your own values for these variables # - IPsec pre-shared key, VPN username and password # - All values MUST be placed inside 'single quotes' # - DO NOT use these special characters within values: \ " ' YOUR_IPSEC_PSK='XjInmf5CcIkL1SCFy47DUQ==' YOUR_USERNAME='vpnuser' YOUR_PASSWORD='BIOf+pLvQO2rOA=='
Saya sarankan untuk membuat password dan ipsec_psk yang kuat. kita bisa menggunakan openssl untuk men-generate passwordnya.
#use this for generate password openssl rand -base64 10 #use this for generate ipsec_psk openssl rand -base64 16
Ketiga, setelah selesai mengedit 3 variabel tersebut, kita jalankan skripnya
sudo sh vpn.sh
Keempat, Setelah installasi berhasil dilakukan, disarankan untuk mengatur IKEv2.
sudo bash /opt/src/ikev2.sh --auto
IKE atau Internet Key Exchange merupakan protokol yang digunakan untuk mengatur asosiasi keamanan di dalam rangkaian protokol IPsec. Jadi, sebelum tunnel terbentuk akan dilakukan peering dengan negoisasi keamanan antara yang dilakukan disisi server ataupun client.
Setelah menjalankan pengaturan otomatis IKEv2, akan ditampilkan detail dari IKEv2 seperti berikut ini :
Cara Install Server VPN IPsec di Ubuntu
Sama seperti di CentOS, sebelum memlulai installasi, kita juga disarankan untuk memperbarui sistem pada Ubuntu dengan perintah apt-get update && apt-get dist-upgrade
lalu lakukan reboot
pada sistem.
Lalu untuk installasinya kurang lebih semuanya sama dengan installasi di CentOS , yang membedakan hanyalah di langkah pertama pada file download skrip pengaturan otomatis untuk installasinya. Untuk Ubuntu bisa di donwload dengan
wget https://git.io/vpnsetup -O vpn.sh
Setelah di download, langkah seterusnya sama dengan langkah – langkah yang sudah saya jelaskan pada installasi di CentOS. Kalian bisa melanjutkannya pada langkah kedua.
Konfigurasi Klien VPN IPsec
Install server VPN IPsec sudah, sekarang saatnya menghubungkannya dengan client. Ada 2 metode yang dapat digunakan oleh client untuk menghubungkannya. Yang pertama dengan menggunakan IKEv2 VPN Client, lalu yang kedua dengan menggunakan IPsec/L2TP Client. Client di sini bisa apa saja, baik itu PC ataupun Smarthphone, dari OS Windows, Mac, Linux, Android, OSX bisa menjadi clientnya. Saya tidak akan menjelaskan semuanya karena terlalu panjang. Saya akan jelaskan hanya pada bagian client yang menggunakan Linux. Untuk dokumentasi terlengkapnya, dari installasi server vpn ipsec sampai dengan koneksi client di beragam perangkat, silahkan baca dokumentasi Github Lin Song di IPsec VPN Server Auto Setup Scripts .
Konfigurasi IKEv2 VPN Client di Ubuntu Desktop
Sebelum kita memulai konfigurasi di sisi client (ubuntu desktop) , kita perlu melakukan sedikit perubahan di server vpn ipsec yang sudah kita install sebelumnya. Buka fille /etc/ipsec.d/ikev2.conf
dengan editor kalian, lalu tambahkan authby=rsa-sha1
ke akhir baris dari bagian conn ikev2-cp
, berikan 2 spasi di awalnya. Simpan dan restart service vpnnya dengan perintah service ipsec restart
.
Selanjutnya, kita kembali ke sisi client. Install StrongSwan untuk NetworManager Untuk mengkonfigurasi komputer Linux Anda agar terhubung ke IKEv2 sebagai klien VPN.
# Ubuntu dan Debian sudo apt-get update sudo apt-get install network-manager-strongswan
Lalu download ke Ubuntuk Desktop kalian file *.p12 dari VPN Server yang sudah dihasilkan setelah menjalankan pengaturan otomatis IKEv2 ( ada pada installasi tahap keempat ). Setelah itu, ekstrak sertifikat CA, sertifikat klien, dan kunci pribadi. di contoh ini ganti vpnclients.p12 dengan *.p12 yang kalian miliki.
#CA Certificate openssl pkcs12 -in vpnclient.p12 -cacerts -nokeys -out ikev2vpnca.cer #Client Certificate openssl pkcs12 -in vpnclient.p12 -clcerts -nokeys -out vpnclient.cer #PrivateKey openssl pkcs12 -in vpnclient.p12 -nocerts -nodes -out vpnclient.key rm vpnclient.p12 sudo chown root.root ikev2vpnca.cer vpnclient.cer vpnclient.key sudo chmod 600 ikev2vpnca.cer vpnclient.cer vpnclient.key
Jika sudah, kita bisa langsung mengatur konfigurasinya, berikut langkah – langkahnya :
- Buka Settings > Network > VPN, lalu klik tombol + ,
- Pilih IPsec/IKEv2 (strongswan) ,
- Isi bagian Name dengan nama vpn yang kalian mau ,
- Di bagian Gateway , masukkan IP Server VPN IPsec di kolom address ,
- Pilih file ikev2vpnca.cer untuk Certificate pada bagian Gateway ,
- Di bagian Client , pilih Certificate/private key di menu drop-down Authentication ,
- Pilih file vpnclient.cer untuk Certificate ,
- Pilih file vpnclient.key untuk Private Key ,
- Di bagian Options , centang kotak Request an inner IP address ,
- Di bagian Cipher proposal , centang kotak Enable custom proposals ,
- Biarkan bagian IKE kosong ,
- Masuk aes128gcm16 di bagian ESP ,
- Klik Add untuk menyimpan informasi koneksi VPN,
- Hidupkan VPN Client .
Untuk visualisasinya bisa kalian lihat di animasi GIF di bawah ini :
Jika sudah di aktifkan, tinggal kalian test dengan menggunakan ini
wget -qO- http://ipv4.icanhazip.com; echo
Apabila IP yang muncul adalah IP server vpn, itu berarti kalian sudah berhasil menghubungkannya.
Baiklah, untuk saat ini cukup itu dulu, nanti akan saya tambahkan lagi bila ada waktu. Itulah informasi mengenai cara install server vpn ipsec di linux yang dapat Saya bagikan. Semoga informasi ini dapat bermanfaat. Terima kasih 😀