Per utilizzare la distribuzione firewall IPCop ed OpenVPN in modo semplice esiste un addon, Zerina, che tramite una semplice interfaccia grafica permette di gestire connessioni roadwarrior e net2net.
Il problema sorge quando si cerca di utilizzare i file di configurazione forniti da Zerina con NetworManager: Zerina infatti fornisce i certificati di sicurezza in unico file con estensione .p12, che NM non digerisce per nulla, richiedendo a tutta voce tre file, uno per la Certification Authority, uno per il Client ed una User Key.
La conversione non è complessa, ma perchè fare a mano quello che si può codificare con uno script?
Che oltretutto ho trovato pronto in rete.
Mi dispiace di non potere dare i dovuti crediti all'autore dello script, perché non ricordo dove lo ho rinvenuto, per cui se qualcuno lo sapesse, gli sarò grato se me rendesse edotto in modo da potere rimediare alla mancanza.
Ecco quindi lo script:
#/bin/sh
# this program will convert ipcop's openvpn configuration files ( zerina )
# into three separate pem files for us w/ ubuntu's network manager
# put this program into the directory containing your .p12 file from zerina
# don't forget to install the openvpn plugin for network-manager
# aptitude install network-manager-openvpn
# usage:
# /bin/sh convert.sh somefile.p12
get the first variable passed
pkcs12=$1
# remove the extension
pkcs_base=${pkcs12%.*}
# create the pem files
openssl pkcs12 -nocerts -in $pkcs12 -out $pkcs_base-userkey.pem
openssl pkcs12 -nokeys -clcerts -in $pkcs12 -out $pkcs_base-usercert.pem
openssl pkcs12 -nokeys -cacerts -in $pkcs12 -out $pkcs_base-userca.pem
l'uso è spiegato chiaramente dai commenti, basta fornire in pasto allo script il file .p12 e lui ci sputerà fuori i tre file .pem da passare a NM.