Instalirajte strongSwan
Generirajte certifikate
Konfigurirajte strongSwan
Dopusti IPv4 prosljeđivanje
Konfigurirajte vatrozid
Pokrenite VPN
StrongSwan je VPN rješenje otvorenog koda temeljeno na IPsecu. Podržava i IKEv1 i IKEv2 protokole za razmjenu ključeva u sprezi s izvornim NETKEY IPsec stogom Linux kernela. Ovaj vodič će vam pokazati kako koristiti strongSwan za postavljanje IPSec VPN poslužitelja na CentOS 7.
Instalirajte strongSwan
Paketi strongSwan dostupni su u spremištu Extra Packages for Enterprise Linux (EPEL). Prvo bismo trebali omogućiti EPEL, a zatim instalirati strongSwan.
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
Generirajte certifikate
I VPN klijent i poslužitelj trebaju certifikat za identifikaciju i provjeru autentičnosti. Pripremio sam dvije shell skripte za generiranje i potpisivanje certifikata. Prvo preuzimamo ove dvije skripte u mapu /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
U ove dvije .shdatoteke postavio sam naziv organizacije kao VULTR-VPS-CENTOS. Ako ga želite promijeniti, otvorite .shdatoteke i zamijenite ih O=VULTR-VPS-CENTOSs O=YOUR_ORGANIZATION_NAME.
Zatim upotrijebite server_key.shs IP adresom vašeg poslužitelja za generiranje ključa certifikacijskog tijela (CA) i certifikata za poslužitelj. Zamijenite SERVER_IPIP adresom vašeg Vultr VPS-a.
./server_key.sh SERVER_IP
Generirajte klijentski ključ, certifikat i P12 datoteku. Ovdje ću kreirati certifikat i P12 datoteku za VPN korisnika "john".
./client_key.sh john john@gmail.com
Zamijenite "john" i njegovu e-poštu svojom prije pokretanja skripte.
Nakon potvrde za klijenta i poslužitelja nastaju, kopirati /etc/strongswan/ipsec.d/john.p12i /etc/strongswan/ipsec.d/cacerts/strongswanCert.pemna vaše lokalno računalo.
Otvorite konfiguracijsku datoteku strongSwan IPSec.
vi /etc/strongswan/ipsec.conf
Zamijenite njegov sadržaj sljedećim tekstom.
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
Uredite konfiguracijsku datoteku strongSwan, strongswan.conf.
vi /etc/strongswan/strongswan.conf
Izbrišite sve i zamijenite sljedećim.
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
Uredite IPsec tajnu datoteku da biste dodali korisnika i lozinku.
vi /etc/strongswan/ipsec.secrets
Dodajte korisnički račun "john" u njega.
: RSA vpnHostKey.pem
: PSK "PSK_KEY"
john %any : EAP "John's Password"
john %any : XAUTH "John's Password"
Imajte na umu da je na obje strane dvotočka ':' potreban razmak.
Dopusti IPv4 prosljeđivanje
Uredite /etc/sysctl.confkako biste omogućili prosljeđivanje u jezgri Linuxa.
vi /etc/sysctl.conf
Dodajte sljedeći redak u datoteku.
net.ipv4.ip_forward=1
Spremite datoteku, a zatim primijenite promjenu.
sysctl -p
Otvorite vatrozid za svoj VPN na poslužitelju.
firewall-cmd --permanent --add-service="ipsec"
firewall-cmd --permanent --add-port=4500/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload
Pokrenite VPN
systemctl start strongswan
systemctl enable strongswan
StrongSwan je sada pokrenut na vašem poslužitelju. Instalirajte datoteke certifikata strongswanCert.pemi .p12u svoj klijent. Sada ćete se moći pridružiti svojoj privatnoj mreži.