CentOS 7だと~/.ssh以下のパーミッションを適切に設定しておかないとsshでログインできなかった。 Ubuntu 18.04はそんなことはなかったので、Ubuntuはsshdの設定が少しゆるい? そこで、以下のように設定する。
- ディレクトリはオーナーのみ読み書き閲覧可能
- ファイルはオーナーのみ読み書き可能
- 鍵はオーナーのみ読み込み可能
これがベストなのかは正直不明。 パーミッションの一括設定のコマンドをメモっておく。
$ find ~/.ssh -type d | xargs chmod 0700 $ find ~/.ssh -type f | xargs chmod 0600 $ find ~/.ssh -type f | grep -E '/id_rsa(\.pub)?$' | xargs chmod 0400
上記コマンド実行後のパーミッションの例は以下。
$ ls -la ~/.ssh 合計 32 drwx------ 3 redj redj 4096 7月 10 05:32 . drwxr-xr-x 26 redj redj 4096 7月 10 05:32 .. -rw------- 1 redj redj 389 7月 10 05:21 authorized_keys -rw------- 1 redj redj 279 7月 10 04:58 config drwx------ 2 redj redj 4096 7月 10 05:23 config.d -r-------- 1 redj redj 1675 7月 10 05:21 id_rsa -r-------- 1 redj redj 389 7月 10 05:21 id_rsa.pub -rw------- 1 redj redj 444 6月 28 00:19 known_hosts