Saya tidak ingin hanya chmod dan lari sampai saya mendapatkan jawaban yang benar, saya juga tidak ingin menjalankan GnuPG sebagai root. Cara mudahnya adalah dengan mengaturnya sehingga hanya pengguna saya yang bisa membacanya, tapi saya rasa itu bukan cara terbaik.
Saya mendapatkan kesalahan berikut ketika saya mencoba menggunakan gpg:
gpg: WARNING: unsafe enclosing directory permissions on configuration file `/home/nb/.gnupg/gpg.conf'
gpg: external program calls are disabled due to unsafe options file permissions
gpg: keyserver communications error: general error
gpg: keyserver receive failed: general error
~/.gnupg/
Status GnuPG saat ini:
% stat .gnupg
File: ‘.gnupg’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: 1bh/27d Inode: 20578751 Links: 3
Access: (0775/drwxrwxr-x) Uid: ( 1000/ nb) Gid: ( 1000/ XXXX)
Access: 2015-08-09 18:14:45.937760752 -0700
Modify: 2015-08-05 20:54:32.860883569 -0700
Change: 2015-08-05 20:54:32.860883569 -0700
Birth: -
Jawaban di tautan berikut ini menyarankan 600 izin untuk ~/gnupg/gpg.conf
file tersebut, tetapi apakah folder yang dilampirkan juga memerlukan izin itu?
/ubuntu/330755/unsafe-permissions-on-configuration-file-home-david-gnupg-gpg-conf-what-doe
sumber
GnuPG secara default memberlakukan hak akses aman, yang berarti tidak ada orang lain (tetapi Anda) yang dapat mengakses direktori home GnuPG Anda
~/.gnupg
. Hak akses ini seringkali tidak cukup ketat setelah menyalin direktori home GnuPG dari komputer lain, dan sangat sering kepemilikan yang salah adalah alasan dari pesan tersebut.Jika Anda telah (karena alasan apa pun) membuat folder sendiri di dalamnya
~/.gnupg
, Anda juga harus menerapkan izin eksekusi ke folder itu. Folder membutuhkan hak eksekusi untuk dibuka.sumber
Meskipun Jens Erat sudah menyebutkannya dalam kalimat terakhirnya, saya pikir harus ditekankan bahwa folder di dalam ~ / .gnupg harus dapat dieksekusi (mode 700) juga. Ini berlaku terutama untuk folder private-keys * yang dibuat oleh gpg sendiri. Saya terjebak dengan masalah izin untuk sementara waktu sebelum saya melihat ini.
sumber
Dua baris ini akan mengatur izin secara terpisah dan benar untuk direktori dan file:
dengan asumsi kepemilikan sudah diatur dengan benar.
Perhatikan itu tidak mengubah izin pada soket
S.gpg-agent*
. (Hanya gpg v2 baru yang melibatkan soket, gpg v1 lama tidak).sumber