OpenVPN server – klient na Windows, instalace a nastavení

Postup instalace je popsaný pro nejjednodušší cestu k realizaci VPN spojení. Instalační soubory pro Windows stáhneme z www.openvpn.net. Instalujeme na serverovém a klientských počítačích, vhodná je instalace na disk C, při instalaci na D vznikal problém s dávkovými soubory, kde je proměnná pro program files nastavená na výchozí systémový C:\Program Files.

Na serverovém počítači spustíme příkazový řádek jako správce a přesuneme se do adresáře C:\Program Files\OpenVPN\easy-rsa a spustíme podle návodu na OpenVPN.net tuto posloupnost dávkových souborů:

init-config

Teď můžeme otevřít soubor vars.bat a upravit proměnné KEY na koci souboru (stát, město, orgranizace…). Pokračujeme spuštěním souborů:

vars
clean-all
build-ca
build-key-server server
build-dh
build-key client1

Ve složce C:\Program Files\OpenVPN\easy-rsay\keys máme vytvořené potřebné soubory pro VPN spojení. Z této složky na serverový počítač zkopírujeme do složky C:\Program Files\OpenVPN\config soubory:

ca.crt
dh1024.pem
server.crt
server.key

Na klientském počítači zkopírujeme do složky C:\Program Files\OpenVPN\config tyto soubory:

ca.crt
client1.crt
client1.key

Dále na serverový počítač do složky C:\Program Files\OpenVPN\config umístíme soubor vpn_server.ovpn s tímto obsahem:

# server
mode server

# tls jako server
tls-server

# port, 1194 = default

port 1194

# protokol, tcp/udp
proto udp

# nastavi zarizeni
dev tap

# adresa serveru
ifconfig 10.10.1.100 255.255.255.0

# rozsah adres pro klienty
ifconfig-pool 10.10.1.20 10.10.1.25 255.255.255.0

# soucasne prihlaseni vice klientu
duplicate-cn

# certifikat certifikacni autority
ca ca.crt

# certifikat serveru
cert server.crt

# klic serveru
key server.key

# parametry pro Diffie-Hellman protokol
dh dh1024.pem

# logy serveru
log-append openvpn.log

# status serveru
#status /var/run/vpn.status 10

# uzivatel pod kterym bezi server
#user nobody

# skupina pod kterou bezi server
#group nogroup

# udrzuje spojeni nazivu, 10 (ping) a 120 (ping-restart)
keepalive 10 120

# komprese prenasenych dat
comp-lzo

# ukecanost serveru
verb 3

Na klientský počítač do složky C:\Program Files\OpenVPN\config umístíme soubor vpn_client.ovpn s tímto obsahem:

client
dev tap
proto udp
remote muj_server 1194

ca ca.crt
cert client1.crt
key client1.key

ns-cert-type server

ping 15
ping-restart 45
ping-timer-rem

persist-key
persist-tun
resolv-retry infinite
nobind
comp-lzo
verb 3
mute-replay-warnings

Na klientském i serverovém počítači musí být ve firewallu povolen port 1194 a pokud je v cestě NAT musí být nastaven forwarding portu 1194 na serverový počítač. Nakonec nastavíme automatické spuštění služby OpenVPN a službu spustíme, nejprve na serverovém počítači. Služba OpenVPN najde naše konfigurační soubory a vytvoří VPN spojení.

Příčiny nefunkční VPN

Soubory certifikátů serveru i klienta musí nenulovou délku. Pokud při generování certifikátu serveru dostanete chybovou hlášku:

The commonName field needed to be supplied and was missing

nebo

failed to update database

potom při generování vložte nějaký řetězec do hodnoty CommonName, až bude skript požadovat vstup této hodnoty.

Komentářů: 8 to “OpenVPN server – klient na Windows, instalace a nastavení”

  1. Moc dík, perfektní návod díky němu jsem nastavil VPN za 10 minut. A chodí perfektně.

  2. Prosím o radu – A- spustím OpenVPN normálně, dá mi volbu „connect“ opticky se spojí, ale není průchozí. -B- spustím jako správce a nenabídne volbu „connect“ , pouze Proxy setting, About a Setting. Platí pro Windows 7/64bit , na XP funguje.

  3. To Jar. Bucek: Zrejme spoustite OpenVPN GUI standardne. Visty a Win7 oh potrebuji „spustit jako spravce“. Ja jsem stahnul novou verzi, ktera mi chodila standardne i pod Vistama, ale uz ne (mozna po nejake win aktualizaci – zatim jsem nad tim moc nemel cas laborovat). Pokud to totiz neni tak jak rikam, neproroutuje se to. Taky by melo jit spoustet to jako sluzbu, ale to jsem zatim jeste nezousel.

  4. může pomoci spustit neprovedené routy v příkazovém řádku s admin právy. Routy najdete v logu OpenVPN, zkopírujete do příkazové řádku a spustíte. Stav rout zkontrolujete v příkazovém řádku příkazem route print.

  5. dostávám „failed to update database“ u generování klienta, žádné hodnoty prázdné nenechávám. Dá se třeba nějak nastavit „přednastavená hodnota“ ve vars.bat? mám W7 prof. 32b.
    taky píše že mu chybí nějaký soubor .old
    (pouštím jako správce, instalováno na C, poslední verze 2.1.2)

  6. Hodnota CommonName musí být při každém generování jiná. V adresáři easy-rsa by měl být soubor s názvem serial.start obsahující řetězec 01. Hodnoty ve vars.bat je možné přednastavit, použjí se potom pro generování, ale asi (musel by nahlédnout do http://openvpn.net/index.php/open-source/documentation/howto.html#pki ) nikoliv CommonName. Obsah vars.bat se přepíše při spuštění init-config.

  7. Zdravim. Chceme zkusit vpn na hry ale na W7 jsem narazil na problém – nemělo by openvpn vytvořit při instalaci virtuální lan kabel v seznamu sítí, kterej pak budu nastavovat ve hrách jako primární adaptér? ještě pořát čekám na propojení s dalšími, ale nevím jak pak nastavit hry pokud to ten virtuální lan nevytvoří a zůstane to jen v sys-tray :|
    díky za každou radu
    P.S: primárně nám jde o Empire Earth I s datadiskem která potřebuje /24 síť (=hamachi nepoužitelné)

  8. Faze: Pokud uvedená hra funguje v režimu server – klienti, tak lze aplikovat zde uvedený postup. Hráči klienti se potom budou připojovat na adresu VPN serveru.
    Počítač, kde poběží VPN server musí být viditelný z internetu, tedy mít veřejnou IP, pokud bude za natem, musí být na natu směrování portu OpenVPN.
    Virtuální LAN rozhraní Open VPN je aktivní až po ručním spuštění nebo po spuštění služby OpenVPN.
    Toto vše je v podstatě v tomto článku.

Vložit komentář