Как отключить openvpn linux

Обновлено: 05.07.2024

Команды OpenVPN

OpenVPN - очень гибкое, удобное, а главное быстрое и безопасное, решение для построения виртуальных частных сетей VPN. В данной статье я попытаюсь наиболее подробно описать основные команды, используемые в OpenVPN.

Приведенные в статье команды без "--" (двумя знаками дефиса) перед командой должны быть использованы в конфигурационном файле, команды с "--" в начале используются только из командной строки. Подробности использования команд и их параметры - man openvpn.

remote < host > - определяет удаленный конец туннеля. Могут использоваться записи IP и DNS.

local < host > - определяет локальный ip или имя хоста, на котором будет работать OpenVPN. Актуально, если на локальной машине несколько адресов.

dev < device > - определяет какой использовать тип устройства tun или tap. Например:
dev tun
или
dev tap
При одном из таких указаний будет использован свободный интерфейс tun или tap. Так же можно явно указывать номер виртуального интрефейса, например tun0.

port < port number > - указывает на каком порту будет работать OpenVPN (локально и удаленно).

proto < proto > - какой протокол будет использоваться. Возможные значения: udp, tcp, tcp-client, tcp-server. С первыми двумя все ясно, а на последних двух остановимся чуть подробнее:
tcp-client - сам пытается установить соединение
tcp-server - только ждет подключений
Примечательно, что с использованием протокола udp VPN будет работать чуть быстрее, чем tcp. Но в плане стабильности работы лучше выбирать tcp (как показывает практика, VPN-соединение более устойчиво)

remote-random - если указана данная опция и в random перечисленно несколько удаленных хостов, то OpenVPN в случайном порядке будет к ним подключаться. Применяется для балансировки нагрузки.

float - позволяет удаленному хосту изменять IP во время работы туннеля. Соединение при этом не разрывается.

ipchange < cmd > - выполняет скрипт или команду указанную в < cmd >, если IP сменился. Пример:
ipchange script-ip.sh

connect-retry < seconds > - пробует переподключиться через указанное время в секундах, если соединение было разорвано.

connect-retry-max < n > - максимальное количество повторов если соединение было разорвано

resolv-retry < seconds > - если OpenVPN не удалось узнать имя удаленного хоста по DNS, то через указанное количество секунд попытаться переподключиться.

lport < port > - указывает на локальный порт для использования OpenVPN

rport < port > - аналогично для удаленного порта. Пример:
rport 8000 - OpenVPN будет пытаться подключится к удаленному порту 8000

nobind - использовать динамический порт для подключения (только для клиента)

shaper < bytes > - указывает скорость передачи данных в байтах для исходящего трафика (только для клиента)

tun-mtu < mtu size > - устанавливает максимальный размер MTU. По умолчанию tun-mtu равен 1500. Использование:
tun-mtu 1200

dev-node < interface name > - устанавливает имя виртуального интерфейса. Например:
dev-node openvpn1

ifconfig - устанавливает локальный IP и маску подсети для туннельного интерфейса. Например:
ifconfig 10.3.0.1 255.255.255.0

server < network > < mask > - автоматически присваивает адреса всем клиентам (DHCP) в указанном диапазоне с маской сети. Данная опция заменяет ifconfig и может работаеть только с TLS-клиентами в режиме TUN, соответственно использование сертификатов обязательно. Например:
server 10.3.0.0 255.255.255.0
Подключившиеся клиенты получат адреса в диапазоне между 10.3.0.1 и 10.3.0.254.

server-bridge < gateway > < mask > < pool > - сервер в режиме моста для TAP устройств. Пример:
server bridge 10.3.0.1 255.255.255.0 10.3.0.128 10.3.0.254
Клиентам будут выданы адреса в диапазоне 10.3.0.128 - 10.3.0.254, в качестве шлюза будет указан 10.3.0.1.

mode server - переключает OpenVPN в режим сервера (начиная с 2-й версии)

mode p2p - данная опция идет по умолчанию.

Опции в режиме сервера

push < options > - передача клиенту конфигурационных параметров. Пример:
push "route 192.168.0.0 255.255.255.0"

Аналогично с помощью push клиенту могут передаваться следующие параметры:

route
route-gateway
route-delay
redirect-gateway
inactive
ping, ping-exit, ping-restart
persist-key, persist-tun
comp-lzo
dhcp-option
ip-win32

Последние две опции применимы только для Window-клиентов. Например передадим Windows-клиенту адрес DNS-сервера 11.11.11.11:
push "dhcp-option DNS 11.11.11.11"

comp-lzo - параметр сжатия трафика, идущего через виртуальный туннель. Может принимать значения yes, no, adaptive. Последнее используется по умолчанию.
Например:
comp-lzo yes - принудительно включить сжатие
comp-lzo no - принудительно отключить сжатие
comp-lzo adaptive - адаптивный режим.

Команды и параметры при работе с сертификатами x509 и параметрами шифрования

cipher < alg > - указываем алгоритм шифрования. Например:
cipher AES-256-CBC
Рекомендуется использование шифров в режиме CBC (Cipher Block Chaining).

keysize < n > - размер ключа в битах. Например:
keysize 128

auth < alg > - алгоритм хэширования. Пример:
auth SHA1

df < file > - файл с ключем Диффи-Хелмана

ca < file > - файл сертификата для CA

cert < file > - сертификат локальной машины

key < file > - локальный ключ машины

tls-server - явно указывает, что данный хост является tls-server

tls-client - соответственно tls-client

pkcs12 < file > - указываем файл (PKCS12), который содержит в себе сертификат, ключ и CA в одном файле. Пример:
pkcs12 /file

crl-verify < file > - список отозванных сертификатов, т.е. blacklist.

no-replay - отключает защиту OpenVPN от атаки повторного воспроизведения (replay attack). Крайне не рекомендуется отключать!

no-iv - отключает использование вектора инициализации шифра (IV). Крайне не рекомендуется отключать!

Последние две опции очень сильно снижают безопасность OpenVPN, крайне не рекомендуется их использование.

secret < file > - включает режим шифрования и аутентификации на статических ключах. В качестве параметра использует заранее сгенерированный, командой --genkey, файл. Например:
secret key.txt

Все доступные алгоритмы шифрования можно просмотреть выполнив из командной строки:
openvpn --show-ciphers

Алгоритмы хэширования:
openvpn --show-digests

Показать все доступные TLS-шифры (TLS используется только для шифрования канала управления)
openvpn --show-tls

Показать все доступные крипто-устройства в системе (если такие имеются):
openvpn --show-engines

Для улучшения безопасности рекомендовано запускать все сервисы с минимальными правами. Следующими двумя командами мы укажем с правами какого пользователя и группы будет работать openvpn:

user nobody
group nogroup

Где, соответственно, nobody и nogroup имена пользователя и группы.

Команды для управления маршрутизацией

Обозначение: VPN-хост - удаленная сторона (удаленный хост)

route < network > - устанавливает указанную маршрутизацию на VPN-хосте, после успешного запуска туннеля. Пример:
route 10.0.10.0 255.255.255.252

route-gateway < IP > - устанавливает шлюз на VPN-хосте. Пример:
route-gateway 192.168.0.22
После успешного запуска виртуального туннеля клиенту будет задан шлюз 192.168.0.22

route-delay < seconds > - указывает подождать n-секунд перед установкой маршрутов. Пример:
route-delay 5
Т.е. через 5 секунд после установки туннеля будут заданы маршруты.

route-up < cmd > - выполнить скрипт или программу < cmd > после установки маршрутов. Пример:
route-up /script.sh

redirect-gateway - установить шлюзом по умолчанию удаленный сервер. Т.е. когда удаленный пользователь подключается к нашему серверу, то ему будет задан шлюз по умолчанию на наш сервер.

Команды для управления туннелем

ping < seconds > - указывает отсылать ping на удаленный конец тунеля после указанных n-секунд, если по туннелю не передавался никакой трафик. Пример:
ping 10

ping-restart < seconds > - если за указанное время не было получено ни одного пакета с удаленной стороны, то перезапускать туннель. Пример:
ping-restart 60 - если в течении 60 секунд не было получено ни одного пакета, то туннель будет перезапущен.

ping-timer-rem - позволяет перезапускать туннель, только когда указан удаленный адрес.

persist-tun - данная опция оставляет без изменения устройства tun/tap при перезапуске OpenVPN.

persist-key - указывает не перечитавать файлы ключей при перезапуске туннеля.

resolv-retry < seconds > - устанавливает время в секундах для запроса об удаленном имени хоста. Актуально только если используется DNS-имя удаленного хоста. Пример:
resolv-retry 86400
inactive < seconds > - после n-секунд неактивности устройство TUN/TAP автоматически отключется. Пример:
inactive 120

ping-exit < seconds > - если за указанные n-секунд не было получено ни одного пакета, то отключать OpenVPN. Пример:
ping-exit 120

keepalive < seconds > < seconds > - является совмещением сразу двух команд - ping и ping-restart. Использует сразу два параметра в секундах, перечисленных через пробел. Пример:
keepalive 10 180
Означает следующее: каждые 10 секунд посылать ping на удаленный хост, и, если за 180 секунд не было получено ни одного пакета - то перезапускать туннель.

persist-local-ip < IP > - оставлять неизменными локальный IP адрес и номер порт, если туннель был перезапущен.

persist-remote-ip < IP > - оставлять неизменными удаленный IP адрес и номер порт, если туннель был перезапущен.
persist-remote-ip 192.168.50.1

Методы аутентификации

auth-user-pass-verify < script > < method > - указывается только на серверной стороне.
< script > - путь к скрипту, который будет производить авторизацию. Скрипт должен возвращать 0 если авторизация успешна, и соответственно, 1 если авторизация не успешна.
< method > - метод авторизации, может быть двух типов: via-env и via-file

auth-user-pass < file >- указывается на клиентской стороне. Параметр не обязателен, если он отсутствует то будет предложено ввести пару логин/пароль.
должен содержать имя пользователя и пароль в двух строчках:
username
password

client-cert-not-required - отключает авторизацию по сертификатам.

Работа с прокси

Если требуется авторизация на прокси-сервере:

Так же после authfile требуется указать метод авторизации. Можно оставить auto для автоматического выбора метода авторизации или указать явно через auth-method.
auth-method может быть трех видов "none", "basic" или "ntlm".
Используется в OpenVPN начиная с версии 2.1.

socks-proxy < server port > - указываем сокс-прокси сервер. Пример:
socks-proxy 192.168.0.12 8080

socks-proxy-retry - переподключаться, если соединение было разорвано.

auto-proxy - автоматически определять прокси-сервер. Требуется версия OpenVPN 2.1 и выше.

Скриптинг

up < command >- выполнить команду после запуска устройства TUN/TAP. Пример:
up script-up.sh

up-delay < seconds > - подождать n-секунд перед запуском команды указанной в up. Пример:
up-delay 5

down < command > - выполнить команду когда интерфейс TUN/TAP выключится. Пример:
down script-down.sh

down-pre - выполнить команду, указанную в down перед выключением интерфейса TUN/TAP

up-restart < command > - выполнить команду после каждого реконнекта

route-up < command > - выполнить команду после установки сетевых маршрутов. Пример:
route-up script.sh

learn-address < command > - выполнить указанную команду, если ip удаленной стороны изменился.

ipchange < command > - выполнить команду, если ip сервера изменился.

client-connect < command > - выполнить команду, когда клиент подключился.

client-disconnect < command > - выполнить команду, когда клиент отключился.

Команды отладки и поиска неисправностей

Логирование

log < file > - указываем лог-файл. Если данный параметр не указан, то весь вывод openvpn будет производиться в stdout.

status < file > - указывает путь к статус-файлу, в котором содержится информация о текущих соединениях и информация о интерфейсах TUN/TAP.

Разные вопросы

В. Чем отличаются виртуальные устройства tun и tap?
О. TUN - туннель, соединение по которому указывается по типу: локальный IP < --- > удаленный IP. Например, при явном указании ifconfig:
--ifconfig 10.3.0.2 10.3.0.1
в этом примере 10.3.0.2 - локальный IP, 10.3.0.1 - удаленный IP
TAP - эмулирует виртуальную ethernet карточку, для которой требуется указывать локальный IP и маску подсети. Например:
--ifconfig 10.3.0.2 255.255.255.0

В. Для чего нужны файлы serial и index.txt при генерации ключей с easy-rsa?
О. Эти два файла используются в качестве временной базы данных, используемой при генерации ключей. Должны находиться в том каталоге, где и ключи.

Если клиент получил ошибку AUTH_FAILED
то он перестает переподключение и тупо гасит демона/сервис, помогает только перезапуск ОС или ручной запуск клиента

Опция "connect-retry" в данном случае поможет заставить клиента переподключаться принудительно даже при ошибке AUTH_FAILED ?

В данной инструкции подробно описан процесс настройки клиента OpenVPN на примере операционных систем Windows и Linux. Также, с ее помощью можно настроить скиента на Android.

Установка

Windows

Заходим на официальную страницу загрузки openvpn и скачиваем клиента для нужной Windows:

Скачиваем OpenVPN для Windows

Запускаем скачанный файл и устанавливаем программу, нажимая «Далее».

Linux CentOS

Устанавливаем репозиторий EPEL:

yum install epel-release

yum install openvpn

Linux Ubuntu

apt-get install openvpn

Android

Установка выполняется из Google Play. Набираем в поиске OpenVPN Connect - нажимаем установить и принимаем условия.

Настройка

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

В системах Windows создаем файл config.ovpn в папке %programfiles%\OpenVPN\config.

* имя файла может быть любым, расширение должно быть .ovpn.

Для создания конфигурационного файла в Linux выполняем команду:

* чтобы служба openvpn автоматически выполняла соединение, необходимо, чтобы конфигурационный файл назывался client.conf.

Пример конфигурационного файла

client
dev tun
proto udp
remote 192.168.0.15 443
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
dh dh2048.pem
tls-client
tls-auth ta.key 1
float
keepalive 10 120
comp-lzo
verb 0

Параметры конфигурационного файла

Наиболее полный и актуальный список параметров для OpenVPN можно получить командой openvpn --help (в Linux и Windows).

Сертификаты

Клиентские сертификаты генерируются на стороне сервера. Процедура следующая.


Подключение к Интернету через VPN становится все более популярным, поскольку интернет-провайдеры и правительства проявляют все больший интерес к вашим привычкам просмотра. Но что хорошего в VPN, если вы забыли его использовать? Или если соединение разрывается, а вы не замечаете? Если вы уже настроены анонимно просматривать веб-страницы, установка аварийного выключателя VPN на рабочем столе Linux гарантирует, что ваши данные зашифрованы.

Экстренный переключатель VPN – это набор правил брандмауэра, которые останавливают весь интернет-трафик, когда ваша VPN не подключена. Они полностью автоматизированы, а аварийный выключатель срабатывает только тогда, когда возникает проблема с безопасным соединением.

Если вы когда-либо пинали себя за просмотр, когда ваша VPN была отключена, даже не замечая, создание аварийного выключателя VPN с UFW – довольно простое решение.

Что такое UFW?

UFW – это набор скриптов, которые действуют как оболочка для межсетевого экрана Linux iptables. iptables – мощный инструмент, но его не так просто использовать. UFW значительно упрощает создание полезного набора правил, особенно если вы не опытный пользователь Linux, который знает iptables наизусть.

Если у вас когда-либо возникали проблемы с сетью Linux, но вам по-прежнему нужен безопасный и удобный брандмауэр, я рекомендую UFW.

Прежде чем вы начнете

Перед тем, как начать, рекомендуется убедиться, что ваша система обновлена. В этом руководстве я буду использовать Ubuntu 18 LTS. Если вы используете операционную систему Linux на основе Debian, действия будут идентичны.

Используйте следующие команды для обновления вашей операционной системы и установленного программного обеспечения:

После завершения выполнения команд вы готовы приступить к настройке аварийного выключателя VPN с помощью UFW.

Отключение IPv6

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

Этот шаг не является обязательным, и при необходимости его можно пропустить.

Как отключить IPv6

Вам нужно будет отключить IPv6 как для операционной системы, так и для UFW, чтобы быть уверенным, что ваш VPN-провайдер не будет передавать трафик IPv6 в незашифрованном виде. В Ubuntu это означает, что вам нужно отредактировать следующие файлы:

/etc/sysctl.conf для отключения сети IPv6

/ etc / default / ufw, чтобы запретить UFW автоматически создавать правила IPv6


Для начала откройте /etc/sysctl.conf для редактирования с помощью следующей консольной команды:

Прокрутите файл до тех пор, пока не увидите запись для net.ipv6.conf и добавьте следующие три строки в конец файла конфигурации:

Сохраните изменения с помощью Ctrl + X, Y и заставьте систему перезагрузить sysctl.conf и примените ваши изменения с помощью команды:


Вы можете убедиться, что изменения были успешно применены, просмотрев файлы в каталоге / proc, которые содержат информацию о вашей системе. В этом случае используйте следующую команду, чтобы убедиться, что IPv6 отключен на уровне операционной системы:

Если ваша система отображает 1 в качестве вывода, IPv6 был успешно отключен.


Затем вам нужно запретить UFW автоматически создавать правила брандмауэра IPv6. Даже через протокол был отключен на уровне операционной системы, UFW упорно настаивает на добавлении правил IPv6, пока это не было сказано остановиться. Это уменьшит беспорядок в вашем наборе правил и может избавить вас от некоторых затруднений в дальнейшем.

Чтобы отключить IPv6 в UFW, откройте файл / etc / default / ufw для редактирования с помощью этой команды:

Прокрутите до тех пор, пока не найдете параметр для правил IPv6, и измените его, чтобы он читал:

Нажмите Ctrl + X, Y, чтобы сохранить изменения. Если вы уже включили UFW перед запуском этого проекта, вам необходимо отключить его с помощью следующей команды:

Теперь, когда IPv6 отключен во всей системе, вы можете перейти к сбору информации, необходимой для настройки аварийного выключателя VPN с помощью UFW.

Получение нужной информации

Чтобы настроить аварийный выключатель VPN в UFW, вам понадобятся три части информации:

  • Публичный IP – адрес сервера VPN подключения к
  • Порт и протокол сервер использует для связи
  • Подсети вашей локальной сети

Эти настройки можно найти в файле конфигурации вашего VPN-сервера. Чтобы получить информацию о вашем подключении, вам нужно просмотреть конфигурацию и записать свои настройки.

Показать настройки VPN-сервера

В большинстве случаев ваша конфигурация VPN будет храниться в / etc / openvpn, но ее можно настроить в любом месте. Если вы не видите файл * .ovpn или * .conf в / etc / openvpn, проверьте свой домашний каталог.


Нужные вам порт, протокол и общедоступный IP-адрес будут в верхней части файла конфигурации. Я использовал эту команду для отображения своего, как указано выше:

Запишите все три, так как они понадобятся вам для настройки UFW.

Показать подсеть

Вам также необходимо знать подсеть LAN, в которой находится ваш компьютер. Во многих случаях это будет 192.168.1.0/24, но если вы не уверены, рекомендуется подтвердить перед настройкой аварийного выключателя VPN с помощью UFW.


Есть несколько способов получить нужную информацию, но я рекомендую эту команду:

Вы увидите запись inet для каждого сетевого адаптера в вашей системе. В большинстве случаев будет всего две записи; один для адаптера обратной связи и один для адаптера локальной сети. Игнорируйте адаптер обратной петли, подсеть которого всегда будет 127.0.0.1/8, и запишите другую запись.

Настройка аварийного выключателя VPN с помощью UFW

Получив необходимую информацию, вы сможете настроить аварийный выключатель VPN с помощью UFW. Этот процесс состоит из трех этапов:

  • Явно разрешите трафик LAN, чтобы сетевые службы работали даже при отключении VPN
  • Запретить весь другой трафик, если он не проходит через зашифрованное соединение
  • Включите UFW, чтобы активировать набор правил

Когда вы закончите, аварийный выключатель VPN станет активным. Все настройки останутся активными, даже если вы перезагрузите компьютер.

Разрешить местный трафик

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

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


Вам нужно знать свою подсеть LAN из предыдущего шага и использовать эту подсеть вместо моей по адресу 192.168.1.0/24.

Используйте следующие команды, чтобы разрешить доступ к вашему компьютеру по локальной сети:

Вы должны получить подтверждение при добавлении каждого правила, как указано выше.

Настройте аварийный выключатель VPN

Затем вы настроите сам аварийный выключатель. Вам нужно будет ввести всего 4 или 5 команд, но это полностью отключит ваше интернет-соединение при отключении VPN.

Для начала установите политику по умолчанию, чтобы запретить весь трафик с помощью этих двух команд:

Затем добавьте исключение в набор правил, позволяющее подключиться к серверу VPN. Без этой строки вы не сможете пройти аутентификацию и ваш сеанс VPN не сможет успешно начаться. Используйте порт VPN , протокол и общедоступный IP-адрес, которые вы записали на предыдущем шаге.

Убедившись, что у вас есть необходимая информация, запустите эту команду со своими настройками вместо моих:

Теперь, когда вы можете подключиться к VPN через брандмауэр, вам нужно будет написать одно или два правила, заставляющих весь исходящий трафик проходить через это соединение. В этом руководстве я предполагаю, что ваша VPN подключается с помощью сетевого устройства tun0, поскольку это значение по умолчанию.


Если вам нужно подтвердить, вы можете подключиться к своей VPN и запустить ip addr | grep inet снова. Вы увидите дополнительную запись для VPN-подключения и сможете выбрать имя своего туннельного адаптера VPN из перечисленной информации.

Когда вы будете уверены, что знаете, какое сетевое устройство использует ваша VPN, запустите эту команду, чтобы заставить весь исходящий трафик использовать VPN:

При желании вы можете разрешить подключение через VPN. Например, у вас может быть клиент BitTorrent с веб-интерфейсом, к которому необходимо подключиться из Интернета, или такая служба, как Plex, которая требует входящих подключений через VPN. При необходимости выполните эту команду, чтобы разрешить входящие соединения:

После того, как вы выполнили последнюю команду, ваш аварийный выключатель VPN готов к работе.

Включить UFW

Включить UFW с вашим индивидуальным набором правил просто. Выполните эту команду, и UFW запустится при загрузке:

Если вам нужно отключить аварийный переключатель, вы можете использовать эту команду:

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


Конечно, легко проверить, активен ли UFW или нет, и какие правила применяются к вашей сети. Проверьте статус UFW с помощью этой команды:

Это все, что нужно для настройки UFW, но есть несколько дополнительных шагов, которые я рекомендую вам предпринять, чтобы немного упростить использование OpenVPN с аварийным переключателем.

Настройка вашего VPN для автоматического подключения

Хотя этот шаг не является обязательным, установка аварийного выключателя не будет полезна, если вы не подключитесь к своей VPN автоматически. OpenVPN известен своей громоздкостью из коробки, но есть несколько приемов, которые вы можете использовать для упрощения подключения к вашей VPN.

Вот что я рекомендую:

  • Запустите OpenVPN как службу, используя файл * .conf вместо профиля * .ovpn
  • Сохраните свое имя пользователя и пароль, чтобы OpenVPN мог подключаться автоматически
  • Используйте chmod, чтобы заблокировать конфигурацию VPN

Если вы реализуете эти три предложения, вы сможете подключиться к своей VPN автоматически, зная, что ваши учетные данные безопасны. Вы также сможете управлять своим VPN-соединением с системной консоли, что значительно упрощает остановку и перезапуск VPN-соединения.

Запустите OpenVPN как услугу

У большинства людей конфигурация VPN сохраняется с расширением файла * .ovpn. Но если вы измените расширение на * .conf и убедитесь, что файл находится в / etc / openvpn, вы сможете управлять подключением, как и любой другой системной службой.


Настроить соединение OpenVPN для работы в качестве службы так же просто, как переименовать файл. Сначала переместите существующий профиль * .ovpn в / etc / openvpn, если его там еще нет.

Затем переименуйте профиль, чтобы присвоить ему расширение файла * .conf. В моем случае я сохранил профиль OpenVPN как nord-usa.ovpn, поэтому я воспользуюсь следующей командой, чтобы переименовать его:


После переименования вы можете запускать и останавливать OpenVPN, как и любую другую службу systemd. Например, я бы использовал эту команду для подключения:

И эту команду отключить:

Сохраните ваше имя пользователя и пароль

В вашем профиле OpenVPN есть строка, которая сообщает вашему клиенту, как пройти аутентификацию. Некоторые организации используют ключи RSA, но почти для каждой потребительской VPN требуется имя пользователя и пароль. С помощью одного изменения в этой строке вы можете сохранить свой пароль, и вам больше никогда не будет предлагаться войти в систему.


Начните с открытия вашего профиля OpenVPN для редактирования. Вы захотите заменить правильное имя файла, но я использовал эту команду:

Прокрутите, пока не найдете строку с надписью auth-user-pass, и измените ее следующим образом:


Это указывает OpenVPN искать ваши учетные данные в / etc / openvpn / passwd. Все, что вам нужно сделать, это создать этот файл со своим именем пользователя и паролем, и OpenVPN подключится автоматически. Используйте эту команду, чтобы создать файл и открыть его для редактирования:

Структура очень проста, ваше имя пользователя находится в первой строке, а ваш пароль – во второй. Убедитесь, что она выглядит, как у меня выше, а затем сохранить с помощью Ctrl + X, Y .

Теперь попробуйте снова подключиться с помощью этой команды, подставив имя своего конфига:

Вы заметите, что больше нет запросов на имя пользователя и пароль, и ваш сеанс VPN начинается немедленно.

Заблокируйте конфигурацию

Каждый раз, когда вы сохраняете имя пользователя и пароль в текстовом файле, вам нужно заблокировать его, чтобы неавторизованные пользователи не могли получить доступ. Также рекомендуется убедиться, что файл, о котором идет речь, принадлежит пользователю root. Обратите внимание, что это представляет собой минимальный уровень безопасности – хеширование файла – лучший вариант, но это выходит за рамки данного руководства.


Чтобы заблокировать конфигурацию, вам нужно предпринять следующие шаги:

  • Измените владельца / etc / openvpn / passwd и вашего профиля VPN на пользователя root
  • Измените разрешения для обоих файлов, чтобы ограничить доступ

Когда вы закончите, ваш список каталогов должен выглядеть так, как показано выше.

Чтобы сменить владельца, вы воспользуетесь такой командой chown, заменив имя своего профиля OpenVPN на мое:

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

Чтобы изменить разрешения, используйте эти команды:

Когда вы закончите, перечислите содержимое каталога OpenVPN с помощью этой команды:

Вы увидите, что владельцем теперь является root, и только root имеет доступ для чтения к файлам. Когда вы закончите блокировать права доступа к файлам, можно безопасно настроить OpenVPN на автоматический запуск при загрузке.

Автоматическое подключение к вашей VPN

Все, что осталось, – это сообщить systemd, что вы хотите, чтобы OpenVPN подключался при загрузке вашего компьютера. Вы можете сделать это с помощью одной команды, заменив имя вашего профиля на nord-usa :

Вы закончили, и OpenVPN теперь будет подключаться каждый раз, когда вы запускаете свой компьютер. Он полностью защищен аварийным переключателем UFW, и вы можете быть уверены, что незашифрованный трафик не покинет сеть с вашей рабочей станции.

Руководство: Настройте OpenVPN для автоматического запуска в systemd Linux

Преимущества автоматического VPN- подключения – много. Но, в частности, это будет держать ваш интернет-трафик в тайне. Более новый системный Linux заставляет нас настроить наш загрузочный скрипт для OpenVPN, чтобы он работал. Это руководство зависит от этой настройки OpenVPN. Узнайте, как настроить OpenVPN для автоматического запуска в systemd Linux! [ Читать: Руководство: Настроить автозапуск OpenVPN-соединения с Linux ]

Требования к автозапуску OpenVPN в systemd Linux

Прежде чем вы начнете настраивать OpenVPN для автоматического запуска в systemd Linux, вам понадобится несколько предварительных условий:

Настройте OpenVPN для системного Linux

Теперь давайте настроим OpenVPN для автоматического запуска для systemd Linux. Сначала откройте терминал. Нам нужно изменить поведение по умолчанию OpenVPN. С помощью редактора Nano выполните команду:

Руководство: Настройте OpenVPN для автоматического запуска в systemd Linux

Выполните следующие команды, чтобы показать список возможных файлов vpn.ovpn:

Далее вам нужно решить, к какому файлу vpn.ovpn вы собираетесь автоматически подключаться. Тот, который вы выбираете, должен быть переименован в client.conf, потому что это стандартный способ сделать это в мире OpenVPN. Запустите эту команду:

Измените строку, которая говорит:

Нажмите «Ctrl X» и «Y», чтобы сохранить изменения.

Вставьте свое имя пользователя в первую строку и пароль одну секунду, затем нажмите «Ctrl X» и «Y», чтобы сохранить файл.

Эксклюзивное предложение IPVanish VPN – всего $ 3,25 в месяц :

Руководства по VPN для
Windows, Android, Ubuntu
Kodi OpenVPN
OSMC на RPi

♦ Скрыть ваш просмотр (без журналов), анонимизировать потоковое вещание и загрузки
♦ Обойти географические / страновые ограничения и доступ к всемирному контенту
♦ Работать на Windows, Mac, Linux, Android, iOS, маршрутизаторе и т.д.
♦ 250 ГБ SugarSync Безопасное хранилище включено
♦ Деньги гарантия возврата – Зарегистрируйтесь сейчас

OpenVPN для systemd Linux: включить службу systemd

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

Читайте также: