При использовании OpenVPN удобнее всего выдавать пользователю один файл со всеми настройками, ключами и необходимыми сертификатами. К счастью, их легко встроить в файл .ovpn.
Итак встраивать, как известно, нужно:
ca.crt
client.crt
client.key
Не плохо было бы автоматизировать процесс. Для этого и написан ovpnWrapper. Это достаточно простой скрипт на python для генерирования и/или агрегирования всех необходимых файлов в один. (Ссылка в конце.)
Используется он в паре с easyrsa3 (семантика более ранних версий не поддерживается). Его нужно поместить в ту же папку, что и easyrsa и немного настроить.
Рассмотрим поближе.
В первой строке необходимо указать путь до интерпретатора python 3.
#!/usr/bin/python3.5
Далее нам интересна строка, где мы указываем путь до папки, в которой хотим хранить сгенерированные файлы .ovpn.
ovpnFolder = os.environ['HOME']+"/ovpn/"
Как видно, по-умолчанию она указывает на папку ovpn/ в домашней директории.
Исправим serverCA, который определяет полный путь к файлу ca.crt
serverCA = '/etc/openvpn/server/ca.crt'
Исправим также commonTLS который должен указывать на нужный файл (добавлено в версии 0.2. Если вам это не нужно, используйте 0.1)
commonTLS = '/etc/openvpn/server/tls.ta'И последнее, но не по значимости, head. Тут указываются все предопределённые настройки.
head = "\ client \n\ tls-client \n\ dev tun \n\ proto udp \n\ remote your.host.name.located.here.! 1194 \n\ cipher AES-256-CBC \n\ resolv-retry infinite \n\ nobind \n\ persist-tun \n\ persist-key \n\ verb 3 \n\ "
Теперь меняем права файлику:
# chmod +x ovpnWrapper.sh
И запускаем, передавая в качестве единственного параметра имя для файлов-сертификата, ключа и сгенерированного .ovpn.
Всё что требуется, читать вывод скрипта (Будьте бдительны: английский).
Вообще у меня easyrsa на каком-то этапе ругался на openssl-1.1.0f но всё что нужно генерировал.
На этом всё. Приложение качать отсюда: https://github.com/developersu/ovpnWrapper/releases/
# ./ovpnWrapper.sh client42Он проверит, не существует ли уже сгенерированных ключа+сертификата клиента, и если нет, то создаст их. Если есть — просто создаст .ovpn файл в указанной выше директории.
Всё что требуется, читать вывод скрипта (Будьте бдительны: английский).
Вообще у меня easyrsa на каком-то этапе ругался на openssl-1.1.0f но всё что нужно генерировал.
На этом всё. Приложение качать отсюда: https://github.com/developersu/ovpnWrapper/releases/
0 коммент.:
Отправить комментарий