Come faccio a sapere se il mio server ha SSH?


10

Come faccio a sapere se il mio server ha SSH? C'è un modo per testare?

ssh 

Sarebbe meglio su SuperUser?

Risposte:


14

Per client ssh: ssh google.com; se dice comando non trovato, non è stato installato.

Per server ssh: ssh localhost; se non fa nulla non hai il server ssh.

Se stai eseguendo debian / ubuntu:

apt-get install openssh-server

1
Hmm, il tuo controllo server ssh funziona solo se ssh è in esecuzione sulla sua porta standard
Mark Henderson,

ma se avesse cambiato la porta, avrebbe saputo che stava eseguendo ssh no: p?
Lucas Kauffman,

Ciò presuppone che sia lui a configurare il server. Potrebbe essere uno che ha ereditato.
Mark Henderson,

Abbastanza giusto allora
Lucas Kauffman,

4

L'assenza di una chiave pubblica non è affatto l'unico modo in cui il comando ssh può fallire, quindi questa è al massimo un'approssimazione; potrebbe essere sufficiente, però.

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

Oh, ed essere un po 'più specifici sarebbe grandioso.


3

which sshti direbbe se hai installato il client SSH. Ma potresti chiederti se il tuo server ti consente di collegarti ad esso usando ssh, a quel punto stai cercando SSH, il demone SSH, e non SSH stesso. Se lo hai installato, dovresti riuscire ad avviarlo /etc/init.d/sshd startcome root. Se non riesci a trovare le probabilità di uno script con un nome simile, non è installato. La maggior parte delle distribuzioni dovrebbe averlo installato per impostazione predefinita.


2

Un'altra nota:

telnet <target> 22

La prima riga dovrebbe essere in chiaro per dirti della versione SSH.

Anche nmap può fare SERVICE/VERSION DETECTION( -sV: Probe open ports to determine service/version info). Ciò potrebbe aiutarti a trovare una porta non configurata correttamente (gli errori di battitura si nascondono ovunque, ho eseguito ssh runnning il 21 e ho chiuso tutte le connessioni al server).


+1 per nmap, è probabilmente il modo più semplice per saperlo con certezza, ma ovviamente può essere bloccato da un firewall
Mark Henderson,

2

Abbastanza vecchio ma ho appena colpito questo post per lo stesso motivo e seguendo il post di ArtB di which ssh(output / usr / sbin / ssh per la mia installazione predefinita di Ubuntu) puoi anche fare which sshdquali output / usr / sbin / sshd

Anche se ad essere onesti il ​​modo migliore per vedere se qualcosa è in esecuzione su Linux ps auxnon è vero? Quindi, in questo caso ps aux | grep sshd, o per coloro che desiderano la perfezione e nascondono il comando grep ps aux | grep -v grep | grep sshd, sul mio Ubuntu come segue ho appena installato 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

Un modo è verificare se è installato il pacchetto RPM ssh

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

Uscita =>

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**

Inoltre, se si desidera vedere la versione del pacchetto ssh rpm installata

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

Uscita =>

Name        : openssh-clients
Version     : 6.6.1p1
Release     : 11.el7
Architecture: x86_64
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.