web-dev-qa-db-ja.com

サーバーにpingできるのにSSHで接続できないのはなぜですか?

サーバーにpingを実行すると、次のように応答します。

user@localhost:~$ ping my.server
PING my.server (111.111.111.11) 56(84) bytes of data.
64 bytes from my.server (111.111.111.11): icmp_req=1 ttl=42 time=38.4 ms
64 bytes from my.server (111.111.111.11): icmp_req=2 ttl=42 time=50.0 ms
64 bytes from my.server (111.111.111.11): icmp_req=3 ttl=42 time=58.6 ms
^C
--- my.server ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 38.419/49.037/58.637/8.287 ms

しかし、ssh(私がいつもしていることと、同じ接続で過去数時間やっていたこと)を試みると、ハングします:

user@localhost:~$ ssh my.server

http://speedtest.net は、接続に1.5 Mbpsのダウンロード速度と0.4 Mbpsのアップロード速度があることを示しています。

Sshがハングする理由はありますか?


回答で提供された提案の結果

@ nsfyn55から

user@localhost:~$ telnetmy.server 22 
Trying 111.111.111.11...
Connected to my.server
Escape character is '^]'.
SSH-2.0-OpenSSH_4.3
Connection closed by foreign Host.

@vahidから:

user@localhost:~$ nc -v -w 1 111.111.111.111 -z 22
nc: timeout cannot be negative
32
Abe

ping(ICMPプロトコル)とsshは2つの異なるプロトコルです。

  1. Sshサービスが実行されていないか、インストールされていない可能性があります

  2. ファイアウォールの制限(iptablesまたはsshd config lock downなどのサーバーにローカル)または(111.111.111.111をホストするネットワークへの着信トラフィックを保護する外部ファイアウォール)

最初のチェックは、sshポートが起動しているかどうかを確認することです

nc -v -w 1 111.111.111.111 -z 22

成功した場合、sshは通信する必要があり、そうでない場合は、制限が解除されるかsshが開始されるまで動作しません

20
Vahid

2つの情報を調べる

  • ターゲットsshサーバーのホスト名またはIP
  • Sshデーモンがリッスンするポート(デフォルトはポート22)

$> telnet <hostname or ip> <port>

デーモンが稼働中で、そのポートでリッスンしていると仮定すると、telnetセッションが確立されます。考えられる原因:

  • Sshデーモンが実行されていません
  • ホストがソフトウェアファイアウォールでターゲットポートをブロックしている
  • いくつかの中間ネットワークデバイスがターゲットポートをブロックまたはフィルタリングしています
  • Sshデーモンが非標準ポートでリッスンしています
  • TCPラッパーが設定され、ソースホストを除外しています
6
nsfyn55