OpenVPN con DD-WRT Debian ed iPhone con ios 10. Con l'arrivo di ios 10 non è più possibile utilizzare una VPN PPTP , ed era quella che io usavo velocemente per connettermi al mio router linksys e1220 aggiornato con dd-wrt. Questa guida mostra come ottenere una VPN funzionante utilizzando OpenVpn server direttamente dal nostro router, e come creare i vari certificati e chiavi con relativa configurazione lato client, questo sia su Debian che su iPhone 6S con ios 10. Io utilizzo Debian Jessie, ma questa guida vale per tutte le distro. Iniziamo.
OpenVPN con DD-WRT Debian ed iPhone con ios 10
Installazione server OpenVpn:
# apt install openvpn easy-rsa
# mkdir /etc/openvpn/easy-rsa/
# cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/
# nano /etc/openvpn/easy-rsa/vars
a questo punto modificare in base alle proprie esigenze il file vars, come sotto, così successivamente basterà premere Invio quasi sempre.
export KEY_COUNTRY="IT"
export KEY_PROVINCE="Lombardia"
export KEY_CITY="Milano"
export KEY_ORG="DDWRT-VPN"
export KEY_EMAIL="me@myhost.mydomain"
export KEY_OU="DDWRT-VPN"
Creazione certificati/chiavi lato server:
# cd /etc/openvpn/easy-rsa
# source vars
# ./clean-all
# ./build-ca
# ./build-key-server serverddwrt
# ./build-dh
i certificati verranno creati in /etc/openvpn/easy-rsa
Creazione certificati/chiavi lato client:
io ho creato diverse chiavi per i miei devices:
# source vars
# ./build-key iphone
# ./build-key ipad
# ./build-key debianbox
# ./build-key win10
a questo punto tutti i certificati e le chiavi sono state create nella cartella keys in /etc/openvpn/easy-rsa/keys. Non rimane che accedere al nostro router di solito , ed andare in Services-VPN ed abilitare OpenVPN Server/Daemon, come si vede nell'immagine sotto. Nel mio caso la mia rete è 192.168.1.1 e per OpenVpn ho scelto la classe IP 192.168.75.0.
adesso bisogna aprire con un editor di testo i vari certificati e fare un copia ed incolla di tutto quello che si trova tra –BEGIN CERTIFICATE– e —END CERTIFICATE–. I certificati da incollare direttamente nella web gui sono i seguenti:
Public Server Cert= serverddwrt.crt
CA CERT= ca.crt
Private Server Key = serverddwrt.key
DH PEM = dh2048.pem
nella sezione più in basso Additional Config inserire:
push "route 192.168.1.0 255.255.255.0"
push "redirect-gateway def1 bypass-dhcp"
dev tun0
proto tcp
keepalive 10 120
poi andare in Administration-Commands ed inserire:
iptables -I INPUT 1 -p tcp --dport 1194 -j ACCEPT
iptables -I INPUT 1 -p udp --dport 1194 -j ACCEPT
iptables -I FORWARD 1 --source 192.168.1.0/24 -j ACCEPT
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT
e premere Save Firewall.
per avere conferma che tutto è andato bene, portarsi in Status-OpenVpn e si dovrebbe leggere Server: CONNECTED SUCCESS
Configurazione di OpenVpn client su Debian Jessie:
# apt install network-manager-openvpn network-manager-openvpn-gnome
e configurarlo come sotto:
Configurazione iPhone:
Per prima cosa installare direttamente da Apple Store OpenVpn. Dopodichè creare un file iphone.ovpn come sotto:
client
dev tun
proto tcp
remote inserire_indirizzo_IP/DDNS 1194
nobind
persist-key
persist-tun
verb 4
float
ca ca.crt
cert iphone.crt
key iphone.key
comp-lzo yes
tun-mtu 1500
auth SHA1
cipher AES-256-CBC
a questo punto tramite iTunes, caricare all'interno del programma OpenVpn i 4 files:
-
ca.crt
-
iphone.crt
-
iphone.key
-
iphone.ovpn
OpenVPN con DD-WRT Debian ed iPhone con ios 10
enjoy 😉