Поддержка vpn в linux

Как подключиться к VPN

VPN (Virtual Private Network) — это технология, которая позволяет объединить компьютеры, расположенные в разных частях мира в одну виртуальную локальную сеть. В этой сети можно перенаправлять трафик, соответственно, VPN может использоваться для обхода блокировок. В наше время чаще всего используются несколько самых популярных технологий VPN — OpenVPN и WireGuard.

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

Как подключится к OpenVPN

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

1. В командной строке

Этот способ может показаться более сложным для новичков, однако он дает вам больше контроля над тем, что происходит. Если вдруг возникнет какая-либо ошибка, вы сможете посмотреть все подробности о ней. На самом деле, тут всё довольно просто. Выполните команду openvpn от имени суперпользователя и передайте ей в качестве параметра путь к конфигурационному файлу клиента. Например:

sudo openvpn ~/Загрузки/somevpn.conf

Команда может запросить имя пользователя и пароль если это требует сервер.

После этого вы увидите лог подключения и в конце Initialization sequence completed, если всё прошло хорошо.

Или сообщение об ошибке, если подключится не удалось. Если вы хотите чтобы ваша система подключалась к этому VPN автоматически при запуске, то это тоже не сложно сделать. Сначала переместите конфигурационный файл в папку /etc/openvpn:

sudo mv ~/Загрузки/somevpn.conf /etc/openvpn/somevpn.conf

Затем добавьте в автозагрузку systemd юнит openvpn с параметром, который будет указывать какую конфигурацию использовать. В качестве параметра следует передать имя конфигурационного файла в папке /etc/openvpn без .conf. Например:

Читайте также:  Ipv6 отключить linux grub

sudo systemctl enable openvpn@somevpn

Затем вы можете посмотреть состояние подключения:

sudo systemctl status openvpn@somevpn

Или запустить его прямо сейчас:

sudo systemctl status openvpn@somevpn

Конечно, такой вариант не сработает если для подключения нужно ввести логин и пароль. Это можно решить, если добавить логин и пароль в файл конфигурации. Для этого создайте файл login.txt и разместить в нём логин и пароль:

sudo vi /etc/openvpn/login.txt

Затем добавьте в основной конфигурационный файл опцию auth-user-pass с путем к только что созданному файлу:

sudo vi /etc/openvpn/somevpn.conf

Теперь автозагрузка должна заработать.

2. В графическом интерфейсе

Если вы хотите использовать графический интерфейс для подключения к OpenVPN, то вам понадобится установить расширение OpenVPN для NetworkManager. Этот сервис управления сетью используется в большинстве дистрибутивов Linux. Для установки расширения выполните команду:

sudo apt install network-manager-openvpn-gnome

Затем откройте настройки системы и перейдите в раздел Сеть. Здесь надо нажать кнопку со значком плюса в разделе VPN. Далее надо выбрать Импорт из файла и выбрать файл с конфигурацией VPN:

Вся необходимая конфигурация будет импортирована, останется только добавить логин и пароль, если они нужны:

Далее нажмите Сохранить подключение и в основном окне настроек сети активируйте VPN соединение с помощью переключателя:

Если всё прошло хорошо, то вы увидите значок VPN в верхнем правом углу на панели, а также информацию о VPN в меню выключения.

Как подключится к WireGuard

1. В командной строке

Подключение к WireGuard из коммандной строки немного отличается от OpenVPN. Аналогично, вам надо получить конфигурационный файл от вашего VPN провайдера. Вы можете разместить этот конфигурационный файл где угодно, как и для OpenVPN, но будет гораздо удобнее если он будет располагаться именно в папке /etc/wireguard. В любом случае его имя должно совпадать с именем сетевого интерфейса, который создаст WireGuard и расширения conf, например wg0.conf. Поэтому переместите свой конфигурационный файл в папку /etc/wireguard:

Читайте также:  Linux set current time

sudo mv somevpn.conf /etc/wireguard/wg0.conf

Для активации подключения необходимо использовать команду wg-quick передав ей в аргументах имя конфигурационного файла без conf, например:

Если вы хотите обратиться к файлу, который находится не в /etc/wireguard, то используйте такую команду:

Модуль WireGuard работает на уровне ядра, соответственно, в пространстве пользователя не так уже и много информации о его работе. Если вы хотите посмотреть информацию о подключении используйте такую команду:

Для того чтобы отключится от VPN выполните команду:

Для автоматического подключения к WireGuard при старте системы, вы можете добавить сервис wg-quick в автозагрузку, аналогично тому, как это работало с OpenVPN. В качестве параметра надо передать имя сетевого интерфейса/конфигурационного файла:

sudo systemctl enable wg-quick@wg0

Вы можете запустить этот сервис:

sudo systemctl start wg-quick@wg0

Или посмотреть его состояние:

sudo systemctl status wg-quick@wg0

2. В графическом интерфейсе

Подключение к WireGuard в графическом интерфейсе немного сложнее. Несмотря на то, что начиная с версии 1.26 NetworkManager поддерживает WireGuard нативно, эта поддержка была добавлена не полностью. Импорт конфигурации поддерживается только в консольной утилите nmcli, редактировать соединение можно только nm-connection-editor, а для его активации вообще понадобится сторонний индикатор Gnome. Ранее существовал плагин для WireGuard аналогичный тому, что есть для OpenVPN, но после добавления нативной поддержки он был заброшен и сломан в новых версиях. Прежде всего, убедитесь что у вас установлен WireGuard и resolvconf:

sudo apt install wireguard resolvconf

Для того чтобы добавить подключение WireGuard запустите утилиту nm-connection-edit и нажмите кнопку со значком плюса. Здесь, в разделе Виртуальные выберите Wireguard и нажмите Создать соединение:

На вкладке WireGuard укажите тип интерфейса wg0, а затем откройте конфигурационный файл WireGuard и перенесите значение PrivateKey из секции Interface в поле Частный ключ:

Затем, в разделе Одноранговые узлы нажмите кнопку Добавить. В открывшееся окно перенесите такие данные из секции Peer конфигурационного файла:

  • Открытый ключ — PublicKey
  • Разрешенные адреса — AllowedIPs
  • Конечная точка — Endpoint
  • Общий ключ — PresharedKey
Читайте также:  Linux запуск файла нет такого файла

Для общего ключа выберите Запомнить пароль для всех пользователей. Затем нажмите кнопку Применить.

Далее перейдите на вкладку Параметры IPv4 и выберите метод настойки — Вручную. Далее в разделе Адреса нажмите кнопку Добавить и добавьте IPv4 адрес из поля Address, также добавьте для него маску, в конфигурационном файле она записана через черточку:

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

Далее вы можете нажать кнопку Добавить и ваше соединение будет добавлено. В качестве альтернативы, вы можете не делать всего этого, а импортировать конфигурационный файл из командной строки. Например, если конфигурационный файл находится по адресу ~/wg0.conf то команда будет выглядеть так:

sudo nmcli connection import type wireguard file ~/wg0.conf

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

Теперь можно переходить к подключению. Для этого существует индикатор Gnome — Wireguard Indicator. Вы можете установить его с помощью менеджера расширений Gnome. Просто наберите в поиске Wireguard Indicator нажмите кнопку Установить:

После завершения установки в верхнем правом углу панели появится значок индикатора. Кликните по нему и выберите Settngs. Здесь включите переключатель напротив nmcli и выключите sudo:

После того, как вы ещё раз кликните по значку расширения вы можете управлять интерфейсом WireGuard:

Выводы

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

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector