Debian ve Ubuntu'da Strongswan ile IPsec Tabanlı VPN Nasıl Kurulur


StrongSwan, Linux, FreeBSD, OS X, Windows, Android ve iOS üzerinde çalışan, açık kaynaklı, çapraz platformlu, tam özellikli ve yaygın olarak kullanılan IPsec tabanlı bir VPN (Sanal Özel Ağ) uygulamasıdır. Öncelikle, güvenlik ilişkileri (SA) oluşturmak için İnternet Anahtar Değişimi protokollerini (IKEv1 ve IKEv2) destekleyen bir anahtarlama arka plan programıdır. güçlü>) iki akran arasında.

Bu makalede, Ubuntu ve Debian sunucularında strongSwan kullanılarak siteden siteye IPSec VPN ağ geçitlerinin nasıl kurulacağı açıklanmaktadır. . Siteden siteye derken, her güvenlik ağ geçidinin arkasında bir alt ağın bulunduğunu kastediyoruz. Ayrıca eşler, önceden paylaşılan bir anahtar (PSK) kullanarak birbirlerinin kimliklerini doğrulayacaklardır.

Test Ortamı

Ortamınızı yapılandırmak için aşağıdaki IP'leri gerçek dünyadaki IP'lerinizle değiştirmeyi unutmayın.

Site 1 Ağ Geçidi (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

Site 2 Ağ Geçidi (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

Adım 1: Çekirdek Paket İletmeyi Etkinleştirme

1. Öncelikle, her iki güvenlik ağ geçidindeki /etc/sysctl.conf yapılandırma dosyasına uygun sistem değişkenlerini ekleyerek çekirdeği paket iletmeyi etkinleştirecek şekilde yapılandırmanız gerekir.

sudo vim /etc/sysctl.conf

Aşağıdaki satırları arayın ve açıklamalarını kaldırın ve değerlerini gösterildiği gibi ayarlayın (daha fazla bilgi için dosyadaki yorumları okuyun).

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. Ardından aşağıdaki komutu çalıştırarak yeni ayarları yükleyin.

sudo sysctl -p

3. Etkin bir UFW güvenlik duvarı hizmetiniz varsa, aşağıdaki kuralları /etc/ufw/before.rules yapılandırma dosyasına, filtre kurallarından hemen önce eklemeniz gerekir. ya güvenlik ağ geçitleri.

Site 1 Ağ Geçidi (tecmint-devgateway)

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

Site 2 Ağ Geçidi (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. Güvenlik duvarı kuralları eklendikten sonra, gösterildiği gibi UFW'yi yeniden başlatarak yeni değişiklikleri uygulayın.

sudo ufw disable 
sudo ufw enable

Adım 2: StrongSwan'ın Debian ve Ubuntu'ya kurulması

5. Paket önbelleğinizi her iki güvenlik ağ geçidinde güncelleyin ve APT paket yöneticisini kullanarak strongswan paketini yükleyin.

sudo apt update
sudo apt install strongswan 

6. Yükleme tamamlandığında, yükleyici komut dosyası strongswan hizmetini başlatacak ve sistem önyüklemesinde otomatik olarak başlatılmasını sağlayacaktır. Aşağıdaki komutu kullanarak durumunu ve etkin olup olmadığını kontrol edebilirsiniz.

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

3. Adım: Güvenlik Ağ Geçitlerini Yapılandırma

7. Daha sonra, /etc/ipsec.conf yapılandırma dosyasını kullanarak güvenlik ağ geçitlerini yapılandırmanız gerekir.

Site 1 Ağ Geçidi (tecmint-devgateway)

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

Aşağıdaki yapılandırmayı kopyalayıp dosyaya yapıştırın.

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

Site 2 Ağ Geçidi (tecmint-prodgateway)

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

Aşağıdaki yapılandırmayı kopyalayıp dosyaya yapıştırın.

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

Her konfigürasyon parametresinin anlamı aşağıdadır:

  • yapılandırma kurulumu – tüm bağlantılara uygulanan IPSec için genel yapılandırma bilgilerini belirtir.
  • charondebug – Charon hata ayıklama çıktısının ne kadarının günlüğe kaydedilmesi gerektiğini tanımlar.
  • benzersiz kimlikler – belirli bir katılımcı kimliğinin benzersiz tutulması gerekip gerekmediğini belirtir.
  • conn prodgateway-to-devgateway – bağlantı adını tanımlar.
  • tür – bağlantı türünü tanımlar.
  • otomatik – IPSec başlatıldığında veya yeniden başlatıldığında bağlantının nasıl yönetileceği.
  • keyexchange – kullanılacak IKE protokolünün sürümünü tanımlar.
  • authby – eşlerin birbirlerinin kimliklerini nasıl doğrulaması gerektiğini tanımlar.
  • sol – soldaki katılımcının genel ağ arayüzünün IP adresini tanımlar.
  • solalt ağ – sol katılımcının arkasındaki özel alt ağı belirtir.
  • sağ – doğru katılımcının genel ağ arayüzünün IP adresini belirtir.
  • rightsubnet – sol katılımcının arkasındaki özel alt ağı belirtir.
  • ike – kullanılacak IKE/ISAKMP SA şifreleme/kimlik doğrulama algoritmalarının listesini tanımlar. Virgülle ayrılmış bir liste ekleyebilirsiniz.
  • esp – bağlantı için kullanılacak ESP şifreleme/kimlik doğrulama algoritmalarının bir listesini tanımlar. Virgülle ayrılmış bir liste ekleyebilirsiniz.
  • agresif – Agresif Modun mu yoksa Ana Modun mu kullanılacağını belirtir.
  • anahtarlama denemeleri – bir bağlantıda anlaşma sağlamak için yapılması gereken deneme sayısını belirtir.
  • ikelifetime – yeniden anlaşmaya varılmadan önce bir bağlantının anahtarlama kanalının ne kadar süre dayanması gerektiğini belirtir.
  • ömür boyu – başarılı anlaşmadan sona erme tarihine kadar belirli bir bağlantı örneğinin ne kadar süre dayanması gerektiğini tanımlar.
  • dpddelay – R_U_THERE mesajlarının/BİLGİ alışverişlerinin eşe gönderildiği zaman aralığını belirtir.
  • dpdtimeout – işlem yapılmaması durumunda eşe olan tüm bağlantıların silineceği zaman aşımı aralığını belirtir.
  • dpdaction – bağlantıyı yönetmek için Ölü Eş Algılama (DPD) protokolünün nasıl kullanılacağını tanımlar.

Yukarıdaki yapılandırma parametreleri hakkında daha fazla bilgi için komutu çalıştırarak ipsec.conf kılavuz sayfasını okuyun.

man ipsec.conf

Adım 4: Eşler Arası Kimlik Doğrulaması için PSK'yı Yapılandırma

8. Her iki güvenlik ağ geçidini de yapılandırdıktan sonra, aşağıdaki komutu kullanarak eşler tarafından kullanılacak güvenli bir PSK oluşturun.

head -c 24 /dev/urandom | base64

9. Ardından, PSK'yi her iki ağ geçidindeki /etc/ipsec.secrets dosyasına ekleyin.

sudo vim /etc/ipsec.secrets

Aşağıdaki satırı kopyalayıp yapıştırın.

------- 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. IPSec programını yeniden başlatın ve bağlantıları görüntülemek için durumunu kontrol edin.

sudo ipsec restart
sudo ipsec status

11. Son olarak, bir ping komutu çalıştırarak her iki güvenlik ağ geçidinden de özel alt ağlara erişebildiğinizi doğrulayın.

ping 192.168.0.101
ping 10.0.2.15

12. Ayrıca, IPSec'i gösterildiği gibi durdurup başlatabilirsiniz.

sudo ipsec stop
sudo ipsec start

13. Bağlantıları manuel olarak getirmeye yönelik IPSec komutları ve daha fazlasını öğrenmek için IPSec yardım sayfasına bakın.

ipsec --help

Bu kadar! Bu makalede, Ubuntu ve Debian sunucularında strongSwan kullanarak siteden siteye IPSec VPN'in nasıl kurulacağını anlattık; güvenlik ağ geçitleri bir PSK kullanarak birbirlerinin kimliklerini doğrulayacak şekilde yapılandırıldı. Paylaşmak istediğiniz sorularınız veya düşünceleriniz varsa aşağıdaki geri bildirim formunu kullanarak bize ulaşın.