L-ismijiet jieqfu milli jiġu riżolti fil-mument li l-VPN tikkonnettja, filwaqt li ping lejn indirizz pubbliku għadu jwieġeb u l-istat tal-firewall ma juri xejn li jidher ħażin. Fil-politika ma nbidel xejn; dak li nbidel hu li deher interface ġdida, u ċ-ċaħda awtomatika tkopriha mill-ewwel pakkett. UFW tiddeċiedi skont id-direzzjoni u l-interface, għalhekk regola miktuba għall-konnessjoni mingħajr fil ma tgħid xejn dwar it-traffiku li joħroġ mit-tunnel. It-tiswija hija daqqa ta' regoli dejqa applikati fiċ-ċerta ordni.

Is-sintomu jidher biss wara li t-tunnel jitla'

Politika ta' ċaħda awtomatika tagħmel eżattament dak li ngħadtilha: kollox mingħajr regola li taqbel jiġi miċħud, fuq kull interface li teżisti. It-tunnel ma kienx jeżisti meta nkitbu r-regoli, għalhekk ebda waħda minnhom ma tista' taqbdu, u ċ-ċaħda li dejjem kienet hemm issa tapplika għar-riżoluzzjoni tal-ismijiet. Traffiku dirett lejn indirizz litterali xorta jista' jaħdem meta jkoprih permess aktar wiesa', u għalhekk ping lejn resolver pubbliku jirnexxi filwaqt li t-tfittxija ta' isem tfalli. Il-vojt huwa regola għal interface li l-politika qatt ma rat.

Dan jispjega wkoll għaliex il-falliment jerġa' lura b'mod nadif: neħħi t-tunnel u l-ismijiet jerġgħu jiġu riżolti, għax il-mistoqsija terġa' lura għal interface li għandha regoli. Politika li tfalli biss waqt li t-tunnel huwa 'l fuq mhijiex problema tad-DNS, u li tinstab ir-resolver innifsu hawn jitlef l-aktar ħin. Aqra l-lista tal-interfaces qabel ma taqra l-konfigurazzjoni tar-resolver.

Tliet direzzjonijiet, tliet settijiet differenti ta' regoli

Sessjoni waħda tmiss regoli f'aktar minn direzzjoni waħda, u tunnel iżid it-tieni interface ma' kważi kull waħda minnhom. Li tissortja t-traffiku l-ewwel skont id-direzzjoni u l-interface tagħmel il-bqija mekkanika, għax kull ringiela hawn taħt għandha bżonn ir-regola tagħha fil-post tagħha. L-eżempji jużaw tun0 u pool ta' 10.8.0.0/24, għalhekk ibdel l-ismijiet u l-firxiet ma' dawk mill-output tal-klijent stess.

DirectionExample packetRule that admits itWritten on
Client to the pushed resolverA DNS query to 10.8.0.1Destination port 53 over the tunnelThe client's tun0
Client to the VPN serverA handshake to the server's public addressServer address and port on the physical linkThe client's physical interface
Server to a serviceSSH from the pool to port 22Source pool, destination port, tunnel interfaceThe server's tun0
Anyone to the listenerThe VPN listener itself1194/udp on the public sideThe server's public interface

Żewġ ringieli spiss jiġu mħawda għax it-tnejn isemmu t-tunnel. Regola għar-resolver tippermetti traffiku li l-klijent jibgħat fit-tunnel, filwaqt li regola għall-SSH tippermetti traffiku li s-server jirċievi minnu; jgħixu fuq magni differenti u jfallu b'mod indipendenti. Ir-ringiela li tintesa l-aktar hija t-tieni waħda, għax il-klijent ma jistax jibni t-tunnel xejn sakemm it-traffiku tiegħu lejn l-indirizz pubbliku tas-server ma jiġix permess. Aħdem minn fuq għal isfel u kull falliment għandu kawża waħda possibbli.

Resolver imbuttat għandu bżonn regola tiegħu

Jekk it-tunnel iġorrx DNS jiddependi minn dak li jibgħat is-server. Server li jimbotta għażla ta' resolver jinstalla indirizz privat fil-konfigurazzjoni tal-klijent, u dak l-indirizz huwa routabbli biss mit-tunnel. Jekk is-server ma jimbotta xejn, il-klijent iżomm ir-resolver li kellu diġà u r-regoli hawn taħt m'għandhom xejn x'jippermettu. Iċċekkja l-istat imbuttat u r-riżultat attwali tal-mistoqsija qabel ma tikteb xejn:

dig +short @10.8.0.1 example.com
resolvectl status tun0
sudo ufw status numbered

L-output tal-istat isemmi r-resolver li jintuża u l-konnessjoni li miegħu huwa marbut, u t-tfittxija tar-rotta warajh turi liema interface ġġorr mistoqsija lejn dak l-indirizz. Meta r-resolver ikun fuq konnessjoni oħra, il-problema hija eqdem mill-firewall u ebda regola mhi se tgħin. Meta t-tnejn jaqblu dwar it-tunnel, hemm bżonn żewġ regoli, għax l-UDP iġorr il-biċċa l-kbira tal-mistoqsijiet u t-TCP jieħu f'idejh meta tweġiba titqatta'. Innota ż-żewġ valuri, għax dawk huma li r-regoli se jsemmu:

sudo ufw allow out on tun0 to 10.8.0.1 port 53 proto udp comment 'pushed resolver'
sudo ufw allow out on tun0 to 10.8.0.1 port 53 proto tcp comment 'truncated answers'

Iftaħ it-triq ta' barra qabel dik ta' ġewwa

Il-klijent irid jilħaq l-indirizz pubbliku tas-server qabel ma jeżisti tunnel, għalhekk ir-regola għalih tinsab fuq il-konnessjoni fiżika u trid tkun fil-post tagħha l-ewwel. Politika li tippermetti r-resolver imma tinsa s-server tħalli lill-klijent għal kollox inkapaċi jibni t-tunnel, u dan is-sintomu normalment jiġi attribwit lil kill switch. Imbagħad ippermetti s-servizzi li tassew ridt mit-tunnel, regola dejqa waħda kull darba, minflok ma tiftaħ l-interface kollha. Ir-regoli dejqa huma r-raġuni għaliex iċ-ċaħda tista' tibqa' fil-post tagħha.

sudo ufw allow out to 198.51.100.10 port 1194 proto udp comment 'vpn server'
sudo ufw allow out on tun0 to any port 443 proto tcp comment 'web through tunnel'

L-ordni hija importanti waqt it-testijiet, għax l-ewwel regola hija dik li tħalli t-tunnel jitla' xejn xejn. Żidha, ikkonnettja, u kkonferma li t-tunnel tela' qabel ma żżid ir-regola tas-servizz, għax li tagħmel it-tnejn flimkien ifisser li falliment ma jgħidlek xejn dwar liema nofs huwa ħażin. Ibdel l-indirizz tad-dokumentazzjoni hawn fuq mal-punt finali li għalih il-klijent huwa kkonfigurat.

Temm il-ġenb tal-klijent billi tiskonnettja apposta. Iċ-ċaħda għandha xorta tirrifjuta t-traffiku li eskludejt apposta, għax resolver li jwieġeb waqt li t-tunnel huwa 'l fuq ikopri biss nofs politika li tiċħad meta jkun hemm dubju.

Klijent li jikkonnettja għadu mhux ammess

Is-server għandu d-direzzjoni tiegħu x'jikkunsidra, u klijent li jtemm il-handshake xorta ma jilħaq xejn li jkun qed jaħdem fuq is-server sakemm is-server ma jammettih. Ir-regola tal-listener pubbliku tippermetti biss li t-tunnel jeżisti; ma tħallix it-traffiku tat-tunnel jidħol. Fuq is-server dawn huma żewġ regoli flimkien ma' verifika waħda li s-servizz tassew qed jisma':

sudo ufw allow 1194/udp comment 'openvpn listener'
sudo ufw limit in on tun0 from 10.8.0.0/24 to any port 22 proto tcp comment 'admin over tunnel'
ss -ltn | grep ':22'

Il-pool fir-regola għandu jkun ugwali għall-firxa li s-server jalloka, u n-numru tat-tunnel għandu jaqbel ma' dak li s-server ħoloq, għax regola għal interface oħra ma tistax tiġi distinta minn ebda regola. limit huwa intenzjonat għal port amministrattiv, għax irażżan konnessjonijiet ripetuti minflok jammettihom bla limitu. Il-verifika tal-listener tifred port magħluq minn pakkett mitfugħ, li mill-klijent jidhru l-istess. Ir-regoli numerati lanqas huma l-istampa kollha: ir-regoli before tal-UFW u kull linja nftables miktuba bl-idejn jaqblu qabel u xorta jistgħu jirrifjutaw pakkett li l-lista tidher li tippermetti.

Artikli relatati