Kohalik SSH-edastus või täis-VPN ühe Maci ekraani jaoks?
Ühe ekraani ja ühe hosti jaoks on loopback-SSH-edastus väiksem kui VPN. Siin on, millal sellest piisab, mida see krüpteerib ja millal see kasutamisest lõpetada.
Sa pead nägema ühe Maci ekraani oma masinast, Mac asub hosti taga, kuhu sa juba SSH-iga ühenduda oskad, ja küsimus on, kas see väärib VPN-i. Tavaliselt mitte. Üks kohalik edastus kannab ühe TCP-pordi läbi SSH-sessiooni, mis sul juba on, ja ühe ekraani ja ühe hosti jaoks on see väiksem ja paremini auditeeritav lahendus kui terve võrgu marsruutimine.
Seda otsustavad kolm tingimust ja ükskõik milline neist võib sind hoopis haldatava VPN-i poole lükata.
Seda otsustavad kolm tingimust
Esimene on ulatus: üks teenus ühes hostis või mitu hosti ja mitu porti. Teine on, kas iga hüpe bastioni ja sihtmärgi vahel on juba usaldusväärne, sest SSH kaitseb ainult seda lõiku, mille see lõpetab. Kolmas on, kes peab lahendust pärast ehitamist toetama, sest käsitsi tehtud tunnel kipub üle elama inimest, kes sellest aru sai. Nimeta see inimene enne alustamist ja kirjuta käsk kohta, kust ta selle leiab. Dokumenteerimata edastus on tulevane juhtum edasilükatud alguskuupäevaga.
Kui vastused on „üks“, „jah“ ja „mina, praegu“, on edastus õige tööriist. Kui mõni vastus muutub, on toetatud kaugjuurdepääsulahendus aasta jooksul odavam kui juhtumi ülevaatus, mis järgneb dokumenteerimata tunnelile.
Edasta üks port, mitte võrk
Kohalik edastus avab sinu masinas kuulaja ja suunab iga ühenduse SSH-serveri kaudu sihtkohta, kuhu see server pääseb. Maci jaoks, mille ekraanijagamisteenus kuulab TCP 5900 peal, ja bastioni jaoks, mis suudab lahendada mac.corp.example, on käsk lühike ja meelega kitsas. Iga valik selles on selleks, et lahendus jääks väikeseks: pole shelli, pole kuulajat kõigil liidestel, pole deemonit. Loe seda ulatusdeklaratsioonina, mitte retseptina.
ssh -N -o ExitOnForwardFailure=yes -L 127.0.0.1:15900:mac.corp.example:5900 [email protected]Kuulaja sidumine aadressiga 127.0.0.1 hoiab selle kõigilt teistelt liidestelt eemal. See pole formaalsus: kõikidele liidestele seotud edastus muudab sinu sülearvuti avatud releeks ettevõtte võrku kõigile samas kohvikus Wi-Fi-s. Kui port on juba kasutusel, vali teine kõrge port ja uuenda vaaturit; ära peata kõrvalist teenust, et näide sobiks.
Bastioni konto vajab samuti luba sellesse sihtkohta edastamiseks. Mõned karastatud SSH-konfiguratsioonid lülitavad pordiedastuse täielikult välja ja mõned piiravad seda direktiiviga permit-listen või permit-open. Loe serveri poliitikat enne, kui eeldad, et tagasilükatud kanal tähendab vale parooli.
Mida SSH krüpteerib ja kus see lõpeb
SSH-sessioon kaitseb liiklust sinu Macist bastioni, ja edastus kannab VNC-protokolli selle sessiooni sees ilma sellest aru saamata. Kui ühendus lahkub bastionist sihtmärgi poole, ei ole see enam sinu SSH-sessiooni sees. Milline kaitse ka sellel viimasel hüppel ei oleks, kuulub see sihtprotokollile ja privaatvõrgu enda kontrollidele.
Seetõttu ei tohiks tavalist viimast VNC-hüpet kirjeldada otsast-otsani krüpteerituna ainult sellepärast, et esimene hüpe kasutas SSH-i. Kirjelda lõike ausalt: tugev kliendist bastioni ja seejärel see, mida sihtmärk toetab. Kui nõue on, et kogu tee oleks krüpteeritud ühe mehhanismiga, ei vasta edastus sellele.
Autentimine sihtmärgil on jälle eraldi teema. SSH-konto ei anna macOS-i sisselogimist, ja ekraanijagamisteenus küsib endiselt oma mandaate ja rakendab endiselt oma juurdepääsunimekirja. Kohalik kuulaja, mis ühenduse vastu võtab, ei tõesta midagi selle kohta, kas kaugteenus sessiooni lubab.
Millal on täis-VPN õige valik
Vali VPN, kui ülesanne vajab rohkem kui ühte porti: Apple Remote Desktopi haldus- ja aruandlusfunktsioonid kasutavad täiendavat TCP- ja UDP-liiklust, mida üks TCP-edastus ei kanna. Edastus ei ole kogu toote osaline teostus; see on teistsugune, väiksem tööriist.
Vali see, kui mitu administraatorit ühendub muutuvatest kohtadest, sest haldatav profiil jagab marsruute, mandaate ja poliitikat ilma, et iga inimene peaks käsureajoone välja mõtlema. Vali see, kui auditijälg peab näitama, kes millega ühendus, sest kasutajapõhine SSH-sessioon ja jagatud kohalik edastus jätavad väga erinevad kirjed.
Vali see lõpuks siis, kui sihtvõrk ei tohiks olla sülearvutist üldse kättesaadav ilma organisatsiooni enda väravata. Isiklik edastus möödub sellest väravast disaini järgi, ja just seetõttu kuulub see muudatuste kirjesse, mitte shelli ajalukku.
Pane edastus valjult ebaõnnestuma
Kasuta ExitOnForwardFailure=yes, et ebaõnnestunud sidumine peataks sessiooni, selle asemel et jätta shell, mis näib ühendatud ja ei edasta midagi. Hoia hostivõtme kontroll sees ja eelista paroolile võtit või agenti. Seejärel testi täpset URL-i, mida vaatur kasutab, sest töötav SSH-sessioon ja töötav ekraaniühendus on kaks erinevat tulemust.
macOS-i natiivse kliendi jaoks jõutakse vaaturini kohaliku URL-i kaudu: open "vnc://127.0.0.1:15900". Kui aken avaneb ja kaugem host lükkab autentimise tagasi, on tunnel korras ja probleem on sihtmärgil. Kui aken ei avane kunagi, on probleem kuulajas või pordis.
Peata sessioon, kui oled valmis, ja kirjuta üles port, bastion, sihtmärk ja kontopoliitika. Edastus, mida keegi ei dokumenteerinud, on kuus kuud hiljem eristamatu tagauksest, ja see on tugevaim argument hoida seda väikese, nimega ja ajutisena.