OpenVPN — это мощное и гибкое решение для создания виртуальных частных сетей (VPN). Оно позволяет безопасно передавать данные через интернет, шифруя трафик и обеспечивая анонимность пользователей. В этой статье мы подробно рассмотрим, что такое OpenVPN, его преимущества, а также шаги по настройке OpenVPN на Ubuntu.
Ознакомиться с тарифами VPS хостинга можно тут
Что такое OpenVPN?
OpenVPN — это программное обеспечение с открытым исходным кодом, которое используется для создания защищенных сетевых соединений. Оно позволяет пользователям подключаться к удаленным сетям через интернет, обеспечивая конфиденциальность и безопасность данных.
Преимущества OpenVPN
- Безопасность: OpenVPN использует современные протоколы шифрования, что делает его одним из самых безопасных решений для VPN.
- Гибкость: Поддерживает различные конфигурации и может работать через TCP или UDP.
- Совместимость: Доступен на многих платформах, включая Windows, macOS, Linux, Android и iOS.
- Открытый исходный код: Возможность модификации и использования в различных проектах без лицензионных отчислений.
Как установить OpenVPN на Ubuntu
Настройка OpenVPN на Ubuntu состоит из нескольких шагов. Мы рассмотрим процесс установки и настройки сервера OpenVPN, а также клиента.
Шаг 1: Установка OpenVPN
Для начала установим OpenVPN и необходимые пакеты. Откройте терминал и выполните следующие команды:sudo apt update
sudo apt install openvpn easy-rsa
Шаг 2: Настройка инфраструктуры открытых ключей (PKI)
OpenVPN использует инфраструктуру открытых ключей для аутентификации. Мы создадим необходимую инфраструктуру, используя Easy-RSA.
-
Создайте директорию для PKI:
make-cadir ~/openvpn-ca
cd ~/openvpn-ca -
Настройте переменные Easy-RSA. Откройте файл
vars
в текстовом редакторе:nano vars
Измените значения, чтобы отразить информацию о вашей организации:
export KEY_COUNTRY="RU"
export KEY_PROVINCE="MO"
export KEY_CITY="Moscow"
export KEY_ORG="MyOrg"
export KEY_EMAIL="email@example.com"
export KEY_OU="MyUnit" -
Соберите PKI:
source vars
./clean-all
./build-ca
Шаг 3: Создание ключа сервера и сертификата
После настройки PKI создадим ключ и сертификат для сервера.
-
Создайте ключ сервера:
./build-key-server server
-
Создайте сертификат Diffie-Hellman:
./build-dh
-
Создайте HMAC ключ:
openvpn --genkey --secret keys/ta.key
Шаг 4: Настройка конфигурационного файла сервера
Теперь нужно создать конфигурационный файл для OpenVPN. Создайте файл /etc/openvpn/server.conf
:sudo nano /etc/openvpn/server.conf
Пример конфигурации:port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
tls-auth ta.key 0
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
Шаг 5: Настройка маршрутизации и IP-фильтров
Чтобы обеспечить доступ клиентам, вам нужно настроить маршрутизацию и IP-фильтры.
-
Разрешите пересылку IP. Откройте файл
/etc/sysctl.conf
:sudo nano /etc/sysctl.conf
Найдите строку
#net.ipv4.ip_forward=1
и раскомментируйте её:net.ipv4.ip_forward=1
Затем примените изменения:
sudo sysctl -p
-
Настройте UFW для управления брандмауэром:
sudo ufw allow 1194/udp
Добавьте следующие строки в
/etc/ufw/before.rules
:*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
COMMITПерезагрузите UFW:
sudo ufw reload
Шаг 6: Запуск сервера OpenVPN
Теперь вы готовы запустить сервер OpenVPN:sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server
Проверьте статус сервера:sudo systemctl status openvpn@server
Настройка OpenVPN-клиента на Ubuntu
Теперь, когда сервер настроен, вам нужно настроить клиент OpenVPN.
Шаг 1: Установка OpenVPN на клиенте
Установите OpenVPN на клиентскую машину (можно использовать ту же команду, что и выше):sudo apt update
sudo apt install openvpn
Шаг 2: Получение клиентских сертификатов
Скопируйте необходимые файлы сертификатов и ключей с сервера на клиент. Вы можете использовать SCP или другую утилиту для передачи файлов. На клиенте создайте директорию для хранения конфигурации:mkdir ~/openvpn-client
scp user@server-ip:/etc/openvpn/keys/{ca.crt,client.crt,client.key,ta.key} ~/openvpn-client
Шаг 3: Создание конфигурационного файла клиента
Создайте файл client.ovpn
в директории клиента:nano ~/openvpn-client/client.ovpn
Пример конфигурации клиента:client
dev tun
proto udp
remote server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
tls-auth ta.key 1
cipher AES-256-CBC
verb 3
Шаг 4: Подключение к серверу
Теперь вы можете подключиться к серверу OpenVPN с клиента:sudo openvpn --config ~/openvpn-client/client.ovpn
Тестирование соединения
После подключения вы можете проверить, что ваш IP-адрес изменился, выполнив команду:curl ifconfig.me
Это должно показать IP-адрес вашего VPN-сервера, а не вашего провайдера.
Заключение
OpenVPN является мощным инструментом для создания защищенных соединений и может быть настроен на Ubuntu с минимальными усилиями. В этой статье мы рассмотрели основные шаги по установке и настройке OpenVPN, а также создание клиента.
Используя OpenVPN, вы можете защитить свои данные, повысить безопасность соединений и обеспечить анонимность в интернете. Если у вас возникли вопросы или трудности с настройкой OpenVPN, не стесняйтесь обращаться в службу поддержки вашего хостинга.