Как мне узнать, есть ли на моем сервере SSH? Есть ли способ проверить?
Как мне узнать, есть ли на моем сервере SSH? Есть ли способ проверить?
Ответы:
Для клиента ssh: ssh google.com; если он говорит, что команда не найдена, значит, она не установлена.
Для сервера ssh: ssh localhost; если он ничего не делает, у вас нет ssh-сервера.
Если вы используете Debian / Ubuntu:
apt-get install openssh-server
Отсутствие открытого ключа ни в коем случае не единственный способ, которым команда ssh может потерпеть неудачу, так что это в лучшем случае приблизительное значение; Впрочем, этого может быть достаточно.
ssh $host "echo 2>&1" && echo $host OK || echo $host NOK
О, и быть немного более конкретным было бы здорово.
which ssh
скажет вам, если у вас установлен клиент SSH. Но вы можете спросить, позволяет ли ваш сервер подключаться к нему с помощью ssh, и в этот момент вы ищете SSH - демон SSH - а не сам SSH. Если он у вас установлен, вы сможете запустить его /etc/init.d/sshd start
как root. Если вы не можете найти одинаковые шансы на сценарий, он не установлен. В большинстве дистрибутивов он должен быть установлен по умолчанию.
Еще одна заметка:
telnet <target> 22
Первая строка должна быть в виде открытого текста о версии SSH.
Также nmap может делать SERVICE/VERSION DETECTION
( -sV: Probe open ports to determine service/version info
). Это может помочь вам найти неправильно сконфигурированный порт (опечатки прячутся везде, у меня был ssh runnning 21 и закрыты все соединения с сервером).
Довольно старый, но я только что попал в этот пост по той же причине, и, следуя посту ArtB (output which ssh
/ usr / sbin / ssh для моей установки Ubuntu по умолчанию), вы также можете указать, which sshd
какие выходные данные / usr / sbin / sshd
Хотя, если честно, лучший способ проверить, работает ли что-нибудь в Linux, ps aux
не так ли? Так что в этом случае ps aux | grep sshd
, или для тех, кто хочет совершенства и скрывает команду grep ps aux | grep -v grep | grep sshd
, выполните следующие действия на моей Ubuntu, на которой я только что установил 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
Один из способов - проверить, установлен ли у вас RPM-пакет ssh.
[sanyadav@localhost ~]$ **rpm -qa | grep -i ssh**
Выход =>
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**
Далее, если вы хотите увидеть версию установленного пакета ssh rpm
[sanyadav@localhost ~]$rpm -qi openssh-clients-6.6.1p1-11.el7.x86_64
Выход =>
Name : openssh-clients
Version : 6.6.1p1
Release : 11.el7
Architecture: x86_64