pingは機能するが、sshはタイムアウトになる

pingは機能するが、sshはタイムアウトになる

私はラップトップ(10.197.1.xx)とデスクトップ(10.141.200.xxx)でUbuntu 16.04 (mate)を実行しています。どちらからでも、もう一方へのpingは可能です。しかし、sshはタイムアウト(接続を拒否したり、警告やエラー メッセージを表示したりすることはありません)。

OpenSSH_7.2p2 Ubuntu-4ubuntu2.1, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 10.197.1.xxx [10.197.1.xxx] port 22.
debug1: connect to address 10.197.1.xxx port 22: Connection timed out
ssh: connect to host 10.197.1.xxx port 22: Connection timed out

問題のPCとラップトップはどちらもopenssh サーバーインストールされました。

$ sudo service sshd status

● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enab
   Active: active (running) since Mon 2017-04-10 09:59:50 IST; 4h 49min ago
  Process: 3682 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCES
 Main PID: 1096 (sshd)
   CGroup: /system.slice/ssh.service
           └─1096 /usr/sbin/sshd -D

Apr 10 10:37:18 H110M-DS2 systemd[1]: Reloading OpenBSD Secure Shell serve
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Received SIGHUP; restarting.
Apr 10 10:37:18 H110M-DS2 systemd[1]: Reloaded OpenBSD Secure Shell server
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Server listening on 0.0.0.0 port 22.
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Server listening on :: port 22.
Apr 10 10:37:18 H110M-DS2 systemd[1]: Reloading OpenBSD Secure Shell serve
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Received SIGHUP; restarting.
Apr 10 10:37:18 H110M-DS2 systemd[1]: Reloaded OpenBSD Secure Shell server
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Server listening on 0.0.0.0 port 22.
Apr 10 10:37:18 H110M-DS2 sshd[1096]: Server listening on :: port 22.

ファイアウォールの状態は非活性

sudo ufw status
Status: inactive

何が問題なのでしょうか? どうすれば ssh を動作させることができますか。

アップデート

プログラムtracerouteは以下の出力を生成した。

traceroute to 10.197.1.xxx (10.197.1.xxx), 30 hops max, 60 byte packets
 1  router.xxx.xxxx.xx.in (10.xxx.xxx.1)  1.069 ms  1.388 ms  1.691 ms
 2  10.xxx.xxx.1 (10.xxx.xxx.1)  0.820 ms  0.814 ms  0.974 ms
 3  172.xx.x.1 (172.xx.x.1)  0.371 ms  0.384 ms  0.375 ms
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

答え1

sudo apt-get update
sudo apt-get install ssh
sudo ufw allow 22

これは最低限のことです。既知のポートで無制限のパスワード試行を失敗できます。直接のルート ログインは無効です (ログイン後は su と sudo を使用できます)。ユーザー名とパスワードが推測可能で、インターネットからサーバーが見えると、最終的に誰かが侵入することになります。

デフォルトでは、ルートユーザーはUbuntuの外部からSSH接続できません。

sudo sed -ir 's/^(PermitRootLogin) .+/\1 yes/' /etc/ssh/sshd_config
sudo /etc/init.d/ssh restart

それでも問題が解決しない場合は、試してみてくださいtelnet machineip 22。他のマシンから22番ポートにアクセスできるかどうかが表示されます。これに従ってsshを安全にしてください。リンク

関連情報