YAMAHAルーター 外部からSSHへの接続に失敗する
外部からSSH接続をしてYAMAHAルータを管理しています。
ある日ルータにログインしようとするとエラーが出て接続できず。
ルータを再起動したら接続できるようになったが数日後再び接続できなくなる。
解決したのでまとめてみました。
概要
発生タイミングとしては突然繋がらなくなる。
ルータを再起動すると直る
環境
確認したルータ型番
RTX1210
RTX830
NVR510
使用しているTeratermのバージョン
Teraterm v4.89
現象
ホスト名を入力
→ユーザ名、パスワードを入力する画面が表示される
この時初回接続時に出てくるはずの「サーバ側のホスト鍵指紋」追加の画面が出てこない
ユーザ名、パスワードを入力し、OKを押すとTeratermのコンソール画面になるが応答は返ってこない。
しばらくすると以下のような画面が表示されTeratermが落ちる。
ちなみに、TeraTermのver4.100以降はユーザ名とパスワード入力後のOKを押すと問答無用で落ちる
原因究明
→鍵交換アルゴリズムが云々
設定を変えてみたがNG
Teratermのバージョンを変える
他のSSHクライアントPoderosa,PuTTY,RLoginなど試す。
→NG
とりあえずログを確認。
syslog info on
syslog debug on
syslog notice on
見えるように設定しsyslogサーバにログを流す。
怪しいログ発見
Apr 1x xx:xx:xx 192.168.x.1 local0 info SSHD login failed, a.a.a.a
Apr 1x xx:xx:xx 192.168.x.1 local0 info SSHD login failed, b.b.b.b
Apr 1x xx:xx:xx 192.168.x.1 local0 info SSHD login failed, c.c.c.c
外部からSSHログインを受けてる。
ログインに失敗しているログが多数。
→22番ポートに対しログイン攻撃を受けていました。
多数のアクセスを受けSSHのセッションが正常に終了しなかったのではないか?
(挙動からの予測)
対策
nat descriptorの設定を変更
変更前
nat descriptor masquerade static 1 1 192.168.x.1 tcp 22
変更後
nat descriptor masquerade static 1 1 192.168.x.1 tcp <任意のポート番号>=22
むしろデフォルトのポート番号空けとくなって話ですよね。
対策後
攻撃を受けているようなログは見られなくなる。
SSHへ接続できなくなることはなくなりました。