gpg gpg-agentをオンデマンドで起動しますか?


13

gpg-agent状態のmanページ:

   The agent is usualy started on demand by gpg,  gpgsm,  gpgconf  or
   gpg-connect-agent.   Thus there is no reason to start it manually.
   In case you want to use the included Secure Shell  Agent  you  may
   start the agent using:

     gpg-connect-agent /bye

   The usual way to run the agent is from the ~/.xsession file:

     eval $(gpg-agent --daemon)

これは、一方で「手動で起動する理由がない」ことを教えてくれ、他方で手動で起動する方法を教えてくれます。-ここで何か誤解しましたか?

私のシステムでは、間違いなく手動で起動する必要があるようです。それ以外の場合、たとえばgpg-connect-agent文句を言う:can't connect to the agent: IPC connect call failedgpg-connect-agent-manページに記載されているように、エージェントを開始するために何かを構成する必要がありますか?


のmanページにもgpg-connect-agent次のように書かれています:

   --agent-program file
          Specify the agent program to be started if none is running.

ただしgpg-connect-agent --help、このオプションはリストされておらず、コマンドを使用しようとするとコマンドも文句を言います。

マニュアルページに別のコマンドが記載されているようですが、重要なものを見逃していませんか?


私のシステムは現在のArch Linuxです。(別のdebianボックスでの同じ状況。)

要求された詳細:

$ gpg --version
gpg (GnuPG) 2.0.22
libgcrypt 1.5.3
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: ~/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ?, ?
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2
$ gpg-connect-agent --version
gpg-connect-agent (GnuPG) 2.0.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: ~/.gnupg
$ man gpg-connect-agent |grep -A1 agent-program
       --agent-program file
              Specify the agent program to be started if none is running.
$ gpg-connect-agent --agent-program foo
gpg-connect-agent: invalid option "--agent-program"
$ gpg-connect-agent /bye
gpg-connect-agent: can't connect to the agent: IPC connect call failed

どのバージョンのgpg-agentおよびgpg-connect-agentを使用していますか?
ジェニーD

1
また、他のgpgキーリングデーモンがあることに注意してください。たとえば、gnomeにはgnomeキーリングがあり、gpg、ssh、および一般的なパスワードを処理します。これらはすべて、1つのパスワードですべてのロックを解除でき、ログイン時に自動的にロック解除できるため、使用する方がはるかに優れています。
パトリック

上記に具体的な詳細を追加しました。私はgnome-keyring-daemonを知っていますが、そのボックスではgnomeを実行しません。-現在の質問は、gpgがオンデマンドで独自のデーモンを起動できるかどうかです。
ミカ

回答:


5

それはマニュアルページの悪い表現です。「gpg-agentを手動で起動する必要はありません」という意味だと思います。GnuPG 2.xが必要でgpg-agentあるのに対し、これは理にかなっていますが、1.xではオプションです。

そのため、「したがって、手動で起動する理由はありません」「...ツールを実行するために」。

しかし:あなたはキャッシュ機能をしたい場合は、gpg-agentデーモンとして実行する必要がありますので、ツールが手動またはから、つまり前に開始する~/.xsessionツールは、環境変数を探しているためGPG_AGENT_INFO(右)を実行しているを見つけるためにgpg-agent。ツールが起動した場合gpg-agent、その後gpg-agent時に終了するツールが終了します。

gpg-connect-agent /byemanページの本当のバグかもしれません。知る限り、これはgpg-agent実行中かどうかのテストに使用されますが、起動には使用されません。設定にはシェル(より正確には、開始するツールの親プロセス)が必須であるため、そのように動作することさえできませんGPG_AGENT_INFO

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.