La sama privata servilo respondas tra aprobita VPN kaj tra aprobita bastiono, kaj vi volas unu Emacs-legosignon por ĉiu anstataŭ ŝparvojo, kiu divenas. La decido ne estas, kiu vojo estas pli bona; ĝi estas, kiu vojo estas rajtigita por la laboro antaŭ vi. Tenu ambaŭ eksplicitaj, nomu ilin aparte, kaj lasu la dosiernomon diri, kiun vi elektis.

Kondiĉo unua: kiuj vojoj estas aprobitaj?

Saltiga gastiganto ne estas aŭtomata anstataŭo por VPN-postulo, kaj VPN ne estas permesilo por preterpasi aprobitan bastionon. Demandu, kiuj vojoj estas rajtigitaj por via konto kaj por ĉi tiuj datumoj. Se ambaŭ estas, vi havas elekton; se nur unu estas, la legosignaro havas unu eron. Tiu respondo venas de la datenposedanto, ne de tiu vojo, kiu hodiaŭ hazarde funkcias.

Skribu la respondon, ĉar la distingo rapide malaperas dum okazaĵo.

Ambaŭ vojoj ankaŭ bezonas sian propran kontan kaj identecan agordon. Komuna kaŝnomo, kiu funkcias tra unu vojo, povas malsukcesi tra la alia pro kialoj, kiuj havas nenion komunan kun la reto.

Kondiĉo dua: ĉu vi povas nomi ĉiun vojon distinge?

SSH-agordo povas teni du gastigantajn kaŝnomojn por unu adreso, ĉiu kun malsama prokura konduto. Metu la konkretajn blokojn antaŭ ajna larĝa sovaĝsigno, ĉar la unua akirita valoro venkas por plej multaj opcioj.

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

La supra adreso estas ekzemplo; anstataŭigu ĝin per tiu, kiun via teamo dokumentas. La saltiga kaŝnomo ankaŭ bezonas la aprobitan konton de la bastiono, kio kutime signifas duan Host-blokon por la bastiono mem. Malŝalti kundividon de konektoj ĉi tie tenas vojan komparon honesta, ĉar reuzita multpleksita konekto povas postvivi la vojŝanĝon, kiun vi provas observi.

Tiam la remotaj dosiernomoj restas apartaj kaj legeblaj.

/ssh:proj-direct:/srv/project/README.md
/ssh:proj-bastion:/srv/project/README.md

Kondiĉo tria: ĉu la redaktilo konas la diferencon?

TRAMP traktas tiujn du dosiernomojn kiel malsamajn celojn, kio estas ĝuste tio, kion vi volas. Legosignu ĉiun sub nomo, kiu diras, kiun vojon ĝi uzas, kaj remalfermu la legosignon anstataŭ redakti la signifon de unu celo. Du legosignoj ankaŭ igas la komparon videbla: vi povas malfermi ambaŭ kaj vidi, kiu malsukcesas sen ŝanĝi ajnan agordon.

Unu agordo meritas atenton, kiam ProxyJump estas implikita: la kundivido de konektoj de TRAMP devas esti malŝaltita por la koncernaj konektoj, do agordu tramp-use-connection-share al nil antaŭ ol malfermi ilin. Ĝi estas kongrua agordo, ne riparo de mankanta vojo, kaj ĝi ne igas rajtigita ne-rajtigitan vojon. La TRAMP-FAQ dokumentas legosignojn kiel la subtenatan manieron mallongigi ĉi tiujn nomojn.

Legosigno, kiu silente ŝanĝas vojon, estas pli malbona ol neniu legosigno.

Kial la reta ikono pruvas nenion

La tuta stata valoro 70 de NetworkManager signifas, ke la maŝino havas tutmondan konekteblecon. Ĝi ne nomas VPN-profilo, kaj ordinara Wi-Fi kontentigas ĝin. Tunelo nur por la privata reto, kiu portas precize la vojon, kiun vi bezonas, povas lasi tiun agregatan valoron netuŝita. Tial ŝparvojo ligita al la ikono povas raporti pretecon por vojo, kiun ĝi neniam testis.

Legu la staton de la konkreta konekto anstataŭ la tutmondan.

Se vi aŭtomatigas ion, demandu la nomitan konekton, poste kontrolu la celan vojon, la respondon de la solvilo kaj la atingeblon de SSH en tiu ordo. Ĉiu el tiuj povas malsukcesi dum la antaŭa sukcesas, kaj kunfandi ilin en unu bulean valoron estas kiel aŭtomatigo finas raportante sukceson por vojo, kiun ĝi neniam uzis.

Kion fari, kiam vojo ĉesas funkcii

Konservu viajn bufrojn antaŭ ol esplori, ĉar ekzistanta TRAMP-sesio povas postvivi vojŝanĝon kaj tiam malsukcesi ĉe la sekva skribo. Fermu ĝin per la subtenata purigado, remalfermu la legosignon, kaj komparu la du vojojn anstataŭ supozi, ke la servilo estas senfunkcia.

Tenu gastigantan ŝlosil-validigon ŝaltita por kaj la bastiono kaj la celo.

Malsama vojo ne rajtigas vin akcepti servilan ŝlosilon, kiun vi ne atendis, kaj ĝi ankaŭ ne igas neaprobita vojo akceptebla. Ambaŭ estas apartaj decidoj de tiu, kiun vi estis faranta.

Rilataj artikoloj