Я борюсь с проблемой gpg в течение нескольких дней и не могу найти решение самостоятельно. я был бы рад, если бы вы могли помочь мне со следующей проблемой:GPG расшифровывает файл без содержимого/как пустой файл
Мне нужно расшифровать файл gpg в php. для этого, я пользуюсь следующей командой:
cat passphrase.txt | /usr/local/bin/gpg --decrypt --passphrase-fd 0 stammdaten.txt.gpg>stammdaten.txt
the passphrase.txt contains the password for decryption
stammdaten.txt.gpg is the encrypted file
the decrypted data will be written in stammdaten.txt
when i run this command in php:
shell_exec=("cat passphrase.txt | /usr/local/bin/gpg --decrypt --passphrase-fd 0 stammdaten.txt.gpg>stammdaten.txt")
i get a zero-byte output file (stammdaten.txt) with owner=ftpadmin and group=psacln
but when i execute the same command via ssh terminal (as root), the data will be decrypted and written correctly with file owner=root and group=root.
Я думаю, что это проблема разрешения. как я могу правильно использовать эту команду в php? я также пытался chown и chgrp с ftprightson в расшифрованном файле, но ничего не помогает.
каждый ответ очень приветствуется. благодаря!
Если я попробую вашу предложенную команду, я получаю gpg: Неверная опция «--passphrase-fd0», и если я пытаюсь «su ftpadmin», ничего не происходит, я все еще зарегистрирован как root. но когда я «su www-data», я переключаюсь и выполняю свою первоначальную команду. владелец файла и группа затем являются «www-data», файл записывается успешно. возможно ли выполнить мою команду в виде www-данных? – user963942
проблема с неправильной настройкой была моей ошибкой ... команда работает в оболочке, но не в shell_exec в php. – user963942