2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

RaspberryPiに公開鍵でSSH接続する際に、.sshの誤った所有者設定のせいでエラー

Last updated at Posted at 2019-12-23

サーバーの勉強のためにRaspberryPiを触っています。

公開鍵を用いたSSH接続ができない

公開鍵を用いてSSH接続する方法は様々なサイト (こことか参考にしました) で解説されています。
しかし自分がそれらの設定を模倣してみても、Windows10のコマンドラインからSSH接続を試みようとすると

pi@raspberrypi3b.local: Permission denied (publickey).

といったエラーが出て失敗してしまいました。

SSH接続を試みた際のエラーは /var/log/auth.log に出力されるようですが、そこを確認しても

Connection reset by authenticating user pi

といったログが失敗した回数分だけ残っているばかり。
このログはSSH接続に失敗した際に残る汎用的なもののようで、このメッセージだけで検索しても不具合の原因は特定できませんでした。

.sshフォルダの所有者はrootではなく対象のユーザーに

そんなこんなで数日間唸ってたのですが、色々と弄っていたらふと上記のエラーが解決しました。

自分は.sshフォルダを作成する際にsudoコマンドでmkdirを実行していたのですが、その場合はフォルダの所有者がrootとなり、これが不具合の原因となっていたようです。
最終的にchownコマンドを用いて、.sshフォルダの所有者をpi (SSHの設定をしているユーザー) に変更したら正常にSSH接続できるようになりました。

chown pi:pi .ssh

(ちなみに、.ssh/authorized_keys も所有者をpiからrootに変えたら接続できなくなりました)

検索しても出てこなかった

.ssh と authorized_keys の permission のことは色々なサイトで注意するように言われていたけど、誰も owner のことなんて言及していなかったじゃないですか…

自分はLinuxもRaspberryPiも初心者でして、この記事の内容も初歩的なものかもしれませんが、同じ症状で悩んで検索している人の助けになればと思い投稿しました。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?