Tengo muchas claves para generar para el servidor VPN de mis clientes. Cada vez que uso easy-rsa para generar las claves de esta manera:
./build-key client1
Hay algunos resultados con una serie de preguntas. Todas las preguntas tienen respuestas predeterminadas que se definen en el vars
archivo.
Generating a 1024 bit RSA private key
............................................++++++
.......................++++++
writing new private key to 'client1.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [US]:
State or Province Name (full name) [CO]:
Locality Name (eg, city) [Denver]:
Organization Name (eg, company) [mycompany]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) [client1]:
Email Address [[email protected]]:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from /etc/openvpn/easy-rsa/openssl.cnf
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName :PRINTABLE:'US'
stateOrProvinceName :PRINTABLE:'CO'
localityName :PRINTABLE:'Denver'
organizationName :PRINTABLE:'mycompany'
commonName :PRINTABLE:'client1'
emailAddress :IA5STRING:'[email protected]'
Certificate is to be certified until Jan 3 20:16:04 2038 GMT (9999 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
En general, tengo que presionar manualmente las siguientes teclas:
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
y
ENTER
y
ENTER
Básicamente solo estoy aceptando todas las respuestas predeterminadas y diciendo 'sí' a las dos preguntas finales. ¿Hay alguna -force
o -quiet
banderas o algo con lo que pueda usar build-key
? Si no, ¿hay trucos de scripting o bash que pueda usar para hacer esto siempre? No puedo encontrar nada en ninguna página de manual al respecto.
fuente
Lo que me viene a la mente más rápido es
expect
; le permite automatizar este tipo de interacciones de línea de comandos.fuente
La nueva versión de EasyRSA viene como un solo binario en este momento. Para automatizar la creación de una clave de cliente, ahora puede usar el archivo "vars" (simplemente colóquelo en el mismo directorio que easyrsa binary):
y usa el binario de EasyRSA:
fuente
Yo tuve el mismo problema.
La solución que encontré fue:
echo -en "\ n \ n \ n \ n \ n \ n \ n \ ny \ ny \ n" | ./build-key client1
fuente
Esto es similar a lo que uso. Espero que esto ayude a alguien, me tomó horas resolver esto. Asegúrese de estar ejecutando en el directorio easy-rsa, y no se olvide de la fuente ./vars
fuente
Hice un contenedor como pjz, pero al agrupar todos los archivos necesarios en un solo archivo .ovpn, que se puede usar directamente
fuente
Acabo de intentar hacer lo mismo, generando silenciosamente a los usuarios de openvpn en el cuadro freeBSD.
Esto resultó en un nuevo archivo, llamado acertadamente
./build-key-quiet
fuente
fuente
simplemente edite el archivo de clave de compilación y elimine la
--interact
opción método más fácil que conozcofuente