Настраиваем два одновременных vpn соединения в linux (для доступа в инет и для доступа к локальным ресурсам isp)

Содержание:

ExpressVPN

  • Молниеносная скорость — идеально для стримов и загрузки торрентов
  • Более 1500 серверов более чем 90 локациях
  • Сервис НЕ ХРАНИТ важные пользовательские данные
  • Собственный клиент для Linux— на основе консоли, полностью совместимый с Ubuntu
  • Простая и быстрая установка, отличная техподдержка
  • Если что-то вам не понравится, вы сможете вернуть свои деньги в течение 30 дней

Последнее предложение ExpressVPN Август 2020: с этим предложением! Неизвестно, когда закончится данное предложение, поэтому лучше перейдите на страницу предложений, чтобы посмотреть, является ли оно все еще актуальным.

ExpressVPN предлагает отличный сочетание скорости, разнообразия серверов и простоты установки на Ubuntu.

Комбинация невероятно быстрых подключений (мы их проверяли) и огромной серверной сети (1500+ серверов в более чем 90 локациях) выводит этот сервис в абсолютные фавориты, и мы со всей ответственностью называем его надежным и универсальным VPN. Проверенные на практике безлоговая политика и гарантия возврата средств выступают в качестве дополнительных рубежей защиты пользовательских интересов: сервис не будет хранить ваши данные и, если качество его услуг вам не понравится, в течение 30 дней после оформления подписки вернет ваши деньги.

Что же касается технической стороны дела, то получить доступ собственному клиенту для Linux, запускаемому через консоль — не уж и сложно, как может показаться на первый взгляд. И это хорошо, ведь вам придется устанавливать все вручную. Кроме того, вы можете выбрать стандартные настройки OpenVPN через Ubuntu Network Manager. Продвинутые функции включают в себя защиту от утечки DNS, Smart DNS и возможность подключения к серверам различных типов, настроенным для работы с сетями P2P, скрытого обхода блокировок и цензуры и так далее.

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

Set Up Your VPN on Ubuntu

With your VPN service selected, download the client, and set it up on Ubuntu. Setting up a VPN on Ubuntu differs depending on the specifications of the client software. It might mean downloading a DEB file, a snap file, or simply grabbing the client via the terminal from the repositories, or from GitHub.

To demonstrate, here’s how to set up ExpressVPN on Ubuntu.

With an active subscription, sign into the website, completing two-step verification. If your operating system isn’t auto detected, select See all devices and choose Linux. Here, select your distro (we’re using Ubuntu 64-bit for this demonstration) and click Download.

The DEB file will download and you’ll be prompted to open the file. Use your default software manager for this and wait as the VPN installs.

ExpressVPN, like many other Linux VPNs, runs form the command line. It still requires some setting up, however. While some VPNs will require inputting a username and password, ExpressVPN uses an authentication key. Setting up ExpressVPN on Ubuntu means launching the command prompt, then inputting the following:

When prompted, paste (or enter) the authentication string.

Use the expressvpn command to display options. You can quickly connect to a VPN server by inputting the country in the command:

Alternatively, you can also input the country, location, and server number:

To disconnect, simply use:

Seems too technical? Fortunately, ExpressVPN and other VPNs offer browser plugins for Chrome and Firefox. These make using the VPN service far easier if a mouse-accessible client isn’t available for your operating system.

All Linux-friendly VPN providers offer similar command line apps, so you should find these steps a useful guide for most of them. Naturally, check the documentation for your chosen VPN service for exact steps.

CyberGhost

CyberGhost recently launched a command-line app for Linux users that makes it easy to set up and connect. It works with Ubuntu 19.04, 18.04, 16.04 and Fedora 29 and 30.

Apps Available:

  • PC
  • Mac
  • IOS
  • Android
  • Linux

Money-back guarantee: 45 DAYS

As with others, the command-line app has no graphic interface and runs solely from the command line. You can choose how you want to use the VPN, such as for torrenting or streaming, as well as the location. CyberGhost doesn’t store any user logs and employs strong encryption and leak protection.

CyberGhost uses the OpenVPN protocol. It operates more than 5,900 servers in 89+ countries. Speeds are good and connections are reliable. Live chat support is available 24 hours per day, 7 days per week.

You can connect up to seven devices at a time. Apps are also available for Windows, MacOS, iOS, Linux, and Android.

Pros:

  • Unblocks Netflix, Hulu, and BBC iPlayer
  • Keeps no logs
  • Use up to seven devices simultaneously
  • Easy to use, select activity type and be connected to the most appropriate server

Cons:

  • Doesn’t reliably work in China
  • No router support

Our score:

4 out of 5

Read our full CyberGhost review.

Настройка VPN-сервера Linux с OpenVPN для Туннелирования

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

Это активирует переадресацию трафика через IPv4. Чтобы применить эти изменения, используйте следующую команду:

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

Чтобы отключить IPv6 вручную, добавьте следующие параметры, которые будут установлены при загрузке. Эти параметры должны быть добавлены в файл 99-sysctl.conf, расположенный в /etc/sysctl.d/. Просто используйте команду cd для доступа к папке и предпочитаемый текстовый редактор для редактирования файла. Не забудьте сохранить изменения!

Далее вы можете активировать новые настройки, используя:

Далее, в файле hosts, расположенном в /etc/ прокомментируйте строку разрешения IPv6, как показано ниже:

Таким образом, мы отключили IPv6. Затем снова войдите в систему по URL сервера Администратора и перейдите в настройки VPN.

В разделе Маршрутизация (Routing), напротив опции “Должны ли VPN-клиенты иметь доступ к частным подсетям (непубличным сетям на стороне сервера)?” должно быть указано “Нет”.

Напротив опции “Должен ли интернет-трафик клиента маршрутизироваться через VPN?” должно быть указано “Да”.

Чтобы избежать утечки DNS, измените настройки распознавателя DNS. Выберите “Клиенты должны использовать те же DNS-сервера, что и Access Server хост.”

Сохраните эти настройки и не забудьте нажать на Update Running Server (Обновить запущенный сервер). Вы можете перезапустить сервер OpenVPN, используя вкладку Status (Состояние) в консоли администратора. Отсюда вы можете остановить сервер, а затем запустить его снова.

На этом наша настройка сервера OpenVPN завершена. Далее мы можем проверить клиентские установки.

1 ExpressVPN – совместим с несколькими дистрибутивами

Ключевая особенность:

  • Поддержка Linux
  • Луковая маршрутизация
  • Быстро

Этот VPN в настоящее время является самым популярным в мире благодаря широкому спектру функций и встроенной луковичной маршрутизации . Он также поддерживает как 32-разрядные, так и 64-разрядные версии различных дистрибутивов Linux , таких как Ubuntu, Debian, Fedora и CentOS, что делает его отличным вариантом для тех, кто использует эти системы.

С точки зрения производительности, ExpressVPN обеспечивает быструю и стабильную скорость как на коротких, так и на больших расстояниях. Также доступно более 2000 различных серверов в 148 точках в 94 разных странах .

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

Как Подключить VPN-сервер Linux к Другим Устройствам с OpenVPN

Установка и Подключение Клиента OpenVPN на Windows

Откройте URL-адрес клиента OpenVPN, вы сможете показывать ссылки на клиентские загрузки на разных операционных системах.

Выберите версию Windows и запустите установку.

После завершения установки вам будет предложено ввести имя пользователя и пароль OpenVPN. IP-адрес сервера будет заполнен автоматически.

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

Установка и Подключение Клиента OpenVPN на MacOS

Следуйте стандартной процедуре установки приложения MacOS.

Дважды щёлкните по иконке этого установщика и нажмите “Открыть”, чтобы запустить установку.

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

После того, как вы выберите опцию “Подключиться к”, вы увидите всплывающее окно с запросом имени пользователя и пароля OpenVPN. Здесь вы должны ввести учётные данные и нажать “Подключиться”, чтобы установить соединение с VPN-сервером Linux.

Установка и Подключение Клиента OpenVPN на Linux

Установка клиента на Linux немного отличается. Загрузите и установите клиентское программное обеспечение OpenVPN в CentOS, используя следующую команду:

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

Откройте клиентский интерфейс OpenVPN и загрузите соответствующий профиль для вашей ОС. Кроме того, вы можете использовать команду wget или curl и указать URL-адрес для загрузки программного обеспечения.

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

Вы можете использовать ipconfig или ip addr, чтобы просмотреть сетевые подключения. Как только интерфейс VPN станет доступным, вы увидите, что интерфейс tun0 добавлен в существующий список, показанный в выводе.

Установка и Подключение Клиента OpenVPN на Android

Сначала перейдите в магазин Google Play и найдите OpenVPN Connect. Установите приложение OpenVPN Connect.

Открыв, вы увидите три параметра: Частный туннель (Private Tunnel), Сервер доступа (Access Server) и Профиль OVPN (OVPN Profile).

Выберите Access Server и заполните все данные вручную:

  • Title – укажите предпочитаемое имя подключения.
  • Access Server Hostname – IP-адрес вашего VPN-сервера Linux
  • Port – порт 934 вашего VPN-сервера Linux
  • Username – имя пользователя, установленное на вашем сервере (openvpn по умолчанию)
  • Password – пароль, который вы задали в консоли при настройке VPN-сервера Linux в терминальной среде

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

Установка и Подключение Клиента OpenVPN на iOS  

Как и в случае с Android, вы можете установить программное обеспечение OpenVPN из App Store.

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

Как только они будут добавлены, вы можете начать использовать OpenVPN на вашем iPhone или iPad.

Starting the VPN Client

  1. To start the client from the terminal, type [/opt/cisco/anyconnect/bin/vpnui]. Note: if you are not running a GUI, you can enter interactive mode by entering[/opt/cisco/anyconnect/bin/vpn]

    NOTE: If you are using a desktop environment, you should be able to find the client in one of your menus as well (e.g. in a RHEL environment, look in Applications -> Internet).

  2. In the “Connect to:” box, type vpn.uci.edu and press Return on your keyboard. Note: in interactive mode type 
  3. In the “Group” menu that will appear, select the tunnel you wish to use, usually “UCI” or “UCIFull”. (See the differences in the Tunnels below.)
  4. Enter your UCInetID and password in the appropriate boxes and click “Connect”.
  5. You should get a banner box. When you do, click “Accept” and you are now connected.

Possible Error Messages

If you get one of the following messages when you try to connect to the campus VPN service:

  • “Connection attempt has failed due to server certificate problem”
  • “AnyConnect cannot confirm it is connected to your secure gateway”

this means that the AnyConnect client cannot validate the certificate on the campus VPN service.

Возможные проблемы при работе с OpenVPN

1. failed to start openvpn robust and highly flexible tunneling application on server

Описание: при запуске сервера получаем данную ошибку.

Причина: как правило, связано с отсутствием сертификата.

Решение: открываем лог /var/log/openvpn/openvpn.log и смотрим, с каким сертификатом проблема. Проверяем, что все файлы скопированы и что мы не забыли сгенерировать все сертификаты.

2. Постоянно разрывается соединение

Описание: с периодичностью от 1 до 5 минут постоянно рвется соединение с сервером. После нескольких минут переподключается.

Причина: как правило, конфликт IP-адресов. Такая ситуация возникает при случаях, когда подключение выполняется с нескольких компьютеров одновременно с одинаковыми данными авторизации (логином и паролем).

Решение: настройте клиента для подключения к серверу с уникальными логином и паролем.

3. ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)

Описание: ошибка возникаем при попытке запустить сервис openvpn.

Причина: не загружается модуль tun.

Решение: необходимо перед запуском сервиса openvpn создавать устройство tun. Для этого мы создадим скрипт, который будет создавать устройство при запуске сервера.

Создаем каталог, в который поместим скрипт:

mkdir /scripts

Создадим сам скрипт:

vi /scripts/tun.sh

/bin/mkdir /dev/net
/bin/mknod /dev/net/tun c 10 200

* данный скрипт создает каталог /dev/net, а в нем — устройство tun.

Создаем юнит для автозапуска скрипта:

vi /etc/systemd/system/tun.service

After=network.target

Type=oneshot
ExecStart=/bin/sh -c «/scripts/tun.sh»

WantedBy=multi-user.target

Перечитываем изменения в systemd:

systemctl daemon-reload

Разрешаем автозапуск юнита tun и стартуем скрипт:

systemctl enable tun —now

Теперь можно запустить openvpn:

systemctl start openvpn@server

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

Аутентификация пользователей

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

Настройка сервера

Открываем конфигурационный файл openvpn:

vi /etc/openvpn/server/server.conf

И добавляем следующие строчки:

username-as-common-name
plugin /usr/lib64/openvpn/plugins/openvpn-plugin-auth-pam.so login

* где username-as-common-name указывает на то, что openvpn должен использовать логины, как основные идентификаторы клиента; plugin указывает на путь к самому плагину и для чего он используется.
* как путь, так и название файла openvpn-plugin-auth-pam.so могут отличаться. Это зависит от версии Linux и OpenVPN. Чтобы найти путь до нужного файла, можно воспользоваться командой find / -name «openvpn-*auth-pam*» -print.

Перезапускаем сервер:

systemctl restart openvpn-server@server

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

useradd vpn1 -s /sbin/nologin

И задаем ей пароль:

passwd vpn1

Настройка на клиенте

В конфигурационный файл клиента добавляем:

auth-user-pass

Теперь при подключении программа будет запрашивать логин и пароль.

Вход без ввода пароля (сохранение пароля)

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

auth-user-pass auth.txt

* где auth.txt — файл, в котором мы будем хранить логин и пароль.

Создаем текстовый файл auth.txt в той же папке, где находится файл конфигурации со следующим содержимым:

username
password

* где username — логин пользователя, а password — пароль.

Переподключаем клиента.

Описанный метод аутентификации является базовым и требует наличие обычной системной учетной записи. Если необходима более сложная авторизация на базе LDAP, можно воспользоваться инструкцией настройка OpenVPN сервера с аутентификацией через LDAP (написана на базе Linux Ubuntu).

Choosing an Ubuntu Linux VPN

VPN providers like to hedge their bets when it comes to Linux. While offering client apps is rare, they nevertheless support OpenVPN (OVPN), which is an open-source VPN client. But if you’re looking for a simple solution that doesn’t require you to download OpenVPN files (see below), you need a VPN service with a Linux client app.

However, it is important to note that almost all Linux VPN clients are launched from the terminal. Once installed, it’s simply a case of calling the VPN client, issuing a connect command, and specifying a server. It’s straightforward, but rarely offers the same flexibility you might enjoy on other platforms.

So, where should you start? The following VPN services offer Ubuntu-compatible Linux VPN clients:

  • Mullvad VPN (our Mullvad VPN review)
  • TorGuard
  • AirVPN
  • Windscribe (our Windscribe VPN review)
  • ExpressVPN (click here to get 49% off)

Настройка IPSEC

Для управления IPSec используется пакет strongswan — установим его командой:

apt-get install strongswan

Открываем конфигурационный файл для настройки ipsec:

vi /etc/ipsec.conf

Для config setup добавим:

config setup
        virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
        protostack=netkey

* где virtual_private для нас является наиболее важным параметром и определяет приватные сети. В данном примере просто перечислены сети, зарезервированные под локальные — мы можем указать и другие.

… а также вставляем ниже:

conn l2tpvpn
        type=transport
        authby=secret
        pfs=no
        rekey=no
        keyingtries=2
        left=%any
        leftprotoport=udp/l2tp
        leftid=@l2tpvpnserver
        right=%any
        rightprotoport=udp/%any
        auto=add

* где:

  • type — тип соединения. Возможны варианты tunnel (хост-хост, хост-подсеть или подсеть-подсеть); transport (хост-хост); passthrough (без обработки IPsec).
  • authby — способы аутентификации двух узлов. Возможны варианты secret (по паролю) или rsasig (цифровые подписи RSA).
  • pfs — расшифровывается как Perfect Forward Secrecy. Позволяет активировать совершенную секретность в канале ключей соединения.
  • rekey — перепроверить соединение, когда оно истекает.
  • keyingtries — число попыток, чтобы «договориться» о соединении или его замене.
  • left — IP-адрес левого участника (сервера). %any означает, что адрес может быть любой.
  • leftprotoport — определяет протокол и порт, на котором будет работать левая сторона (сервер). В данном примере указан UDP и порт 1701.
  • leftid — идентификация левого участника соединения.
  • right — IP-адрес правого участника (клиента). %any означает, что адрес может быть любой.
  • rightprotoport — определяет протокол и порт, на котором будет работать правая сторона (клиент). В данном примере указан UDP и любой порт.
  • auto — операция, которая должна запуститься автоматически при старте IPsec.

Создаем секретный ключ — для этого открываем на редактирование файл:

vi /etc/ipsec.secrets

… и добавляем:

%any %any : PSK «my_key_password»

* в данном примере мы устанавливаем общий пароль my_key_password для соединений с любого IP.

Разрешаем автозапуск strongswan и перезапускаем службу:

systemctl enable strongswan

systemctl restart strongswan

Mullvad

Mullvad’s Linux GUI includes a kill-switch and IPv6 protection.

Apps Available:

  • PC
  • Mac
  • Linux

Mullvad’s open-source Debian/Ubuntu client comes with an internet kill switch, DNS and IPv6 leak protection, and IPv6 routing. It keeps no logs–not even connection logs, so it’s airtight when it comes to security. It allows three simultaneous connections. Port forwarding is available for evading firewalls. The server selection is limited, but it’s quite affordable. Mullvad currently only offers a Debian/Ubuntu package.

Pros:

  • No logs
  • Strong encryption and leak protection

Cons:

  • Limited server selection
  • Not great for unblocking region-locked content

Stay tuned for our full review of Mullvad.

Клиентская инфраструктура

Теперь необходимо настроить систему, которая позволит вам легко и быстро создавать клиентские конфигурационные файлы.

Создание структуры клиентской конфигурационной директории

Создайте структуру директорий внутри вашей домашней директории – это место будет использоваться для хранения файлов:

$ mkdir -p ~/client-configs/files

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

$ chmod 700 ~/client-configs/files

Создание базовой конфигурации

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

$ cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client-configs/base.conf

Откройте этот новый файл в текстовом редакторе, так как сейчас в него нужно будет внести несколько изменений:

$ nano ~/client-configs/base.conf

Начните с директивы remote. Она указывает клиенту, какой IP-адрес имеет сервер OpenVPN. Этот адрес обязательно должен быть публичным. Если ранее вы изменили порт для сервера OpenVPN, то измените его в этом файле тоже:

. . .
# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote server_IP_address 1194
. . .

И проверьте, что протокол в файле совпадает с тем, который указан в конфигурации сервера:

proto udp

Раскомментируйте директивы user и group, удалив точку с запятой:

# Downgrade privileges after initialization (non-Windows only)
user nobody
group nogroup

Найдите директивы, которые задают ca, cert и key, и закомментируйте их, так как сертификаты и ключи будут заданы внутри самого файла:

# SSL/TLS parms.
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
#ca ca.crt
#cert client.crt
#key client.key

А настройки cipher и auth скопируйте из файла /etc/openvpn/server.conf:

cipher AES-128-CBC
auth SHA256

И еще куда-нибудь в файл вам нужно добавить директиву key-direction, задав ей обязательно значение 1:

key-direction 1

Наконец, добавьте и несколько закомментированных строк, которые будут использоваться только для клиентов Linux, использующих файл /etc/openvpn/update-resolv-conf.

# script-security 2
# up /etc/openvpn/update-resolv-conf
# down /etc/openvpn/update-resolv-conf

Поэтому если клиент использует Linux, и у него есть файл /etc/openvpn/update-resolv-conf, нужно раскомментировать эти строки в сгенерированном клиентском конфигурационном файле OpenVPN.

После всех этих изменений сохраните файл.

How I Chose VPNs for this List

The free Linux VPNs that have made it into this list were chosen on the basis of a few criteria as follows:

Logging policy

Privacy is not something that Linux users can compromise on. This is why I give the highest priority to the logging policies of all the VPNs that I recommend for Linux users. Not all VPNs have an ideal logging policy, but all services mentioned in this list only store minimal information about you at worst.

Linux compatibility

Obviously, no VPN would be any good for Linux user if it supports no Linux distros. The above VPNs are compatible with some of the most popular Linux distros including Debian, Mint, Ubuntu, Fedora, CentOS etc.

Speed

It is important to have a Linux VPN that deliver fast speed. This is why I test all VPNs for speed before including them in any list. Thes VPNs for Linux were all taken into consideration after they passed benchmark speed tests.

Security

Encryption is important to stay safe from breach attacks and interception from rogue online entities. At the minimum, 128 bit of encryption length is essential with a modern standard such as AES-128. Most VPNs in this list provide an even higher level of encryption than that i.e. AES-256.

Use the ExpressVPN browser extension

The ExpressVPN browser extension is available on Google Chrome and Mozilla Firefox for Version 2.0 of the Linux app and later.

To get the ExpressVPN browser extension, run one of the following commands:

This will open the page for downloading the ExpressVPN browser extension. Click Get Extension.

For users who installed their browser from the Ubuntu Software Center

If you installed your web browser from the Ubuntu Software Center, you may find that the ExpressVPN browser extension is unable to communicate with the ExpressVPN Linux app. To resolve this issue:

  1. Back up your browser settings and bookmarks.
  2. Go to the Ubuntu Software Center and uninstall your browser.
  3. Open the Terminal.
  4. Enter
  5. Depending on your browser, enter or
  6. Open your browser by entering or
  7. Get the ExpressVPN browser extension by entering or

Need help? .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector