Troubleshooting GnuPG "get_key failed" error caused by incorrect filesystem permissions

5,068

Michael's '660' answer didn't do it for me. The only way I was able to have enough permissions without getting an "unsafe permissions" warning was to do 700. No more, no less.

Here are my commands (Ubuntu flavor)

sudo -i
cd /var/www/.gnupg
chown -R www-data:www-data .
chmod -R 700 .

Also, in my case, the problem was that gnupg_addencryptkey is meant to load key fingerprints that have already been imported. So, I used the gnupg_import function instead, according to the PHP documentation: http://php.net/manual/en/function.gnupg-import.php

Share:
5,068

Related videos on Youtube

docodingwhile1
Author by

docodingwhile1

"The best writing is rewriting." E. B. White

Updated on September 18, 2022

Comments

  • docodingwhile1
    docodingwhile1 over 1 year

    Situation: we plan on using PHP's GnuPG extension to encrypt/decrypt files.

    Currently we've setup some test cases, using keys generated with GPG.

    The generated files reside in:

    /Users/username/.gnupg/
    

    I am able to get keyinfo for the key I want to use to encrypt/decrypt, but when I attempt to use addencryptkey, I get:

    (E_WARNING: 2): gnupg::addencryptkey() [gnupg.addencryptkey]: get_key failed
    

    I think this is due to the permissions on the ~/.gnupg folder & enclosed files.

    The files are owned by me - username, but apache runs as www.

    A few days ago I did have this working, but it seems each time I use GPG Keychain Access to import / export a key, the folder's permissions are changed.

    Question: What are the exact permissions required to allow PHP's GnuPG to add encrypt & decrypt keys?