¿Cómo averiguo en qué puerto iniciar sesión con SSH?

Tengo una configuración de servidor Ubuntu 10.04 de forma remota que configuré hace un tiempo. Mientras registraba el nombre de usuario y la contraseña, parece que fui inteligente y cambié el puerto ssh habitual de 22 a … algo más.

¿Cómo averiguo cuál podría ser ese puerto?

Tengo acceso al servidor a través de la puerta trasera de la empresa de alojamiento, por lo que puedo ejecutar cualquier comando de Unix que sea necesario, pero no puedo iniciar sesión usando un shell de masilla normal en mi máquina.

Comentarios

  • Esto probablemente sea una tontería, y ya tiene buenas respuestas, pero si se ha conectado en el pasado, puede verificar el historial de su terminal y / o ~/.ssh/config.

Respuesta

Primero verifique en el archivo de configuración qué puerto es configurado:

$ sudo grep Port /etc/ssh/sshd_config Port 22 

Luego reinicie ssh para asegurarse de que cargue la configuración que acaba de ver o averigüe en qué puerto ssh se está ejecutando:

$ sudo netstat -tpln | egrep "(Proto|ssh)" Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12586/sshd 

Eso es «un ssh ejecutándose en el puerto 22.

Comentarios

  • Solo una nota: No ' creo que necesites sudo
  • En el primer comando, necesita sudo porque normalmente el archivo de configuración sshd no es legible por todo el mundo. En el segundo, necesita sudo para poder resolver el Program name; de lo contrario, solo puede ver el nombre de los procesos que se ejecutan bajo el suyo. usuario.
  • Estoy de acuerdo con @piertoni, no ' no es necesario ejecutar este comando con " SUDO ".

Responder

Si tiene acceso al servidor a través de otros medios, simplemente ejecute:

$ sudo grep Port /etc/ssh/sshd_config Port NNN 

Eso devolverá una línea como la que se muestra arriba donde NNN sea el puerto que eligió.

Respuesta

La forma más fácil es mirar los archivos de configuración del servidor SSH:

➜ ~ sudo grep Port /etc/ssh/sshd_config Port 22 

También se verifican los puertos de escucha por proceso con lsof:

sudo lsof -Pi | grep ssh 

o cualquier otro comando de lista de puertos como netstat -lntu.

Responder

Si no tiene acceso de inicio de sesión al servidor, puede encontrar el puerto SSH utilizando la función nmap «s» version scan «:

nmap -sV -p- <insert target"s IP here> 

La opción -sV significa «escaneo de versión» y -p- significa «escaneo de todos los puertos». Si » Si tienes una buena conexión y estás seguro de que no perturbarás el firewall o el IDS de alguien, puedes agregar -T5 para «escanear lo más rápido posible». Los resultados se verán así:

PORT STATE SERVICE VERSION 1422/tcp open ssh (protocol 2.0) 

Responder

Si no «Si no tienes acceso a la consola del servidor, tendrás que sondear todos los puertos desde un host distante. Estas utilidades son como nmap, sin embargo, la capa de red debe transmitir el tráfico a la combinación específica de host (dirección IP) Y puerto.

Respuesta

$ sudo netstat -lntp [sudo] password for XXX: Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2799/sshd tcp6 0 0 :::22 :::* LISTEN 2799/sshd 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *