GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengatur VPN berbasis IPsec dengan Strongswan di Debian dan Ubuntu

strongSwan adalah implementasi VPN (Virtual Private Network) berbasis IPsec yang open-source, lintas platform, berfitur lengkap, dan banyak digunakan yang berjalan di Linux, FreeBSD, OS X, Windows, Android, dan iOS. Ini terutama daemon kunci yang mendukung Internet Key Exchange protokol (IKEv1 dan IKEv2 ) untuk membentuk asosiasi keamanan (SA ) antara dua rekan.

Artikel ini menjelaskan cara menyiapkan IPSec VPN site situs-ke-situs gerbang menggunakan strongSwan di Ubuntu dan Debian server. Dengan situs-ke-situs yang kami maksud setiap gateway keamanan memiliki sub-net di belakangnya. Selain itu, rekan akan mengotentikasi satu sama lain menggunakan kunci yang dibagikan sebelumnya (PSK ).

Lingkungan Pengujian

Ingatlah untuk mengganti IP berikut dengan IP dunia nyata Anda untuk mengonfigurasi lingkungan Anda.

Gerbang Situs 1 (tecmint-devgateway)

OS 1: Debian or Ubuntu
Public IP: 10.20.20.1
Private IP: 192.168.0.101/24
Private Subnet: 192.168.0.0/24

Gerbang Situs 2 (tecmint-prodgateway)

OS 2: Debian or Ubuntu
Public IP:  10.20.20.3
Private IP: 10.0.2.15/24
Private Subnet: 10.0.2.0/24

Langkah 1:Mengaktifkan Penerusan Paket Kernel

1. Pertama, Anda perlu mengkonfigurasi kernel untuk mengaktifkan penerusan paket dengan menambahkan variabel sistem yang sesuai di /etc/sysctl.conf file konfigurasi di kedua gateway keamanan.

$ sudo vim /etc/sysctl.conf

Cari baris berikut dan batalkan komentarnya dan atur nilainya seperti yang ditunjukkan (baca komentar di file untuk informasi lebih lanjut).

net.ipv4.ip_forward = 1 
net.ipv6.conf.all.forwarding = 1 
net.ipv4.conf.all.accept_redirects = 0 
net.ipv4.conf.all.send_redirects = 0 

2. Selanjutnya, muat pengaturan baru dengan menjalankan perintah berikut.

$ sudo sysctl -p

Muat Pengaturan Kernel Sysctl

3. Jika Anda mengaktifkan layanan firewall UFW, Anda perlu menambahkan aturan berikut ke /etc/ufw/before.rules file konfigurasi tepat sebelum aturan filter di salah satu gerbang keamanan.

Gerbang Situs 1 (tecmint-devgateway)

*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.2.0/24  -d 192.168.0.0/24 -j MASQUERADE
COMMIT

Gerbang Situs 2 (tecmint-prodgateway)

*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING  -s 192.168.0.0/24 -d 10.0.2.0/24 -j MASQUERADE
COMMIT

4. Setelah aturan firewall ditambahkan, terapkan perubahan baru dengan memulai ulang UFW seperti yang ditunjukkan.

$ sudo ufw disable 
$ sudo ufw enable

Langkah 2:Menginstal strongSwan di Debian dan Ubuntu

5. Perbarui cache paket Anda di kedua gerbang keamanan dan instal strongswan paket menggunakan pengelola paket APT.

$ sudo apt update
$ sudo apt install strongswan 

6. Setelah penginstalan selesai, skrip penginstal akan memulai strongswan service dan mengaktifkannya untuk memulai secara otomatis saat boot sistem. Anda dapat memeriksa statusnya dan apakah diaktifkan menggunakan perintah berikut.

$ sudo systemctl status strongswan.service
$ sudo systemctl is-enabled strongswan.service

Langkah 3:Mengonfigurasi Gerbang Keamanan

7. Selanjutnya, Anda perlu mengonfigurasi gateway keamanan menggunakan /etc/ipsec.conf file konfigurasi.

Gerbang Situs 1 (tecmint-devgateway)

$ sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig
$ sudo nano /etc/ipsec.conf 

Salin dan tempel konfigurasi berikut di file.

config setup
        charondebug="all"
        uniqueids=yes
conn devgateway-to-prodgateway
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=10.20.20.1
        leftsubnet=192.168.0.101/24
        right=10.20.20.3
        rightsubnet=10.0.2.15/24
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart

Gerbang Situs 2 (tecmint-prodgateway)

$ sudo cp /etc/ipsec.conf /etc/ipsec.conf.orig
$ sudo cp /etc/ipsec.conf 

Salin dan tempel konfigurasi berikut di file.

config setup
        charondebug="all"
        uniqueids=yes
conn prodgateway-to-devgateway
        type=tunnel
        auto=start
        keyexchange=ikev2
        authby=secret
        left=10.20.20.3
        leftsubnet=10.0.2.15/24
        right=10.20.20.1
        rightsubnet=192.168.0.101/24 
        ike=aes256-sha1-modp1024!
        esp=aes256-sha1!
        aggressive=no
        keyingtries=%forever
        ikelifetime=28800s
        lifetime=3600s
        dpddelay=30s
        dpdtimeout=120s
        dpdaction=restart

Berikut adalah arti dari setiap parameter konfigurasi:

  • penyiapan konfigurasi – menentukan informasi konfigurasi umum untuk IPSec yang berlaku untuk semua koneksi.
  • charondebug – menentukan berapa banyak output debug Charon yang harus dicatat.
  • unik – menentukan apakah ID peserta tertentu harus tetap unik.
  • sambungan prodgateway-to-devgateway – mendefinisikan nama koneksi.
  • ketik – menentukan jenis koneksi.
  • otomatis – cara menangani koneksi saat IPSec dimulai atau dimulai ulang.
  • pertukaran kunci – mendefinisikan versi protokol IKE yang akan digunakan.
  • authby – mendefinisikan bagaimana rekan-rekan harus mengotentikasi satu sama lain.
  • kiri – mendefinisikan alamat IP dari antarmuka jaringan publik peserta kiri.
  • subnet kiri – menyatakan subnet pribadi di belakang peserta kiri.
  • kanan – menentukan alamat IP dari antarmuka jaringan publik peserta yang tepat.
  • subnet kanan – menyatakan subnet pribadi di belakang peserta kiri.
  • seperti – mendefinisikan daftar algoritma enkripsi/otentikasi IKE/ISAKMP SA yang akan digunakan. Anda dapat menambahkan daftar yang dipisahkan koma.
  • terutama – mendefinisikan daftar algoritma enkripsi/otentikasi ESP yang akan digunakan untuk koneksi. Anda dapat menambahkan daftar yang dipisahkan koma.
  • agresif – menyatakan apakah akan menggunakan Mode Agresif atau Mode Utama.
  • percobaan kunci – menyatakan jumlah upaya yang harus dilakukan untuk menegosiasikan koneksi.
  • ikelifetime – menyatakan berapa lama saluran kunci koneksi harus bertahan sebelum dinegosiasikan ulang.
  • seumur hidup – menentukan berapa lama contoh tertentu dari koneksi harus bertahan, dari negosiasi yang berhasil hingga kedaluwarsa.
  • dpddelay – menentukan interval waktu pengiriman pesan R_U_THERE/pertukaran INFORMASI ke peer.
  • waktu habis dpd – menentukan interval waktu habis, setelah itu semua koneksi ke peer akan dihapus jika tidak ada aktivitas.
  • dpdaction – mendefinisikan cara menggunakan protokol Dead Peer Detection (DPD) untuk mengelola koneksi.

Untuk informasi lebih lanjut tentang parameter konfigurasi di atas, baca ipsec.conf halaman manual dengan menjalankan perintah.

$ man ipsec.conf

Langkah 4:Mengonfigurasi PSK untuk Otentikasi Peer-to-Peer

8. Setelah mengonfigurasi kedua gerbang keamanan, buat PSK secure yang aman untuk digunakan oleh rekan-rekan menggunakan perintah berikut.

$ head -c 24 /dev/urandom | base64

Buat Kunci PSK

9. Selanjutnya, tambahkan PSK di /etc/ipsec.secrets file di kedua gateway.

$ sudo vim /etc/ipsec.secrets

Salin dan tempel baris berikut.

------- Site 1 Gateway (tecmint-devgateway) ------- 

10.20.20.1 10.20.20.3 : PSK "qLGLTVQOfqvGLsWP75FEtLGtwN3Hu0ku6C5HItKo6ac="

------- Site 2 Gateway (tecmint-prodgateway) -------

10.20.20.3  10.20.20.1 : PSK "qLGLTVQOfqvGLsWP75FEtLGtwN3Hu0ku6C5HItKo6ac="

10. Mulai ulang IPSec program dan periksa statusnya untuk melihat koneksi.

$ sudo ipsec restart
$ sudo ipsec status

Lihat Status Koneksi IPSec

11. Terakhir, verifikasi bahwa Anda dapat mengakses sub-jaringan pribadi dari salah satu gerbang keamanan dengan menjalankan perintah ping.

$ ping 192.168.0.101
$ ping 10.0.2.15

Verifikasi Pengaturan VPN Situs-ke-Situs

12. Selain itu, Anda dapat menghentikan dan memulai IPSec seperti yang ditunjukkan.

$ sudo ipsec stop
$ sudo ipsec start

13. Untuk mengetahui lebih lanjut tentang perintah IPSec untuk membuka koneksi secara manual dan lainnya, lihat halaman bantuan IPSec.

$ ipsec --help

Itu saja! Dalam artikel ini, kami telah menjelaskan cara menyiapkan VPN IPSec situs-ke-situs menggunakan strongSwan di Ubuntu dan Debian server, di mana kedua gerbang keamanan dikonfigurasi untuk mengautentikasi satu sama lain menggunakan PSK . Jika Anda memiliki pertanyaan atau pemikiran untuk dibagikan, hubungi kami melalui formulir masukan di bawah.

Berbagi itu Peduli…
Berbagi di FacebookBerbagi di TwitterBerbagi di LinkedinBerbagi di Reddit
Ubuntu
  1. Cara Mengatur VPN WireGuard di Ubuntu 20.04

  2. Cara Menggunakan APT dengan Proxy di Ubuntu dan Debian

  3. Cara Memasang dan Mengatur Server Media Gerbera di Ubuntu / Debian

  1. Cara Menginstal dan Mengatur mysql 8 di Ubuntu 20.04

  2. Cara Mengatur Firewall dengan UFW di Ubuntu \ Debian

  3. Cara Mengatur atau Mengubah Zona Waktu di Ubuntu 20.04 dan 21.04

  1. Cara Mengatur VPN WireGuard di Ubuntu 18.04

  2. Cara Mengatur Firewall dengan UFW di Ubuntu 20.04

  3. Cara Mengatur VPN WireGuard di Ubuntu 20.04