linux-notes.org
Установка и настройка OpenVPN сервера на Debian/Ubuntu/Linux Mint
В данной теме «Установка и настройка OpenVPN сервера на Debian, Ubuntu, Linux Mint», я расскажу как можно установить openVPN сервер на Debian, Ubuntu, Linux Mint, так же покажу как можно его настроить под себя. Приведу готовые примеры для хорошего понимания.
OpenVPN является полнофункциональным приложением с открытым исходным кодом и решение SSL VPN, что позволяет использовать широкий диапазон конфигураций. OpenVPN эффективное и легкое решение которое целенаправленно расчитано для рынков МСП и предприятий.
Установка OpenVPN сервера на Debian/Ubuntu/Linux Mint.
Для этого достаточно выполнить команду:
Это займет некоторое время, после установки нужно будет немного настроить (сконфигурировать) наш сервер с OpenVPN.
Настройка OpenVPN сервера на Debian/Ubuntu/Linux Mint.
Первым шагом будет создание сертификата для OpenVPN сервера, по этому выполните команду:
Если вы используете старую версию OpenVPN, выполните команду:
Начиная с 2013-го года программа «easy-rsa» не имеется в пакете с OpenVPN по этому ее нужно установить и скопировать ключи с другого места.
У меня была ошибка, сообщение вывело такое «Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?», которое я решил так:
После установки этой утилиты создаем папку и копируем в нее ключик:
Сейчас нужно подредактировать переменные ключей, для этого выполним команду:
В этом файлике нужно поправить кое что под себя ( город, страну, почту и так далее). Можно оставить все как и есть.
Выполним команду и подгружаем переменные :
Удаляем наши старые ключи и создаем сертификат для своего сервера:
После чего создаем ключик для нашего сервера:
Создадим еще один ключик (Диффи Хельман)
Cоздадим ключик для нашей tls-аутификации
Сделаем перемещение наших сертификатов в другую папку:
Копируем файлик для конфигурации нашего сервера
Выложу свой конфиг и в нем указано что я поправил:
server.conf
Запускаем наш OpenVPN сервер:
Настроим маршрутизацию на сервера
Создадим файлик в папке ccd с таким именем что и ключик для клиента, т.е. /etc/openvpn/ccd/client
Сейчас добавим маршруты в сеть где будет установлен наш клиент, это нужно для доступа к сетевым устройствам в сети клиента. Если не нужно это, то не прописывайте.
Зададим маршруты для нашего клиента, для того чтобы он мог видеть сеть и за пределами OpenVPN-сервера.
Включим ipv4_forwarding в /etc/sysctl.conf
Создание и настройка клиента для OpenVPN
Перейдем в уже созданную нами папку, и начнем генерацию ключиков, а так же сертификатов для клиента
Создаем сейчас ключик для самого клиента, выполняем:
Если есть необходимость сгенерировать ключик с паролем, то используйте:
Если эту команду ввели, то вам нужно будет вводить пароль каждый раз пароль на ключик.
ВНИМАНИЕ! Не забываем что нужно скопировать ключики (ca.crt, dh1024.pem, client.crt, client.key, ta.key) в папку нашего клиента в OpenVPN — /etc/openvpn/keys/
После того как внесли все изменения, можно и запустить клиент:
revoke-full -этот скрипт создает CRL-файл (certificate revocation list, список отозванных сертификатов) с названием crl.pem в подпапке keys. Этот файлик нужно скопировать в папку, в котором сервер OpenVPN может получить к нему доступ. До этого я прописывал в конфиге что он должен лежать в /etc/openvpn, туда и скопируем.
Включим ipv4_forwarding по необходимости. Выполнить нужно все так же как и с сервером.
Чтобы отключить автозапуск OpenVPN запустите:
и убираем коммент в строке:
На этом моя статья «Установка и настройка OpenVPN сервера на Debian/Ubuntu/Linux Mint» завершена.
4 thoughts on “ Установка и настройка OpenVPN сервера на Debian/Ubuntu/Linux Mint ”
Куда копать если не нахожу у себя каталога
/usr/share/doc/openvpn/examples/easy-rsa/
Использую
Linux ubuntu-srv1 3.16.0-30-generic #40
14.04.1-Ubuntu SMP Thu Jan 15 17:43:14 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Вообще, нужно установить openssl:
# apt-get install openssl
И дальше по статье. Если есть дополнительные вопросы, пишите. Могу помочь.
Простая настройка OpenVPN Linux
OpenVPN часто используется для создания виртуальных безопасных сетей между компьютерами, которые находятся на очень большом расстоянии, но при этом между ними нужно получить шифрованное безопасное соединение, которое невозможно перехватить и прослушать.
Другое применение для OpenVPN — это обход блокировок различных интернет ресурсов. Существуют различные серверы OpenVPN серверы в интернете, но будет намного надежнее если развернуть OpenVPN на своем сервере. Мы рассматривали процесс в статье установка OpenVPN на Ubuntu, но для новичков это достаточно сложно. В этой инструкции мы рассмотрим как выполняется настройка OpenVPN linux с помощью скрипта openvpn-install, который упрощает процесс установки и настройки в несколько раз. С его помощью вы получите работающий сервер в течение нескольких минут.
Настройка OpenVPN сервера в Linux
В этой статье, в качестве системы для примера мы будем использовать операционную систему CentOS, но операции не будут отличаться в других дистрибутивах. Сначала скачайте сам скрипт:
wget https://git.io/vpn -O openvpn-install.sh
Затем запустите скрипт от имени суперпользователя с помощью такой команды:
Дальше скрипт задаст несколько вопросов по настройкам OpenVPN. Сначала нужно указать точный ip адрес VPS, на котором будет запущен OpenVPN, именно на этом адресе программа будет слушать соединения:
Затем выберите протокол, который вы хотите использовать. Например, если я хочу использовать TCP то нужно выбрать 2:
Затем введите номер порта, на котором будет слушать программа, можно оставить значение по умолчанию:
Выберите сервера DNS, которые нужно использовать, мне, например, нравятся сервера от Google:
Введите имя клиента, для которого будут подписаны сертификаты на доступ:
Дальше нажмите Enter, и подтвердите установку OpenVPN. Программа сама установит нужные пакеты в вашем дистрибутиве, а затем подпишет все необходимые сертификаты, запустит сервер openvpn и даже добавит его в автозагрузку systemd:
Последний шаг, это утилита спросит есть ли у вашего сервера дополнительный внешний ip адрес. Это может быть полезно, если вы используете NAT, и для доступа к серверу применяете какой-либо туннель. В других случаях этот пункт можно пропустить, для VPS точно пропускаем.
Теперь установка и настройка OpenVPN сервера Linux завершена. Конфигурационный файл для клиента сохранен по адресу /root/sergiy-pc.ovpn, может иметь и другое имя, в зависимости от того, какое имя вы дали клиенту. Самое интересное, что для того чтобы добавить новых клиентов, вам просто достаточно запустить скрипт еще раз. Осталось только скопировать полученный файл клиенту, для этого можно на клиентском компьютере выполнить scp:
scp root@адрес_сервера:/root/sergiy-pc.ovpn /etc/openvpn/
Настройка клиента OpenVPN
Вы можете настроить OpenVPN на клиентской машине как захотите, например, с помощью NetworkManager. Но мы рассмотрим ручной вариант. Сначала установите саму программу. Установка OpenVPN Linux Ubuntu выполняется командой:
sudo apt install openvpn
sudo yum install openvpn
Теперь для подключения к нашему серверу используем полученный файл:
openvpn —config /etc/openvpn/client.ovpn
Вы можете использовать команду ip addr чтобы проверить ip адрес интерфейса OpenVPN — tun0:
Как видите, OpenVPN автоматически выдал IP вашему компьютеру, теперь можете проверить подключение к этому серверу с помощью ping:
Вот и все, ваша сеть готова к работе.
Выводы
Пять минут и настройка OpenVPN Linux завершена, а не подключение следующего клиента уйдет еще меньше. Этот метод не специфичен для RPM систем и может использоваться также в DEB системах, таких как Ubuntu или Debian. Если у вас остались вопросы, спрашивайте в комментариях!
Полная настройка OpenVPN: