StrongSwan este o soluție VPN bazată pe IPsec, open source. Suporta atât protocoalele de schimb de chei IKEv1 cât și IKEv2 în combinație cu stiva NETKEY IPsec nativă a nucleului Linux. Acest tutorial vă va arăta cum să utilizați puternicSwan pentru a configura un server VPN IPSec pe CentOS 7.
Instalați puternicSwan
Pachetele puternice sunt disponibile în depozitul de pachete suplimentare pentru Enterprise Linux (EPEL). Ar trebui să activăm mai întâi EPEL, apoi să instalăm puternicSwan.
yum install http://ftp.nluug.nl/pub/os/Linux/distr/fedora-epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
yum install strongswan openssl
Generați certificate
Atât clientul VPN cât și serverul au nevoie de un certificat pentru a se identifica și autentifica. Am pregătit două scripturi shell pentru a genera și semna certificatele. Mai întâi, descărcăm aceste două scripturi în folder /etc/strongswan/ipsec.d.
cd /etc/strongswan/ipsec.d
wget https://raw.githubusercontent.com/michael-loo/strongswan_config/for_vultr/server_key.sh
chmod a+x server_key.sh
wget https://raw.githubusercontent.com/michael-loo/strongswan_config/for_vultr/client_key.sh
chmod a+x client_key.sh
În aceste două .shfișiere, am setat numele organizației ca fiind VULTR-VPS-CENTOS. Dacă doriți să-l schimbați, deschideți .shfișierele și înlocuiți O=VULTR-VPS-CENTOScu O=YOUR_ORGANIZATION_NAME.
Apoi, folosiți server_key.shcu adresa IP a serverului dvs. pentru a genera cheia autorității de certificare (CA) și a certificatului pentru server. Înlocuiți-vă SERVER_IPcu adresa IP a Vultr VPS.
./server_key.sh SERVER_IP
Generați cheia clientului, certificatul și fișierul P12. Aici, voi crea certificatul și fișierul P12 pentru utilizatorul VPN „John”.
./client_key.sh john [email protected]
Înlocuiți „john” și e-mailul său cu al vostru înainte de a rula scriptul.
După generarea certificatelor pentru client și server, copiați /etc/strongswan/ipsec.d/john.p12și /etc/strongswan/ipsec.d/cacerts/strongswanCert.pempe computerul local.
Deschideți fișierul de configurare IPSec puternicSwan.
vi /etc/strongswan/ipsec.conf
Înlocuiți conținutul său cu următorul text.
config setup
uniqueids=never
charondebug="cfg 2, dmn 2, ike 2, net 0"
conn %default
left=%defaultroute
leftsubnet=0.0.0.0/0
leftcert=vpnHostCert.pem
right=%any
rightsourceip=172.16.1.100/16
conn CiscoIPSec
keyexchange=ikev1
fragmentation=yes
rightauth=pubkey
rightauth2=xauth
leftsendcert=always
rekey=no
auto=add
conn XauthPsk
keyexchange=ikev1
leftauth=psk
rightauth=psk
rightauth2=xauth
auto=add
conn IpsecIKEv2
keyexchange=ikev2
leftauth=pubkey
rightauth=pubkey
leftsendcert=always
auto=add
conn IpsecIKEv2-EAP
keyexchange=ikev2
ike=aes256-sha1-modp1024!
rekey=no
leftauth=pubkey
leftsendcert=always
rightauth=eap-mschapv2
eap_identity=%any
auto=add
Editați fișierul de configurare puternicSwan strongswan.conf,.
vi /etc/strongswan/strongswan.conf
Ștergeți totul și înlocuiți-l cu următoarele.
charon {
load_modular = yes
duplicheck.enable = no
compress = yes
plugins {
include strongswan.d/charon/*.conf
}
dns1 = 8.8.8.8
dns2 = 8.8.4.4
nbns1 = 8.8.8.8
nbns2 = 8.8.4.4
}
include strongswan.d/*.conf
Editați fișierul secret IPsec pentru a adăuga un utilizator și o parolă.
vi /etc/strongswan/ipsec.secrets
Adăugați un cont de utilizator „John” în el.
: RSA vpnHostKey.pem
: PSK "PSK_KEY"
john %any : EAP "John's Password"
john %any : XAUTH "John's Password"
Vă rugăm să rețineți că ambele părți ale colonului: „au nevoie de un spațiu alb.
Permiteți redirecționarea IPv4
Editează /etc/sysctl.confpentru a permite redirecționarea în nucleul Linux.
vi /etc/sysctl.conf
Adăugați următoarea linie în fișier.
net.ipv4.ip_forward=1
Salvați fișierul, apoi aplicați modificarea.
sysctl -p
Deschideți firewall-ul pentru VPN-ul dvs. pe server.
firewall-cmd --permanent --add-service="ipsec"
firewall-cmd --permanent --add-port=4500/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload
Porniți VPN
systemctl start strongswan
systemctl enable strongswan
StrongSwan rulează acum pe serverul dvs. Instalați fișierele strongswanCert.pemși .p12certificatele în clientul dvs. Acum veți putea să vă alăturați rețelei dvs. private.