Fixmen sisäinen OpenVPN-verkko
Tämä sivu kuvaa Fixmen sisäisen OpenVPN-verkon rakennetta, ylläpitoa ja käyttöä. Sääti ja kirjoitti Japsu, saa kysyä.
Palvelut
Fixme-OpenVPN on olemassa ensisijaisesti seuraavia palveluita varten:
- syslog-ng - lokivirta muilta palvelimilta zergillä pyörivälle FixBotin logwatch-moduulille.
- ldap - ei vielä konffattu, mutta näin ei tarvitse avata ldapia koko maailmalle.
- verkkolevyt - kukaan ei vielä tiedä, miten nämä tullaan toteuttamaan, mutta todennäköisesti nekin nauttivat omasta sisäverkosta.
Toisin sanoen vähimmillään Fixme-OpenVPN:n tulisi tarjota kaikille asiakkaille pääsy salatun putken yli zerg.internalille osoitteeseen 10.0.0.5. Tätä toiminnallisuutta ei saa rikkoa muita ominaisuuksia lisättäessä.
Topologia
Verkon ainoa palvelin on Zerg. Asiakkaita ovat Hypo ja Protoss.
Joskus myöhemmin saatetaan kokeilla jotain fully connected mesh + ospf -viritystä.
Konfiguraatio
Fixme-OpenVPN:n konfiguraatioon liittyvät ainakin seuraavat tiedostot:
{zerg,hypo,protoss}:/etc/default/openvpn: Määrittävät, mitkä openvpn-yhteydet käynnistetään init-skriptistä/etc/init.d/openvpn.{zerg,hypo,protoss}:/etc/openvpn/dh2048.pem: Diffie-Hellmann-parametrit. Generoidaan komennolla "openssl dhparam -out dh2048.pem 2048" (siinä KESTÄÄ!).- {
zerg,hypo,protoss}:/etc/ssl/fixme-CA.crt: CA, jolla asiakasvarmenteet on allekirjoitettu. zerg:/etc/openvpn/fixme.conf: Palvelinpään konfiguraatio.zerg:/etc/openvpn/fixme-ccd/fixme-client-{zerg,protoss}: Asiakaskohtainen konfiguraatio. Täältä asetetaan IP-osoitteet.zerg:/etc/ssl/{zerg.fixme.fi.crt,private/zerg.fixme.fi.key}: Palvelinvarmenne ja -avain.{hypo,protoss}:/etc/openvpn/fixme.conf: Geneerinen asiakaspään konfiguraatio. Pitäisi olla kopioitavissa minimimuutoksin (avaintiedostojen nimet).{hypo,protoss}:/etc/openvpn/fixme-client-*.{key,crt}: Asiakasvarmenne ja -avain.
Osoitteet
OpenVPN:ssä pitää allokoida jokaiselle tunnelille oma /30. Fixme-OpenVPN:ssä nämä allokoidaan alueen 10.50.0.0/24 sisältä. Periaatteessa jokaisen /30:n toinen osoite on palvelinpään käytössä, mutta käytännössä eivät - ne ovat vain VPN-tunnelin endpointteja eikä niitä missään nimessä pidä yrittää käyttää mihinkään hyötyliikenteeseen. Zerg on tässä verkossa 10.0.0.5, piste.
- 10.50.0.1 - hypo
- 10.50.0.5 - protoss
Uuden koneen lisääminen
Näin lisäät uuden koneen fixme-vpn:ään (esimerkkinä käytetään konetta nimeltä Terran):
Asenna Terranille OpenVPN (duh).
Hakemistossa
zerg:/root/fixme-caon EasyRSA. Generoi sillä asiakasvarmenne, jonka CN:ksi tulee "fixme-client-terran".Kopioi
zerg:/root/fixme-ca/keys/fixme-client-terran.{key,crt}terran:/etc/openvpn:ään.Luo
terran:/etc/openvpn/dh2048.pem(yllä)Kopioi vaikka
protoss:/etc/openvpn/fixme.confterran:/etc/openvpn/fixme.confiksi ja korjaa sieltä avaintiedostojen nimiksifixme-client-terran.{key,crt}.Allokoi Terranille /30 ja luo mallin mukaan
zerg:/etc/openvpn/fixme-ccd/fixme-client-terran. Lisää se pienempi niistä kahdesta osoitteesta DNS:ään nimelläterran.internal.fixme.fi(muista reverse!).Käy sorvaamassa
terran:/etc/default/openvpn:äänAUTOSTART="terran".Loitsi Terranilla
/etc/init.d/openvpn restart.Pingaa Zergiä sen internal-verkon osoitteessa 10.0.0.5.
Nauti tölkki Jolttia ja debuggaa.