iptables ostalaria VPN bakarrarekin: izenda tun gailua, ez tun+
tun+ makinarako tunnel guztiekin dator bat. Finkatu gailu-izen bakarra, jarri endpointaren salbuespena lehenengo eta mantendu leheneratze-bide bat politika probatzen duzun bitartean.
-o tun+ idaztea jarraibide zehatza dirudi eta, egia esan, kernelak dituen tunnel guztietarako komodin bat da. Bigarren VPN bezero batek, edukiontzi-zubi batek edo hondatutako saio batek utzitako interfaze batek baldintza betetzen dute guztiek, eta orduan ostalariak politikak eragotzi nahi zuen trafikoa uzten du. Azpiko prozedurak gailu-izen bakarra finkatzen du, salbuespenak tunela benetan eratu ahal izateko ordenatzen ditu eta itzultzeko bidea uzten dizu arauak gaizki ateratzen badira. Pauso bakoitza nahiko laburra da bere kabuz desegiteko.
1. pausoa: idatzi oraingo arauak
Lehenetsitako politika bat aldatu aurretik, gorde uneko egoera atzera egitea agindu bat izan dadin, oroitzapen bat izan beharrean. iptables-save > /root/iptables.pre taula bakoitza leheneratu dezakezun fitxategi batean idazten du, eta root saioa irekita duen bigarren terminal bat ez da paranoia jarri behar duzun politikak daraman konexioa botatzen duenean. Urrutitik lan egiten baduzu, programatu flush bat ere gizaki hilaren etengailu gisa.
Ondoren zerrendatu interfazeak, suposatu duzun izen bat irakurri behar zenuen izen bat delako: ip -br link oraintxe existitzen dena erakusten du, eta tunela ez da agertuko altxatuta egon arte. Idatzi gailuen izenak irakurtzen dituzun heinean.
2. pausoa: eman tunelari bere izena
OpenVPN bezeroaren konfigurazioan dev tun_work onartzen du, eta orduan Linuxek izen hori zehazki duen interfazea sortzen du tun0 esleitu beharrean. Izena egonkor mantentzen da berriz konektatzean, beste ezerk aldarrikatzen ez duen bitartean, eta horrek egiten du gailua izendatzen duen araua esanguratsu.
Izena kontrolatu ezin den tokietan, egin bat tunelaren helbidearekin edo pakete-marka batekin. Biek funtzionatzen dute, biak irakurtzeko zailagoak dira eta biak isilago huts egiten dute tunelak zenbakitzea aldatzen duenean. Nolanahi ere, egin bat gauza batekin eta izan argi zein den.
3. pausoa: idatzi politika endpointaren salbuespena lehenengo jarrita
VPN bakarrarekin dabilen ostalaria ukapen lehenetsiko ostalaria da, salbuespen-zerrenda laburrarekin, eta garrantzitsuena den salbuespena tunela existitzen uztea ahalbidetzen duena da. Eraiki ordena honetan, endpointaren araua tunel-gailuaren araua baino lehen, esku-emateak norabidea izan dezan:
# allow the tunnel to be built, then everything the tunnel carries
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -d 198.51.100.7 -p udp --dport 1194 -j ACCEPT
iptables -A OUTPUT -o tun_work -j ACCEPT
iptables -A INPUT -i tun_work -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTEndpointaren helbide eta portu literalak zure hornitzailearenak dira, ez orri honenak. Endpointa ostalari-izen bat bada, ebatzi behin eta finkatu emaitza, arau batek ezin duelako izen bat bilatu eta erantzun birakari batek isil-isilik hautsi baitdezake politika hurrengo DNS aldaketaren ondoren. Egiaztatu portua ere, TCP 443ra eramaten zaituzten hornitzaileek bestela inork idatzi ez zuen arau bat beharko baitute. Protokolo bakarrean soilik funtzionatzen duen tunela hutsune hori izaten da normalean, eta ez suebakiko akatsa.
Router batean forma bera FORWARD katean sartzen da atzean dituen bezeroentzat, eta routerraren beraren trafikoak bere arauak behar ditu. Aurreratutako paketeak soilik estaltzen dituen arau-multzo batek SSH eta DNS bide zaharrean uzten ditu, eta horrela routerra iristezin bihurtzen da tunela altxatzen den unean.
4. pausoa: egiaztatu ordena, ez soilik presentzia
Arauak sekuentzian ebaluatzen dira, beraz lehenago datorren ACCEPT batek geroago gehitu duzun REJECT ezkutatzen du. established eta related bat etortzeak uzten du zure irteerako eskari propioei erantzunak itzultzen, sarrera-bide orokor bat ireki gabe, eta tunelaren onarpenaren ostean jartzeak esan nahi du eroritako tunel batek itzulera-trafikoa oraindik pasatzen duela bere interfazean.
Eduki arau-kopurua pantaila batean irakurtzeko adina txiki. Auditoria egin ezin duzun arau-multzo bat goiko erreferentziak gehituz adabakiko duzuna da, eta horrela ukapen lehenetsiko politikek pixkanaka baimen lehenetsiko ertza hartzen dute. Zenbatu ACCEPTak aldaketaren aurretik eta ondoren.
5. pausoa: egin iraun dezan abioan eta helbide-familian
Eskuz sartutako arauak berrabiaraztean desagertzen dira, beraz kargatu ezazu banaketaren suebaki-zerbitzutik edo tunelaren interfazea existitu ondoren exekutatzen den unit batetik. OpenVPN hasi aurretik exekutatzen den script batean tun_work aipatzea trafiko botatako abioko begizta sortzeko modu ohikoa da.
Gero egiaztatu IPv6 bereizita, IPv4rako ukapen lehenetsiko politika on batek ez baitu ezer esaten beste familiari buruz. ip -6 route esango dizu ostalariak baduen IPv4 soilik kudeatzen duen tunel baten inguruan trafikoa eraman dezakeen ibilbiderik, eta ip6tables edo nftablesek bere arau baliokideak behar ditu. Probatu IPv6-only helmuga batekin, arau-multzoaren simetrian fidatu beharrean.
6. pausoa: egiaztatu eta egon leheneratzeko prest
Altxatu tunela, egiaztatu nahi duzun zerbitzuak funtzionatzen duela, eta gero saiatu politikak ukatu beharko lukeen zerbait. Leheneratu iptables-restore < /root/iptables.pre erabiliz erantzunak harritzen bazaitu, eta orduan soilik hasi arauak editatzen. Iraunkortasunak eta probatutako leheneratze-bide batek egiten dute hau bi aldiz egin dezakezun aldaketa.