Добрый день! Мне нужна помощь в настройке OpenVPN сервера, который развёрнут на VDS сервере с использованием операционной системы Ubuntu. Я хочу, чтобы клиенты могли видеть друг друга, или, точнее, чтобы только один клиент мог видеть всех остальных, и чтобы все остальные видели только его. Клиенты у меня разные - от Android и Windows 10 до Ubuntu. Я предпочел бы использовать стандартные настройки, включая адаптер tun, протокол UDP и прочее, чтобы после установки и настройки скрипта install все осталось без изменений. Ранее мне пришлось изменить сеть с стандартной 10.8.0.0/20 на 172.27.165.0/27. Я отредактировал директиву server, но у меня возникли сложности с настройкой правил файервола - мне потребовалась целая неделя, чтобы понять, где и как вносить изменения. Сейчас у всех клиентов в таблице маршрутизации явно указано, что все трафик должен проходить через OpenVPN сервер, так как на стороне клиента в файле route указано, что для всех адресов 128.0.0.0 с маской 128.0.0.0 должен использоваться шлюз VPN. Фактически все клиенты подключаются и весь трафик идёт через VPN сервер, но почему-то клиенты не могут видеть друг друга. Возможно, это связано с правилами файервола. Буду признателен за ответ, если вы точно знаете, как решить эту проблему, без предложения попробовать что-то или указаний на изменение протокола с tun на tap, при этом не объясняя, зачем это нужно делать.
Для настройки OpenVPN сервера на Ubuntu, чтобы клиенты могли взаимодействовать между собой, вам потребуется выполнить несколько шагов: 1. Установите OpenVPN на ваш сервер с помощью следующей команды: ```shell sudo apt-get update sudo apt-get install openvpn -y ``` 2. Создайте директорию, где будут храниться конфигурационные файлы сервера: ```shell sudo mkdir /etc/openvpn/server ``` 3. Скопируйте пример конфигурационного файла сервера в созданную директорию: ```shell sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/server/ ``` 4. Распакуйте архив: ```shell sudo gzip -d /etc/openvpn/server/server.conf.gz ``` 5. Отредактируйте файл конфигурации сервера: ```shell sudo nano /etc/openvpn/server/server.conf ``` Ниже приведены некоторые настройки, которые вам потребуется изменить: - `proto udp` (протокол) - `dev tun` (устройство) - `server 172.27.165.0 255.255.255.224` (IP-адрес и маска подсети) - `push "route 172.27.165.0 255.255.255.224"` (распространение маршрута) - `client-to-client` (взаимодействие между клиентами) Сохраните изменения и закройте файл. 6. Создайте директорию для хранения файлов аутентификации клиентов: ```shell sudo mkdir /etc/openvpn/server/clients ``` 7. Сгенерируйте сертификаты и ключи для каждого клиента. Выполните следующую команду для каждого клиента, заменив `client_name` на имя клиента: ```shell sudo easyrsa build-client-full client_name ``` Вы можете назначить уникальные имена каждому клиенту. 8. Переместите созданные файлы в директорию клиента: ```shell sudo cp /etc/openvpn/server/pki/issued/client_name.crt /etc/openvpn/server/clients/ sudo cp /etc/openvpn/server/pki/private/client_name.key /etc/openvpn/server/clients/ sudo cp /etc/openvpn/ca.crt /etc/openvpn/server/clients/ ``` 9. Создайте файл конфигурации для каждого клиента: ```shell sudo nano /etc/openvpn/server/clients/client_name.ovpn ``` Вставьте следующий текст в файл: ``` client dev tun proto udp remote YOUR_SERVER_IP YOUR_SERVER_PORT resolv-retry infinite nobind persist-key persist-tun remote-cert-tls server key-direction 1 cipher AES-256-CBC auth SHA256 <ca> -----BEGIN CERTIFICATE----- [Your CA Certificate] -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- [Client Certificate] -----END CERTIFICATE----- </cert> <key> -----BEGIN PRIVATE KEY----- [Client Key] -----END PRIVATE KEY----- </key> ``` Замените `YOUR_SERVER_IP` и `YOUR_SERVER_PORT` на IP-адрес и порт вашего сервера OpenVPN. 10. Закройте и сохраните файл конфигурации. 11. Повторите шаги 7-10 для каждого клиента. 12. Запустите сервер OpenVPN: ```shell sudo systemctl start openvpn@server ``` Убедитесь, что сервис запущен без ошибок. После выполнения всех этих шагов ваш OpenVPN сервер будет
Если у вас установлена ОС виртуального выделенного сервера (VDS) и вы хотите использовать его только с VPN, то рекомендуется установить Pritunl. Pritunl представляет собой готовый набор для настройки OpenVPN с веб-интерфейсом, и его установка достаточно проста. Вы сможете настроить VPN всего в несколько кликов мышкой через веб-интерфейс.