Solusi 1:
Direktori akan memerlukan set bit eksekusi agar Anda dapat memasukkannya. Saya tidak tahu apa yang Anda uji, tetapi Anda tidak bisa masuk ke direktori tanpa bit eksekusi, atau baca file di dalamnya:
$ mkdir foo
$ echo "baz" > foo/bar
$ chmod 660 foo
$ cd foo
bash: cd: foo: Permission denied
$ cat foo/bar
cat: foo/bar: Permission denied
Artinya, kecuali proses Anda memiliki set kemampuan CAP_DAC_OVERRIDE POSIX (seperti yang dimiliki root), yang memungkinkan Anda untuk memasukkan direktori tanpa set bit yang dapat dieksekusi, iirc.
Pada dasarnya, Anda harus mencoba menyimpan direktori .ssh Anda pada 700, dan semua yang ada di dalamnya pada 600, agar aman. Halaman manual ssh memberikan instruksi per file tentang kepemilikan yang diperlukan dan mode izin untuk file di ~/.ssh.
Solusi 2:
Direktori memerlukan izin eksekusi untuk cd
ke dalamnya. Inilah perilaku yang diharapkan.
Solusi 3:
Untuk ls atau cd ke direktori, Anda perlu mengeksekusi izin. Meskipun Anda tidak memilikinya, Anda tidak dapat benar-benar memeriksa konten dan melihat izin file di dalamnya, jadi kemungkinan besar izin file itu sendiri salah, jika Anda tidak dapat menyimpannya.
Izin direktori 700 dan izin file 644 adalah pengaturan yang sangat baik untuk saya.