¿Cómo sé si mi servidor tiene SSH?


10

¿Cómo sé si mi servidor tiene SSH? ¿Hay alguna forma de probar?

ssh 

¿Sería esto mejor en SuperUser?

Respuestas:


14

Para el cliente ssh: ssh google.com; si dice comando no encontrado, no lo tienes instalado.

Para el servidor ssh: ssh localhost; si no hace nada, no tienes servidor ssh.

Si está ejecutando debian / ubuntu:

apt-get install openssh-server

1
Hmm, la comprobación de su servidor ssh solo funciona si ssh se está ejecutando en su puerto estándar
— Mark Henderson

pero si hubiera cambiado el puerto, entonces sabría que está ejecutando ssh no: p?
— Lucas Kauffman el

Eso suponiendo que sea él quien configuró el servidor. Podría ser uno que heredó.
— Mark Henderson

Bastante justo entonces
— Lucas Kauffman

4

La ausencia de una clave pública no es la única forma en que el comando ssh puede fallar, por lo que esta es una aproximación en el mejor de los casos; Sin embargo, podría ser suficiente.

ssh $host "echo 2>&1" && echo $host OK || echo $host NOK

Ah, y ser un poco más específico sería genial.


3

which sshte diría si tienes el cliente SSH instalado. Pero es posible que se pregunte si su servidor le permite conectarse a él mediante ssh, momento en el que está buscando SSH -el demonio SSH- y no SSH en sí. Si lo tiene instalado, debería poder iniciarlo /etc/init.d/sshd startcomo root. Si no puede encontrar un script con un nombre similar, es probable que no esté instalado. La mayoría de las distribuciones deberían tenerlo instalado por defecto.


2

Otra nota:

telnet <target> 22

La primera línea debe ser texto sin formato que le informe sobre la versión SSH.

También nmap puede hacer SERVICE/VERSION DETECTION( -sV: Probe open ports to determine service/version info). Eso podría ayudarlo a encontrar un puerto mal configurado (los errores tipográficos se ocultan en todas partes, tenía ssh corriendo el 21 y cerré todas las conexiones al servidor).


+1 para nmap, es probablemente la forma más sencilla de saberlo con certeza, pero, por supuesto, puede ser bloqueado por un firewall
— Mark Henderson

2

Muy antiguo, pero acabo de llegar a esta publicación por la misma razón y siguiendo la publicación de ArtB de which ssh(salidas / usr / sbin / ssh para mi instalación predeterminada de Ubuntu) también puede hacer which sshdqué salidas / usr / sbin / sshd

Aunque, para ser sincero, la mejor manera de ver si algo se está ejecutando en Linux es ps aux¿no es así? Entonces, en este caso ps aux | grep sshd, o para aquellos que desean la perfección y ocultan el comando grep ps aux | grep -v grep | grep sshd, de la siguiente manera en mi Ubuntu en el que acabo de instalar OpenSSH-Server:

ps aux | grep -v grep | grep sshd root 5638 0.0 0.1 61372 5532 ? Ss 15:35 0:00 /usr/sbin/sshd -D


0

Una forma es verificar si tiene instalado el paquete ssh RPM

[sanyadav@localhost ~]$ **rpm -qa | grep -i ssh**

Salida =>

libssh2-1.4.3-8.el7.x86_64
openssh-6.6.1p1-11.el7.x86_64
**openssh-server-6.6.1p1-11.el7.x86_64**
**openssh-clients-6.6.1p1-11.el7.x86_64**

Además, si desea ver la versión del paquete ssh rpm instalado

[sanyadav@localhost ~]$rpm -qi openssh-clients-6.6.1p1-11.el7.x86_64

Salida =>

Name        : openssh-clients
Version     : 6.6.1p1
Release     : 11.el7
Architecture: x86_64
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.