Настройка OpenVPN через покси

Достаточно часто приходится работать в условиях ограниченного доступа к сети интернет. Область применения HTTP/HTTPS прокси достаточно узкая и используется в основном для работы браузера и прочих поддерживающих подключение через прокси программ.

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

Подробнее о установке и настройке OpenVPN вы можете прочитать в отдельной статье. Отмечу, что для работы клиента через прокси, OpenVPN должен принимать соединения на 80 или 443 порту. А для передачи данных должен использоваться протокол TCP. За данные функции отвечают следующие настройки:

port 443
proto tcp

Аналогичные настройки необходимо произвести на стороне клиента.

Если вы используете клиент OpenVPN в Windows, то его GUI поддерживает настройку соединения через прокси. В случае запуска клиента на Linux или в режиме службы, необходимо прописать адрес прокси и данные для авторизации в конфигурационном файле OpenVPN.

OpenVPN поддерживает соединения через HTTP прокси-сервер, со следующими режимами аутентификации:

  • Без проверки подлинности
  • Обычная проверка подлинности
  • NTLM аутентификация

Предположим, что наш HTTP прокси расположен в локальной сети по адресу 192.168.1.1 и принимает соединения на 8080 порту. В этом случае, необходим добавить в конфигурационный файл клиента OpenVPN следующие настройки:

# Без проверки подлинности
http-proxy 192.168.1.1 8080

# Обычная проверка подлинности
http-proxy 192.168.1.1 8080 stdin basic

# NTLM аутентификация
http-proxy 192.168.1.1 8080 stdin ntlm

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

http-proxy 192.168.1.1 8080 proxy-auth.txt ntlm

Содержимое файла proxy-auth.txt:

username
password