BOZZA.RU

Сервер в кармане, или просто о сложном

ГлавнаяСтатьиУдаленный доступ (VPN)

Как создать новый клиентский сертификат OpenVPN

Обновлено 05.03.2020 OpenVPNLinux

Имея уже настроенный сервер OpenVPN (см. инструкцию по настройке) рано или поздно придется разрешать подключения для новых пользователей. И сделать это очень просто. Для этого надо выпустить новый клиентский приватный ключ (key) и сертификат (csr).

На всякий случай проверим, какие данные указаны в файле /etc/openvpn/easy-rsa/2.0/vars:

less /etc/openvpn/easy-rsa/2.0/vars

Ищем строки:

export KEY_COUNTRY="COUNTRY_CODE"
export KEY_PROVINCE="YOUR_PROVINCE"
export KEY_CITY="YOUR_CITY"
export KEY_ORG="My Company"
export KEY_EMAIL="email@example.com"

Если эти переменные вас устраивают, то идем дальше.

cd /etc/openvpn/easy-rsa/2.0/
. /etc/openvpn/easy-rsa/2.0/vars
. /etc/openvpn/easy-rsa/2.0/build-key new_client

В указанных командах точка вначале строки - не опечатка.

Команда ". /etc/openvpn/easy-rsa/2.0/vars" экспортирует переменные, сохраненные ранее в нем.

Команда  ". /etc/openvpn/easy-rsa/2.0/build-key new_client" создает в директории "/etc/openvpn/easy-rsa/2.0/keys/" три новые файла:

new_client.crt - сертификат, скопировать на клиента
new_client.csr - оставить в безопасном месте
new_client.key - приватный ключ, скопировать на клиента

Файлы конфига ovpn, ta.key и ca.crt можно взять от существующих клиентов и заменить в них имя сертификата на новый. Но если его у вас под рукой нет, вот пример рабочего файла клиента OpenVPN с MacOS:

client
dev tun
proto udp
remote your_vpn_server_address 2534
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
ns-cert-type server
tls-auth ta.key 1
auth MD5
ca ca.crt
cert new_client.crt
key new_client.key
cipher BF-CBC
comp-lzo
verb 3

Комментарии

Комментариев пока нет.