Назад | Перейти на главную страницу

Установка OpenVPN на Red Hat 8

У меня возникла проблема с установкой и включением OpenVPN 2.4.8 на сервере Red Hat 8, работающем как экземпляр EC2 на AWS.

Я предпринял следующие шаги.

Добавлен репозиторий EPEL (Extra Packages for Enterprise Linux), выполнив следующее.

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Это устанавливает репозиторий без видимых проблем, а затем я устанавливаю OpenVPN.

sudo dnf install openvpn

dnf находит пакет и, похоже, устанавливает его без каких-либо проблем, как показано ниже.

Extra Packages for Enterprise Linux 8 - x86_64                                                                                                                                                                                         1.5 MB/s | 4.0 MB     00:02    
Last metadata expiration check: 0:00:01 ago on Thu Nov 28 16:03:24 2019.
Dependencies resolved.
======================================================================================================================================================================================================================================================================= Package                                                             Arch                                                         Version                                                             Repository                                                  Size 
=======================================================================================================================================================================================================================================================================Installing:
 openvpn                                                             x86_64                                                       2.4.8-1.el8                                                         epel                                                       540 k 
Installing dependencies:
 pkcs11-helper                                                       x86_64                                                       1.22-7.el8                                                          epel                                                        64 k 

Transaction Summary
=======================================================================================================================================================================================================================================================================Install  2 Packages

Total download size: 604 k
Installed size: 1.4 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): pkcs11-helper-1.22-7.el8.x86_64.rpm                                                                                                                                                                                             571 kB/s |  64 kB     00:00     
(2/2): openvpn-2.4.8-1.el8.x86_64.rpm                                                                                                                                                                                                  4.3 MB/s | 540 kB     00:00     
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Total                                                                                                                                                                                                                                  197 kB/s | 604 kB     00:03     
warning: /var/cache/dnf/epel-fafd94c310c51e1e/packages/openvpn-2.4.8-1.el8.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 2f86d6a1: NOKEY
Extra Packages for Enterprise Linux 8 - x86_64                                                                                                                                                                                         1.6 MB/s | 1.6 kB     00:00     
Importing GPG key 0x2F86D6A1:
 Userid     : "Fedora EPEL (8) <epel@fedoraproject.org>"
 Fingerprint: 94E2 79EB 8D8F 25B2 1810 ADF1 21EA 45AB 2F86 D6A1
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
Is this ok [y/N]: y
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                                                                                                               1/1 
  Installing       : pkcs11-helper-1.22-7.el8.x86_64                                                                                                                                                                                                               1/2 
  Running scriptlet: openvpn-2.4.8-1.el8.x86_64                                                                                                                                                                                                                    2/2 
  Installing       : openvpn-2.4.8-1.el8.x86_64                                                                                                                                                                                                                    2/2 
  Running scriptlet: openvpn-2.4.8-1.el8.x86_64                                                                                                                                                                                                                    2/2 
  Verifying        : openvpn-2.4.8-1.el8.x86_64                                                                                                                                                                                                                    1/2 
  Verifying        : pkcs11-helper-1.22-7.el8.x86_64                                                                                                                                                                                                               2/2 

Installed:
  openvpn-2.4.8-1.el8.x86_64                                                                                                      pkcs11-helper-1.22-7.el8.x86_64

Complete!

Если я попытаюсь включить или запустить OpenVPN с помощью sudo systemctl enable openvpn.service / sudo systemctl enable openvpn@server.service или sudo systemctl start openvpn.service / sudo systemctl start openvpn@server.service он не включается или не запускается, как показано ниже.

Failed to enable (or start) unit: Unit file openvpn.service does not exist.

Если я сбегу systemctl | grep openvpn для OpenVPN вообще ничего не возвращается.

После установки OpenVPN через apt на Ubuntu, если я позвоню sudo systemctl status openvpn.service независимо от того, предоставил ли я еще server.conf затем systemctl возвращает мне статус, как показано ниже.

● openvpn.service - OpenVPN service
   Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled)
   Active: inactive (dead)

Это не происходит в Red Hat 8. Итак, мой вопрос: как мне узнать, почему, несмотря на установку OpenVPN через dnf и имея server.conf и сертификаты на месте, когда я пытаюсь управлять службой с systemctl модуль OpenVPN, кажется, на самом деле не установлен?

В рамках /usr/lib/systemd/system каталог, указанные ниже единицы существуют.

openvpn-client@.service
openvpn-server@.service

Если я сбегу sudo systemctl status openvpn-server@server тогда я действительно получаю что-то обратно, но я не могу это запустить, потому что сразу же выходит из строя.

● openvpn-server@server.service - OpenVPN service for server
   Loaded: loaded (/usr/lib/systemd/system/openvpn-server@.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: man:openvpn(8)
           https://community.openvpn.net/openvpn/wiki/Openvpn24ManPage
           https://community.openvpn.net/openvpn/wiki/HOWTO

Я безрезультатно искал решение, поэтому надеюсь, что кто-нибудь может помочь!

Из-за отсутствия подробных журналов ошибок на плакате я предлагаю свое решение здесь. Столкнувшись с той же проблемой на экземпляре AWS RHEL 8.2, я обнаружил, что для запуска службы необходимо изменить некоторые детали конфигурации. Они могут отличаться в зависимости от используемых шаблонов и руководств / блогов.

Обеспечить server.conf находится в правильном каталоге

В зависимости от учебного курса, которому вы следуете, расположение server.conf будут отличаться (если вообще упомянут эту деталь!).

Настроив сервер на Ubuntu раньше, я обычно храню их в /etc/openvpn/. Однако, по всей видимости, для RHEL 8 он должен быть в /etc/openvpn/server, то есть:

cd /etc/openvpn
sudo mv server.conf server/

Создайте папку журнала

Я обнаружил, что необходимо создать /var/log/openvpn папка:

cd /var/log
sudo mkdir openvpn

После выполнения этих команд я обнаружил, что каталог волшебным образом заполнен необходимыми файлами. Мне любопытно посмотреть, есть ли у кого-нибудь такие же результаты.

+ Изменить nogroup к nobody

В server.conf, измените строку, читающую group nogroup к group nobody. Возможно, так оно и есть в вашей конфигурации, но, исходя из опыта работы с Ubuntu, я обнаружил, что это самая большая проблема, которая ломает голову.

Наконец - Запуск службы

Поскольку OP перечислил довольно много команд, которые он пробовал - а другие плакаты предлагали больше - я дам команды, которые сработали для меня:

sudo systemctl enable openvpn-server@server.service

Примечание: Некоторые источники предлагают использовать -f флаг, чтобы заставить его: sudo systemctl -f enable openvpn-server@server.service, но я не счел это необходимым.

Затем:

sudo systemctl start openvpn-server@server.service

И вы сделали!

Похоже, что нет службы, созданной как openvpn@server.service. После установки пакетов необходимо создать файл конфигурации, в этом случае файл должен быть server.conf.

Например:

$ sudo cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn 
$ sudo nano /etc/openvpn/server.conf

После правильной настройки server.conf вы можете использовать команды systemctl.

Попробуй использовать это руководство. Это от Centos7, но похоже, что он совместим с Red Had 8.

Похоже, что служба openvpn еще не включена должным образом. Включите службу openvpn с помощью следующей команды

systemctl enable openvpn@vpnname.service

Вы можете запустить службу OpenVPN вручную, используя следующую команду

systemctl start openvpn@vpnname.service