Il-pubblikazzjoni tal-portijiet ta’ Docker u s-sorsi VPN: żewġ qbil li taqbeż
L-IP ta’ server VPN mhix dejjem is-sors li jara Docker, u l-port wara DNAT mhuwiex il-port ippubblikat. Qabbel iż-żewġ fatti mal-passaġġ reali.
Ir-regola tgħid ħalli l-indirizz tas-server VPN lejn is-servizz ippubblikat, u xorta l-konnessjoni taqa’. Dan ir-riżultat huwa komuni, u mhuwiex ħsara ta’ Docker. Żewġ qbil separati huma ħżiena: is-sors li ktibt jista’ ma jkunx is-sors li jirċievi l-host, u l-port li ktibt jista’ ma jkunx il-port li jara l-filtru. Li tissewwa t-tnejn teħtieġ li tħares lejn il-passaġġ tal-pakkett minflok id-dijagramma tas-servizz.
Il-mit: ħalli s-server VPN u spiċċajt
VPN b’rotot jista’ jżomm l-indirizz tat-tunnel tal-klijent sax-xorta sa host Docker. Gateway li jagħmel traduzzjoni tas-sors jista’ jbiddel dak l-indirizz tiegħu. Iż-żewġ disinji huma leġittimi, u jipproduċu sorsi differenti għall-istess azzjoni tal-utent.
Allura l-frażi IP tas-server VPN tiddeskrivi suppożizzjoni, mhux osservazzjoni. Sa ma tkun taf liema miż-żewġ disinji qiegħed quddiemek, ir-regola hija stima.
Sors: pool tal-klijenti jew gateway tradott
Iċċekkja erba’ affarijiet f’ordni. L-ewwel, il-pool tal-indirizzi tal-klijenti, pereżempju 10.90.0.0/24. It-tieni, jekk il-gateway jittraduċix dak il-pool qabel ma jasal għand il-host. It-tielet, is-sors li l-host josserva tassew għal konnessjoni ġdida waħda. Ir-raba’, jekk l-awtentikazzjoni tal-applikazzjoni tiddistingwixxix utenti individwali, għax indirizz tradott maqsum ma jistax jagħmel dan.
Jekk il-pool jinżamm, regola li taqbel biss mal-indirizz pubbliku tal-gateway taqbeż kull klijent. Jekk il-gateway jittraduċi apposta, li tħalli l-indirizz tradott idaħħal kull utent warajh, li jista’ jkun aċċettabbli għal servizz b’login tiegħu stess u mhux aċċettabbli għal kull ħaġa oħra.
Port: DNAT ibiddel in-numru li taqbel miegħu
Fil-pubblikazzjoni tas-soltu b’pont Linux ma’ iptables ta’ Docker, immappjar tal-host minn 8443 għall-port tal-container 443 jiġi tradott qabel ma jidħol fis-seħħ il-filtru tal-iffurwar. Il-pakkett jasal għand il-filtru bil-port tad-destinazzjoni 443. Regola li taqbel ma’ 8443 f’dak il-punt qatt ma taqbad, anki jekk 8443 huwa dak li daħħal il-klijent.
Il-port ippubblikat għadu jeżisti fit-traċċar tal-konnessjonijiet, għalhekk id-destinazzjoni oriġinali tista’ tiġi mqabbla hemm meta tassew ikollok bżonha.
Iddeċiedi liema numru jesprimi l-ħsieb. Qabbel il-port tal-container wara DNAT meta r-regola tipproteġi s-servizz ġewwa l-container. Qabbel id-destinazzjoni oriġinali bl-għażla conntrack meta r-regola jkollha tiddeskrivi dak li talab il-klijent, u aċċetta l-ispiża żejda tal-qbil u l-kura fl-ordni tar-regoli li jiġu magħha.
Ktajjen: DOCKER-USER, mhux INPUT
Il-gwida tal-iptables ta’ Docker tqiegħed il-politika tal-iffurwar tal-utent fil-ktajjen DOCKER-USER, li tiġi evalwata qabel ir-regoli tal-iffurwar ta’ Docker stess. Regola kkupjata minn servizz tal-host għall-ktajjen INPUT tiffiltra t-traffiku indirizzat lill-host, mhux it-traffiku mibgħut ’il quddiem lejn container. Dak l-iżball jipproduċi regola li tidher tajba u li m’għandha l-ebda effett fuq il-passaġġ tal-container.
Żomm il-firxa tas-sors, il-port tad-destinazzjoni effettiv, il-protokoll u l-interface tad-dħul flimkien fl-istess regola. Permess ibbażat biss fuq is-sors għal kull destinazzjoni mibgħuta ’l quddiem huwa usa’ milli tħalli servizz ippubblikat wieħed.
Ivverifika b’konnessjonijiet ġodda
Ittestja ż-żewġ direzzjonijiet b’konnessjonijiet ġodda: klijent VPN wieħed permess u sors wieħed li għandu jibqa’ miċħud. L-istat tal-konnessjoni eżistenti jista’ jżomm sessjoni ħajja wara li tinbidel il-politika, għalhekk konnessjoni qadima ma tipprova xejn dwar ir-regola l-ġdida. Imbagħad iċċekkja l-passaġġ tar-risposta, għax il-container xorta għandu jirrotta lura lejn is-sors li jara.
Il-gwida tal-iptables ta’ Docker tiddokumenta l-ordni tal-ktajjen u l-imġiba tat-traduzzjoni tal-portijiet wara dawn l-iċċekkjar. Aqrah qabel ma tikkupja riċetta, u kkonferma liema backend juża d-Docker installat, għax il-backend nftables jintegra l-politika b’mod differenti.