Ubuntu Server 14.04を使用して、ポート2222でsshサーバーを実行しました(ビルド時にそのように尋ねられました)。私はすでにセットアップ全体をレビューしましたが、何も問題がないようです。
これが設定されているものです:
iftop
を使用して着信ネットワークアクティビティを確認できます。ufw
を適切なルールで実行しました:
2222/TCP ALLOW Anywhere
sshd.conf
ファイルで取得したもの:
Sshサーバーがポート2222でリッスンするようにしました。
AUTH
モードに設定しましたが、接続しようとすると/var/log/auth.log
に何も表示されません。したがって、接続しようとすると、次のようなメッセージが表示されます。
ssh: connect to Host <publicbuildingip> port 2222: Connection refused
詳細モード出力でクライアントを実行すると、次のようになります。
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to <publicip> [<publicip>] port 2222.
debug1: connect to address <publicip> port 2222: Connection refused
ssh: connect to Host <publicip> port 2222: Connection refused
また、同じネットワークのホストからログインしようとすると、同じことが起こります。
netstat
をSudo netstat -tulpn | grep ssh
出力のようなサーバーで実行します:
tcp 0 0 127.0.0.1:2222 0.0.0.0:* LISTEN 969/sshd
ネットワーク外部からのパブリックIPに対してnmap
を実行すると、次のように出力されます。
Host is up (0.051s latency).
Not shown: 996 filtered ports
PORT STATE SERVICE
21/tcp closed ftp
80/tcp open http
2222/tcp closed unknown
8080/tcp closed http-proxy
Nmap done: 1 IP address (1 Host up) scanned in 5.31 seconds
telnet <publicip>
2222を試す
出力:
telnet: Unable to connect to remote Host: Connection refused
建物内のネットワークIPで試した場合も同様です。
しかし、サーバーで実行されたiftopは、ログインしようとしたときに実際にネットワークアクティビティがあることを示しています。
次のようなサーバーでtcpdump
を実行すると、tcpdump -vniay port 2222 -i eth0
はログイン試行時にこれを出力します。
15:53:36.812402 IP (tos 0x0, ttl 64, id 56954, offset 0, flags [DF], proto TCP (6), length 60)
192.168.1.86.39822 > 192.168.1.90.2222: Flags [S], cksum 0xa1b8 (correct), seq 3966921350, win 292000, options [mss 1460,sackOK,TS val 308476 ecr 0,nop,wscale 7], lenght 0
何が失敗しているのでしょうか?
そのnetstat
出力とsshd
構成ファイル(特に この行 )に基づいて、SSHデーモンはローカル専用IPアドレス(127.0.0.1)でリッスンしています。 、および実際にLANと通信したり、ネットワーク上のルーター/ゲートウェイデバイスを介して送信したりするIPではありません。
sshd_config
が、サーバーに割り当てられたプライベートLAN IPアドレスなど、LANにあるListenAddress
行を持つように設定されていることを確認します。ない場合は、portディレクティブの後にListenAddress 0.0.0.0
やListenAddress ::
などの構文で追加し、これらの項目を実際のIPv4またはIPv6アドレスに置き換えます。
また、127.0.0.0/8のIPアドレスへのバインドは、最終的にローカルコンピュータ自体でのみ行われ、実際にLAN /ローカルネットワーク/他の場所にルーティングできるアドレスではないことに注意してください。