gpg
withを使用すると、私のディレクトリに次のソケットが作成されますgpg-agent
。~/.gnupg
S.gpg-agent
S.gpg-agent.browser
S.gpg-agent.extra
S.gpg-agent.ssh
S.gpg-agent
普通のソケットだと思いますgpg-agent
。しかし、他のものはどんな役に立ちますか?
私はsshでgpgを使用せず、ブラウザでgpgを使用しません。
どこで構成されており、自動的に生成されますか?
無効にできますか?
私はただ基準が必要なだけです。S.gpg-agent
gnupg 2.2.12
私はDebianバスターを使用しています。
答え1
彼らはgpg-agent
さまざまな性格を持つことができ、様々なサービスを提供することができます。
たとえば、議論する予定の正しいプロトコルを実装する必要があるため、正しいソケットを使用している限り、ボックスを実行をssh-agent
停止して代替gpg-agent
として使用できます。なぜそんなに役に立つのですか?たとえば、最近まで、FIDO2 / U2F(Yubikeysなど)に保存されているキーは使用できませんでした。これはしばらく前にリリースされた8.2にのみ追加されたため、以下で説明するように作業が非常に簡単になりました。S.gpg-agent.ssh
ssh
ssh
https://blog.snapdragon.cc/2020/02/23/direct-fido2-u2f-support-in-openssh-8-2-on-macos/
それまでは、スマートカードのように扱われるU2F取引をサポートするのでgpg-agent
使用される予定だ。gpg
これを行う方法の標準文書の1つは次のとおりです。https://florin.myip.org/blog/easy-multifactor-authentication-ssh-using-yubikey-neo-tokens
ここに戻り、gpg-agent
マニュアル全体は次の場所にあります。https://www.gnupg.org/documentation/manuals/gnupg/Invoking-GPG_002dAGENT.html#Invoking-GPG_002dAGENT
すべてのオプションは以下にあります。https://www.gnupg.org/documentation/manuals/gnupg/Agent-Options.html#Agent-Optionsこれは通常設定ファイルに入れることができます。~/.gnupg/gpg-agent.conf
たとえば、次のように学習できます。
- そのうちの1つに関して
.extra
無効にする方法と用途を学ぶことができます。
--extra-socket name
デフォルトでは追加のソケットが作成され、このオプションを使用してソケット名を変更できます。ソケットの生成を無効にするには、名前として「none」または「/dev/null」を使用します。
また、指定されたソケットからデフォルトのgpg-agent接続を受信します。この追加ソケットの目的は、リモートコンピュータからローカルコンピュータのこのソケットに渡されるUnixドメインソケットを設定することです。その後、リモートシステムで実行されているgpgはローカルgpg-agentに接続し、その秘密鍵を使用できます。これにより、秘密鍵をリモートコンピュータに公開することなく、リモートコンピュータからデータを復号化または署名できます。
- SSHサポートには次の
.ssh
ものがあります。
--enable-ssh-support
--enable-putty-support
OpenSSHエージェントプロトコルは常に有効ですが、gpg-agentはこのフラグが指定されている場合にのみSSH_AUTH_SOCK変数を設定します。
この動作モードでは、エージェントはgpg-agentプロトコルだけでなく、OpenSSHによって使用されるエージェントプロトコルも(別々のソケットを介して)実装します。したがって、よく知られているssh-agentの代替品としてgpg-agentを使用することができます。
- ブラウザソケットと追加情報を表示するには、次のものを使用できます。https://wiki.archlinux.org/index.php/GnuPG#gpg-agentもちろん:
gpg-agent
キーチェーンのパスワードを要求してキャッシュするデーモンとして主に使用されます。これは、外部プログラム(メールクライアントなど)でGnuPGを使用する場合に便利です。 gnupgには、デフォルトで有効になっているsystemdユーザーソケットが付属しています。これらのソケットはgpg-agent.socket
、、、gpg-agent-extra.socket
およびgpg-agent-browser.socket
ですgpg-agent-ssh.socket
。dirmngr.socket
gpg-agent.socket
gpg-agent
gpgはmainを使用してデーモンに接続します。ローカルシステムでの使用は、
gpg-agent-extra.socket
リモートシステムから渡されるUnixドメインソケットを設定することです。これにより、秘密鍵をリモートシステムに公開することなく、リモートシステムでgpgを使用できます。詳細については、gpg-agent(1) を参照してください。
gpg-agent-browser.socket
Webブラウザがgpg-agentデーモンにアクセスできるようにします。
gpg-agent-ssh.socket
SSHはこれを使用して、ssh-addプログラムによって追加されたSSHキーをキャッシュできます。必要な設定については#SSHエージェントを参照してください。
dirmngr.socket
キーサーバーへの接続を処理するには、GnuPGデーモンを起動します。
そのため、使用しなくても持っていても問題ありません。実際に存在しないことを確認するには、gpg-agent設定ファイルに次のように入力します。
extra-socket /dev/null
browser-socket /dev/null
私はこれをテストしておらず、ドキュメントにも記載されていませんが、browser-socket
この古い質問は次のとおりです。https://askubuntu.com/questions/777900/how-to-configure-gnupgs-s-gpg-agent-socket-location