この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
目次
サーバーに SSH ログインできない原因を調査する
Linux にて SSH ログインしたときにエラーが出てログインできない!と困っていた方が居たので、原因を調査する際にチェックポイントをまとめてみました。
では順番に SSH ログインできないときにチェックするポイントを確認していきましょう。もちろんサーバーに直接ログインすることもできない、全く入れないときには使えませんので予めご了承ください(汗)。
SSH のサービスが起動していること
当たり前のことですが SSH ログインするには、SSHD のサービスが起動している必要があります。
〇SSHD サービスの稼働状態を確認するコマンド
1 2 3 4 5 6 7 8 |
[root@admin]:# systemctl status sshd ● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2019-07-01 19:56:11 JST; 3 months 11 days ago Main PID: 4953 (sshd) Tasks: 1 (limit: 1120) CGroup: /system.slice/ssh.service └─4953 /usr/sbin/sshd -D |
公開鍵が正しく設定されていること
次に確認する項目は、公開鍵が正しく設定されていることです。公開鍵の設定先は、「/home/(ユーザー名)/.ssh/authorized_keys」になります。
公開鍵は「ssh-rsa 公開鍵 コメント」の形式で表示している必要があり、
ssh-rsa AAAAB3Nz***中略***HJqn6B shiki
のような形式になります。
公開鍵認証が有効であること
Amazon AWS や Microsoft Azure といった初期設定が公開鍵認証のサービスを除いて、オンプレミスやさくら VPS でサーバーを構築した場合は、公開鍵認証を有効にする必要があります。
確認するファイルは「/etc/ssh/sshd_config」で、sshd_config ファイルにある「PubkeyAuthentication」の行のコメントを外して、「yes」を設定しなければいけません。
パーミッションが正しく設定されていること
SSH に関連したフォルダは厳格なパーミッションを設定することを求められます。
具体的には
・「/home/(ユーザー名)/」のフォルダのパーミッションが「755」より厳しいこと
・「/home/(ユーザー名)/.ssh」のフォルダのパーミッションが「700」であること
・「/home/(ユーザー名)/.ssh/authorized_keys」のファイルのパーミッションが「600」であること
を確認してください。
ログイン対象のユーザーがログイン可能であること
最後にログイン予定のユーザーがログイン権限があるかを確認します。ユーザーのログイン状況は、「/etc/passwd」で確認しています。
ログイン形式は複数あるため、ログインを禁止した「/sbin/nologin」以外であることを確認します。
1 2 3 4 |
[root@example]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin hoge:x:1001:1001::/home/hoge:/bin/bash |
SSH ログインできないときに見るエラー「Permission denied」
SSH ログインする際によく見るエラーとして、「Permission denied」があります。本エラーが発生した場合は、サーバー側のログ「/var/log/secure」にエラーが出力されているかを確認しましょう。
もしパーミッションエラーの場合であれば、
・公開鍵が正しく設定されていること
・パーミッションが正しく設定されていること
が原因である可能性が高いことになります。
まとめ
さいごに紹介した確認事項5点をまとめておきます。
- SSH のサービスが起動していること
- 公開鍵が正しく設定されていること
- 公開鍵認証が有効であること
- パーミッションが正しく設定されていること
- ログイン対象のユーザーがログイン可能であること
確認事項は少ないものの、1つでも設定を失敗するとログインできなくなるので設定を行う際は十分にご注意ください。