SSH gwrthdro ar gyfer un ddyfais: gwrandäwr loopback neu VPN â llwybrau?
Un porth rheoli ar gyfer dyfais sy'n gallu deialu allan yn unig. Mae tri amod yn penderfynu a yw twnnel gwrthdro yn ddigon neu a oes angen llwybr gwirioneddol â llwybrau.
Mae eich dyfais y tu ôl i NAT cludwr, gall agor cysylltiadau allan, ac mae'n rhedeg gweinydd SSH na all neb gyrraedd. Y cais sy'n cyrraedd fel arfer a ffurfir fel "rhowch VPN iddi", sef un ateb ymhlith sawl un. Cyn ei dderbyn, penderfynwch a oes angen un porth TCP gweinyddol arnoch, neu llwybr â llwybrau i is-rwydwaith gyfan, oherwydd prosiectau gwahanol â gwahanol amlygiad yw'r rheini.
Mae twnnel gwrthdro yn ateb y fersiwn gul yn dda. Mae'r ddyfais yn deialu eich canolbwynt, yn gofyn i'r canolbwynt wrando ar borth loopback, ac yn anfon y porth hwnnw yn ôl i'w wasanaeth SSH ei hun. Yna mae gweinyddwyr yn cyrraedd y gwrandäwr drwy'r canolbwynt, nid drwy'r rhyngrwyd cyhoeddus.
Tri amod sy'n penderfynu'r dewis
Ysgrifennwch y rhain cyn unrhyw ffurfweddiad. Dyma'r ffin rhwng mynediad rheoli cyfyngedig ac estyniad rhwydwaith, a chymysgu'r ddau yw'r ffordd mae twnnel o bum llinell yn troi'n rhwydwaith gwastad heb berchennog.
| Condition | Reverse tunnel fits | Something else is needed |
|---|---|---|
| How many services must be reachable? | One, or a small fixed set on loopback | Anything that needs many ports or dynamic discovery |
| Who connects, and how are they authenticated? | Named administrators with their own hub accounts | Third parties, or anything needing per-flow audit you do not control |
| Does the device's own LAN need to be reachable? | No | Yes, so a routed VPN or a managed platform is the honest answer |
Y drydedd res yw'r un y mae pobl yn dadlau amdani. Nid yw twnnel i borth SSH dyfais yn rhoi ei chymdogion ar eich rhwydwaith, ac ni ddylid gwneud iddo ymddangos felly drwy gadwyn o fwy o anfon ymlaen. Os mai'r LAN yw'r gofyniad mewn gwirionedd, dywedwch hynny a dylunio hwnnw yn lle.
Ochr y canolbwynt: cyfrif cyfnewid cyfyngedig
Rhowch gyfrif cyfnewid ei hun i bob dyfais gyda dilysu allwedd gyhoeddus a heb sesiwn ryngweithiol. Match bloc wedi'i gwmpasu i'r cyfrif hwnnw sy'n cadw'r caniatâd yn fach, ac mae'r allwedd breifat yn aros ar y ddyfais lle mae'n perthyn.
Match User relay-dev-7
AuthenticationMethods publickey
PubkeyAuthentication yes
AllowTcpForwarding remote
PermitListen 127.0.0.1:21022
GatewayPorts no
MaxSessions 0
PermitTTY no
X11Forwarding no
AllowAgentForwarding no
MaxSessions 0 yw'r llinell ddiddorol. Mae'n gwrthod sesiynau plisgyn ac is-systemau tra'n dal i ganiatáu'r anfon ymlaen sydd ei angen ar y ddyfais, felly ni ellir troi allwedd wedi'i dwyn yn fewngofnod rhyngweithiol. PermitListen sy'n pinio cyfeiriad a phorth y gwrandäwr ar ochr y canolbwynt, ac GatewayPorts no yn ei gadw ar loopback yn hytrach na'i agor i'r rhwydwaith y mae'r canolbwynt yn byw ynddi.
Profwch y ffurfweddiad effeithiol cyn ail-lwytho, a chadwch ail sesiwn ar agor tra byddwch yn gwneud hyn. Match bloc sy'n digwydd bod yn berthnasol i bawb, neu gamgymeriad teipio mewn enw opsiwn, yw'r ffordd glasurol o'ch cloi eich hun allan o'r blwch rydych yn ei galedu. Tynnwch y ffurfweddiad rhedegol a darllenwch yr opsiynau'n ôl yn hytrach na choelio'r ffeil rydych newydd ei hysgrifennu. Sylwch fod cymorth opsiynau'n wahanol rhwng adeilediadau, felly gall gweinydd hŷn anwybyddu llinell a dderbyniwyd gan un newydd.
Ochr y ddyfais: anfon ymlaen sy'n methu'n uchel
Mae'r ddyfais yn agor y cysylltiad ac yn gofyn am y gwrandäwr. Mae'r ddau gyfeiriad yn nadl -R yn golygu pethau gwahanol, ac mae eu darllen o'r chwith i'r dde yw'r ffordd gyflymaf i gofio pa un yw pa.
ssh -NT \
-o ExitOnForwardFailure=yes \
-o ServerAliveInterval=30 \
-o ServerAliveCountMax=3 \
-R 127.0.0.1:21022:127.0.0.1:22 \
[email protected]
Y pâr chwith yw lle dylai'r canolbwynt wrando. Y pâr dde yw'r hyn y mae'r ddyfais yn cysylltu ag ef pan ddaw cais, wedi'i ddatrys o ochr y ddyfais ei hun. Mae eu cyfnewid yn cynhyrchu twnnel sy'n codi'n lân ac yn anfon ymlaen i'r lle anghywir, sy'n waeth na methiant.
ExitOnForwardFailure=yes sy'n gwneud i'r gorchymyn orffen pan na ellir sefydlu'r gwrandäwr gofynnol, felly mae dolen ailgychwyn yn dweud y gwir wrthych yn hytrach na gadael sesiwn hanner gweithio. Nid yw'n dweud dim am iechyd y gwasanaeth SSH lleol yn ddiweddarach, felly parwch ef â rheolwr proses a phrawf cysylltiad go iawn o bryd i'w gilydd.
Peidiwch byth â disodli'r cyfeiriad gwrando loopback â nod chwilio i osgoi naid ychwanegol. Y newid unigol hwnnw yw'r gwahaniaeth rhwng llwybr rheoli a phorth y gellir ei gyrraedd yn gyhoeddus, ac mae'n digwydd fel arfer wrth ddadfygio ac yna'n aros. Os na all cydweithiwr gyrraedd y porth drwy'r canolbwynt, trwsiwch ffurfweddiad y naid yn hytrach na lledu'r rhwymiad. Loopback yw holl ddadl diogelwch y dyluniad hwn.
Mynediad gweinyddwr drwy'r canolbwynt
Gall gweinyddwr â chyfrif cyffredin ar y canolbwynt neidio drwyddo i'r porth a anfonwyd ymlaen. Nid yw'r cyfrif cyfnewid yn cael ei ddefnyddio ar gyfer hyn, a dyna'r pwynt o'u cadw ar wahân.
ssh -J [email protected] -o HostKeyAlias=device-7 \
-p 21022 [email protected]
Gwiriwch allwedd gwesteiwr y ddyfais o dan y ffugenw a ddewisoch, oherwydd mae'r allwedd honno'n adnabod y ddyfais ar ddiwedd y gadwyn ac mae'r twnnel yn gludiant yn unig. Mae'r mewngofnod pen-i-ben yn dal i ddilysu'r ddau ben; nid yw twnnel sy'n terfynu ar ganolfan a rennir yn ei wneud yn llwybr ymddiriededig ar ei ben ei hun.
Perchenogwch y cylch bywyd
Rhedwch orchymyn y ddyfais o dan reolwr proses gydag un enghraifft weithredol yn union a pholisi ailgychwyn a ddewisoch yn fwriadol. Mae'r opsiynau cadw'n fyw yn canfod partner marw; nid ydynt yn atgyfodi proses a adawodd.
Yna ysgrifennwch y weithdrefn ymddeol. Mae pob dyfais yn cael ei gwrandäwr ei hun a'i hallwedd ei hun, felly mae dadgomisiynu'n golygu dirymu'r cyfrif hwnnw a dileu'r allwedd honno, nid cylchdroi cyfrinach sy'n gyffredin i'r fflyd gyfan.
Yn olaf, cofiwch beth mae loopback yn ei brynu i chi. Mae'n cyfyngu amlygiad rhwydwaith ac nid yw'n gwneud dim ynglŷn â defnyddwyr lleol eraill ar ganolfan a rennir, felly mae'n rhaid i bolisi mynediad y canolbwynt ei hun fod yn iawn o hyd. Cyfeirlyfr sshd_config yn dogfennu pob un o'r opsiynau a ddefnyddiwyd uchod, ac mae'n werth darllen yr adrannau anfon ymlaen yn llawn cyn lledu unrhyw un ohonynt.