Necesitas ver a pantalla dun Mac desde a túa propia máquina, o Mac está detrás dun host ao que xa podes conectarte por SSH, e a pregunta é se iso merece unha VPN. Normalmente non. Unha soa redirección local transporta un porto TCP a través da sesión SSH que xa tes, e para unha pantalla nun só host é un arranxo máis pequeno e máis auditable que encamiñar toda unha rede.

Tres condicións decídeno, e calquera delas pode empurrarte cara á VPN xestionada.

Tres condicións decídeno

A primeira é o alcance: un servizo nun só host, ou varios hosts e varios portos. A segunda é se cada salto entre o bastión e o destino xa é de confianza, porque SSH só protexe o segmento que remata. A terceira é quen debe manter o arranxo despois de que o constrúas, xa que un túnel feito á man adoita sobrevivir á persoa que o entendeu. Nomea esa persoa antes de comezar, e escribe o comando nun lugar onde poida atopalo. Unha redirección sen documentar é un incidente futuro cunha data de inicio aprazada.

Se as respostas son «un», «si» e «eu, de momento», a redirección é a ferramenta correcta. Se calquera resposta cambia, un deseño de acceso remoto con soporte sae máis barato ao longo dun ano que a revisión do incidente que segue a un túnel sen documentar.

Redirixe un porto, non a rede

Unha redirección local abre un oínte na túa máquina e retransmite cada conexión a través do servidor SSH cara a un destino que ese servidor poida acadar. Para un Mac cuxo servizo de compartición de pantalla escoita en TCP 5900, e un bastión que pode resolver mac.corp.example, o comando é curto e deliberadamente estreito. Cada opción que contén existe para manter o arranxo pequeno: sen shell, sen oínte en todas as interfaces, sen daemon. Léoo como unha declaración de alcance, non como unha receita.

ssh -N -o ExitOnForwardFailure=yes -L 127.0.0.1:15900:mac.corp.example:5900 [email protected]

Vincular o oínte a 127.0.0.1 mantéño fóra de calquera outra interface. Iso non é unha formalidade: unha redirección vinculada a todas as interfaces converte o teu portátil nun relé aberto cara á rede corporativa para calquera na mesma Wi-Fi do café. Se o porto xa está en uso, escolle outro porto alto e actualiza o visor; non deteñas un servizo non relacionado para que o exemplo encaixe.

A conta no bastión tamén necesita permiso para redirixir cara a ese destino. Algunhas configuracións de SSH endurecidas desactivan por completo a redirección de portos, e algunhas restrinxen con directiva permit-listen ou permit-open. Le a política do servidor antes de supor que unha canle rexeitada significa que o contrasinal era incorrecto.

Que cifra SSH e onde se detén

A sesión SSH protexe o tráfico do teu Mac ao bastión, e a redirección leva o protocolo VNC dentro desa sesión sen entendelo. Unha vez que a conexión sae do bastión cara ao destino, xa non está dentro da túa sesión SSH. Calquera protección que exista nese último salto pertence ao protocolo de destino e aos controis propios da rede privada.

Por iso un último salto VNC simple non debe describirse como cifrado de extremo a extremo só porque o primeiro salto usou SSH. Describe os segmentos con honestidade: forte do cliente ao bastión, e o que o destino admita despois. Se o requisito é que todo o camiño estea cifrado por un só mecanismo, a redirección non o cumpre.

A autenticación no destino volve ser outra cousa. A conta SSH non concede un inicio de sesión en macOS, e o servizo de compartición de pantalla segue pedindo as súas propias credenciais e segue aplicando a súa propia lista de acceso. Un oínte local que acepta unha conexión non demostra nada sobre se o servizo remoto admitirá a sesión.

Cando a VPN completa é a decisión correcta

Escolle a VPN cando a tarefa necesita máis dun porto: as funcións de xestión e informes de Apple Remote Desktop usan tráfico TCP e UDP adicional que unha soa redirección TCP non pode levar. Unha redirección non é unha implementación parcial de todo o produto; é unha ferramenta distinta e máis pequena.

Escóllea cando varios administradores se conectan desde lugares cambiantes, porque un perfil xestionado distribúe rutas, credenciais e política sen que cada persoa invente unha liña de comandos. Escóllea cando o rexistro de auditoría debe mostrar quen se conectou a que, xa que unha sesión SSH por usuario e unha redirección local compartida deixan rexistros moi distintos.

Escóllea, por último, cando a rede de destino non deba ser alcanzable desde un portátil sen a porta propia da organización. Unha redirección persoal evita esa porta por deseño, e é exactamente por iso que pertence a un rexistro de cambios e non a un historial de shell.

Fai que a redirección falle ruidosamente

Usa ExitOnForwardFailure=yes para que unha vinculación fallida deteña a sesión en lugar de deixar un shell que parece conectado e non redirixe nada. Mantén activa a verificación de clave de host e prefire unha clave ou un axente a un contrasinal. Despois proba a URL exacta que usará o visor, porque unha sesión SSH funcional e unha conexión de pantalla funcional son dous resultados distintos.

Para o cliente nativo en macOS, chégase ao visor mediante unha URL local: open "vnc://127.0.0.1:15900". Se a xanela se abre e o host remoto rexeita a autenticación, o túnel está ben e o problema está no destino. Se a xanela nunca se abre, o problema é o oínte ou o porto.

Deteña a sesión cando remates, e anota o porto, o bastión, o destino e a política da conta. Unha redirección que ninguén documentou é indistinguible dunha porta traseira seis meses despois, e ese é o argumento máis forte para mantela pequena, con nome e temporal.

Artigos relacionados