Error parsing config private key con OpenVPN/PiVPN

2 minutos de lectura

Recientemente instalé Raspbian Stretch en una memoria USB, y después de instalar OpenVPN no era capaz de conectar con el servidor VPN desde mi teléfono móvil con Android, sin embargo si que podía hacerlo desde mi ordenador, cada vez que queria conectar con el servidor obtenía el error PolarSSL: error parsing config private key : PKCS5 - Requested encryption or digest alg not available.

La solución que encontré consiste en reemplazar la clave privada encriptada de los archivo .ovpm por una clave privada en formato RSA. Os dejo la forma de hacerlo.

Para empezar, nos vamos a la siguiente carpeta

1cd /etc/openvpn/easy-rsa

Reseteamos la clave privada del certificado, en mi ejemplo carlos, la nueva clave estará en formato RSA ,

 1sudo ./easyrsa set-rsa-pass carlos
 2
 3[sudo] password for pi:
 4
 5Note: using Easy-RSA configuration from: ./vars
 6
 7If the key is currently encrypted you must supply the decryption passphrase.
 8You will then enter a new PEM passphrase for this key.
 9
10Enter pass phrase for /etc/openvpn/easy-rsa/pki/private/carlos.key:
11writing RSA key
12Enter PEM pass phrase:
13Verifying - Enter PEM pass phrase:
14
15Key passphrase successfully changed

Editamos la nueva clave

1sudo nano pki/private/carlos.key

Y copiamos la clave privada incluyendo la cabecera y el pie (-----BEGIN RSA PRIVATE KEY-----)....(-----END RSA PRIVATE KEY-----).

Editamos el archivo .ovpn :

1sudo nano pki/carlos.ovpn

Y reenplazamos la clave privada (-----BEGIN ENCRYPTED PRIVATE KEY-----)........(-----END ENCRYPTED PRIVATE KEY-----) con la clave privada RSA que hemos copiado en el paso anterior, incluyendo la cabecera y el pie, guardamos y utilizamos el nuevo archivo carlos.ovpm para configurar el cliente de nuestro dispositivo para acceder al servidor VPN.

Con estos pasos solucioné el problema.