"Autorisations non sécurisées sur le fichier de configuration` /home/david/.gnupg/gpg.conf "Qu'est-ce que cela signifie et comment y remédier?

8
gpg: WARNING: unsafe permissions on configuration file `/home/david/.gnupg/gpg.conf'
gpg: WARNING: unsafe enclosing directory permissions on configuration file `/home/david/.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

Qu'est-ce que cela signifie et comment y remédier?

David
la source

Réponses:

13

gpg: AVERTISSEMENT: autorisations non sécurisées sur le fichier de configuration /home/david/.gnupg/gpg.conf' gpg: WARNING: unsafe enclosing directory permissions on configuration file/home/david/.gnupg/gpg.conf 'gpg: les appels de programme externes sont désactivés en raison d'autorisations de fichiers d'options non sécurisées

Cela signifie que vous disposez d' ~/.gnupg/gpg.confautorisations inattendues pour l'utilisateur que vous exécutez en tant que, comme l'accès en écriture à «autres», un autre utilisateur ou le bit exécutable. Ce fichier doit toujours, pour des raisons de sécurité, être uniquement lisible et inscriptible par l'utilisateur, et personne d'autre :

$ ls -l ~/.gnupg/gpg.conf
-rw------- 1 braiam braiam 7890 Jul  8 18:51 .gnupg/gpg.conf

Le vôtre a probablement un utilisateur ou des autorisations différents. Vérifiez-les en utilisant ls -l ~/.gnupg/gpg.conf. Pour résoudre ce problème est assez simple:

chown $(whoami):$(whoami) ~/.gnupg/gpg.conf ## if this fails read at the bottom
chmod 600 ~/.gnupg/gpg.conf

Si certaines commandes échouent ou si vous continuez à recevoir le message d'erreur que vous avez mentionné après avoir suivi ces instructions, vous devez supprimer le ~/.gnupgrépertoire, car il ne peut plus être approuvé.

rm -r ~/.gnupg/gpg.conf ## If this fails, use sudo

Vous pouvez ensuite essayer d'exécuter la gpgcommande avec le même utilisateur qui va exécuter le script, de cette façon, votre utilisateur avec create ~/.gnupgdirectory avec les autorisations appropriées.

Braiam
la source
1
Sur Cygwin, seulement cela a fonctionné:chmod 700 .gnupg
CMCDragonkai
12

Vous avez probablement migré votre .gnupgdossier à partir d'une autre machine ou modifié d'une autre manière les autorisations de fichier.

GnuPG impose la propriété privée du dossier et de certains fichiers pour des raisons de sécurité.

Ces deux lignes fixent les autorisations. Le premier garantit que le ~/.gnupgdossier (et tout ce qu'il contient) est bien le vôtre. Pour éventuellement dépasser la propriété, il nécessite des privilèges root, donc le sudo. La deuxième ligne garantit que personne mais vous pouvez lire son contenu (supprimer les autorisations de lecture, d'écriture et d'exécution pour le groupe et les autres utilisateurs). Votre nom d'utilisateur est inséré automatiquement, vous pouvez donc copier-coller les lignes directement sur votre terminal:

sudo chown -R ${USER}:${USER} ~/.gnupg
chmod -R go-rwx ~/.gnupg
Jens Erat
la source
Et c'est la réponse la plus courte.
Michał Leon
3

Je viens de faire face au même problème. Il s'est avéré que j'exécutais la gpgcommande en utilisant sudo. Lorsque j'ai réessayé sans sudo, cela a bien fonctionné et aucune erreur ne s'est affichée. Donc, cela pourrait être le cas pour vous aussi.

Muhammad Anas
la source