DNAT f'kontenitur VPN: it-trażmissjoni, mhux INPUT
Wara DNAT, talba għall-indirizz tal-mina ssir traffiku mibgħut 'il quddiem. Illimita r-regola tat-trażmissjoni, aqra l-ktajjen ta' Docker u agħżel rotta tal-kunsinna b'għaqal.
It-talba tasal indirizzata lejn l-IP tal-mina u toħroġ mill-istess kontenitur indirizzata lejn servizz ġar. Bejn dawn iż-żewġ mumenti DNAT reġa' kiteb id-destinazzjoni, u l-pakkett waqaf milli jkun input għall-kontenitur VPN. Issa hu traffiku mibgħut 'il quddiem, iġġudikat b'regola differenti. Dan il-bidla tispjega għaliex regola tal-firewall li tidher tajba għall-indirizz tal-mina ma jkollha ebda effett fuq il-konnessjoni tradotta.
Segwi l-pakkett wara t-traduzzjoni
Ħu pool ta' klijenti 10.90.0.0/24 u indirizz tal-mina 10.90.0.1. Żewġ kontenituri joqogħdu fuq pont wieħed: 192.0.2.2 iħaddem il-VPN u 192.0.2.3 iħaddem l-applikazzjoni. Klijent jikkonnettja ma' 10.90.0.1:8080, u r-regola DNAT fl-ispazju tal-ismijiet tal-kontenitur VPN terġa tikteb dan fl-indirizz u l-port reali tal-applikazzjoni. Imbagħad rotta tibgħat il-pakkett tul il-pont. Dawn l-indirizzi huma illustrattivi, mhux riċetta ta' implimentazzjoni.
Il-port li l-applikazzjoni tassew tisma' fuqu jista' jkun differenti minn kwalunkwe port ippubblikat fuq il-host. Aqra s-semmiegħ ġewwa l-kontenitur minflok tassumi li ż-żewġ numri jaqblu.
Il-permess jappartjeni għall-passaġġ tat-trażmissjoni
Il-kontenitur VPN jeħtieġ trażmissjoni tal-IP u deċiżjoni tat-trażmissjoni limitata għall-pool tal-klijenti, l-indirizz tal-applikazzjoni u l-port intiż. It-tweġibiet stabbiliti jeħtieġu l-permess tagħhom. Regola li taqbel mal-indirizz oriġinali tal-mina mhux se taqbel wara DNAT, għax id-destinazzjoni diġà nbidlet. Permess INPUT huwa l-ganċ żbaljat għal traffiku li m'għadux indirizzat lejn dan il-host.
Żomm l-ambitu dejjaq: firxa ta' sors waħda, destinazzjoni waħda, servizz wieħed. Regola tat-trażmissjoni permissiva hija eħfef tinkiteb u ferm aktar diffiċli tiddefendi aktar tard.
docker exec vpn-container ip route get 192.0.2.3
docker exec vpn-container iptables -t nat -S
docker exec vpn-container iptables -S FORWARD
Il-ktajjen ta' Docker mhumiex il-ktajjen tal-kontenitur tiegħek
Regoli ġewwa l-ispazju tal-ismijiet tal-kontenitur mhumiex regoli tal-host Docker. Meta t-traffiku jgħaddi mill-interface tal-mina għall-pont, il-firewall tal-pont fuq il-host jista' jieħu deċiżjoni oħra. Bil-backend iptables ta' Docker, il-ktajjen tat-trażmissjoni dokumentati u l-punti ta' qbil wara DNAT huma fejn tidher dik id-deċiżjoni.
Ir-referenza tal-firewall ta' Docker tiddeskrivi dawk il-ktajjen u l-qbil wara DNAT. La ssewwix aċċettazzjoni nieqsa billi tiddiżattiva l-immaniġġjar tal-firewall ta' Docker jew tagħmel kull katina permissiva, għax dan ineħħi l-limitu li qed tipprova tuża.
Agħmel ir-rotta tal-kunsinna għażla deliberata
Jekk l-indirizz tas-sors jinżamm, l-applikazzjoni tara 10.90.0.x u trid tirrotta t-tweġibiet lura mill-kontenitur VPN. Inkella l-gateway Docker tas-soltu tagħha jibgħathom lill-host, li mhuwiex sid il-mina. L-alternattiva hija traduzzjoni tas-sors dejqa fil-kontenitur VPN, li tissimplifika t-tweġiba iżda taħbi l-klijent mill-applikazzjoni. Agħżel b'għaqal u ikteb liema għażilt.
Ittestja konnessjoni permessa ġdida minn klijent ordinarju, imbagħad ikkonferma li l-ports mhux relatati jibqgħu magħluqa. Meta pakkett jisparixxi, spezzjona l-ispazju tal-ismijiet tal-VPN, dak tal-applikazzjoni u l-log tal-applikazzjoni stess. Ping lejn il-gateway tal-pont mhuwiex test ta' aċċettazzjoni għas-servizz.
Żomm ir-regoli fil-konfigurazzjoni tal-bidu appoġġata tal-kontenitur, għax l-editjar interattiv jisparixxi meta jerġa' jinħoloq. Il-pubblikazzjoni tal-port tal-host hija passaġġ ta' espożizzjoni differenti u mhix meħtieġa biss għax is-servizz jintlaħaq mill-mina.