Oddaljeni urejevalnik VPN prek SSH: kateri stroj urejate?
Posredovanje X11 prikaže oddaljeni urejevalnik na vašem prenosniku, vendar profil in poti ostanejo na oddaljenem gostitelju. Pred shranjevanjem preverite gostitelja, UUID in pot za razveljavitev.
Posredovanje X11 postavi okno urejevalnika na vaš prenosnik, medtem ko proces še naprej teče na oddaljenem gostitelju. Ta vrzel je cela past: gledate lokalno okno in urejate oddaljeni profil, napačna domneva o tem, kateri stroj ima spremembo, pa lahko prekine SSH povezavo, po kateri delate. Spodnji kontrolni seznam določi gostitelja in profil, preden se karkoli shrani. Vsak korak ima pogoj za ustavitev, zato je zgodnja napaka poceni.
Korak 1: poimenujte stroj, ki ima profil
Zaženite ukaze za identiteto v lupini, ki jo boste konfigurirali, in odgovor preberite, namesto da bi ga sklepali iz poziva. Ime gostitelja v pozivu je niz, ki ga je natisnila vaša lupina; ime gostitelja jedra je tisto, ki mu zaupa preostanek tega seznama. Če se ne ujemata, ste na napačnem stroju ali pa je poziv okrasila vaša lokalna lupina. Ustavite se in se pred nadaljevanjem znova povežite z želenim gostiteljem.
hostnamectl
hostname -f
ip -brief address
Naslednje vprašanje je, ali naj ta stroj sploh gosti VPN. Konfiguriranje odjemalca prenosnika in konfiguriranje odjemalca oddaljenega gostitelja dajeta različne poti, različen DNS in različne načine odpovedi. Odločite se, katerega mislite, preden se dotaknete profila, in odločitev zapišite tja, kjer jo bo našla naslednja oseba.
Korak 2: profil berite po UUID, ne po oznaki
NetworkManager prepozna povezavo po UUID, medtem ko je ime oznaka, ki jo lahko vsak ureja ali podvoji. Naštejte oboje in uskladite prav tisti vnos, ki ga nameravate, zlasti na gostitelju, kjer je bilo skozi leta uvoženih več profilov VPN.
nmcli -f NAME,UUID,TYPE connection show
nmcli connection show --active
nmcli general permissions
Shranjeni vnosi in aktivne povezave odgovarjajo na različna vprašanja: prvi našteje, kaj obstaja, drugi našteje, kaj trenutno prenaša promet. Vrstica z dovoljenji opisuje lokalno politiko za vašo sejo in ne pove ničesar o tem, ali bo VPN prehod sprejel račun. Če potrebnega profila ni na shranjenem seznamu, se ustavite tukaj, ker je urejanje napačnega vnosa slabše od nikakršnega urejanja.
Ko imate UUID, ga shranite v spremenljivko in to spremenljivko uporabite v vsakem naslednjem ukazu. To odstrani cel razred napak pri kopiranju in lepljenju ter naredi zapis ponovljiv.
UUID=$(nmcli -g UUID connection show 'Corp VPN')
nmcli connection edit uuid "$UUID"
Korak 3: odločite se, ali je grafični urejevalnik pravo orodje
Urejevalnik, ki potrebuje poziv polkit ali agenta za skrivnosti, ga ne bo dobil samo zato, ker se njegovo okno prikaže na vašem prenosniku. Te komponente delujejo v kontekstu oddaljene seje in posredovanje zaslona jih ne posreduje. Če urejevalnik ne more shraniti zaradi napake z dovoljenjem ali skrivnostjo, problem ni na zaslonu.
echo "$DISPLAY"
ssh -X you@vpn-host
xauth list
OpenSSH omogoči posredovanje X11 s -X in dokumentira previdnost, ki gre z njim: oddaljeni gostitelj lahko doseže vaš lokalni zaslon, kar je resnična meja zaupanja. Zaupanja vredno posredovanje s -Y odstrani nekatere od teh preverjanj in nikoli ne bi smelo biti refleksna rešitev za aplikacijo, ki odpove pri privzetih nastavitvah. Če vaša organizacija objavi metodo za oddaljeno upravljanje, uporabite tisto, namesto da bi izumljali različico. V večini primerov je urejevalnik ukazne vrstice manjša površina in boljši odgovor.
Ustavite se tukaj, če edina delujoča pot zahteva -Y in ne morete razložiti zakaj. To je odločitev za tistega, ki ima varnostno politiko, ne obhod, ki bi ga hranili v osebni skripti.
Korak 4: pred aktiviranjem česar koli ohranite pot za obnovitev
Sprememba VPN lahko odstrani pot, od katere je odvisna vaša seja SSH, zato si pred aktiviranjem profila uredite pot nazaj. Dostop do konzole, naslov za upravljanje zunaj pasu ali načrtovana razveljavitev se vsi štejejo; upanje, da bo sprememba delovala, se ne šteje.
sudo systemctl status NetworkManager
ip route show default
ss -tn state established '( sport = :22 )'
Aktivirajte samo želeni profil in nato preverite z oddaljenega gostitelja: privzeto pot, povratno pot SSH in en vir, ki bi moral biti dosegljiv skozi tunel. Uspešno preverjanje z vašega prenosnika preizkusi pot prenosnika in ne pove ničesar o oddaljenem gostitelju. Če seja pade, uporabite pot za obnovitev, namesto da bi se znova povezali na slepo. Shranjevanje profila ni aktiviranje, aktiviranje pa ni preverjanje.
Zapišite UUID, spremenjene vrednosti lastnosti in ukaze, s katerimi ste jih preverili. Naslednja oseba, ki se dotakne tega gostitelja, bo potrebovala vse tri, zapis pa je vreden več kot povzetek, da je VPN popravljen. Kontrolni seznam, ki se konča brez opombe o razveljavitvi, je pol seznama.