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