OpenVPN клиенты
В независимости от ОС клиента, необходимо скопировать ключи/сертификаты, сгенерированные на предыдущем этапе на устройство где планируется использование OpenVPN.
Если для клиента были сгенерированы сертификаты/ключи с именем CLIENT_NAME, то нужно будет скопировать следующие файлы:
- ca.crt
- CLIENT_NAME.crt
- CLIENT_NAME.key
- ta.keys
Linux
Устанавливаем OpenVPN (Arch Linux):
pacman -S openvpn
Устанавливаем openvpn (CentOS 7):
yum -y install openvpn
Имеется несколько вариантов запуска клиента OpenVPN, к примеру через службу, аналогично тому как это было сделано на сервере, или к примеру, произвести подключение через NetworkManager.
OpenVPN client как сервис
Перейдем в директорию /etc/openvpn и создадим там директорию client
cd /etc/openvpn
mkdir client
Скопируем ранее сгенерированные сертификаты и ключи клиента в директорию client.
Создание ключей и сертификатов было рассмотрено ранее.
client
#
dev tun
proto udp
#
remote MyOpenVPNServer.com 1194
#
resolv-retry infinite
user nobody
group nobody
#
persist-key
persist-tun
# Прописываем ключи/сертификаты
ca /etc/openvpn/client/ca.crt
cert /etc/openvpn/client/CLIENT_NAME.crt
key /etc/openvpn/client/CLIENT_NAME.key
# Требуем проверку сертификата сервера (защита от MITM атаки)
remote-cert-tls server
# Прописываем местоположения tls ключа
tls-auth /etc/openvpn/client/ta.key 1
# Задаем алгоритм шифрования
cipher AES-256-CBC
# Указываем что хотим жать трафик
comp-lzo adaptive
Для запуска клиента воспользуемся командой
systemctl start openvpn@client
NetworkManager и OpenVPN
Для поддержки OpenVPN через NetworkManager необходимо установить соответствующие дополнение.
Установка дополнения для NetworkManager в Arch Linux
pacman -S networkmanager-openvpn
Установка дополнения для NetworkManager в CentOS 7
yum -y install NetworkManager-openvpn
Копируем необходивые ключи/сертификаты и создаем конфигурационный файл clien.conf как это было сделано с предыдущей секции.
Если ключи/сертификаты были скопированы в другую директорию, то не забываем правильно указать путь к ним в конфигурационным файлам.
- Правая кнопка мыши на аплете NetworkManager -> Соединение VPN -> Настроить VPN;
- В открывшемся окне “Сетевые соединения” -> Добавить -> Выбираем “Импортировать сохраненную конфигурацию VPN…”, указываем на client.conf файл и задаем имя соединения(может быть любым, несет информативную нагрузку);
- При необходимости можно пощелкать по вкладкам и внести изменения в настройки.
Альтернативным вариантом будет:
- Правая кнопка мыши на аплете NetworkManager -> Соединение VPN -> Настроить VPN;
- В открывшемся окне “Сетевые соединения” -> Добавить -> Выбираем “OpenVPN”;
- Производим настройки через графический интерфейс пользователя.
Android
Устанавливаем клиент OpenVPN с Google Play или с F-Droid
Это OpenSource проект, код которого можно скачать с GitHub.
- Как и в прошлой секции можно скачать файлы необходимых ключей/сертификатов в любую директорию;
- В этой же директории создать конфигурационный файл client.conf с содержанием приведенным выше, но перед именами файлов сертификатов/ключей пути прописывать не нужно;
- Скопировать эту директорию на смартфон с установленным клиентом OpenVPN;
- Запустить клиент OpenVPN, нажать кнопочку “+” -> в открывшемся окне выбрать “Импортировать” -> указать местоположение файла client.conf.
Альтернативным вариантом будет копирование файлов ключей/сертификатов на смартфон и запуск мастера настройки соединения в клиенте OpenVPN.
Windows
Автор не имел возможности настраивать OpenVPN на данной ОС, о чем абсолютно не сожалеет, Вы же можете воспользоваться утиной подсказкой.