Тематические термины: OpenVPN , Linux .
Процедура немного отличается от Easy-RSA 2 по синтаксису, но не по смыслу. В данной статье все команды выполняются на примере операционной системы Linux.
Подготовка сервера
Сертификаты для сервера
Сертификаты для клиента
Отзыв сертификата
Продление сертификата
Заходим в каталог с Easy-RSA 3:
cd /usr/share/easy-rsa/3.0
Создаем файл с настройками:
vi vars
export KEY_COUNTRY=» RU »
export KEY_PROVINCE=» Sankt-Petersburg »
export KEY_CITY=» Sankt-Petersburg »
export KEY_ORG=» remontka COMPANY »
export KEY_EMAIL=» master@remontka.com »
export KEY_CN=» remontka »
export KEY_OU=» remontka »
export KEY_NAME=» name-openvpn-server.remontka.com »
export KEY_ALTNAMES=»name-openvpn-server»
* где KEY_CN и KEY_OU : рабочие подразделения (например, можно указать название отдела); KEY_NAME : адрес, по которому будет выполняться подключение (можно указать полное наименование сервера); KEY_ALTNAMES — альтернативный адрес.
Запускаем скрипт:
. ./vars
Инициализируем 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.15
port 443
proto udp
dev tun
ca keys/ca.crt
cert keys/issued/vpn-server.crt
key keys/private/vpn-server.key
dh keys/dh.pem
tls-auth keys/ta.key 0
server 172.16.10.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
max-clients 32
client-to-client
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log-append /var/log/openvpn/openvpn.log
verb 4
mute 20
daemon
mode server
tls-server
comp-lzo
Создаем запрос на сертификат и сам сертификат:
./easyrsa gen-req client1 nopass
./easyrsa sign-req client client1
* подтверждаем правильность данных и вводим пароль корневого сертификата.
Или выполняем одной командой без необходимости подтверждения (все данные для сертификата берутся из vars):
./easyrsa build-client-full client1 nopass
Из каталога pki на компьютер клиента копируем файлы:
Например:
cp pki/issued/client1.crt pki/private/client1.key pki/dh.pem pki/ca.crt pki/ta.key /tmp
Пример конфигурационного файла клиента:
client
resolv-retry infinite
nobind
remote 192.168.0.15 443
proto udp
dev tun
comp-lzo
ca ca.crt
cert client1.crt
key client1.key
dh dh.pem
tls-client
tls-auth ta.key 1
float
keepalive 10 120
persist-key
persist-tun
verb 0
В случае, когда необходимо прекратить действие определенного сертификата, вводим:
./easyrsa revoke client1
* здесь мы отзываем сертификат для клиента client1 .
Посмотреть список ранее выданных сертификатов можно в файле index.txt :
cat pki/index.txt
Предположим, что у нас закончился сертификат client1. Для его продления мы можем ввести команду:
./easyrsa renew client1 nopass
* если нужен закрытый ключ с паролем, убираем nopass .
Новые сертификаты мы найдем в каталогах pki/issued и pki/private .
Посмотреть сведения можно командой:
openssl x509 -text -in pki/issued/client1.crt
Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…
Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…
Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…
Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…
YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…
Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…