Help us understand the problem. What is going on with this article?

SSH で Permission Denied となる傾向と対策

More than 3 years have passed since last update.

SSH ログインしたときに下記エラーが出る傾向と対策をまとめました。

Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

まずログを見る

クライアント側でこのエラーが出たら、サーバー側の /var/log/secure にエラーとなった原因が記録されます。最重要です。たとえば、

Feb 26 23:58:39 server sshd[29619]: Authentication refused: bad ownership or modes for file /home/user/.ssh/authorized_keys

みたいに書いてあると、所有者とパーミッションなどに絞って原因を見ていくことになります。

よく原因となる確認ポイントを下記に書いていきます。

接続先に authorized_keys が設置されているか

公開鍵認証する場合、接続する側のマシンで公開鍵と秘密鍵のペアを作成し、公開鍵を接続ユーザのホームディレクトリ配下 ~/.ssh/authorized_keys に設置する必要があります。

パーミッションは適切か

公開鍵認証する場合、接続先のサーバで所有者とパーミッションが適切に設定されていることを確認します。

  • /home/user/.ssh は 0700
  • /home/user/.ssh/authorized_keys は 0600

にします。パーミッションに過不足があるとエラーになることがあります。

ユーザ追加時の設定を確認する

あれいつもはこれ確認したらつながるのに、なんで今日はダメなんだ? と思っていたら、ユーザ追加するときにログインシェルを設定していて、そのパスが存在していないのが原因でした。

具体的には、 Ansible で

---
- name: useradd youcune
  user: name=youcune shell=/bin/zsh

とやっていました。この zsh のパスが存在しておらず失敗になっていたようです。死にたい。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away