No quiero simplemente ejecutar y ejecutar chmod hasta obtener la respuesta correcta, ni quiero ejecutar GnuPG como root. La solución fácil sería simplemente configurarlo para que solo mi usuario pueda leerlo, pero no creo que sea la mejor manera.
Recibo el siguiente error cuando intento usar 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/
Estado actual de GnuPG :
% 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: -
La respuesta en el siguiente enlace recomienda 600 permisos para el ~/gnupg/gpg.conf
archivo, pero ¿la carpeta adjunta también requiere esos permisos?
/ubuntu/330755/unsafe-permissions-on-configuration-file-home-david-gnupg-gpg-conf-what-doe
fuente
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 tal mensaje.Si (por alguna razón) ha creado sus propias carpetas en el interior
~/.gnupg
, también debe aplicar permisos de ejecución a esa carpeta. Las carpetas requieren privilegios de ejecución para abrirse.fuente
Aunque Jens Erat ya lo mencionó en su última oración, creo que debe enfatizarse que cualquier carpeta dentro de ~ / .gnupg también debe ser ejecutable (modo 700). Esto es especialmente válido para la carpeta private-keys * creada por el propio gpg. Estuve atrapado con problemas de permisos por un tiempo antes de notar esto.
fuente
Estas dos líneas establecerán los permisos por separado y correctamente para directorios y archivos:
asumiendo que la propiedad ya está configurada correctamente.
Tenga en cuenta que no cambia los permisos en los sockets
S.gpg-agent*
. (Solo el nuevo gpg v2 involucra sockets, el viejo gpg v1 no).fuente