Настройка OpenVPN в Fedora.

Краткая инструкция

Начиная с Fedora 27

export VPN_LOGIN=имя_пользователя
cd /tmp; lynx -nopause -accept_all_cookies https://vpn.mephi.ru/vpn/openvpn/$VPN_LOGIN.zip
unzip $VPN_LOGIN.zip
rm -f $VPN_LOGIN.vpn.mephi.ru/*.ovpn
dnf -y install openvpn
mv $VPN_LOGIN.vpn.mephi.ru/* /etc/openvpn/client; rm -rf /tmp/$VPN_LOGIN.vpn.mephi.ru
for f in /etc/openvpn/clientkeys/*; do
	semanage fcontext -a -t home_cert_t $f
done
restorecon -R -v /etc/openvpn/
systemctl enable openvpn-client@$VPN_LOGIN.vpn.mephi.ru.service
systemctl start openvpn-client@$VPN_LOGIN.vpn.mephi.ru.service

Fedora 26 и более ранние версии

export VPN_LOGIN=имя_пользователя
cd /tmp; lynx -nopause -accept_all_cookies https://vpn.mephi.ru/vpn/openvpn/$VPN_LOGIN.zip
unzip $VPN_LOGIN.zip
rm -f $VPN_LOGIN.vpn.mephi.ru/*.ovpn
dnf -y install openvpn
mv $VPN_LOGIN.vpn.mephi.ru/* /etc/openvpn/; rm -rf /tmp/$VPN_LOGIN.vpn.mephi.ru
for f in /etc/openvpn/keys/*; do
	semanage fcontext -a -t home_cert_t $f
done
restorecon -R -v /etc/openvpn/
systemctl enable openvpn@$VPN_LOGIN.vpn.mephi.ru.service
systemctl start openvpn@$VPN_LOGIN.vpn.mephi.ru.service

Подробная инструкция

Установка браузера для скачивания конфигурации

dnf -y install lynx unzip

Скачивание конфигурации (пропустить, если уже скачан)

cd /tmp
lynx -nopause -accept_all_cookies https://vpn.mephi.ru/vpn/openvpn/$VPN_LOGIN.zip

Вместо «$VPN_LOGIN» необходимо подставить имя пользователя требуемой учётной записи, например «iiivanov».

В результате отобразится следующая страница:

   Tehnicheskaya podderzhka: +7 (495) 788-56-99, dob. 9999

   [logo.png]
   [user.png] ________________________________
   [key.png] ________________________________
   LOGIN
   NIYAU MIFI, Upravlenie informatizacii

Необходимо правее «user.png» ввести корпоративное почтовое имя пользователя (например «iiivanov»), правее «key.png» — пароль (от корпоративной электронной почты в домене «@mephi.ru»); после чего нажать кнопку «LOGIN».

В нижней части окна терминала (в статусной строке) появится список предлагаемых действий (скачать или отменить):

	application/zip D)ownload, or C)ancel

Необходимо нажать клавишу «d», чтобы скачать файл с конфигурацией. В результате отобразится следующее окно:

Downloaded link: https://vpn.mephi.ru/vpn/openvpn/$VPN_LOGIN.zip
Suggested file name: $VPN_LOGIN.zip
   
Standard download options:
   Save to disk

Local additions:

Необходимо выбрать «Save to disk» и ещё раз нажать «Enter». После чего можно выйти из браузера, нажав «control+c».

Проверить успешность получения файла с конфигурацией можно командой:

ls -ld $VPN_LOGIN.zip
Результат должен быть похож на:
root@fedora24:/tmp# ls -ld $VPN_LOGIN.zip
-rw-r--r-- 1 root root 5774 Nov 11 21:00 $VPN_LOGIN.zip

Установка OpenVPN

dnf -y install openvpn

Установка конфигурации

Начиная с Fedora 27

cd /tmp
unzip $VPN_LOGIN.zip                                                   # распаковываем
rm -f $VPN_LOGIN.vpn.mephi.ru/*.ovpn                                   # удаляем неиспользуемое
mv $VPN_LOGIN.vpn.mephi.ru/* /etc/openvpn/client                      # устанавливаем конфигурацию
# разрешаем использовать (см. selinux):
semanage fcontext -a -t home_cert_t /etc/openvpn/client/keys/$VPN_LOGIN.vpn.mephi.ru.crt
semanage fcontext -a -t home_cert_t /etc/openvpn/client/keys/$VPN_LOGIN.vpn.mephi.ru.key
semanage fcontext -a -t home_cert_t /etc/openvpn/client/keys/ca_vpn.mephi.ru.crt
restorecon -R -v /etc/openvpn/
systemctl enable openvpn-client@$VPN_LOGIN.vpn.mephi.ru.service               # активируем

Fedora 26 и более ранние версии

cd /tmp
unzip $VPN_LOGIN.zip                                                   # распаковываем
rm -f $VPN_LOGIN.vpn.mephi.ru/*.ovpn                                   # удаляем неиспользуемое
mv $VPN_LOGIN.vpn.mephi.ru/* /etc/openvpn/                             # устанавливаем конфигурацию
# разрешаем использовать (см. selinux):
semanage fcontext -a -t home_cert_t /etc/openvpn/keys/$VPN_LOGIN.vpn.mephi.ru.crt
semanage fcontext -a -t home_cert_t /etc/openvpn/keys/$VPN_LOGIN.vpn.mephi.ru.key
semanage fcontext -a -t home_cert_t /etc/openvpn/keys/ca_vpn.mephi.ru.crt
restorecon -R -v /etc/openvpn/
systemctl enable openvpn@$VPN_LOGIN.vpn.mephi.ru.service               # активируем

Запуск OpenVPN

Начиная с Fedora 27

systemctl start openvpn-client@$VPN_LOGIN.vpn.mephi.ru.service

Fedora 26 и более ранние версии

systemctl start openvpn@$VPN_LOGIN.vpn.mephi.ru.service