NAT y LAN drwy tun0 ar borth VPN OpenBSD
Dewiswch rhwng NAT ffynhonnell a llwybr dychwelyd ar gyfer traffig LAN sy'n gadael allanfa tun0 OpenBSD, yna rhowch y rheol nat-to lle bydd pf yn dal i'w chaniatáu.
Yn aml bydd dau beiriannydd sy'n cael yr un porth OpenBSD yn rhoi dwy set wahanol o reolau i chi ar gyfer cyrraedd rhwydwaith pell, ac mae modd amddiffyn y ddwy. Nid yw'r dewis rhwng cyfieithu ffynhonnell a llwybr dychwelyd yn gwestiwn cystrawen o gwbl. Mae'n dibynnu ar yr hyn y mae'r ochr bell eisoes yn ei wybod am 192.168.88.0/24 a'r hyn y mae angen i chi ei gadw yn eich logiau. Os gwnewch hyn yn anghywir, bydd y llinell nat-to yn edrych yn berffaith gywir tra bydd yr atebion yn diflannu i borth diofyn pell.
Mae llwybro ac ailysgrifennu yn ateb cwestiynau gwahanol
Mae'r tabl llwybro yn penderfynu bod 172.20.0.0/16 yn cyrraeddadwy dros tun0, ac mae'r penderfyniad hwnnw'n digwydd cyn ymgynghori ag unrhyw gyfieithiad pf. Yna mae cyfieithu ffynhonnell yn newid pennawd y pecyn fel bod pen pell yn gweld cyfeiriad twnnel y porth yn lle gwesteiwr LAN. Nid yw'r naill fecanwaith yn disodli'r llall: ni all rheol nat greu llwybr o ddim, ac ni all llwybr berswadio llwybrydd pell nad yw erioed wedi clywed am eich is-rwydwaith preifat. Pan fo'r ochr bell heb lwybr dychwelyd, mae atebion yn cael eu gollwng neu eu hanfon i'w phorth diofyn, ac nid yw unrhyw faint o addasu rheolau yn trwsio hynny.
Yn syml, mae anfon ymlaen yn ateb i ble mae traffig yn mynd ac mae cyfieithu yn ateb o bwy y mae'n ymddangos ei fod yn dod. Cadwch hwy mewn blychau meddwl ar wahân wrth i chi gynllunio'r set reolau.
Tri amod sy'n penderfynu
Gofynnwch dri chwestiwn yn eu trefn ac fel arfer mae'r dyluniad yn dewis ei hun. A oes gan y rhwydwaith pell lwybr statig sy'n pwyntio at gyfeiriad y twnnel ar gyfer 192.168.88.0/24, neu a yw ei weinyddwr yn rheoli'r llwybryddion ar y llwybr hwnnw? Os oes, gadewch i gyfeiriadau LAN deithio'n ddigyfnewid a hepgor y cyfieithu'n gyfan gwbl. A oes angen gwelededd fesul cleient ar yr ochr bell, naill ai ar gyfer polisi mynediad neu ar gyfer trywydd archwilio? Os oes, mae cadw'r ffynhonnell yn werth y gwaith llwybro. A yw cyfeiriad y twnnel yn ddigon sefydlog i'w ysgrifennu mewn llwybr pell, neu a yw'n symud rhwng ailgysylltiadau?
Os yw unrhyw ateb yn na neu'n anhysbys, nat-to yw'r opsiwn pragmatig, ac ef hefyd yw'r un gwrthdroadwy. Mae rheol gyfieithu yn dod allan mewn un llinell unwaith y bydd yr ochr bell yn ychwanegu llwybr priodol. Mae llwybr dychwelyd na osodwyd erioed yn costio edefyn cymorth i chi bob tro y bydd rhywun yn gofyn pam fod y twnnel yn gweithio mewn un cyfeiriad yn unig.
Gosodwch y darn fel bod pf yn ei werthuso mewn gwirionedd
Mae'r darn isod yn cymryd yn ganiataol mai'r LAN yw 192.168.88.0/24, mai'r rhwydwaith pell yw 172.20.0.0/16, a mai rhyngwyneb y twnnel yw tun0. Nid oes dim ynddo yn dewis naid nesaf. Dim ond ailysgrifennu'r ffynhonnell ar becynnau sydd eisoes yn gadael drwy'r twnnel y mae'n ei wneud.
match out on tun0 inet from 192.168.88.0/24 to 172.20.0.0/16 nat-to (tun0)
pass in on em0 inet from 192.168.88.0/24 to any keep state
Mae dau fanylyn yn y llinell gyntaf honno'n cario'r rhan fwyaf o'r pwysau. Mae cromfachau o amgylch tun0 yn dweud wrth pf am ddarllen cyfeiriad y rhyngwyneb bob tro y bydd yn adeiladu cofnod cyflwr, sy'n bwysig pan fydd y twnnel yn cael ei ailrifo ar ôl ailgysylltu. Mae'r gair match yn golygu bod y rheol yn ailysgrifennu ac yna'n disgyn drwodd, felly rhaid i reol pass ar wahân addef y llif o hyd. Rhaid i'r rhyngwyneb a enwir yn y llinell match hefyd fod yr un y mae'r tabl llwybro yn ei ddewis, neu bydd pf yn gwerthuso'r rheol ar lwybr allan gwahanol i'r un y mae'r pecyn yn ei gymryd mewn gwirionedd.
Peidiwch ag anghofio'r ochr gnewyll. Rhaid galluogi anfon ymlaen IPv4, a rhaid i'r rheolau pass cyflwr ar gyfer twnnel a LAN fodoli cyn i unrhyw un o'r rhain fod yn ystyrlon. Adran PF NAT yn FAQ OpenBSD yw'r cyfeirnod cywir ar gyfer trefn y geiriau allweddol yma.
Gwiriwch y set reolau cyn ymddiried yn y traffig
Gwiriwch y gystrawen yn gyntaf gyda pfctl -nf /etc/pf.conf, sy'n dosrannu'r ffeil heb ei llwytho. Yna llwythwch y polisi a darllenwch yr hyn y mae'r cnewyllyn yn ei ddal mewn gwirionedd, oherwydd gall rheol a ddosrannwyd yn lân fod wedi'i chysgodi neu ei chysylltu â'r rhyngwyneb anghywir o hyd. Mae pfctl -sn yn argraffu rheolau cyfieithu yn eu ffurf llwythog, ac mae pfctl -sr yn argraffu rheolau hidlo yn nhrefn gwerthuso.
Gwyliwch y wifren nesaf. Ar y porth, mae tcpdump -ni tun0 'host 172.20.0.10' yn dangos ai cyfeiriad y twnnel neu westaiwr LAN yw'r cyfeiriad ffynhonnell sy'n gadael y twnnel. Mae netstat -rn -f inet cyflym yn cadarnhau pa ryngwyneb y mae'r cyrchfan yn datrys iddo. Unwaith y bydd traffig yn llifo, mae pfctl -ss yn rhestru cofnodion cyflwr; os na chrëwyd cyflwr gan lif, ni wnaeth y pecyn erioed gyfateb i reol sy'n creu un.
Os yw ochr y twnnel yn edrych yn iawn ac mae atebion yn dal i beidio â chyrraedd, stopiwch olygu pf. Mae'r diffyg sy'n weddill ar y llwybrydd pell, lle mae'r ateb yn cael ei anfon tuag at gyfeiriad preifat na all yr ochr honno ei gyrraedd.
Pan fo cyfieithu'n costio mwy nag y mae'n ei arbed
Mae cyfieithu'n cuddio cleientiaid, ac weithiau dyna'n union y fasnach anghywir. Mae is-rwydweithiau sy'n gorgyffwrdd yn un achos: os yw'r ochr bell hefyd yn defnyddio 192.168.88.0/24 yn fewnol, mae cyflwyno gwesteiwyr LAN fel y porth yn gwneud y gwrthdrawiad yn waeth yn lle'n well. Mae polisïau IPsec sy'n dewis traffig yn ôl pâr cyfeiriad yn un arall, oherwydd mae'r gronfa ddata polisi diogelwch yn cael ei chyfateb cyn cyfieithu ac ni welant byth eich pecyn wedi'i ailysgrifennu. Mae unrhyw ddefnydd sy'n bilio, yn tagu neu'n archwilio fesul defnyddiwr hefyd yn colli'r hunaniaeth sydd ei hangen arno yr eiliad y bydd y ffynhonnell yn cwympo i un cyfeiriad.
Mae deilliaid pf cludadwy yn fagl ar wahân. Mae cynhyrchion sy'n cynhyrchu eu ffeiliau rheolau eu hunain yn disgwyl i NAT gael ei ffurfweddu drwy eu rhyngwyneb, ac mae darnau a olygwyd â llaw yn cael eu trosysgrifo ar yr ail-lwytho nesaf. Ni fydd setiau rheolau a gopïwyd o ganllawiau a ysgrifennwyd cyn bod y gair allweddol match yn llwytho ar gnewyllyn cyfredol, felly porthwch y gystrawen a darllenwch y gwall yn lle dyfalu.
Mae'r rheol benderfynu sy'n goroesi cyfarfod â rhwydweithiau go iawn yn fyr: gosodwch lwybr dychwelyd pan allwch, cyfieithwch pan na allwch, ac ysgrifennwch pa un o'r tri amod a wnaeth i chi ddewis. Mae'r nodyn hwnnw'n arbed prynhawn i'r person nesaf.