VPN (или Virtual Private Network – виртуальная частная сеть) – это технология, обеспечивающая безопасное соединение удаленных интернет-ресурсов (как если бы они находились в одной локальной сети). OpenVPN – это популярная реализация VPN, которая работает на операционных системах Linux, Windows и Mac и может быть использована для создания сложных зашифрованных сетей между физически распределенными серверами.
Сервер доступа OpenVPN (OpenVPN Access Server) – это разработанное на основе OpenVPN решение, которое используется как портал для управления подключениями, пользователями и интерфейсами. Этот сервер предоставляет базовый экземпляр VPN, клиент для работы с веб-браузером и веб-интерфейс для управления этими компонентами.
Данное руководство продемонстрирует установку и настройку сервера доступа OpenVPN на виртуальном выделенном сервере CentOS 6.5.
Загрузка и установка пакетов OpenVPN
Получить все необходимые для установки сервера доступа OpenVPN пакеты можно на сайте проекта.
Щелкните правой кнопкой мыши на пакете, который соответствует текущей версии CentOS и архитектуре машины. Выберите пункт Copy Link Address (или подобный предоставленный браузером пункт).
Затем загрузите пакет при помощи команды curl -O (буква О, а не ноль), указав только что скопированный URL. В данном случае получается:
cd ~
curl -O http://swupdate.openvpn.org/as/openvpn-as-2.0.5-CentOS6.x86_64.rpm
После загрузки пакета установите его при помощи команды rpm:
sudo rpm -i openvpn-as-2.0.5-CentOS6.x86_64.rpm
Во время установки будет создана учетная запись администратора по имени openvpn, не защищенная паролем.
Чтобы установить пароль для записи администратора, наберите:
sudo passwd openvpn
Готово! Теперь сервер OpenVPN установлен. Далее речь пойдет о настройке сервера доступа при помощи веб-интерфейса.
Доступ к веб-интерфейсу
Получить доступ к порталу VPN можно, открыв IP-адрес или доменное имя сервера на порту 943. Сервер работает с поддержкой TLS, потому нужно указать протокол HTTPS. Чтобы перейти к административному интерфейсу, внесите /admin в конец строки:
https://ip_или_домен_сервера:943/admin
Появится предупреждение «The site’s security certificate is not trusted»; это значит, что SSL-сертификаты сайта не были заверены ЦС, которому может доверять ваш браузер.
Это вполне ожидаемая реакция. Просто OpenVPN использует самоподписанный сертификат SSL, которому браузер не может доверять; чтобы продолжить, нажмите Proceed anyway.
Появится страница входа для администратора, или Admin Login. Используйте имя openvpn и установленный ранее пароль.
Далее на экране появится лицензионное соглашение OpenVPN; примите все условия, чтобы продолжить.
После прохождения регистрации появится интерфейс администратора в комплекте с некоторыми полезными функциями и статистическими данными.
При помощи этого интерфейса можно настроить сервер VPN. Сервер доступа разделяет веб-интерфейс и VPN-доступ, так что каждый компонент можно настроить отдельно.
К примеру, если в левом меню открыть раздел Server Network Settings, появится страница, при помощи которой можно настроить порт и интерфейс каждого компонента. Можно также указать доступный для клиентов пул адресов, добавлять пользователей и настраивать методы аутентификации. Например, можно добавлять пользователей VPN, совпадающих с пользователями системы, или пользователей, которых можно контролировать через сервер LDAP.
Настройка клиента OpenVPN
Разобравшись с административными настройками OpenVPN, прейдите на клиентскую часть, открыв IP или домен сервера на порту 943:
https://ip_или_домен_сервера:943
В появившейся форме регистрации укажите имя пользователя и пароль.
Если ввести в данную форму учетные данные администратора, появится кнопка Admin, которая позволит вернуться к панели управления администратора. На экране откроется страница, которая позволяет загрузить на клиент программное обеспечение для подключения к серверу VPN:
При работе с системами Windows или OS X, или ж при использовании устройств android или iOS можно загрузить OpenVPN Connect Client, который будет работать в браузере. На машинах Linux рекомендуется использовать обычный VPN-клиент.
Следуйте инструкциям выбранного клиента. Используя клиент для Linux, загрузите профиль настройки подключения, нажав на ссылку Yourself:
При использовании обычного клиента openvpn для Linux введите:
sudo openvpn --config client.ovpn
Заключение
Готово! Теперь на сервере есть портал для доступа VPN – простой в использовании и быстрый в настройке интерфейс. Он автоматически генерирует валидные конфигурационные файлы, необходимые для подключения к серверу, что помогает сэкономить немало сил и времени.