Mam wiele kluczy do wygenerowania dla serwera VPN moich klientów. Ilekroć używam easy-rsa do generowania takich kluczy:
./build-key client1
Jest kilka wyników z serią pytań. Wszystkie pytania mają domyślne odpowiedzi zdefiniowane w vars
pliku.
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
Podsumowując, muszę ręcznie nacisnąć następujące klawisze:
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER
y
ENTER
y
ENTER
Zasadniczo akceptuję wszystkie domyślne odpowiedzi i mówię „tak” na dwa ostatnie pytania. Czy istnieją -force
lub -quiet
flagi lub coś, co można używać z build-key
? Jeśli nie, to czy są jakieś sztuczki skryptowe lub bash, których mogę użyć, aby to zrobić za każdym razem? Nie mogę znaleźć niczego na stronach podręcznika na ten temat.
źródło
Najszybciej przychodzi mi do głowy
expect
; pozwala zautomatyzować tego rodzaju interakcje w wierszu poleceń.źródło
Nowa wersja EasyRSA jest teraz dostępna jako pojedynczy plik binarny. Aby zautomatyzować budowanie klucza klienta, możesz teraz użyć pliku „vars” (po prostu umieść go w tym samym katalogu co plik binarny easyrsa):
i użyj pliku binarnego EasyRSA:
źródło
Miałem ten sam problem.
Znalazłem rozwiązanie:
echo -en "\ n \ n \ n \ n \ n \ n \ n \ ny \ ny \ n" | ./build-key client1
źródło
Jest to podobne do tego, którego używam. Mam nadzieję, że to komuś pomaga, zajęło mi to godziny. Upewnij się, że wykonujesz polecenie w katalogu easy-rsa i nie zapomnij o źródłach ./vars
źródło
Zrobiłem opakowanie jak pjz, ale z pakietowaniem wszystkich niezbędnych plików w pojedynczy plik .ovpn, którego można używać bezpośrednio
źródło
Właśnie próbowałem zrobić to samo, generując cicho użytkowników openvpn na polu FreeBSD.
W rezultacie powstał nowy plik, o trafnej nazwie
./build-key-quiet
źródło
źródło
po prostu edytuj plik klucza kompilacji i usuń
--interact
najłatwiejszą metodę, o której wiemźródło