vpnbook.com offre un service gratuit openVPN. C'est l'un de leurs fichiers: http://paste.ubuntu.com/7231382/ avec le nom vpnbook-uk1-tcp80.ovpn
.
Je veux le convertir en 3 fichiers pour qu'il soit utilisable dans network-manager-openvpn:
J'ai créé un script ici pour automatiser la récupération du mot de passe et des fichiers Zip sur des sites Web vpn tels que vpnbook.com , en extrayant les noms ca
, cert
et key
à partir des fichiers ovpn, et mettre à jour les fichiers opvn pour que les certificats soient importés pour vous.
Copiez le texte entre <ca>
et </ca>
, collez-le dans un éditeur de texte et enregistrez-le sous le nom ca.crt
. Le texte entre <cert>
et </cert>
doit être enregistré en tant que client.crt
et le texte entre <key>
et </key>
doit être enregistré en tant que client.key
.
Vous devez définir certaines options avancées conformément au fichier de configuration. Je ne pouvais pas me connecter aux serveurs utilisant le port 80, mais le port 443 fonctionne pour moi. C'est ce que j'ai fait:
comme tous les fichiers ovpn sont tous de simples fichiers de texte brut, vous pouvez créer un script python avec la logique suivante:
(1) lire le contenu du fichier texte ovpn;
(2) saisir le texte pertinent entre les balises en utilisant une expression régulière;
def grabBetweenTag(tagName, fileContents):
betweentag = re.findall('<'+tagName+'>.*\n(^.*$.*\n[\S\n]+.*$\n)</'+tagName+'>', fileContents, re.MULTILINE)
return betweentag[0]
grabBetweenTag('ca', fileContents)
grabBetweenTag('cert', fileContents)
grabBetweenTag('key', fileContents)
(3) copier ce texte dans un nouveau fichier texte;
(4) Le mappage entre les balises et le nouveau fichier texte à créer ressemble à ceci:
J'ai créé ceci référentiel comme exemple d'implémentation de cette logique pour récupérer tous les fichiers ovpn et créer des certificats