CONFIGURAZIONE DEI CLIENTS
Quest’ultima parte passa per due aspetti: la generazione dei certificati (uno per singolo client) e il file di configurazione da usare per collegarsi al server centrale.
Quello che segue è un piccolo script che io uso e mi semplifica parecchio il da farsi.
#!/bin/sh if [[ -z "$1" ]]; then echo "Inserisci il CN del futuro client" echo "Usage: $0 <CN client>" exit 1 fi cd /etc/openvpn/easy-rsa/ . ./vars . ./build-key --batch $1
Il client che si collegherà al server in Bridging Mode avrà una configurazione di questo tipo:
client dev tap proto udp remote IPOFYOURSERVER 1194 resolv-retry infinite nobind user nobody group nogroup persist-key persist-tun keepalive 6 180 tls-auth ta.key 1 ca ca.crt cert client.crt key client.key ns-cert-type server comp-lzo float ping-timer-rem reneg-sec 3600 mute-replay-warnings ping 15 verb 6 pull mute 20 status /var/log/openvpn/openvpn-status.log log /var/log/openvpn/openvpn.log log-append /var/log/openvpn/openvpn-append.log tls-cipher TLS-RSA-WITH-AES-256-CBC-SHA cipher AES-256-CBC auth sha256 script-security 2
Quella che segue è un esempio di configurazione per i client che si collegheranno in Routing Mode
client
dev tun
tls-client
remote IPYOURSERVER 1194
pull
#ca ca.crt
#cert 6_plus.crt
#key 6_plus.key
#tls-auth ta.key 1
comp-lzo
proto tcp
resolv-retry infinite
nobind
persist-key
persist-tun
ns-cert-type server
float
key-direction 1
<tls-auth>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
...
-----END OpenVPN Static key V1-----
</tls-auth>
<ca>
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</ca>
<cert>
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 16 (0x10)
Signature Algorithm: sha1WithRSAEncryption
...
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
</key>
Fatto!
Se vi occorrono chiarimenti basta chiedere… Buon divertimento!!!
References:
http://manpages.ubuntu.com/manpages/precise/man8/tunctl.8.html