Yes, I'm really enjoying everything!

smilemark blog

Computer & Network

自宅のNASに外からSSH公開鍵認証でハマる

投稿日:

先日導入したSynology DS216jに外部からSSHで公開鍵認証で接続できるようにするのに少しハマったのでメモ。

ssh user@host と実行しても繋がらず -vvv オプションで確認するとこんなメッセージが。

.....
debug1: Authentications that can continue: publickey
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
Permission denied (publickey).

公開鍵を置いてる.sshフォルダか公開鍵ファイルのパーミッションだと思ってたけど正しい。
ちゃんと.sshフォルダは700、公開鍵ファイルは600にしてる。ユーザもグループも問題なし。

ログファイル/var/log/auth.logを見ても全然参考になる情報なし。

なのでsshdをデバッグモードで起動させてみた。
まずはsshdを停止させる。

synoservicectl --stop sshd

そしてsshdをデバッグモードで起動。

/sbin/sshd -ddd

そしてクライアントからsshでセッションする。するとこんなログが。

debug1: trying public key file /var/services/homes/xxxx/.ssh/authorized_keys
debug1: fd 4 clearing O_NONBLOCK
Authentication refused: bad ownership or modes for directory /volume1/homes/xxxx

原因は単純にSSHで接続するユーザのホームディレクトリのパーミッションでした。
調べると711だった。これを755にして解決。

-Computer & Network
-,

Copyright© smilemark blog , 2024 All Rights Reserved Powered by STINGER.