- Настройка VPN под Linux Ubuntu/Mint
- Что такое VPN и зачем это нужно?
- Настройка серверной части на Ubuntu Linux
- Настройка VPN клиентов
- Настройка доступа в интернет через VPN
- Настройка SSTP VPN на Linux Mint
- Предварительная подготовка
- Настройка подключения
- Настройка SSTP VPN на Linux Mint : 2 комментария
- Добавить комментарий Отменить ответ
- Решение IT-задач любой сложности
- Архивы
- Рубрики
Настройка VPN под Linux Ubuntu/Mint
Аббревиатуру VPN сейчас не слышали разве что только те, кто никогда не имел дела с компьютером. Что это такое, зачем оно нужно и как его настроить самостоятельно?
Что такое VPN и зачем это нужно?
VPN (Virtual Private Network) – виртуальная частная сеть, способ объединить в одну логическую сеть несколько компьютеров, физически находящихся на некотором расстоянии друг от друга.
Использовать VPN можно с разными целями – от организации сети для работы/игр до доступа в интернет. При этом вы должны понимать возможную юридическую ответственность за свои действия.
В России использование VPN не является наказуемым действием, исключая случаи использования с заведомо противоправными целями. То есть, если вы хотите зайти на сайт президента соседней страны (допустим, Сомали) и написать, какой он нехороший, скрыв при этом свой IP-адрес, это само по себе не является нарушением (при условии, что содержание высказывания не нарушает законы). А вот использовать эту технологию для доступа к запрещённым в России ресурсам является правонарушением.
То есть, играть с друзьями по сети и удалённо работать в сетью организации используя VPN – можно, читать всякие нехорошие сайты – нельзя. С этим разобрались. Теперь переходим непосредственно к настройке.
Настройка серверной части на Ubuntu Linux
Для серверной части лучше использовать Linux, с ним в этом плане проще работать. Наиболее простой вариант – PPTP, не требующий установки сертификатов на компьютеры клиентов, аутентификация проводится по имени пользователя и паролю. Его и будем использовать.
Вначале установим нужные пакеты:
Далее нам нужно задать диапазон адресов и несколько других основных настроек. Открываем для редактирования файл /etc/pptpd.conf:
Если нам нужно более 100 одновременных подключений, ищем параметр «connections», раскомментируем его и указываем нужное значение, например:
Если нам нужно передавать по виртуальной сети широковещательные пакеты, следует убедиться, что параметр bcrelay также раскомментирован:
После этого переходим в конец файла и добавляем настройки адресов:
localip 10.10.10.1 remoteip 10.10.10.2-254 listen 11.22.33.44
Первый параметр указывает IP-адрес сервера в локальной сети, второй – диапазон выдаваемых клиентам IP-адресов (диапазон должен обеспечить возможность указанного количества подключений, лучше адреса выделить с запасом), третий указывает, по какому внешнему адресу прослушивать интерфейсы для приёма входящих подключений. То есть, при наличии нескольких внешних адресов прослушивать можно только один. Если третий параметр не указать, прослушиваться будут все доступные внешние адреса.
Сохраняем файл и закрываем. Дополнительные тонкие настройки указываем в файле /etc/ppp/pptpd-options:
sudo nano /etc/ppp/pptpd-options
В первую очередь убеждаемся, что у нас раскомментированы строки, запрещающие использование старых и небезопасных методов аутентификации:
refuse-pap refuse-chap refuse-mschap
Также проверяем, что опция proxyarp включена (соответствующая строка раскомментирована) и дополнительно для разрешения или запрета множественных подключений одного пользователя комментируем (разрешение) или раскомментируем (запрет) опцию lock.
Также сохраняем файл и закрываем. Осталось создать пользователей:
sudo nano /etc/ppp/chap-secrets
На каждого пользователя VPN отводится одна строка, в которой последовательно (разделитель – пробел) указывается его имя, удалённый адрес, пароль и локальный адрес.
Удалённый адрес можно указывать, если у пользователя есть внешний статический IP и только он будет использоваться, иначе лучше указать звёздочку, чтобы точно можно было принять подключение. Локальный нужно указать, если вы хотите, чтобы пользователю выделялся один и тот же IP-адрес в виртуальной сети. Например:
user1 * password1 * user2 11.22.33.44 password2 * user3 * password3 10.10.10.10
Для пользователя user1 подключения будут приниматься с любого внешнего адреса, локальный будет выделяться первый доступный. Для user2 будет выделять первый доступный локальный адрес, но подключения будут приниматься только с адреса 11.22.33.44. Для user3 подключения принимаются из любой точки, но локальный адрес всегда будет выделяться 10.10.10.10, который мы для него зарезервировали.
На этом настройка VPN-сервера закончена, перезапускаем его (под Linux перезагружать компьютер не нужно):
sudo service pptpd restart
Настройка VPN клиентов
Клиентскую часть можно настроить под любой операционной системой, я буду использовать в качестве примера Ubuntu Linux 16.04.
На клиентском компьютере открываем сетевые соединения (на скриншотах приведено для Ubuntu + Cinnamon, для GNOME делается аналогично, в Kubuntu похоже и сложностей не вызовет). Нажимаем кнопку «Добавить» и выбираем PPTP-соединение:
Имя VPN-подключения можно оставить стандартное, а можно указать удобное и понятное для вас – это дело вкуса. Вводим в поле «шлюз» внешний IP-адрес сервера, к которому мы подключаемся (указан при настройке в опции «listen»), ниже имя и пароль. Справа в поле «Пароль» предварительно нужно выбрать вариант «Сохранить пароль для этого пользователя»):
Далее обязательно нажимаем кнопку «Дополнительно» и отмечаем опцию «Использовать шифрование MPPE», иначе сервер не примет ваше подключение:
После этого закрываем окна и подключаемся к серверу. Если сервер находится вне вашей локальной сети, нужен доступ в интернет.
На этом организация виртуальной сети закончена, но она будет только соединять компьютеры в локальную сеть. Для выхода в интернет через сервер сети нужно сделать ещё одну настройку.
Настройка доступа в интернет через VPN
На vpn-сервере вводим следующие команды:
iptables -t nat -A POSTROUTING -o eth0 -s 10.10.10.1/24 -j MASQUERADE iptables -A FORWARD -s 10.10.10.1/24 -j ACCEPT iptables -A FORWARD -d 10.10.10.1/24 -j ACCEPT
где 10.10.10.1/24 – локальный адрес сервера и маска сети.
После этого сохраняем изменения, чтобы они работали и после перезагрузки сервера:
И применяем все изменения:
После этого у вас появится доступ в интернет. Если зайти на какой-либо сайт, отображающий ваш IP-адрес, вы увидите внешний адрес сервера, а не свой (если они не совпадают).
Напоминаю, что ответственность за последствия своих действий несёте только вы.
Настройка SSTP VPN на Linux Mint
Мне очень часто приходится использовать SSTP VPN в повседневной работе. Однако, когда я начал использовать Linux Mint в качестве основной операционной системы на домашнем ПК, то, к своему удивлению, обнаружил, что из коробки возможности настройки такого типа VPN подключения не предусмотрено. Поэтому я решил соорудить небольшую шпаргалку в виде краткой публикации и том, как выполняется настройка SSTP VPN на Linux Mint.
Сразу оговорю, что решение не мое. Я нашел его на GitHub.
Проверял работу на Linux Mint 20.3 и Linux Mint 21. Работает в обоих случаях. Правда, на Mint 21 подключение получается настроить только через “Network Connections”. Если конфигурировать через “Network Settings”, то интерфейс настройки подключения не отображается корректно. На Linux Mint 20.3 такой проблемы нет.
Предварительная подготовка
Установка SSTP VPN на Linux Mint довольно проста.
Сначала добавляем репозиторий:
sudo add-apt-repository -y ppa:eivnaes/network-manager-sstp && sudo apt update
Затем обновляем список пакетов:
И последним шагом запускаем установку необходимых пакетов:
sudo apt install -y sstp-client network-manager-sstp network-manager-sstp-gnome
Настройка подключения
После того, как все необходимые пакеты были установлены можно переходить к непосредственной настройки SSTP подключения.
Как я уже говорил выше в Linux Mint 20.3 вы можете конфигурировать подключения либо через “Network Connections”, либо через “Network Settings”.
Но вот на Linux Mint 21 настройка подключения работает только через менеджер сетевых подключений (Network Connections).
Хотя активировать подключение на Linux Mint 21 вы можете как через менеджер сетевых подключений, так и в диалогового окна системных настроек сети (Network Settings).
Каких то других проблем, кроме небольшой особенности настройки, на Linux Mint 21 я не обнаружил.
Настройка SSTP VPN на Linux Mint : 2 комментария
Добрый день!
Хотел установить VPN в Ubuntu Mint 21.
Однако или я полный глупец, однако ни один из рекомендованных способов установки VPN, мне не помог!?
То есть или мне хватает уровня работы в консоли, хотя разные пакеты и прочее устанавливаю без особых проблем, однако в вопросе УСПЕШНОЙ установки, (не говорю ВООБЩЕ о подключении)? или все Ваши советы написаны для программистов а не просто опытных пользователей!?
ВОПРОС?
– где я могу делать ошибки и как их обойти и устранить.
– где еще я могу найти РАБОТАЮЩИЕ СОВЕТЫ а не перечень неработающих советов? Спасибо! Михаил. Коломна, Россия , 2003-05-13/суб.
Добрый день! где я могу делать ошибки и как их обойти и устранить.
// Сложно ответить на этот вопрос. Какие именно ошибки генерируются в консоле? где еще я могу найти РАБОТАЮЩИЕ СОВЕТЫ а не перечень неработающих советов
// Думаю, стоит воспользоваться тем поисковиком, который вам более по душе. Опорных материалов по настройке VPN довольно много. Можно поискать информацию на англоязычных ресурсах. Обычно там гораздо больше толковых материалов.
Добавить комментарий Отменить ответ
Решение IT-задач любой сложности
Архивы
Рубрики
- 1С (4)
- Active Directory Domain Services (4)
- Active Directory Federation Services (1)
- Ansible (7)
- Astra Linux Directory (1)
- Azure (5)
- Cireson (2)
- Communigate Pro (20)
- Docker (1)
- EVE-NG (2)
- Exchange (27)
- GitLab (1)
- JIRA (1)
- Kubernetes (4)
- Linux (24)
- Power Automate (4)
- Project Server (2)
- Project Web App (2)
- Proxmox (8)
- Scripts (1)
- Sendria (1)
- SharePoint (3)
- System Center (25)
- Veeam (3)
- VirtualHere (3)
- VMware (2)
- Web Application Proxy (2)
- Zabbix (7)
- Балансировка сетевого траффика (2)
- Онлайн кассы (2)
- Печать (1)
- Прочее (3)
- Публикация сервисов и приложений (2)
- Сертификаты (5)
- сети (1)
- Система управления проектами (2)
- Системы хранения данных (2)
- Торговое оборудование (1)