Olupin àdáni kan náà ń dáhùn nípasẹ̀ VPN tí a fọwọ́sí àti nípasẹ̀ bastion tí a fọwọ́sí, ìwọ sì fẹ́ àmì ìwé Emacs kan fún ọ̀kọ̀ọ̀kan dípò ọ̀nà kúkúrú tí ń ṣe àròyé. Ìpinnu kì í ṣe ọ̀nà wo ló dára jù; ó jẹ́ ọ̀nà wo ni a fọwọ́sí fún iṣẹ́ tó wà níwájú rẹ. Pa méjèèjì mọ́ ní kedere, sọ wọ́n ní orúkọ ọ̀tọ̀ọ̀tọ̀, kí orúkọ fáìlì sì sọ èyí tí o yàn.

Àìpé àkọ́kọ́: àwọn ọ̀nà wo ni a fọwọ́sí?

Olùgba àlejò kì í ṣe àrọ́wọ́tó fún ìbéèrè VPN, VPN kì í sì ṣe àṣẹ láti forí kọjá bastion tí a fọwọ́sí. Bèèrè àwọn ipa ọ̀nà tí a fọwọ́sí fún àkọsílẹ̀ rẹ àti fún dátà yìí. Bí méjèèjì bá jẹ́ èyí tí a fọwọ́sí, o ní yíyàn; bí ọ̀kan ṣoṣo bá jẹ́, àkójọ àmì ìwé ní àkọsílẹ̀ kan. Ìdáhùn yẹn wá láti ọ̀dọ̀ ẹni tí ó ni dátà, kì í ṣe láti ọ̀nà tí ń ṣiṣẹ́ lónìí lágbárayé.

Kọ ìdáhùn náà sílẹ̀, nítorí ìyàtọ̀ yìí ń pòórá kíákíá nígbà ìṣẹ̀lẹ̀.

Àwọn ọ̀nà méjèèjì tún nílò ìṣètò àkọsílẹ̀ àti ìdánimọ̀ tiwọn. Orúkọ tí a pín tí ń ṣiṣẹ́ lórí ọ̀nà kan lè kùnà lórí èkejì nítorí àwọn ìdí tí kò ní í ṣe pẹ̀lú nẹ́tíwọ́kì rárá.

Àìpé kejì: ṣé o lè sọ orúkọ ọ̀nà kọ̀ọ̀kan lọ́nà ọ̀tọ̀?

Ìṣètò SSH lè ní orúkọ olùgba méjì fún àdírẹ́sì kan, ọ̀kọ̀ọ̀kan pẹ̀lú ìhùwàsí proxy ọ̀tọ̀. Fi àwọn àkójọ pàtó ṣáájú àmì àìnípẹ̀kun gbòòrò èyíkéyìí, nítorí iye àkọ́kọ́ tí a rí ni yóò borí fún ọ̀pọ̀ àwọn àṣàyàn.

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

Àdírẹ́sì tó wà lókè jẹ́ àpẹẹrẹ; rọ́pò rẹ̀ pẹ̀lú èyí tí ẹgbẹ́ rẹ ṣàkọsílẹ̀. Orúkọ àsaltọ náà tún nílò àkọsílẹ̀ tí a fọwọ́sí ti bastion, èyí tí ó sábà túmọ̀ sí àkójọ Host kejì fún bastion fúnra rẹ̀. Pípa pínpín ìsopọ̀ níbí ń jẹ́ kí ìfiwéra ọ̀nà dúró déédé, nítorí ìsopọ̀ àpapọ̀ tí a tún lò lè wà pẹ́ ju ìyípadà ọ̀nà tí o ń gbìyànjú láti wò lọ.

Lẹ́yìn náà àwọn orúkọ fáìlì jíjìnnà yóò dúró ní ọ̀tọ̀ àti ní àkàwé.

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

Àìpé kẹta: ṣé olóòtú mọ ìyàtọ̀?

TRAMP ka àwọn orúkọ fáìlì méjèèjì náà sí ibi-ìdókòwò ọ̀tọ̀, èyí sì ni ohun tí o fẹ́. Sàmì ìwé ọ̀kọ̀ọ̀kan lábẹ́ orúkọ tí ó sọ irú ọ̀nà tí ó ń lò, kí o sì tún àmì ìwé náà ṣí dípò yíyí ìtumọ̀ ibi-ìdókòwò kan padà. Àmì ìwé méjì tún mú ìfiwéra hàn: o lè ṣí méjèèjì kí o sì rí èyí tí ó kùnà láìyí ìṣètò kankan padà.

Ìṣètò kan yẹ fún àfiyèsí nígbà tí ProxyJump wà nínú ọ̀rọ̀: pínpín ìsopọ̀ TRAMP gbọ́dọ̀ wà ní ìparẹ́ fún àwọn ìsopọ̀ tí ó kan, nítorí náà ṣètò tramp-use-connection-share sí nil kí o tó ṣí wọ́n. Èyí jẹ́ ìṣètò ìbámu, kì í ṣe àtúnṣe fún ọ̀nà tí ó sọnù, kí ó sì má ṣe jẹ́ kí ọ̀nà tí a kò fọwọ́sí di èyí tí a fọwọ́sí. Àwọn ìbéèrè tí ó wọ́pọ̀ ti TRAMP ṣàkọsílẹ̀ àwọn àmì ìwé gẹ́gẹ́ bí ọ̀nà tí a ṣètìlẹ́yìn fún yíyọ àwọn orúkọ wọ̀nyí kúrú.

Àmì ìwé tí ń yí ọ̀nà padà ní ìdákẹ́jẹ́ẹ́ burú ju kíkùnà láti ní àmì ìwé rárá.

Ìdí tí àmì nẹ́tíwọ́kì kò fi ń fi nǹkan kan hàn

Iye ipò àpapọ̀ 70 ti NetworkManager túmọ̀ sí pé ẹ̀rọ ní ìsopọ̀ àgbáyé. Kò dárúkọ profáìlì VPN kankan, Wi-Fi lasan sì ń tẹ́ ẹ lọ́rùn. Ojú-ọ̀nà tí ó jẹ́ ti nẹ́tíwọ́kì àdáni nìkan tí ń gbé ọ̀nà tí o nílò gan-an lè fi iye àpapọ̀ yẹn sílẹ̀ láìfọwọ́ kàn. Ìdí nìyẹn tí ọ̀nà kúkúrú tí a so mọ́ àmì náà lè ròyìn ìmúrasílẹ̀ fún ọ̀nà tí kò dánwò rí.

Ka ipò ìsopọ̀ pàtó dípò ti àgbáyé.

Bí o bá ń ṣe nǹkan kan ní àìfọwọ́, béèrè ìsopọ̀ tí a dárúkọ, lẹ́yìn náà yẹ ipa ọ̀nà àfojúsùn, ìdáhùn olùyẹ̀wò àti ànfàní SSH wò ní ìtòlẹ́sẹẹsẹ yẹn. Ọ̀kọ̀ọ̀kan wọ̀nyí lè kùnà nígbà tí èyí tí ó ṣáájú ń ṣàṣeyọrí, pípa wọ́n pọ̀ sí iye boolean kan ni bí àìfọwọ́ ṣe ń parí ní ríròyìn àṣeyọrí fún ọ̀nà tí kò lò rí.

Kí ni a ó ṣe nígbà tí ọ̀nà kan bá dá ṣíṣe dúró

Fi àwọn búfà rẹ pamọ́ kí o tó ṣèwádìí, nítorí ìpàdé TRAMP tí ó wà lè wà pẹ́ ju ìyípadà ọ̀nà lọ kí ó sì kùnà ní àkọsílẹ̀ tí ó kàn. Pa á dé nípasẹ̀ ìmótótó tí a ṣètìlẹ́yìn, tún àmì ìwé ṣí, kí o sì fi àwọn ọ̀nà méjèèjì wéran dípò ríronú pé olupin ti kú.

Jẹ́ kí ìjẹ́rìí kọ́kọ́rọ́ olùgba wà ní ṣíṣí fún bastion àti ibi-àfojúsùn.

Ọ̀nà mìíràn kò fún ọ ní ẹ̀tọ́ láti gbà kọ́kọ́rọ́ olupin tí o kò retí, kí ó sì má ṣe jẹ́ kí ọ̀nà tí a kò fọwọ́sí di èyí tí a gbà. Méjèèjì jẹ́ ìpinnu ọ̀tọ̀ sí èyí tí o ń ṣe.

Àwọn àpilẹ̀kọ tó jọra