Last Updated:
Linux Strongswan VPN IPSEC
Linux Strongswan VPN IPSEC Strongswan

Konfigurasi Strongswan VPN IPSEC IKEV2 di Ubuntu 20.04

Admin TUTORIAL

Strongswan VPN IPSEC - Lumayan banyak menggunakan IPsec karena support IPsec juga sudah ada dimana saja, hampir semua operating system juga sudah mendukung IPsec tanpa perlu menginstal atau menambahkan software lain. Salah satunya applikasi/software yang bisa kita gunakan untuk membangun server VPN IPsec adalah Strongswan, Applikasi tersebut juga yang akan kita gunakan di dalam tutorial kali ini.

Table of Contents

Strongswan VPN IPSEC

Ada Beberapa hal yang perlu di perhatikan untuk kebutuhan di atas, diantaranya: 
– IPsec (Bisa kita install tanpa SSL)
– Ubuntu 20.04 dengan Public IP
– Untuk Client kita bisa menggunakan Linux, Windows, MacOS, iOS ataupun Android.
– Akses root

Setting DNS

Agar kita mendapatkan SSL gratis terlebih dahulu kita setting DNS record di IP server:

Type: A  | Name: ipsec.teknomid.com | Value: 192.168.108.87
TTL: 1 | Active: false | ID: asduyhiuwejhiuwladjlads

Install dependency

Baca Juga: Setting Up IPsec/L2TP VPN Server in Linux

sudo apt install curl socat -y

Install acme.sh Lets Encrypt Client
Daripada menggunakan self-sign SSL 

curl https://get.acme.sh | sh

Update Perubahan di ~/.bashrc

source ~/.bashrc

Baca Juga: Memahami dan Konfigurasi LVM di Centos 8

Generate SSL

Untuk penggunaan SSL kita gunakan/jalankan generate dengan acme seperti di bawah ini.

acme.sh --issue -d ipsec.teknomid.com --standalone

setelah menjalankan perintah tersebut, tunggu beberapa saat sampai muncul certificate yang diminta

Certificate hasil Generate
Certificate hasil Generate

Selanjutnya Install Strongswan dan pluginnya

apt install strongswan strongswan-pki libcharon-extauth-plugins libcharon-extra-plugins -y
Konfigurasi IPsec

Untuk merubah ipsec.DOMAIN.com dengan domain yang sudah kita buat sebelumnya.

Salin file certificate dan private key ke dalam folder /etc/ipsec.d

cp /root/.acme.sh/ipsec.teknomid.com/fullchain.cer /etc/ipsec.d/certs/ipsec.teknomid.com.cer
cp /root/.acme.sh/ipsec.teknomid.com/ipsec.teknomid.com.key /etc/ipsec.d/private/

Dan untuk configurasi IPsec strongswan berada di dalam file /etc/ipsec.conf, hapus file tersebut dan ganti dengan yg di bawah ini.

Baca Juga: Cara Mengelola File Log dengan Logrotate di Ubuntu 20.04

config setup
    plutostart=no
 
conn ipsec-teknomid
    auto=add
    compress=no
    type=tunnel
    keyexchange=ikev2
    fragmentation=yes
    forceencaps=yes
    dpdaction=clear
    dpddelay=300s
    rekey=no
    left=%any
    leftid=@ipsec.teknomid.com
    leftcert=ipsec.teknomid.com.cer
    leftsendcert=always
    leftsubnet=0.0.0.0/0
    right=%any
    rightid=%any
    rightauth=eap-mschapv2
    rightsourceip=10.1.2.0/24
    rightdns=1.1.1.1,8.8.8.8
    eap_identity=%identity
Setting IPsec Secret

Kemudian buka file /etc/ipsec.secrets, dan tambahkan

 : RSA ipsec.teknomid.com.key
teknomid : EAP "PASSWORD"
Restart service strongswan

Setelah kita selesai melakukan perubahan di atas, restart service strongswan

Service Strongswan
Service Strongswan

Aktifkan IP Forwarding di /etc/sysctl.ctl

echo 'net.ipv4.ip_forward = 1' > /etc/sysctl.conf

Set/Apply perubahan tersebut

sysctl -p
Setting Iptables

Supaya client yang sudah menggunakan VPN server kita bisa mengakses internet, setting IPTABLES terlebih dahulu seperti di bawah ini:

Baca Juga: Cara Menghapus Cache Memori RAM, Buffer, dan Swap Space di Linux

iptables -t nat -A POSTROUTING -o eth1 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

sesuaikan eth1 dengan default interface yang digunakan. Untuk melihatnya gunakan ip route | grep default

# ip route | grep default
default via 192.168.1.2 dev eth1 proto static

 

Comments