Dva SSH alijasa, jedan server: direktni VPN ili bastion
Držite odobrenu VPN putanju i odobrenu bastion putanju kao odvojene alijase i oznake, tako da nijedan prečac ne mora nagađati koja je ruta odobrena.
Isti privatni server odgovara preko odobrenog VPN-a i kroz odobreni bastion, a vi želite jednu Emacs oznaku za svaki, umjesto prečaca koji nagađa. Odluka nije koja je putanja bolja; nego koja je putanja odobrena za posao pred vama. Držite oboje eksplicitnim, imenujte ih odvojeno i pustite da ime datoteke kaže koju ste odabrali.
Uslov prvi: koje su putanje odobrene?
Jump host nije automatska zamjena za zahtjev VPN-a, a VPN nije licenca da preskočite odobreni bastion. Pitajte koje su rute odobrene za vaš račun i za ove podatke. Ako su obje odobrene, imate izbor; ako je samo jedna, skup oznaka ima jedan zapis. Taj odgovor dolazi od vlasnika podataka, a ne od rute koja danas slučajno radi.
Zapišite odgovor, jer ta razlika brzo nestane tokom incidenta.
Obje putanje također trebaju vlastitu konfiguraciju računa i identiteta. Dijeljeni alijas koji radi preko jedne rute može pasti preko druge iz razloga koji nemaju nikakve veze s mrežom.
Uslov drugi: možete li svaku putanju imenovati posebno?
SSH konfiguracija može držati dva alijasa hosta za jednu adresu, svaki s različitim ponašanjem proxyja. Stavite konkretne blokove prije bilo kojeg širokog džokera, jer prva dobijena vrijednost pobjeđuje za većinu opcija.
Host proj-direct proj-bastion
HostName 10.60.0.21
User analyst
ControlPath none
Host proj-direct
ProxyJump none
Host proj-bastion
ProxyJump gw.example.com
Adresa iznad je primjer; zamijenite je onom koju vaš tim dokumentuje. Alijas za preskakanje treba i odobreni račun bastiona, što obično znači drugi Host blok za sam bastion. Isključivanje dijeljenja veza ovdje čuva poređenje putanja iskrenim, jer ponovno iskorištena multipleksirana veza može nadživjeti promjenu rute koju pokušavate promatrati.
Tada udaljena imena datoteka ostaju posebna i čitljiva.
/ssh:proj-direct:/srv/project/README.md
/ssh:proj-bastion:/srv/project/README.md
Uslov treći: zna li editor razliku?
TRAMP tretira ta dva imena datoteka kao različita odredišta, što je upravo ono što želite. Označite svako pod imenom koje kaže koju putanju koristi, i ponovo otvorite oznaku umjesto da mijenjate značenje jednog odredišta. Dvije oznake također čine poređenje vidljivim: možete otvoriti obje i vidjeti koja ne radi bez promjene bilo kakve konfiguracije.
Jedna postavka zaslužuje pažnju kada je ProxyJump uključen: dijeljenje veza u TRAMP-u mora biti isključeno za dotične veze, zato postavite tramp-use-connection-share na nil prije nego ih otvorite. To je postavka kompatibilnosti, a ne popravka nedostajuće rute, i ne čini neodobrenu putanju odobrenom. TRAMP FAQ dokumentuje oznake kao podržan način da se ova imena skrate.
Oznaka koja tiho mijenja rutu gora je od nikakve oznake.
Zašto ikona mreže ništa ne dokazuje
Ukupna vrijednost stanja 70 u NetworkManageru znači da mašina ima globalnu povezanost. Ona ne imenuje VPN profil, a obični Wi-Fi je zadovoljava. Tunel samo za privatnu mrežu koji nosi tačno rutu koja vam treba može ostaviti tu zbirnu vrijednost netaknutom. Zato prečac vezan za ikonu može prijaviti spremnost za putanju koju nikada nije testirao.
Čitajte stanje konkretne veze umjesto globalnog.
Ako bilo šta automatizujete, pitajte imenovanu vezu, zatim provjerite ciljnu rutu, odgovor rezolvera i dostupnost SSH tim redom. Svako od toga može pasti dok prethodno uspijeva, a njihovo svođenje na jedan boolean je način na koji automatizacija izvještava o uspjehu za putanju koju nikada nije koristila.
Šta raditi kada putanja prestane raditi
Sačuvajte buffere prije istraživanja, jer postojeća TRAMP sesija može nadživjeti promjenu rute i zatim pasti pri sljedećem upisu. Zatvorite je kroz podržano čišćenje, ponovo otvorite oznaku i uporedite dvije putanje umjesto da pretpostavite da je server pao.
Držite provjeru ključa hosta uključenom i za bastion i za odredište.
Druga ruta vam ne daje pravo da prihvatite ključ servera koji niste očekivali, niti čini neodobrenu putanju prihvatljivom. Oboje su odvojene odluke od one koju ste donosili.