【PHP】gnupgの許可なし

トップページに戻る
jp, blog, php, gnupg, linux
テクニカル諏訪子: 【PHP】gnupgの許可なし
                                     l,.                                                .'''                                        ;;;;;;.................   .;;;;;;;      .OOx
     cOOxxxxxxxxxxkOO               0MMK                                                OMM0                  ;xx:   'xxd                  0MMMMMMMMMMMMMMM                 'MMX          MMMMMMMMMMMMMMMMMX:
                                   KMMMNdddddxkd'       .dddddddddddddddd               0MMo                  oMMo   ,MMX          kkkkkkkk dMX  MMc         kkkkkkkkkd:kkkkXMMMkkkkk.               .WMMMd
                                 oMMW       ;MMMl       ,MMMMMMMMMMMMMMMM        KNNNNNNMMMMNNNNNNMK'         oMMo   ,MMX                   dMMckMMcKKKKKN0               .MMN                    ;cOWM0
  ;ooccccccccccccccccloo      .xMMM.        XMMK                                       .MMM      OMM'         xMM:   ,MMX           NNNNNN' dMX .MMcOX, KMO   oNNNNNNN    .MM0                   .MMN
  xMMMMMMMMMMMMMMMMMMMMM    ;0MMM.         0MMX                                        ;MMk      0MM.         KMM'   ,MMX           ::::::. dMX  MMcdMx MM;   .:::::::    ;MMMKKKKKK.  ',,,,,,,,,xMMM,,,,,,,,,,
           .MMM.                         .KMM0                                         WMM       MMM          MMM.   ,MMX     'd            dMMOKMMc.MMdMM                KMM.   xMM.  KMMMMMMMMMMMMMMMMMMMMMMM.
           0MMK                         oMMM.                                        .WMM'       MMM         kMMX    ,MMX   ,OMMd   oooooo. dMX .MMc 0MMMo    cooooooo   .MMK    xMM.            .MMN
          lMMM                       ,kWMMl           ,llc::::::::::::::cll         oMMM.       lMM0        dMMM.    ,MMM,oXMMO     MM. XM; dMX lMMc  MMW     KMK  cMM   KMM.    XMM             .MMN
        ,OMMX                    'cxNMMM              dMMMMMMMMMMMMMMMMMMMM.     .oWMMo    occcoMMM.      .OMMX      ;MMMMMM        MM  XM:dWMMMMMMc OMMMo    KMK  :MM  KMM:     MMW             .MMN
      .NMMk                     MMMMo                                             OM'      xMMMMMx         0M         kMx           MMXKMM;     .MMNKMl MM0   KMMKKWMMxWMM   coo0MMc         loooKMMk
                                                                                                                                                 XX:                    .     ..             .MWO;

トップ | 自己紹介 | 連絡先 | 支援♡ | サービス | RSSで登録 | Pleromaでフォロー | PeerTubeで登録 | 一般ネット | Tor | I2P


シェルでgpgを実行出来ますが、PHPから実行すると、「false」が出ました。

$gpg = new \gnupg();
$info = $gpg->import($this->field['gpg']);
dd($info);
false

nginxとして「gpg」を実行すると、「/var/www/.gnupg」にアクセス出来ないみたいです。

su nginx -s /bin/bash -c "gpg"
gpg: failed to create temporary file '/var/www/.gnupg/.#lk0x0000555c891701e0.webserver.076.ne.jp.5216': 許可がありません
gpg: keyblock リソース'/var/www/.gnupg/pubring.kbx': 許可がありません

ですから、「nginxとしてlsを実行出来るかな?」と思いましたら

su nginx -s /bin/bash -c "ls -thal ~/.gnupg"
ls: ディレクトリ '/var/www/.gnupg/S.gpg-agent.extra' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/..' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/random_seed' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/.' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/S.gpg-agent' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/S.gpg-agent.browser' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/pubring.kbx~' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/S.gpg-agent.ssh' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/.#lk0x000055cce51f19c0.webserver.076.ne.jp.15948' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/pubring.kbx' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/private-keys-v1.d' を開くことが出来ません: 許可がありません
ls: ディレクトリ '/var/www/.gnupg/trustdb.gpg' を開くことが出来ません: 許可がありません
合計 0
d????????? ? ? ? ?            ? .
-????????? ? ? ? ?            ? .#lk0x000055cce51f19c0.webserver.076.ne.jp.15948
d????????? ? ? ? ?            ? ..
s????????? ? ? ? ?            ? S.gpg-agent
s????????? ? ? ? ?            ? S.gpg-agent.browser
s????????? ? ? ? ?            ? S.gpg-agent.extra
s????????? ? ? ? ?            ? S.gpg-agent.ssh
d????????? ? ? ? ?            ? private-keys-v1.d
-????????? ? ? ? ?            ? pubring.kbx
-????????? ? ? ? ?            ? pubring.kbx~
-????????? ? ? ? ?            ? random_seed
-????????? ? ? ? ?            ? trustdb.gpg

chmod 700」だけは十分だと思いますが、万が一解決しなければ、このフォルダを削除すると、nginxとして作成します。

rm -rf /var/www/.gnupg
su nginx -s /bin/bash -c "mkdir ~/.gnupg"
chmod 700 /var/www/.gnupg

もう一回nginxとしてlsコマンドを実行すると

su nginx -s /bin/bash -c "ls -thal ~/.gnupg"
合計 28K
drwx------ 3 nginx nginx 4.0K Dec  3 14:08 .
-rw------- 1 nginx nginx  600 Dec  3 14:08 random_seed
srwx------ 1 nginx nginx    0 Dec  3 14:03 S.gpg-agent
srwx------ 1 nginx nginx    0 Dec  3 14:03 S.gpg-agent.browser
srwx------ 1 nginx nginx    0 Dec  3 14:03 S.gpg-agent.extra
srwx------ 1 nginx nginx    0 Dec  3 14:03 S.gpg-agent.ssh
drwx------ 2 nginx nginx 4.0K Dec  3 14:03 private-keys-v1.d
-rw-r--r-- 1 nginx nginx 2.0K Dec  3 14:03 pubring.kbx
-rw------- 1 nginx nginx   32 Dec  3 14:03 pubring.kbx~
-rw------- 1 nginx nginx 1.2K Dec  3 14:03 trustdb.gpg
drwxr-xr-x 4 nginx nginx 4.0K Dec  3 14:03 ..

PHPでも解決されました!!

以上


gostaticで創作しました。Git