O ping funciona pero o SSH falla pola VPN: que etapa se rompeu?
Un só intento detallado separa a accesibilidade TCP, o transporte SSH, a identidade do host, o inicio de sesión do usuario e o permiso de sesión, para que deixes de adiviñar sobre o túnel.
As respostas de ping e un inicio de sesión SSH rexeitado poden ser certos á vez, e o par non incrimina o túnel. As respostas de eco e unha conexión TCP ao porto 22 son probas distintas con selectores distintos, políticas distintas e a miúdo destinos distintos. Captura un intento SSH deliberado e despois nomea a última etapa que acadou. Ese único artefacto substitúe unha ducia de cambios de configuración especulativos.
Captura un intento, non unha sesión de toqueos
Executa o cliente unha vez con diagnósticos detallados, compartición de conexión desactivada e un tempo de espera de conexión limitado. Desactivar a compartición importa porque unha conexión mestra autenticada previamente responderá polo novo intento e ocultará o fallo que persegues.
ssh -4 -vv -o ControlPath=none -o ConnectTimeout=10 [email protected]
Conserva o destino, a familia de enderezos, a marca de tempo e o erro final non secreto. O indicador IPv4 tamén significa que este intento non di nada sobre unha ruta IPv6 cara ao mesmo nome, así que non xeneralices a partir del. Anota desde onde se fixo o intento. Unha comprobación na pasarela VPN non é o mesmo punto de vista que un portátil detrás dela, e a maioría das contradicións nestes tíckets veñen de mesturar os dous.
Etapas un e dous: TCP antes de SSH
A primeira fronteira é a accesibilidade do socket: un enderezo, un porto e unha ruta que o paquete segue de verdade. Se a conexión TCP nunca se completa, aínda non existe nada por riba, e as chaves de host e as contas son irrelevantes.
nc -vz 10.90.4.20 22
ip route get 10.90.4.20
tcpdump -ni any 'host 10.90.4.20 and port 22'
Correlaciona a captura co intento do cliente. Un SYN que sae e nada que volve apunta a filtrado, selectores ou unha ruta ausente no outro extremo; unha resposta cun reset apunta a algo que rexeita activamente en lugar de descartar. A segunda fronteira é o intercambio do protocolo SSH en si. Unha conexión TCP que se completa e logo se atasca pasou a accesibilidade e entrou en negociación, resposta do servidor ou manexo de paquetes. Iso é outra investigación, e é onde os problemas relacionados co tamaño se volven plausibles por primeira vez.
Etapa tres: que clave respondeu
Cando o transporte está activo, o cliente verifica a clave de host do servidor. Un rexeitamento aquí é unha afirmación sobre a identidade, non sobre a criptografía: o par presentou unha clave que a túa política non acepta. Trátao como unha condición de parada e verifica fóra de banda, contra a consola ou o operador que reconstruíu o host. Borrar a entrada recordada para eliminar o aviso é o único atallo que cómpre rexeitar, porque destrúe a evidencia de que algo respondeu de forma inesperada.
Se o host realmente se reconstruíu, elimina o rexistro obsoleto só despois de confirmar a nova impresión dixital, e anota a data e o motivo. O seguinte enxeñeiro atopará o mesmo aviso e necesita ese contexto.
Etapas catro e cinco: conta fronte a permiso
A autenticación é a cuarta fronteira. Unhas credenciais rexeitadas significan que o servidor avaliou o intento e rexeitouno; revisa a conta, o tipo de credencial que acepta o servidor e a política propia do servidor en lugar do contrasinal da VPN. A quinta fronteira é a autorización tras un inicio de sesión correcto. A un usuario autenticado aínda se lle pode negar un shell, un comando, un subsistema ou un reenvío, e esas negativas parecen fallos a quen só le a última liña do cliente.
| Last stage reached | What it proves | Where to look next |
|---|---|---|
| No TCP connection | No SSH transport exists | Address, port, route, selectors, filter, listener |
| TCP up, exchange incomplete | Reachability is not the blocker | Server response, negotiation, packet handling |
| Host identity rejected | The peer is not the expected host | Independently verified host key |
| User authentication rejected | The attempt reached authentication | Account, credential and server policy |
| Authenticated, session denied | Login succeeded, the operation did not | Shell, command or forwarding permission |
Déte tras un par de intentos de contrasinal fallidos. As conxecturas repetidas producen bloqueos que despois parecen un segundo fallo non relacionado e custan máis tempo que o tícket orixinal.
Reversión e o rexistro que gardas
Cambia unha cousa á vez e anota que cambiaste antes de volver probar. Se un cambio empeora o intento, revérteo de inmediato en lugar de apilar outra corrección enriba. Repite a operación orixinal desde o cliente e o contexto orixinais. Un inicio de sesión correcto desde outra máquina, noutra familia de enderezos, non é unha reprodución e non demostra a corrección.
Sanea o que compartes. A saída detallada do cliente pode levar nomes internos, etiquetas de conta, rutas de claves e identificadores de claves públicas, así que publica a conclusión por etapas en lugar dun rastro bruto.