CentOS 7 で SSH ログインできない場合の解決方法
CentOS 7サーバーにSSHでログインできない場合、以下の解決策を検討してください。
- ネットワーク接続の確認:ご使用のネットワーク接続が正常で、サーバーのIPアドレスにアクセスできることを確認してください。
- SSHサービスが稼働中であるか確認するには、サーバ上で次のコマンドを実行します。
- systemctl status sshd
- SSHサービスが稼働していない場合、以下のコマンドで起動します:
- systemctl start sshd
- ファイアウォールの設定を確認する: ファイアウォールは SSH 接続をブロックしている可能性があります. 次のコマンドを実行してファイアウォールのルールを確認できます:
- firewall-cmd –list-all
- ファイアウォールルールにSSHサービスが許可されていない場合は、次のコマンドを使用して追加してください。
- firewall-cmd –add-service=ssh –permanent && firewall-cmd –reload
- SSH設定ファイルを確認:サーバ上でSSH設定ファイル/etc/ssh/sshd_configを開き、以下の設定が正しくなっていることを確認します:
- ポート 22 # ポート番号が正しいことを確認する
PermitRootLogin yes # (必要な場合のみ) root ユーザーログインを有効にする
PasswordAuthentication yes # (必要な場合のみ) パスワード認証を有効にする - 設定ファイルを編集後、SSHサービスを再起動する:
- systemctl 再起動 sshd
- SELinux設定の確認: SELinuxが有効で適切に設定されていない場合、SSH接続がブロックされる場合があります。SELinuxをパーミスビモードに設定することでこの問題を解決できます。
- # SELinuxをパーミスブモードに設定する setenforce 0
- もし問題が解決しない場合は、/etc/selinux/config ファイルを編集して SELinux をパーミスブモードに設定し、再起動することで変更内容を永続化できます。
それでも SSH ログインに関して問題が解決しない場合は、より詳細な情報を提供していただければ、より適切に対応できます。