Sí, también deberá corregir los permisos del directorio adjunto ~/.gnupg
Porque un atacante con suficientes derechos sobre la carpeta podría manipular el contenido de la carpeta.
Ejecute los siguientes comandos:
-
Asegúrese de que la carpeta y el contenido le pertenezcan:
chown -R $(whoami) ~/.gnupg/
-
Derechos de acceso correctos para
.gnupg
y subcarpetas:
find ~/.gnupg -type f -exec chmod 600 {} \;
find ~/.gnupg -type d -exec chmod 700 {} \;
Explicación para 600
, 700
:
Comencemos desde atrás:'00' significa NINGÚN derecho para todos los que no son propietarios de los archivos/directorios.
Eso significa que el proceso que lee estos (gnupg) debe ejecutarse como propietario de estos archivos/directorios.
~/.gnupg/
es una carpeta, el proceso que lee el contenido debe poder "ingresar" (=ejecutar) esta carpeta. Este es el bit "x". Tiene el valor "1". 7 - 6 = 1
Ambos ~/.gnupg/
y ~/.gnupg/*
quieres poder leer y escribir, eso es 4 + 2 = 6
.
==> Solo el propietario de los archivos puede leerlos/escribirlos ahora (=600). Solo él también puede entrar en el directorio (=700)
==> Estos derechos de archivo no "necesitan" ser documentados, son derivables del uso previsto.
Más información sobre la notación de permisos:https://en.wikipedia.org/wiki/File_system_permissions#Notation_of_traditional_Unix_permissions
GnuPG por defecto impone privilegios de acceso seguro, lo que significa que nadie más (excepto usted) puede acceder a su directorio de inicio de GnuPG ~/.gnupg
. Estos privilegios de acceso a menudo no son lo suficientemente estrictos después de copiar el directorio de inicio de GnuPG desde otra máquina, y muy a menudo la propiedad incorrecta es la razón de dicho mensaje.
# 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 (por alguna razón) ha creado sus propias carpetas dentro de ~/.gnupg
, también debe aplicar permisos de ejecución adicionales a esa carpeta. Las carpetas requieren privilegios de ejecución para abrirse.
Aunque Jens Erat ya lo mencionó en su última oración, creo que se debe enfatizar que cualquier carpeta dentro de ~/.gnupg también debe ser ejecutable (modo 700). Esto se aplica especialmente a la carpeta private-keys* creada por el propio gpg. Estuve atascado con problemas de permisos por un tiempo antes de darme cuenta de esto.