Налаштування OpenVPN через http

Часто буває потрібен доступ до свого робочого комп'ютера, який, як правило, знаходиться за корпоративним NAT і доступ є тільки через корпоративний proxy. До того ж, proxy завдавав інші незручності пов'язані з програмами, які самі не вміли працювати через нього. Одного дня мене це дістало, і спонукало організувати собі віддалений доступ за допомогою OpenVPN сервера, і тим самим я "вбив двох зайців": організував віддалений доступ до робочого комп'ютера, і нормальний інтернет на ньому.

І на сервері та на клієнті нам потрібен виключно openvpn:

Конфігурація сервера

Насамперед необхідно включити форвардинг. Відкриваємо /etc/sysctl.conf , змінюємо рядок або додаємо якщо ні:

Після чого застосуємо зміни:

Створимо конфігураційний файл сервера - /etc/openvpn/server.conf :

Для зручності створення сертифікатів у постачанні з OpenVPN є скрипти easy-rsa, що полегшують їх створення. Скопіюємо їх у більш зручне та доступне місце:

Тепер у директорії /etc/openvpn/easy-rsa відкриємо файл vars і змінимо директиви на свій смак/розсуд:

Т.к. ми заздалегідь у файлі vars змінили всі необхідні нам дані, то багато питань можна пропустити натисканням Enter. Сертифікати залишаємо там, де вони є (в директорії /etc/openvpn/easy-rsa/keys). Там їм на мою думку саме місце.

Включимо NAT для мережі, яку використовуємо для OpenVPN, інакше доступу в інтернет нам не видно:

Перезапустимо OpenVPN і додамо його в автозавантаження:

Конфігурація клієнта

На клієнті для підключення необхідні файли: ca.crt, client01.crt, client01.key. Вони знаходяться на сервері директорії /etc/openvpn/easy-rsa/keys/ . Для зручності, клієнтськоюкомп'ютері, помістимо в директорію /etc/openvpn/client/ .

Створимо файл конфігурації клієнта - /etc/openvpn/connection-to-homeserver.conf :

Перезапустимо OpenVPN і додамо його в автозавантаження: