Настройка сервера OpenVPN на Windows
Копипаст из заметок, собранных из интернета
По сути не так важно как какой редакции Windows настраивать (Windows 7, Windows Server 2008, 2012).
— Установка программы + драйвера туннеля
— Генерация/подсовывание сервису конфигов/ключей…
Когда писал инструкцию, версии 2.3.* имели проблемы с генерацией сертификатов и пришлось использовать проверенную версию
openvpn-2.1_rc22-install.exe
clean-all.bat
init-config.bat
vars.bat
build-ca
build-key-server server
build-dh
openvpn —genkey —secret ..\keys\ta.key
редактируем server.ovpn:
;==================
mode server
proto udp
port 2294
local 192.168.1.9
dev tun
;tls-server ;Режим клиент-сервер
;topology subnet ;Данного топология доступна с версии 2.1 и заключается в том что каждому клиенту выдается по 1 адресу, без виртуальных портов маршрутизатора
route-method exe ;Маршруты добавляются через .exe — это важно
route-delay 2 ;Задержка при добавлении маршрута
server 10.1.0.0 255.255.255.0 ;создается виртуальная сеть 10.8.0.0/24
route-gateway 10.1.0.1 ;задаем шлюз
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
;tls-auth ta.key
push «redirect-gateway» ;при успешном подключении к серверу, клиенту будет установлен новый default-gateway от vpn-сервера (см. netstat -r после соединения), таким образом весь трафик пойдет через vpn-сервер
push «route 10.1.0.0 255.255.255.0»
route 10.1.0.0 255.255.255.0 ;Задаем серверу ОС маршрут на всю сеть
;cipher BF-CBC ;Выбираем метод сжатия
comp-lzo
keepalive 5 60 ;Cервер пингует противоположную сторону с интервалом в 10 секунд и если сторона не отвечает за 60 секунд, то сервер запустит пересоединение
client-to-client ;разрешаем клиентам видеть друг-друга в сети
ifconfig-pool-persist ipp.txt ;файл, в котором будут храниться связи «профиль клиента, выделенный ip-адрес», и после переподключения будет выдан снова прежний адрес
;push «route 192.168.1.0 255.255.255.0»
;iroute 192.168.1.0 255.255.255.0
persist-key
persist-tun
status openvpn-status.log
verb 1
mute 20 ;ограничиваем количество однотипных логов
;==================
генерируем клиентов
build-key
внимание. строку юзера прописывать уникальную для каждого ключа, иначе несколько ключей содинаковыми id не прокатят
Клиенту даем следующие файлы (4 штуки):
ca.crt — сертификат сервера
ta.key — tls сертификат
%username%.crt — персональный сертификат
%username%.key — персональный ключ
Назначение файлов:
Файл Машина Назначение Доступ
ca.crt Сервер и клиенты Сертификат корневого СА Публичный
ca.key Только на сервере Необходим для подписи других Секретный
сертификатов
dh1024.pem Только на сервере Diffie Hellman параметры Публичный
server.crt Только на сервере Сертификат сервера Публичный
server.key Только на сервере Ключ сервера Секретный
client.crt Только на клиенте Сертификат клиента Публичный
client.key Только на клиенте Ключ клиента Секретный
client1.ovpn
;==================
client
dev tun
proto udp
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
float
verb 1
ca ca.crt
tls-auth ta.key 1
remote 22.33.44.55 1194
cert notebook.crt
key notebook.key
;==================
; Про правильное убийство ключей — http://openvpn.net/index.php/open-source/documentation/howto.html
Добавить комментарий