У меня OpenVPN настроен и работает нормально, но я хочу добавить к нему новый клиентский ключ. Выходя из документации, я выполнил следующие команды со следующим выводом в поле CentOS.
$ cd /etc/openvpn/easy-rsa
$ source ./vars
NOTE: If you run ./clean-all, I will be doing a rm -rf on /etc/openvpn/easy-rsa/keys
$ ./pkitool client-new
Please edit the vars script to reflect your configuration,
then source it with "source ./vars".
Next, to start with a fresh PKI configuration and to delete any
previous certificates and keys, run "./clean-all".
Finally, you can run this tool (pkitool) to build certificates/keys.
Он также говорит то же самое, если я попробую команду ./build-key client-new
. Есть идеи, почему я не могу этого сделать? Мне нужно сохранить все остальные ключи, мне просто нужен еще один. Спасибо за помощь.
пытаться
. ./vars
который загружает переменные, которые находятся в файле vars.
Не знаю почему, если бы кто-нибудь мог объяснить почему. Я думал, что ./vars просто запустит все команды в скрипте, включая экспорт, так что они будут в вашем env. Anywhay, добавляю доп. у меня перед командой работает.
У меня возникла эта проблема с новой установкой easy-rsa из репозитория ubuntu (16.04).
Для меня решением было создать keys
каталог. Мне также нужно было создать index.txt
и инициализировать serial
.
Так после
source ./vars
Переменная среды KEY_DIR указывает каталог, который должен существовать, который мне пришлось создать и инициализировать.
mkdir -p $KEY_DIR
touch $KEY_DIR/index.txt
echo '1' > $KEY_DIR/serial
Я изменил некоторую информацию о каталоге в файле vars, и это в конечном итоге устранило проблему. Он использовал pwd в качестве каталога для EASY_RSA, и если вы были в неправильном каталоге, у него возникали некоторые странные проблемы. Как только эта проблема была исправлена, я получил еще одну ошибку, которую легко исправить. У меня был зашифрованный ключ ca.key в целях безопасности, и он жаловался на то, что не могу его прочитать, но это было простое исправление расшифровки. Спасибо за помощь.
Если вы используете OpenVPN 2.x, вы можете проверить, вносите ли вы изменения в правильный каталог, возможно, вам придется работать в:
/etc/openvpn/easy-rsa/2.0
Я не знаю, как CentOS упаковывает их установку, но я видел вышеизложенное как решение в нескольких местах.
Вы сможете определить правильные сценарии, посмотрев на сценарии 'vars', выяснив, какой из них указывает переменную KEY_DIR на ту, которую вы фактически используете (например, / etc / openvpn / keys или / etc / openvpn / easy-rsa / ключи или /etc/openvpn/easy-rsa/2.0/keys)
В сценарии `vars 'убедитесь, что следующие' переменные 'будут иметь значимые оценки.
KEY_CONFIG - должен в конечном итоге указывать на действительный файл (надеюсь, правильный файл openssl.cnf)
Например, я 'жестко настроил', чтобы это было 'export KEY_CONFIG = / etc / openvpn / openssl.cnf'
KEY_DIR - это должно указывать на каталог ключей (возможно: / etc / openvpn / keys
другой пример, 'export KEY_DIR = "/ etc / openvpn / keys"'
Как только это сработает, ваши следующие шаги будут
$ sudo su # cd /etc/openvpn/easy-rsa/2.0 # . ./vars # ./build-key new-client-name
Предупреждающее сообщение всегда появляется после запуска. ./vars
если у вас есть файл сертификата, вы можете использовать PuttyGen.exe для его загрузки и экспорта открытого и закрытого ключей отдельно. Это может вам помочь?
Вот некоторые инструкции по использованию PuttyGen.exe, если вы можете щелкнуть эту ссылку: http://www.newartisans.com/2007/09/how-to-administer-openvpn.html
Проверьте свои разрешения на требуемые папки easy-rsa и / etc / ssl ... В моем случае мне пришлось запускать это как root: sudo su Не идеально, и обязательно «выйти» по завершении, чтобы закрыть корневой терминал.