Kif tċaqlaq server VPN Raspberry Pi għall-Ethernet
Mexxi server VPN Raspberry Pi mill-Wi-Fi għall-Ethernet mingħajr ma tibdel l-isem tal-punt tat-tmiem, it-twaħħil tas-semmiegħ, il-forwarding tal-port jew il-passaġġ tat-tbaxxija f’pass wieħed.
Li tibdel il-Pi mill-Wi-Fi għal cable jidher bħala xogħol ta’ ħames minuti, u jibqa’ hekk biss jekk tittratta l-moviment bħala erba’ settings separati minflok waħda. L-isem tal-punt tat-tmiem li jċemplu l-klijenti tiegħek jista’ jibqa’ eżatt l-istess waqt li l-indirizz taħtu jinbidel. Dak li fil-fatt jinqasam huwa semmiegħ imqabbad mal-indirizz qadim, forwarding tal-port li għadu mmirat lejn il-lease bla wajers, jew passaġġ tar-ritorn li joħroġ mill-interface li ħsibt li rtirajt. Dan id-dokument iżomm passaġġ ta’ rkupru miftuħ f’kull pass, hekk li qbiż fallut jiswa biss restart.
Irreġistra l-erba’ sidien qabel ma tiskonnettja xejn
Erba’ settings jiddeċiedu jekk il-qbiż jibqax ħaj: l-indirizz tal-Pi, l-indirizz tat-twaħħil OpenVPN, il-mira tar-ridirezzjoni tar-router u l-passaġġ li jieħdu t-tweġibiet. Ikteb l-erbgħa kollha qabel ma tmiss il-cable, għax ladarba jisparixxi l-lease bla wajers ma tistax taqra l-valuri qodma mill-magna. L-interface bil-wajer ma tirx il-profil bla wajers, u fuq Bookworm l-indirizz jgħix fin-NetworkManager filwaqt li Bullseye iżommu fi dhcpcd.conf. Reservazzjoni li ppinjat l-indirizz MAC bla wajers ma tgħid xejn dwar eth0. Ittratta l-indirizz il-ġdid bħala assenjazzjoni ġdida li teħtieġ il-prova tagħha stess.
Old wireless lease: 10.42.7.24/24 on wlan0
New wired address: 10.42.7.31/24 on eth0
Client endpoint: vpn.lab.example:1194/udp
Is-semmiegħ huwa t-tieni sid. Jekk is-servizz inbeda b’indirizz tat-twaħħil speċifiku, is-socket imut mal-interface qadima; jekk iqabbad l-indirizzi kollha, is-socket jibqa’ ħaj u r-regola tar-router issir l-unika ħaġa li tifdal biex issewwiha.
Il-mira tar-ridirezzjoni u l-passaġġ tar-ritorn huma s-sidien li n-nies jaqbiżu. Forwarding li għadu jipponta lejn 10.42.7.24 jibgħat handshakes li jkunu qed jaslu lejn indirizz li l-Pi m’għadx għandu, hekk li l-klijenti jiskadu fi timeout mingħajr ebda linja tal-log fuq in-naħa tas-server. Il-passaġġ tar-ritorn għandu importanza meta ż-żewġ links ikunu għal ftit waqtiet it-tnejn ’il fuq, għax il-Pi jwieġeb mill-interface li tippreferi t-tabella tar-routing, u dik mhix dejjem dik li wasal fiha l-pakkett. It-tfittxija tar-rotta hawn taħt turi liema sors jagħżel il-kernel.
Aqra s-socket attwali qabel ma tafda l-indirizz il-ġdid
Il-fajls tal-konfigurazzjoni jiddeskrivu l-intenzjoni u s-socket jiddeskrivi r-realtà. Staqsi lis-servizz li qed jaħdem għal xiex huwa marbut minflok ma tafda l-konfigurazzjoni li tiftakar. Manwal OpenVPN 2.6 jiddefinixxi --local bħala twaħħil ma’ indirizz wieħed u jinnota li t-tħollija tiegħu tqabbad kull interface.
sudo systemctl cat openvpn-server@server | grep -n -- '--local'
sudo ss -lunp '( sport = :1194 )'
Aqra l-kolonna tal-indirizz lokali minflok il-kolonna tal-istat. Linja li turi 10.42.7.24:1194 tfisser li s-socket huwa marbut mal-indirizz li inti se tneħħi, filwaqt li 0.0.0.0:1194 jew *:1194 tfisser li d-daemon se jsegwi l-bidla tal-interface waħdu. Jekk l-indirizz huwa marbut, editja l-profil u erġa’ ibda l-unità minflok ma tikteb mill-ġdid is-socket ħaj bl-idejn, u mbagħad ikkonferma li s-servizz għadu jasal għall-fajls taċ-ċertifikat u tal-kjavi tiegħu.
Agħmel il-moviment fi ordni li żżommok aċċessibbli
L-ordni hija aktar importanti mill-veloċità hawn. Tellah il-link bil-wajer waqt li dik bla wajers għadha taħdem, ikkonferma l-indirizz il-ġdid u l-passaġġ tar-ritorn, u mbagħad irtira l-profil bla wajers. Dak is-sekwenza jżomm sessjoni li taħdem miftuħa sakemm is-sostitut ikun ippruvat.
ip -br addr show eth0
ip route get 203.0.113.10
nmcli -g ipv4.method,ipv4.addresses con show "Wired connection 1"
L-ewwel kmand iwieġeb jekk eth0 irċeviex l-indirizz li kellek f’moħħok, u t-tieni jistampa l-indirizz tas-sors li l-kernel kien juża għal destinazzjoni barra n-netwerk, għalhekk ħaddmu qabel u wara l-bidla. Jekk dak is-sors għadu l-indirizz bla wajers, il-link bil-wajer għad mhuwiex il-passaġġ ippreferut u t-test minn barra se jonqos għal raġuni li m’għandha xejn x’taqsam ma’ OpenVPN. Sewwi l-preferenza tar-routing qabel ma tmiss il-forwarding.
B’żewġ links ’il fuq, il-Pi jista’ jippreferi r-rotta default bla wajers għax ġiet installata l-ewwel jew għax il-link bil-wajer iġorr metrika ogħla. Fuq Bookworm il-pum ta’ kontroll appoġġjat huwa ipv4.route-metric fuq il-konnessjoni, u fuq Bullseye l-ekwivalenti hija linja metric speċifika għall-interface fi dhcpcd.conf. Iddegrada l-link bla wajers minflok ma tiddiżattivah, hekk li l-passaġġ tat-tbaxxija jibqa’ kmand wieħed ’il bogħod.
Ipprova t-tunnel minn barra, mhux mil-LAN
Konnessjoni VPN li taħdem mis-sufan tipprova inqas milli jidher. It-traffiku minn ġewwa l-LAN lejn l-indirizz pubbliku jgħaddi minn regoli hairpin jew riflessjoni li r-routers jimplimentaw b’mod inkonsistenti, hekk li test tal-LAN li jgħaddi jista’ jikkoeżisti ma’ passaġġ imkisser minn barra. Uża telefon fuq data ċellulari, jew xi host barra n-netwerk, għat-test tal-aċċettazzjoni. Żomm il-prova tal-LAN bħala dijanjostiku fakultattiv separat.
Imbagħad aqra l-log fl-ordni li jasal fiha l-pakketti. Xejn xejn ifisser li l-handshake qatt ma wasal għand il-Pi, għalhekk il-mira tar-ridirezzjoni jew il-firewall tal-host hija żbaljata. Handshake li jibda u jiġġammja jindika ċwievet, ċertifikati jew MTU. Sessjoni li titlesta u taqa’ normalment tfisser il-passaġġ tar-ritorn jew it-tieni rotta default, u l-linja tal-log tal-klijent Initialization Sequence Completed tgħidlek li t-tunnel innifsu tela’.
sudo journalctl -u openvpn-server@server -n 40 --no-pager
sudo tcpdump -ni any udp port 1194 -c 20
Jekk ma jidher xejn fil-log tas-server waqt li l-klijent jerġa’ jipprova, waqaf milli taqra l-konfigurazzjoni tal-OpenVPN u erġa’ lura għall-mira tar-ridirezzjoni. Il-qabda twieġeb il-mistoqsija tal-wasla fi ftit sekondi, u pakketti li jaslu mingħajr tweġiba jnaqqsu l-problema għar-rotta.
Żomm tbaxxija ta’ pass wieħed u irtira l-profil bla wajers
Ħalli l-profil bla wajers installat sakemm l-arranġament bil-wajer ikun għadda minn restart. nmcli con show jelenka l-ismijiet tal-profili li se jkollok bżonn, u profil imħassar irid jerġa’ jinbena mill-memorja fl-agħar mument. Irreġistra l-isem tal-interface, il-metodu tal-indirizz u l-metrika ħdejn l-erba’ valuri l-oħra. Tbaxxija li tista’ tittajpjaha minn nota tiswa aktar minn waħda li trid terġa’ tibniha.
L-irtirar tad-dipendenza bla wajers huwa bidla fil-proprjetà minflok tħassir. Billi connection.autoconnect no jżomm il-kredenzjali u l-istorja tal-indirizzi intatti waqt li l-Pi jinżamm milli jerġa’ jingħaqad ma’ netwerk li mort ’il bogħod minnu.
nmcli con show
sudo nmcli con up "Wired connection 1"
sudo nmcli con mod "previously-used-wifi" connection.autoconnect no
Qabel ma ssejjaħ ix-xogħol lest, ikkonferma erba’ affarijiet: il-mira tar-ridirezzjoni taqbel mal-indirizz bil-wajer, is-semmiegħ għadda minn restart, klijent minn barra jlesti handshake, u l-Pi għadu jwieġeb fuq l-indirizz bil-wajer wara restart. Restart huwa l-irħas mod biex taqbad assenjazzjoni li kienet teżisti biss fil-kernel li qed jaħdem. Jekk xi waħda mill-erbgħa tonqos, erfa’ l-profil bla wajers mill-ġdid billi tuża sudo nmcli con up u qabbel il-valuri rreġistrati ma’ dawk ħajjin.