GNU/Linux >> Tutoriels Linux >  >> Linux

Quelles sont les autorisations correctes pour le dossier contenant .gnupg ? gpg :AVERTISSEMENT :autorisations de répertoire non sécurisées sur le fichier de configuration

Oui, vous devrez également corriger les autorisations du répertoire englobant ~/.gnupg

Parce qu'un attaquant avec suffisamment de droits sur le dossier pourrait manipuler le contenu du dossier.

Exécutez les commandes suivantes :

  1. Assurez-vous que le dossier+contenu vous appartient :
    chown -R $(whoami) ~/.gnupg/

  2. Droits d'accès corrects pour .gnupg et sous-dossiers :
    find ~/.gnupg -type f -exec chmod 600 {} \;
    find ~/.gnupg -type d -exec chmod 700 {} \;

Explication pour 600 , 700 :

Commençons par le début :'00' signifie AUCUN droit DU TOUT pour tous ceux qui ne sont pas propriétaires des fichiers/répertoires.

Cela signifie que le processus qui les lit (gnupg) doit s'exécuter en tant que propriétaire de ces fichiers/répertoires.

~/.gnupg/ est un dossier, le processus lisant le contenu doit pouvoir "entrer" (=exécuter) ce dossier. C'est le bit "x". Il a la valeur "1". 7 - 6 = 1

Les deux ~/.gnupg/ et ~/.gnupg/* vous voulez savoir lire et écrire, c'est 4 + 2 = 6 .

==> Seul le propriétaire des fichiers peut désormais les lire/écrire (=600). Lui seul peut également entrer dans le répertoire (=700)

==> Ces droits de fichiers n'ont pas "besoin" d'être documentés, ils sont déductibles de l'utilisation prévue.

Plus d'informations sur la notation des autorisations :https://en.wikipedia.org/wiki/File_system_permissions#Notation_of_traditional_Unix_permissions


GnuPG applique par défaut des privilèges d'accès sécurisés, ce qui signifie que personne d'autre (à part vous) ne peut accéder à votre répertoire personnel GnuPG ~/.gnupg . Ces privilèges d'accès ne sont souvent pas assez stricts après avoir copié le répertoire personnel de GnuPG depuis une autre machine, et très souvent un mauvais propriétaire est la raison d'un tel message.

# Set ownership to your own user and primary group
chown -R "$USER:$(id -gn)" ~/.gnupg
# Set permissions to read, write, execute for only yourself, no others
chmod 700 ~/.gnupg
# Set permissions to read, write for only yourself, no others
chmod 600 ~/.gnupg/*

Si vous avez (pour une raison quelconque) créé vos propres dossiers dans ~/.gnupg , vous devez également appliquer des autorisations d'exécution à ce dossier. Les dossiers nécessitent des privilèges d'exécution pour être ouverts.


Bien que Jens Erat l'ait déjà mentionné dans sa dernière phrase, je pense qu'il convient de souligner que tous les dossiers à l'intérieur de ~/.gnupg doivent également être exécutables (mode 700). Cela vaut en particulier pour le dossier private-keys* créé par gpg lui-même. J'ai été coincé avec des problèmes d'autorisation pendant un moment avant de m'en apercevoir.


Linux
  1. A quoi servent les inodes ?

  2. Comprendre comment Umask contrôle les autorisations initiales de fichiers/répertoires sous Linux

  3. A quoi sert le fichier .la de libtool ?

  4. Quel est l'emplacement correct du fichier mysql.sock sous Linux

  5. Quel est l'équivalent de la commande Linux File pour Windows ?

Quelles sont les différences entre grep, awk et sed ?

Quelles sont les différentes façons de définir les autorisations de fichiers, etc. sur gnu/linux

Comment fonctionnent les autorisations de fichiers pour l'utilisateur root ?

Quel est le fichier par défaut pour `hostname` ?

Que signifie un + à la fin des autorisations de ls -l ?

Quelles sont les implications en termes de performances pour des millions de fichiers dans un système de fichiers moderne ?