Тематические термины: OpenVPN, Linux.
Процедура немного отличается от Easy-RSA 2 по синтаксису, но не по смыслу. В данной статье все команды выполняются на примере операционной системы Linux.
Заходим в каталог с Easy-RSA 3, например:
cd /usr/share/easy-rsa/3.0.3
Создаем файл с настройками:
export KEY_COUNTRY=”RU“export KEY_PROVINCE=”Sankt-Petersburg“export KEY_CITY=”Sankt-Petersburg“export KEY_ORG=”DMOSK COMPANY“export KEY_EMAIL=”[email protected]“export KEY_CN=”DMOSK“export KEY_OU=”DMOSK“export KEY_NAME=”name-openvpn-server.admins24.com“export KEY_ALTNAMES=”name-openvpn-server”
* где KEY_CN и KEY_OU: рабочие подразделения (например, можно указать название отдела); KEY_NAME: адрес, по которому будет выполняться подключение (можно указать полное наименование сервера); KEY_ALTNAMES — альтернативный адрес.
Запускаем скрипт:
Инициализируем PKI:
./easyrsa init-pki
Создаем корневой сертификат:
./easyrsa build-ca
* после вводим дважды пароль и имя сервера.
Формируем ключ Диффи-Хеллмана:
./easyrsa gen-dh
Создаем запрос на сертификат для сервера и после генерируем сам сертификат:
./easyrsa gen-req vpn-server nopass
./easyrsa sign-req server vpn-server
* после ввода команды подтверждаем правильность данных, введя yes и вводим пароль, который указывали при создании корневого сертификата.* nopass можно упустить, если хотим повысить безопасность с помощью пароля на сертификат.
Для создания ta ключа используем команду:
openvpn –genkey –secret pki/ta.key
Сертификаты сервера готовы, остается создать рабочую папку openvpn:
mkdir -p /etc/openvpn/keys
И скопировать в нее ключи:
cp -r pki/* /etc/openvpn/keys/
Пример конфигурационного файла сервера:
vi /etc/openvpn/server.conf
local 192.168.0.15port 443proto udpdev tunca keys/ca.crtcert keys/issued/vpn-server.crtkey keys/private/vpn-server.keydh keys/dh.pemtls-auth keys/ta.key 0server 172.16.10.0 255.255.255.0ifconfig-pool-persist ipp.txtkeepalive 10 120max-clients 32client-to-clientpersist-keypersist-tunstatus /var/log/openvpn/openvpn-status.loglog-append /var/log/openvpn/openvpn.logverb 4mute 20daemonmode servertls-servercomp-lzo
Создаем запрос на сертификат и сам сертификат:
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1
* подтверждаем правильность данных и вводим пароль корневого сертификата.
Из каталога pki на компьютер клиента копируем файлы:
Например:
cp pki/issued/client1.crt pki/private/client1.key pki/dh.pem pki/ca.crt pki/ta.key /tmp
Пример конфигурационного файла клиента:
clientresolv-retry infinitenobindremote 192.168.0.15 443proto udpdev tuncomp-lzoca ca.crtcert client1.crtkey client1.keydh dh.pemtls-clienttls-auth ta.key 1floatkeepalive 10 120persist-keypersist-tunverb 0
В случае, когда необходимо прекратить действие определенного сертификата, вводим:
./easyrsa revoke client1
* здесь мы отзываем сертификат для клиента client1.
Продолжая использовать данный сайт вы принимаете политику конфиденциальности и cookies