Nastavení OpenVPN na Turris routeru

Postup pro zprovoznění OpenVPN serveru na routeru Turris.

Problém

Chci mít mimo svůj byt přístup k serverům, které v této síti běží, aniž bych je musel veřejně zpřístupňovat na všemožných portech přes NAT a zároveň mohl s těmito servery pracovat stejně, bez rozdílu toho, odkud jsem připojen.

Řešení

Nejideálnější řešení mi v tuto chvíli přijde OpenVPN server s možností přístupu na IP adresy v lokální síti.

Postup

Veškerá konfigurace se provádí přes SSH. Základem je instalace balíčku openvpn.

Následně je potřeba balíček na generování klíčů a certifikátů

Následně je ideální vyčistit případné klíče, které by v této aplikaci mohly být

Dálší krok je vytvoření jednotlivých certifikátů

V prvních třech příkazech je poté nutno vyplnit parametry jednotlivých certifikátů (jméno, organizace..)

Název souboru Potřebuje ho Typ Soukromý
ca.crt server + všichni klienti Root CA certifikát NE
ca.key pouze stroj podepisující certifikáty Root CA klíč ANO
dh2048.pem pouze server Diffie Hellman parameters NE
server.crt pouze server Certifikát serveru NE
server.key pouze server Soukromý klíč serveru ANO
client.crt pouze klient Certifikát klienta NE
client.key pouze klient Soukromý klíč klienta ANO

Poté zkopírujeme vytvořené certifikáty a klíče do složky /etc/openvpn

Nyní přichází na řadu samotná konfigurace openvpn serveru. Je potřeba editovat (případně vytvořit) konfigurační soubor /etc/config/openvpn

který bude obsahovat následující konfiguraci (samozřejmě bez mých poznámek)

Jelikož nejsem kdo ví jaký „síťař“, některé řádky jsem do hloubky nezkoumal

Docela důležitý je řádek 13 – počítače připojené přes VPN budou dostávat adresy v závislosti na nastavení na řádku 11 (v mém případě 10.8.0.2, 10.8.0.3 atd.) a já potřebuji zajistit, abych se z této sítě byl schopen dostat na adresy z mé lokální sítě, v tomto případě 192.168.10.x. Řádek 13 zajistí vytvoření statické routy v klientském počítači, který toto nastaví. Jinak info o dalších parametrech je v komentářích

OpenVPN máme nakonfigurované. Zbývá nastavit nové rozhraní a firewall. Nové rozhraní vytvoříme editací souboru /etc/config/network

a  přidáním následujícího kódu

Firewall upravíme editací souboru /etc/config/firewall

Do zóny lan přidáme řádek list network ‚vpn‘

Ve stejném souboru ještě přidáme (třeba na konec) roli firewallu

Tímto je openvpn na Turrisu úspěšně nastaveno. Zbývá už jen restartovat dotčené služby

A to je vše. Nyní stačí už jen konfigurace klienta s klientským certifikátem.

 

Tomáš Přibyl

Jsem IT specialista a konzultant, tvůrce webů a webových aplikací v PHP. V současné době pracuji jako OSVČ.

Komentářů: 3

    1. Zdravím Vás 🙂
      Jelikož mi odešel NTB, který jsem používal k připojení na OpenVPN, takže musím vycházet z neupravené konfigurace. Ideálně vytvořit konfigurační soubor s parametry pro OpenVPN klienta


      client
      dev tun
      proto udp
      remote IP_SERVERU 1194
      nobind
      ns-cert-type server
      verb 3
      redirect-gateway def1
      auth-nocache
      script-security 2
      persist-key
      persist-tun

      ca ceska_k_certifikatu/ca.crt
      cert ceska_k_certifikatu/client.crt
      key ceska_k_certifikatu/client.key

      key-direction 1

    2. Ideálně ale mrknout do manuálu co znamenají jednotlivé directivy, ale toto by mělo být funkční řešení, jen jsem si upravoval něco ohledně brány na míru, ale je to dlouho a z hlavy si to nepamatuji.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *