Connessione a un Cisco ASA in ipesec
Ricevo da un cliente una configurazione (un file di testo) così fatta:
n:version:4 n:network-ike-port:500 n:network-mtu-size:1380 n:client-addr-auto:1 n:network-natt-port:4500 n:network-natt-rate:15 n:network-frag-size:540 n:network-dpd-enable:1 n:client-banner-enable:1 n:network-notify-enable:1 n:client-wins-used:1 n:client-wins-auto:1 n:client-dns-used:1 n:client-dns-auto:1 n:client-splitdns-used:0 n:client-splitdns-auto:1 n:phase1-dhgroup:2 n:phase1-life-secs:86400 n:phase1-life-kbytes:0 n:vendor-chkpt-enable:0 n:phase2-life-secs:3600 n:phase2-life-kbytes:0 n:policy-nailed:0 n:policy-list-auto:1 n:client-dns-suffix-auto:1 s:network-host:XXX.XXX.XXX.XXX s:client-auto-mode:pull s:client-iface:virtual s:network-natt-mode:enable s:network-frag-mode:enable s:auth-method:mutual-psk-xauth s:ident-client-type:fqdn s:ident-server-type:any s:ident-client-data:XXXXXXXXXXXXXXX b:auth-mutual-psk:XXXXXXXXXXXXXXX== s:phase1-exchange:aggressive s:phase1-cipher:auto s:phase1-hash:auto s:phase2-transform:auto s:phase2-hmac:auto s:ipcomp-transform:disabled n:phase2-pfsgroup:-1 s:policy-level:auto s:client-saved-username:XXXXXX
Inoltre il cliente mi manda due dati: username e password per il mio account.
Se avete una config tipo quella indicata sopra, probabilmente la vostra soluzione è usare "VPNC" per Linux. Se state usando Linux Mint con Cinnamon come me (Ma anche ubuntu probabilmente), allora dovete installare questi pacchetti:
apt install network-manager-vpnc network-manager-vpnc-gnome vpnc
A questo punto se andate sempre dall'interfaccia grafica a creare una nuova connessione vpn, troverete la possibilita` di creare una nuova connessione di tipo "Cisco Compatible VPN (vpnc)". Fatelo, e troverete una maschera dove inserire diversi valori. Queste sono le voci che ho preso dalla config di cui sopra e ho riportato nella maschera di configurazione della vpn sotto network manager:
Voce nella config di Networkmanager |
Voce nel file di config ricevuto dal gestore dell'appliance vpn |
Note |
Gateway |
s:network-host |
Indirizzo o hostname del remoto |
User Name |
Username fornito |
Non è nella config, mi è stato dato a parte |
User Password |
Password fornita |
Come sopra |
Group name |
s:ident-client-data |
E` case sensitive ed è obbligatoria a quanto pare |
Group password |
b:auth-mutual-psk |
E` encodata in base64, va decodificata prima di metterla qui! |
Questa configurazione è stata sufficiente, nel mio caso, per avere un collegamento funzionante. Forse dovrete poi aggiustare eventuali regole di routing o altro dentro la VPN. Per decodificare la "Group password" ho semplicemente usato il comando "base64 -d", fornendo come input la stringa che c'era nel file fornito dal cliente (che finisce con "==") e ottenendo indietro una stringa da inserire nella relativa voce. E` abbastanza evidente che la prima colonna nel file fornito dal cliente sta a indicare il tipo di dato: "n" è numerico, "s" è stringa, e "b" è base64.