Instal·leu strongSwan
Generar certificats
Configura strongSwan
Permet el reenviament d'IPv4
Configura el tallafoc
Inicieu VPN
StrongSwan és una solució VPN de codi obert basada en IPsec. Admet els protocols d'intercanvi de claus IKEv1 i IKEv2 juntament amb la pila nativa NETKEY IPsec del nucli de Linux. Aquest tutorial us mostrarà com utilitzar strongSwan per configurar un servidor VPN IPSec a CentOS 7.
Instal·leu strongSwan
Els paquets strongSwan estan disponibles al dipòsit de paquets addicionals per a Enterprise Linux (EPEL). Primer hauríem d'habilitar EPEL i després instal·lar 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
Generar certificats
Tant el client VPN com el servidor necessiten un certificat per identificar-se i autenticar-se. He preparat dos scripts de shell per generar i signar els certificats. Primer, baixem aquests dos scripts a la carpeta /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
En aquests dos .shfitxers, he definit el nom de l'organització com a VULTR-VPS-CENTOS. Si el voleu canviar, obriu els .shfitxers i substituïu-los O=VULTR-VPS-CENTOSper O=YOUR_ORGANIZATION_NAME.
A continuació, utilitzeu server_key.shl'adreça IP del vostre servidor per generar la clau de l'autoritat de certificació (CA) i el certificat per al servidor. Substituïu SERVER_IP-la per l'adreça IP del vostre Vultr VPS.
./server_key.sh SERVER_IP
Genereu la clau del client, el certificat i el fitxer P12. Aquí, crearé el certificat i el fitxer P12 per a l'usuari VPN "john".
./client_key.sh john john@gmail.com
Substituïu "john" i el seu correu electrònic pel vostre abans d'executar l'script.
Després de generar els certificats per al client i el servidor, copieu /etc/strongswan/ipsec.d/john.p12-los /etc/strongswan/ipsec.d/cacerts/strongswanCert.pemal vostre ordinador local.
Obriu el fitxer de configuració strongSwan IPSec.
vi /etc/strongswan/ipsec.conf
Substituïu el seu contingut pel text següent.
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
Editeu el fitxer de configuració de strongSwan, strongswan.conf.
vi /etc/strongswan/strongswan.conf
Suprimeix-ho tot i substituïu-lo pel següent.
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
Editeu el fitxer secret IPsec per afegir un usuari i una contrasenya.
vi /etc/strongswan/ipsec.secrets
Afegiu-hi un compte d'usuari "john".
: RSA vpnHostKey.pem
: PSK "PSK_KEY"
john %any : EAP "John's Password"
john %any : XAUTH "John's Password"
Tingueu en compte que els dos costats dels dos punts ':' necessiten un espai en blanc.
Permet el reenviament d'IPv4
Editeu /etc/sysctl.confper permetre el reenviament al nucli de Linux.
vi /etc/sysctl.conf
Afegiu la línia següent al fitxer.
net.ipv4.ip_forward=1
Deseu el fitxer i apliqueu el canvi.
sysctl -p
Obriu el tallafoc de la vostra VPN al servidor.
firewall-cmd --permanent --add-service="ipsec"
firewall-cmd --permanent --add-port=4500/udp
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload
Inicieu VPN
systemctl start strongswan
systemctl enable strongswan
StrongSwan s'està executant al vostre servidor. Instal·leu els fitxers de certificat strongswanCert.pemi .p12al vostre client. Ara podreu unir-vos a la vostra xarxa privada.