Как узнать, есть ли на моем сервере 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
как корень. Если вы не можете найти сценарий с таким же названием, скорее всего, он не установлен. В большинстве дистрибутивов он должен быть установлен по умолчанию.
Другое примечание:
telnet <target> 22
Первая строка должна быть открытым текстом, рассказывающим вам о версии SSH.
Также Nmap может делать SERVICE/VERSION DETECTION
(-sV: Probe open ports to determine service/version info
). Это может помочь вам найти неверно настроенный порт (опечатки скрываются повсюду, у меня был запущен ssh на 21, и все соединения с сервером были закрыты).
Довольно старый, но я только что попал в этот пост по той же причине и продолжил публикацию ArtB о 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
Один из способов - проверьте, установлен ли у вас пакет ssh RPM
[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