事象
先日、利用中のConoHaVPSで借りている勉強用のサーバーで焦ることが起きました。勉強用環境にssh接続でうろ覚えのパスワードを手打ちしたため、複数回パスワード間違えたのでした。
ssh: connect to host (IPアドレス) port (ポート番号): Connection refused
あれ?さっきまで繋がってたのにな?パスワードも求めらずにエラーになるぞ?
原因
サーバー上で、firewalledの設定に拒否するIPアドレスとして設定された。下記コマンドでfirewalledの設定を確認
firewall-cmd --list-all
....(略)....
rich rules:
rule family="ipv4" source address="自分のネットワーク上のIP" port port="ssh" protocl="tcp" reject type="icmp-port-unreachable"
ConoHaVPSのサーバーイメージによりけりかもですが、複数回sshのパスワードミスをすると、firewalledの設定に拒否する設定が自動で追加されるみたい。
(ConoHaVPSのデフォルト設定なのか、CentOSのデフォルト設定なのかは不明。)
「自分のネットワーク上のIP」とは自分のローカルIPではなくて、NATなどでIPアドレスがグローバルIPに変換されたものを指しています。ネットワークでグローバルIPなどで調べると教えてくれるサイトなどヒットします。
解決
以下、コマンドで設定を削除可能。
firewall-cmd --permanent --remove-rich-rule='rule family="ipv4".....(確認したルール全文)
–permanentオプションを忘れると、一時的にルールが削除されるだけなので注意。削除した場合は、firewallの設定をリロードしましょう。
firewall-cmd --reload
感想
パスワード認証でのとほほでした。ちゃんと認証キーを作らないとですね。勉強用環境で使用する時だけ起動のためパスワード認証していたので起きてしまったのでした…
セキュリティ的にもキー認証のみにして、パスワード認証は停止しないとですね。
追記
実際に公開鍵認証への変更したのでTipsにまとめました。
コメント