Как настроить openvpn на ubuntu

17.06.2025 | комментариев 0 | раздел: Ремонт и отделка

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

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

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

Настройка OpenVPN на Ubuntu: пошаговая инструкция

Начинайте с установки пакета openvpn командой
sudo apt update && sudo apt install openvpn. После завершения установки создайте директорию для конфигураций: sudo mkdir /etc/openvpn.

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

Обновите права доступа к ключам и сертификатам, чтобы обеспечить безопасность: sudo chmod 600 /etc/openvpn/*.key. Запустите сервер командой sudo systemctl start openvpn@server, указав правильное имя конфигурационного файла без расширения.

Проверьте статус сервиса командой sudo systemctl status openvpn@server. В случае ошибок проанализируйте логи через journalctl -u openvpn@server.

Настройте правила брандмауэра для пропуска VPN-трафика, добавляя правила через ufw:
sudo ufw allow 1194/udp и
sudo ufw allow OpenSSH. Активируйте правила командой sudo ufw enable.

На клиентской машине поместите файл конфигурации, соответствующий серверу, и установите необходимые сертификаты и ключи. Затем запустите OpenVPN с помощью sudo openvpn --config client.ovpn. Проверьте соединение, убедившись, что маршрут и трафик проходят через VPN.

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

Установка и настройка серверного программного обеспечения OpenVPN на Ubuntu

Первым шагом установите необходимые пакеты. Введите команду: sudo apt update и затем sudo apt install openvpn easy-rsa. После завершения установки сконфигурируйте инфраструктуру PKI с помощью скриптов Easy-RSA.

Создайте рабочий каталог для CA и ключей: make-cadir ~/easy-rsa. Перейдите в него с помощью cd ~/easy-rsa и исходите из предустановленных скриптов: ./easyrsa init-pki. Затем создайте корневой сертификат командой: ./easyrsa build-ca. Следуйте подсказкам, указывая имя и пароль для CA.

Генерируйте ключи сервера и сертификаты с помощью:

Команда Описание
./easyrsa gen-req server nopass Создание ключа и сертификата сервера
./easyrsa sign-req server server Подписывание сертификата сервера
./easyrsa gen-dh Генерация DH-ключа
openvpn --genkey --secret ta.key Создание файла для HMAC-аутентификации

Скопируйте все файлы сертификатов и ключей, необходимые для работы сервера, в директорию /etc/openvpn. Задайте правильные разрешения для ключей: chmod 600 /etc/openvpn/*.key.

Создайте конфигурационный файл сервера server.conf в директории /etc/openvpn. В нем укажите параметры сети, сертификаты, каналы шифрования. Например:

Параметр Значение
port 1194
proto udp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key
dh /etc/openvpn/dh.pem
tls-auth /etc/openvpn/ta.key

После создания файла запустите сервер: sudo systemctl start openvpn@server. Проверьте его статус командой: sudo systemctl status openvpn@server. Убедитесь, что служба работает без ошибок и прослушивает указанный порт. Настройка завершена, и теперь можно приступать к созданию клиентских сертификатов и подключению устройств.

Генерация сертификатов и ключей для сервера и клиентов

Для создания необходимых сертификатов и ключей используйте утилиту Easy-RSA. Начинайте с копирования шаблонов в отдельную директорию:

make-cadir ~/easy-rsa
cd ~/easy-rsa

Настройте переменные, отредактировав файл vars, в котором указываются параметры, такие как страна, организация и название сертификатов. После этого выполните следующую команду для инициализации PKI:

./easyrsa init-pki

Создайте корневой CA-сертификат, указав его название:

./easyrsa build-ca

Задайте пароль и подтвердите создание. Далее сгенерируйте запрос на сертификат для сервера:

./easyrsa gen-req server nopass

Подпишите запрос внутри CA, чтобы получить сертификат сервера:

./easyrsa sign-req server server

Для каждого клиента повторяйте аналогичные шаги:

  1. Генерируйте ключи и запросы:
  2. ./easyrsa gen-req client1 nopass
  3. Подписывайте их CA:
  4. ./easyrsa sign-req client client1

Все сгенерированные сертификаты и ключи найдутся в каталоге pki/issued и pki/private. Перенесите их на сервер и клиент, не забыв о безопасности хранения закрытых ключей. Создайте копии сертификатов, например, для файла конфигурации OpenVPN и дальнейшей установки. Этот процесс обеспечивает надежную основу для шифрования трафика и аутентификации пользователей. Также рекомендуется регулярно обновлять сертификаты, чтобы поддерживать безопасность VPN-соединений.

Настройка конфигурационных файлов и запуск сервера OpenVPN

Для корректной работы сервера OpenVPN необходимо подготовить файл конфигурации, который определяет основные параметры сервера и клиента. Создайте файл server.conf в папке /etc/openvpn с минимальным набором настроек:

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
cipher AES-256-CBC
persist-key
persist-tun
status openvpn-status.log
verb 3

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

sudo systemctl start openvpn@server

Проверьте статус службы командой:

sudo systemctl status openvpn@server

Для автоматического запуска OpenVPN при загрузке системы выполните команду:

sudo systemctl enable openvpn@server

Настройте брандмауэр, чтобы пропускать трафик на порт 1194/udp и разрешить пересылку IP-пакетов. В файле /etc/sysctl.conf раскомментируйте строку net.ipv4.ip_forward=1 и примените изменения командой sudo sysctl -p. После этого настройте правила iptables для NAT:

sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o <ваш_сетевой_интерфейс> -j MASQUERADE

Замените <ваш_сетевой_интерфейс> на соответствующий интерфейс, например, eth0. Сохраните правила iptables, чтобы они сохранялись после перезагрузки. Всё готово для дальнейшей настройки клиентов и полноценной работы VPN.

Подключение клиента и проверка установленных соединений

После настройки OpenVPN на сервере и генерации конфигурационных файлов для клиентов, необходимо выполнить подключение. Запускайте OpenVPN клиент на устройстве пользователя, указав путь к соответствующему `.ovpn` файлу командой, например: sudo openvpn --config /path/to/client.conf. Убедитесь, что соединение установилось успешно, проверяя появление строк, показывающих установление соединения и получение IP-адреса внутри VPN.

Для проверки активных подключений используют команду ip a или ifconfig. В списке интерфейсов должен появиться виртуальный интерфейс, обычно с именем tun0. Его наличие говорит о том, что VPN соединение активно. Обратите внимание на IP-адрес, присвоенный интерфейсу, и убедитесь, что он находится в диапазоне, определённом конфигурацией сервера.

Для более точной проверки используйте команду ping по внутренним IP-адресам VPN. Например, выполните ping 10.8.0.1, чтобы убедиться, что настройка сервера функционирует правильным образом, и соединение активное. Если пинги возвращают ответы, соединение работает исправно.

Чтобы проверить статус VPN-сервиса на сервере, выполните команду sudo systemctl status openvpn. Она покажет текущий статус службы, а также ошибки или предупреждения. Для определения активных клиентских сессий используйте команду netstat -tunlp | grep openvpn или ss -tunlp | grep openvpn, чтобы увидеть активные порты и соединения.

Проверка журналов OpenVPN помогает выявить возможные ошибки. В журналах ищите строки с указанием успешных подключений и передачи данных. Журналы можно просмотреть командой sudo journalctl -u openvpn или через файлы логов, обычно расположенные в `/var/log/`.

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

Видео:

Настройка DoubleVPN-OpenVPN серверов на Ubuntu 17.10/14.04

Оставить комментарий

Текст сообщения:

Имя:

E-mail:

Капча загружается...