Автор Тема: OpenVPN - настройка сервера и клиента  (Прочитано 57618 раз)

Оффлайн sla1733

  • Завсегдатай
  • *
  • Сообщений: 18
Re: OpenVPN - настройка сервера и клиента
« Ответ #120 : 04.09.2017 12:35:35 »
Прописал туда правило маршрутизации сети openvpn через сетевой интерфейс, подключенный к внутренней локальной сети сервера, теперь клиенты могут заходить на любой сервис локальной сети

Оффлайн sla1733

  • Завсегдатай
  • *
  • Сообщений: 18
Re: OpenVPN - настройка сервера и клиента
« Ответ #121 : 08.02.2018 16:39:42 »
Можно ли как-то посмотреть подключенных по OpenVpn пользователей, ключи под которыми они подключены к серверу, если сервер настраивался через Web интерфейс?

Оффлайн Alex89

  • Завсегдатай
  • *
  • Сообщений: 14
    • Email
Re: OpenVPN - настройка сервера и клиента
« Ответ #122 : 12.11.2020 16:30:25 »
столкнулся с такой проблемой - при попытке создать VPN соединение на машине с Альт Рабочая станция 8, на стадии выгрузки корневого сертификата выскочила ошибка "Interface does not exist".

Попробую выполнить инструкцию руками в соседней ветке https://forum.altlinux.org/index.php?topic=42331.0 от товарища rabochyITs

кажется нашел решение проблемы, прописано в инструкции https://www.altlinux.org/Alterator-net-openvpn
« Последнее редактирование: 12.11.2020 17:19:23 от Alex89 »

Оффлайн rabochyITs

  • Давно тут
  • **
  • Сообщений: 747
  • Евгений
Re: OpenVPN - настройка сервера и клиента
« Ответ #123 : 12.11.2020 20:14:46 »
Попробую выполнить инструкцию
# ls /etc/openvpn/ -l
итого 20
lrwxrwxrwx 1 root root      37 апр  4  2019 ccd -> ../../var/lib/openvpn/etc/openvpn/ccd
drwxr-x--- 2 root openvpn 4096 ноя 19  2017 client
-rw-r--r-- 1 root openvpn  447 апр 21  2020 client.conf
drwxr-x--- 2 root openvpn 4096 окт  9  2019 keys
-rwxr-x--- 1 root root     104 ноя 19  2017 openvpn-startup
drwxr-x--- 2 root openvpn 4096 ноя 19  2017 server
# cat /etc/openvpn/client.conf
client
dev tun
proto tcp

# основной
remote xxx.xxx.xxx.xxx
# резервный
remote yyy.yyy.yyy.yyy

resolv-retry infinite
keepalive 10 60

nobind
user openvpn
group openvpn

ca   /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key  /etc/openvpn/keys/server.key

status /var/log/ovpngp-status
log /var/log/ovpngp.log

verb 3

# Сжатие по необходимости если стоит на сервере
#comp-lzo

# service openvpn status
openvpn is running
Первое решение не плохое с ifup/ifdown tun0, но время показало, что иногда если сервер openvpn перезагрузят, то клиент может не подняться. Причем на всех linux поднимается на альтах постоянные глюки, когда сделал не как у альтов, а как у всех переведя vpn на сервис, все стало работать без проблем. Главный сервер ребутнулся все ведомые переподключились коректно. Причем главный не известно на чем (ubuntu типа), ведомые на p8p9 старткит альтах, работают стабильно

Оффлайн Alex89

  • Завсегдатай
  • *
  • Сообщений: 14
    • Email
Re: OpenVPN - настройка сервера и клиента
« Ответ #124 : 13.11.2020 14:05:44 »
Не поднимается OpenVPN сервер, т.к. причина думаю в следующем:
1. Начал делать по инструкции Salomatin'а через веб-интерфейс
2. Начал читать глубже и наткнулся на Вашу статью по настройке OpenVPN сервера через конфиги. https://www.altlinux.org/OpenVPN

Выключил сервер черз веб-интерфейс, решил сделать через файлы конфигурации, в итоге он мне выдал после запуска openvpn с "пользовательским" конфигом сервера:
[root@altserver unknown]# openvpn /etc/openvpn/server.conf

Fri Nov 13 13:31:06 2020 WARNING: Using --management on a TCP port WITHOUT passwords is STRONGLY discouraged and considered insecure
Fri Nov 13 13:31:06 2020 OpenVPN 2.4.7 x86_64-alt-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Jun 11 2019
Fri Nov 13 13:31:06 2020 library versions: OpenSSL 1.1.1g  21 Apr 2020, LZO 2.10
Fri Nov 13 13:31:06 2020 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:1194
Fri Nov 13 13:31:06 2020 Diffie-Hellman initialized with 2048 bit key
Fri Nov 13 13:31:06 2020 ROUTE_GATEWAY 10.0.14.1/255.255.255.0 IFACE=enp7s0f0 HWADDR=00:30:48:f5:99:4e
Fri Nov 13 13:31:06 2020 TUN/TAP device tun0 opened
Fri Nov 13 13:31:06 2020 TUN/TAP TX queue length set to 100
Fri Nov 13 13:31:06 2020 /usr/bin/ip link set dev tun0 up mtu 1500
Fri Nov 13 13:31:06 2020 /usr/bin/ip addr add dev tun0 local 10.8.0.1 peer 10.8.0.2
Fri Nov 13 13:31:06 2020 /usr/bin/ip route add 10.0.14.0/24 via 10.8.0.2
RTNETLINK answers: File exists
Fri Nov 13 13:31:06 2020 ERROR: Linux route add command failed: external program exited with error status: 2
Fri Nov 13 13:31:06 2020 /usr/bin/ip route add 10.8.0.0/24 via 10.8.0.2
Fri Nov 13 13:31:06 2020 Could not determine IPv4/IPv6 protocol. Using AF_INET
Fri Nov 13 13:31:06 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
Fri Nov 13 13:31:06 2020 UDPv4 link local (bound): [AF_INET][undef]:1194
Fri Nov 13 13:31:06 2020 UDPv4 link remote: [AF_UNSPEC]
Fri Nov 13 13:31:06 2020 MULTI: multi_init called, r=256 v=256
Fri Nov 13 13:31:06 2020 IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0
Fri Nov 13 13:31:06 2020 IFCONFIG POOL LIST
Fri Nov 13 13:31:06 2020 Initialization Sequence Completed

Нашел по коду https://forums.openvpn.net/viewtopic.php?t=26388, нужно удалить или закоментировать строки в конфиге user nobody group nogroup

Все, я дурак. Убрал одну строчку в конфиге про "route 10.0.14.0 255.255.255.0" и сразу заработало.

Хочу сделать с нуля по инструкции, попробовать запустить сервер и сделать конфиги. Сейчас вроде как заработал.

[root@altserver openvpn]# openvpn /etc/openvpn/server.conf

Fri Nov 13 13:46:06 2020 WARNING: Using --management on a TCP port WITHOUT passwords is STRONGLY discouraged and considered insecure
Fri Nov 13 13:46:06 2020 OpenVPN 2.4.7 x86_64-alt-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Jun 11 2019
Fri Nov 13 13:46:06 2020 library versions: OpenSSL 1.1.1g  21 Apr 2020, LZO 2.10
Fri Nov 13 13:46:06 2020 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:1194
Fri Nov 13 13:46:06 2020 Diffie-Hellman initialized with 2048 bit key
Fri Nov 13 13:46:06 2020 ROUTE_GATEWAY 10.0.14.1/255.255.255.0 IFACE=enp7s0f0 HWADDR=00:30:48:f5:99:4e
Fri Nov 13 13:46:06 2020 TUN/TAP device tun0 opened
Fri Nov 13 13:46:06 2020 TUN/TAP TX queue length set to 100
Fri Nov 13 13:46:06 2020 /usr/bin/ip link set dev tun0 up mtu 1500
Fri Nov 13 13:46:06 2020 /usr/bin/ip addr add dev tun0 local 10.8.0.1 peer 10.8.0.2
Fri Nov 13 13:46:06 2020 /usr/bin/ip route add 10.8.0.0/24 via 10.8.0.2
Fri Nov 13 13:46:06 2020 Could not determine IPv4/IPv6 protocol. Using AF_INET
Fri Nov 13 13:46:06 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
Fri Nov 13 13:46:06 2020 UDPv4 link local (bound): [AF_INET][undef]:1194
Fri Nov 13 13:46:06 2020 UDPv4 link remote: [AF_UNSPEC]
Fri Nov 13 13:46:06 2020 MULTI: multi_init called, r=256 v=256
Fri Nov 13 13:46:06 2020 IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0
Fri Nov 13 13:46:06 2020 IFCONFIG POOL LIST
Fri Nov 13 13:46:06 2020 Initialization Sequence Completed


^CFri Nov 13 13:46:50 2020 event_wait : Interrupted system call (code=4)
Fri Nov 13 13:46:50 2020 /usr/bin/ip route del 10.8.0.0/24
Fri Nov 13 13:46:50 2020 Closing TUN/TAP interface
Fri Nov 13 13:46:50 2020 /usr/bin/ip addr del dev tun0 local 10.8.0.1 peer 10.8.0.2
Fri Nov 13 13:46:50 2020 SIGINT[hard,] received, process exiting

Оффлайн Alex89

  • Завсегдатай
  • *
  • Сообщений: 14
    • Email
Re: OpenVPN - настройка сервера и клиента
« Ответ #125 : 18.11.2020 17:53:11 »
Хочу спросить, больше наверное вопрос информационный.
По теме. Сделал конфиги, при попытке запустить сервер, командой openvpn /etc/openvpn/server.conf стартует, грузит конфигурацию и работает прямо в терминале. Дальше не дает никаких телодвижений выполнить, пока не прервать процесс Ctrl+C.

Иногда при запуске, выдавал что конфигурация уже используется (порт 1194 занят), я так понял что его веб-интерфейс использует параллельно из конфига tun0 (tun0 у меня прописан в обоих конфигах - и в /etc/openvpn/server.conf и в ovpnoptions).

Вопрос - как запустить службу OpenVPN? Она находится в состоянии activating и start. Потом через какое-то время переходит в inactive, а в службах отображается как failed.

Тут понятно - нет конфига, потому что я его переименовал, думал, что сервер возьмет конфигурацию из альтератора с сайта:
[root@altserver ~]# service openvpn status
bash: service: команда не найдена
[root@altserver ~]# systemctl status openvpn
● openvpn.service - LSB: This shell script starts and stops OpenVPN daemons.
   Loaded: loaded (/etc/rc.d/init.d/openvpn; generated)
   Active: failed (Result: exit-code) since Tue 2020-11-17 19:33:24 MSK; 21h ago
     Docs: man:systemd-sysv-generator(8)
  Process: 4685 ExecStart=/etc/rc.d/init.d/openvpn start (code=exited, status=1>

ноя 17 19:33:24 altserver systemd[1]: Starting LSB: This shell script starts an>
ноя 17 19:33:24 altserver openvpn[4685]: Starting openvpn service: No channels >
ноя 17 19:33:24 altserver openvpn[4685]: Configure one or more VPN's and place >
ноя 17 19:33:24 altserver openvpn[4685]: Sample config could be obtained from />
ноя 17 19:33:24 altserver systemd[1]: openvpn.service: Control process exited, >
ноя 17 19:33:24 altserver systemd[1]: openvpn.service: Failed with result 'exit>
ноя 17 19:33:24 altserver systemd[1]: Failed to start LSB: This shell script st>
 ESCOC
pt starts and stops OpenVPN daemons.
vpn; generated)
nce Tue 2020-11-17 19:33:24 MSK; 21h ago

.d/openvpn start (code=exited, status=1/FAILURE)

arting LSB: This shell script starts and stops OpenVPN daemons....
 Starting openvpn service: No channels to start![FAILED]
 Configure one or more VPN's and place configuration files in /etc/openvpn
 Sample config could be obtained from /usr/share/doc/openvpn
envpn.service: Control process exited, code=exited, status=1/FAILURE
envpn.service: Failed with result 'exit-code'.
iled to start LSB: This shell script starts and stops OpenVPN daemons..

Тут он ругается, что порт занят другим процессом:
login as: admin
admin@10.0.14.7's password:
Last login: Wed Nov 18 17:16:22 2020 from 10.0.14.109
[admin@altserver ~]$ su
Password:
[root@altserver ~]# service openvpn status
bash: service: команда не найдена
[root@altserver ~]# systemctl status openvpn

● openvpn.service - LSB: This shell script starts and stops OpenVPN daemons.
   Loaded: loaded (/etc/rc.d/init.d/openvpn; generated)
   Active: activating (start) since Wed 2020-11-18 17:22:02 MSK; 4min 35s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 6336 ExecStart=/etc/rc.d/init.d/openvpn start (code=exited, status=0/SUCCESS)
    Tasks: 0 (limit: 28888)
   Memory: 124.0K
   CGroup: /system.slice/openvpn.service

ноя 18 17:22:02 altserver systemd[1]: openvpn.service: Can't open PID file /run/openvpn.pid (yet?) after start: No such file or directory
ноя 18 17:22:02 altserver openvpn[6480]: /usr/bin/ip addr add dev tun1 local 10.8.0.1 peer 10.8.0.2
ноя 18 17:22:02 altserver openvpn[6480]: /usr/bin/ip route add 10.8.0.0/24 via 10.8.0.2
ноя 18 17:22:02 altserver openvpn[6480]: ERROR: Linux route add command failed: external program exited with error status: 2
ноя 18 17:22:02 altserver openvpn[6480]: Could not determine IPv4/IPv6 protocol. Using AF_INET
ноя 18 17:22:02 altserver openvpn[6480]: Socket Buffers: R=[131072->131072] S=[16384->16384]
ноя 18 17:22:02 altserver openvpn[6480]: TCP/UDP: Socket bind failed on local address [AF_INET][undef]:1194: Address already in use (errno=98)
ноя 18 17:22:02 altserver openvpn[6480]: Exiting due to fatal error
ноя 18 17:22:02 altserver openvpn[6480]: Closing TUN/TAP interface
ноя 18 17:22:02 altserver openvpn[6480]: /usr/bin/ip addr del dev tun1 local 10.8.0.1 peer 10.8.0.2


Здесь при старте службы openvpn он просто замирает:

[root@altserver ~]# systemctl start openvpn


^C
[root@altserver ~]#


Как заставить сервер запускаться и работать на конфигурационных файлах, и как заставить его работать на альтераторе (как он изначально работал)? Конфиги и сертификаты правильные.

Вывод команды systemctl:
nfs-mountd.service          loaded active running   NFS Mount Daemon         
  nfs-server.service          loaded active exited    NFS server and services 
  nscd.service                loaded active running   Name Service Cache Daemon
  nslcd.service               loaded active running   Naming services LDAP clie
● openvpn.service             loaded failed failed    LSB: This shell script st
  org.cups.cupsd.service      loaded active running   CUPS Scheduler           
  polkit.service              loaded active running   Authorization Manager   

Потом создал в /etc/net/ifaces/tun1 и поправил конфиг сервера в /etc/openvpn/server.conf
поменял порт на 1196 и интерфейс dev tun1

[root@altserver openvpn]# service openvpn start


^C
[root@altserver openvpn]# service openvpn status
activating
[root@altserver openvpn]# ^C
[root@altserver openvpn]#

вроде как сервер запустился, но находится в состоянии activating (может так и должно быть):

[root@altserver openvpn]# systemctl status openvpn.service
● openvpn.service - LSB: This shell script starts and stops OpenVPN daemons.
   Loaded: loaded (/etc/rc.d/init.d/openvpn; generated)
   Active: activating (start) since Wed 2020-11-18 17:48:25 MSK; 2min 30s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 7449 ExecStart=/etc/rc.d/init.d/openvpn start (code=exited, status=0/SUCCESS)
    Tasks: 1 (limit: 28888)
   Memory: 1.1M
   CGroup: /system.slice/openvpn.service
           └─7593 /usr/sbin/openvpn --config /etc/openvpn/server.conf --daemon --writepid /var/run/openvpn-server.pid --user openvpn --group openvpn ->

ноя 18 17:48:25 altserver openvpn[7593]: GID set to openvpn
ноя 18 17:48:25 altserver openvpn[7593]: UID set to openvpn
ноя 18 17:48:25 altserver openvpn[7593]: MULTI: multi_init called, r=256 v=256
ноя 18 17:48:25 altserver openvpn[7593]: IFCONFIG POOL: base=10.8.0.4 size=62, ipv6=0
ноя 18 17:48:25 altserver openvpn[7593]: ifconfig_pool_read(), in='CA-server,10.8.0.4', TODO: IPv6
ноя 18 17:48:25 altserver openvpn[7593]: succeeded -> ifconfig_pool_set()
ноя 18 17:48:25 altserver openvpn[7593]: IFCONFIG POOL LIST
ноя 18 17:48:25 altserver openvpn[7593]: CA-server,10.8.0.4
ноя 18 17:48:25 altserver openvpn[7593]: MULTI: TCP INIT maxclients=1024 maxevents=1028
ноя 18 17:48:25 altserver openvpn[7593]: Initialization Sequence Completed
lines 1-20/20 (END)

Спасибо.

Оффлайн rabochyITs

  • Давно тут
  • **
  • Сообщений: 747
  • Евгений
Re: OpenVPN - настройка сервера и клиента
« Ответ #126 : 28.01.2021 16:52:40 »
Добавлю заметку, а то прошло некоторое время и пример с wiki, который я сам и делал, у меня сходу "не завелся".

rpm -qa openssl

openssl-1.1.1i-alt1.x86_64
Создание ключей для OpenVPN тунеля средствами openssl утилиты. / p9 sysv / https://www.altlinux.org/OpenVPN

# Резервная копия оригинального файла
cp /var/lib/ssl/openssl.cnf /var/lib/ssl/openssl.cnf.orig

# Меняем файл
nano -b /var/lib/ssl/openssl.cnf

[ CA_default ] # Параметры в файле nano -b /var/lib/ssl/openssl.cnf
 dir = ./CA # Где все хранится
 certs = $dir/certs # Где хранятся выданные сертификаты
 crl_dir = $dir/crl # Где хранятся выданные crl
 database = $dir/index.txt # индексный файл базы данных.
 unique_subject = no # значение "нет", чтобы разрешить создание
# несколько ctificates с одной теме.
 new_certs_dir = $dir/newcerts # место по умолчанию для новых сертификатов.

 certificate = $dir/cacert.pem # Сертификат CA (-out ./CA/cacert.pem)
 serial = $dir/serial # Текущий серийный номер
 crlnumber = $dir/crlnumber # текущий номер crl
# должен быть закомментирован, чтобы оставить V1 CRL
 crl = $dir/crl.pem # Актуального списка отзыва сертификатов
 private_key = $dir/private/cakey.pem # Закрытый ключ (-keyout ./CA/private/cakey.pem)
 ...
 [ req ] # Параметры  создаваемого ключа, по умолчанию 2048, по закону 1024
 default_bits = 1024
 default_md = sha256
 default_keyfile = privkey.pem
 distinguished_name = req_distinguished_name
 attributes = req_attributes
 x509_extensions = v3_ca # Расширения для добавления в самоподписанный сертификат

# Создаем структуру каталога CA/... в текущей директории 
dir="`pwd`/CA"
mkdir -p $dir
mkdir -p $dir/certs
mkdir -p $dir/crl
touch $dir/index.txt
mkdir -p $dir/newcerts
touch $dir/serial
touch $dir/crlnumber
mkdir -p $dir/private
echo '01' > $dir/serial
echo '01' > $dir/crlnumber


chmod -R u+rw,go-rwx $dir
cd `pwd`


# Создать ключи и сертификат центра сертификации, cakey.pem  и cacert.pem
openssl req -new -x509 -keyout ./CA/private/cakey.pem -out ./CA/cacert.pem

# Создать ключ сервера и сертификат на подпись, server.pem и server.crs
openssl req -new -nodes -keyout ./CA/private/server.pem -out ./CA/certs/server.crs

# Подписать сертификат сервера ключом и сертификатом ($dir/private/cakey.pem, $dir/cacert.pem)
# расположенным, согласно настроек, в файле /var/lib/ssl/openssl.cnf
openssl ca -days 3650 -in ./CA/certs/server.crs -out ./CA/certs/server.crt
# или напрямую указать ключи и сертификат центра сертификации, cakey.pem  и cacert.pem
#openssl ca -cert ./CA/cacert.pem -keyfile ./CA/private/cakey.pem -days 3650 -in server.crs -out server.crt

# Тоже самое с клиенскими ключами
openssl req -new -nodes -keyout ./CA/private/a5.pem -out ./CA/certs/a5.crs
openssl ca -days 3650 -in ./CA/certs/a5.crs -out ./CA/certs/a5.crt

# создание параметров Диффи-Хеллмана (исключительно для сервера)
openssl dhparam -out ./CA/server.dh 1024

Оффлайн rabochyITs

  • Давно тут
  • **
  • Сообщений: 747
  • Евгений
Re: OpenVPN - настройка сервера и клиента
« Ответ #127 : 29.01.2021 16:09:21 »
Создание ключей для OpenVPN тунеля средствами Easy-Rsa скриптов
(продолжение)
# apt-get update && apt-cache search easy rsa | grep easy
easy-rsa - Simple shell based CA utility
Установим пакет и посмотрим версию пакета:
# apt-get install easy-rsa

# rpm -qv easy-rsa
easy-rsa-3.0.6-alt1.noarch
Перейдем в каталог в котором создадим инфраструктуру каталогов для ключей и сертификатов.
# cd /root

Создать структуру каталогов:
# easyrsa init-pki

Создать сорневой сертификат и закрытый ключ центра сертификации (CA):
# easyrsa build-ca

Будет создана примерная структура каталогов (в данном случае уже создан клиентский ключ):
# ls -l ./pki
drwx------ 2 root root 4096 янв 29 13:19 private # Ключ private/ca.key созданный easyrsa build-ca и новые ключи easyrsa gen-req
drwx------ 2 root root 4096 янв 29 13:19 reqs # Неподписанные сертификаты (запросы) easyrsa gen-req
drwx------ 2 root root 4096 янв 29 13:21 certs_by_serial
drwx------ 2 root root 4096 янв 29 13:21 issued # Каталог для подписанных сертификатов easyrsa sign-req
drwx------ 5 root root 4096 янв 29 11:27 renewed
drwx------ 5 root root 4096 янв 29 11:27 revoked
-rw------- 1 root root    0 янв 29 11:27 index.txt.old
-rw------- 1 root root   20 янв 29 13:21 index.txt.attr
-rw------- 1 root root   33 янв 29 13:21 serial
-rw------- 1 root root   33 янв 29 13:21 serial.old
-rw------- 1 root root 4541 янв 29 13:21 safessl-easyrsa.cnf # Файл настройки клон openssl-easyrsa.cnf с
# реальными значениями вместо переменных, удобен для просмотра конфигурации
-rw------- 1 root root 4651 янв 29 11:22 openssl-easyrsa.cnf # Файл настройки с подстановочными переменными шаблон для safessl-easyrsa.cnf
-rw------- 1 root root  492 янв 29 13:21 extensions.temp
-rw------- 1 root root   68 янв 29 13:21 index.txt
-rw-r--r-- 1 root root 1208 янв 28 09:37 ca.crt # Сертификат созданный easyrsa build-ca
-rw-r--r-- 1 root root 8922 янв 29 13:09 vars # Файл изменяющий значения по умолчанию в safessl-easyrsa.cnf
# cat ./pki/openssl-easyrsa.cnf
Цитировать
...
[ CA_default ]
default_days   = $ENV::EASYRSA_CERT_EXPIRE
...
[ req ]
default_bits   = $ENV::EASYRSA_KEY_SIZE
...

# cat ./pki/safessl-easyrsa.cnf
Цитировать
...
[ CA_default ]
dir      = /root/pki            # Where everything is kept
certs      = /root/pki            # Where the issued certs are kept
certificate   = /root/pki/ca.crt       # The CA certificate
private_key   = /root/pki/private/ca.key   # The private key
...
default_days   = 3650         # how long to certify for
...
[ req ]
default_bits   = 1024

# cat ./pki/vars    # https://github.com/OpenVPN/easy-rsa/blob/master/easyrsa3/vars.example
Цитировать
...
set_var EASYRSA_KEY_SIZE   1024
set_var EASYRSA_CERT_EXPIRE   3650
...

Файл ./pki/openssl-easyrsa.cnf создается автоматически.
Файл ./pki/safessl-easyrsa.cnf создается автоматически, но с реальными параметрами влияющими на создание ключей и сертификатов
править его бессмыслено, правка только через файл ./pki/vars
Файл ./pki/vars создаем в ручную и заполняем в формате set_var ПЕРЕМЕННАЯ значение и выполняя команду easyrsa update-db,
переменные значения указанные в файле vars обновляются в файле  safessl-easyrsa.cnf

Создать ключ и запрос на сертификат для сервера OVPN.
Обращаю внимание, что сертификат будет не зашифрован (запаролен), за это отвечает параметр nopass, иначе при каждом старте OpenVPN будет запрашивать этот пароль:
# easyrsa gen-req vpn-server nopass

Создать сам сертификат сервера OVPN:
# easyrsa sign-req server vpn-server

Справка по командам:
# easyrsa help sign-req
  sign-req <type> <filename_base>
 Подпишите запрос на сертификат определенного типа. <type> должен быть известного типа,
например, client, server, serverClient или ca (или типа, добавленного пользователем).
Этот файл запроса должен существовать в каталоге reqs / dir и иметь расширение файла .req.
См. Import-req ниже для импорта запросов из других источников.
Ключи клиентам.
Процесс создания ключей и сертификатов клиентам аналогичен созданию ключей для сервера.
(easyrsa gen-req vpn-key nopass)
(easyrsa sign-req [client, server, serverClient или ca] vpn-key)


Ключ private/ca.key не выдается никому и остается у администратора,
сертификат ca.crt выдается клиенту и серверу к их лично созданным парам ключ-сертификат.

Их местонахождение:
certificate   = /root/pki/ca.crt       # The CA certificate
private_key   = /root/pki/private/ca.key   # The private key

Ключи клиента или сервера после создания:
/root/pki/issued/vpn-server.crt       # The CA certificate
/root/pki/private/vpn-server.key   # The private key

# cat /etc/openvpn/client.conf
...
ca   /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/vpn-server.crt
key  /etc/openvpn/keys/vpn-server.key
...
« Последнее редактирование: 29.01.2021 16:16:48 от rabochyITs »