タグ付けされた質問 「gpg-agent」


1
GPGエージェントはどのように機能しますか?
私のgpg.confファイルには、という行がありますuse-agent。 これはデーモンであるgpg-agentを指すことを理解しています。マニュアルページには、「gpg-agentは、プロトコルから独立して秘密(プライベート)キーを管理するデーモンです。これは、gpgおよびgpgsmのバックエンドとして、および他のいくつかのユーティリティで使用されます。」 誰もこれがgpgのコンテキストで何を意味するのか説明できますか?gpg-agentのポイントは何ですか? 現在、GPG 1.4を使用しています。 エージェントが実行されているかどうかを確認するにはどうすればよいですか?実際には、gpg-agentが基本的なGPG 1.4パッケージと共にインストールされているかどうかすらわかりません。 実行されていない場合、どのように開始できますか? 実行中の場合、どうすれば停止できますか?
31 gpg  gpg-agent 

2
gpgがgpg-agentを見つけるようにする方法
Fedora 22では、gpgはgpg-agentを見つけられません。 % gpg-agent --daemon % gpg -vvv --use-agent --no-tty --decrypt file.gpg gpg: using character set `utf-8' :pubkey enc packet: version 3, algo 1, keyid 3060B8F7271AFBAF data: [4094 bits] gpg: public key is 271AFBAF gpg: using subkey 271AFBAF instead of primary key 50EA64D5 gpg: using subkey 271AFBAF instead of primary …
23 gpg  gpg-agent 

1
Gentoo Linux GPGは、パラメータを介して渡されるファイルを適切に暗号化しますが、標準入力から読み取るときに「デバイスに不適切なioctl」をスローします
Gentoo Hardenedをカーネル4.1.7-hardened-r1で実行していDISPLAYます。パスワードプロンプトにpinentry-cursesを使用するために、SSHから開かれたシェルセッションからGPGを使用し、変数を無効にしてファイルを暗号化しようとしています。使用gpg -o file.gpg --symmetric fileすると、うまく暗号化できます。使用するpv file | gpg -o file.gpg --symmetricと、次のエラーメッセージが表示されます。 gpg-agent[30745]: command get_passphrase failed: Inappropriate ioctl for device
23 ssh  gentoo  gpg  gpg-agent 

3
GPGエージェントはキーリングからSSHキーを削除しません
私は本当に厄介な問題を抱えています。gpg-agentSSHキーをキーリングから削除することができず、何度も再起動してもそこに保持されます。 $ ssh-add -D SSH_AGENT_FAILURE Failed to remove all identities. アイデンティティを削除するように言っても: $ ssh-add -d /path/to/private/key Identity removed: /path/to/private/key それから私は見ます $ ssh-add -l 4096 1b:cb:52:a6:e5:13:e6:78:14:12:92:8f:34:8f:92:88 /path/to/private/key そして、それはまだそこにあります。 これはどこにキャッシュされますか?何らかの理由でディスクに書き込みを行っているようです。これは、SSHエージェントにとっては恐ろしいことです。私は次を開始するために実行していますgpg-agent: gpg-agent --enable-ssh-support --daemon それ以外はすべて正常に機能しますが、このファイルをどこかにキャッシュしているため、削除する必要があります。
14 ssh  gpg-agent 


2
Pinentryはgpg-agentとSSHで失敗します
Fedora 22を実行しています。GnuPGをセットアップして、Yubike NeoにあるPGP認証サブキーを使用してSSH接続を認証しようとしています。 次のようにgpg-agentを起動するsystemdユニットがあります。 /usr/bin/gpg-agent --homedir=%h/.gnupg --daemon --use-standard-socket そして、私は構成でSSHサポートを有効にしました: enable-ssh-support pinentry-program /usr/bin/pinentry-gtk セットアップの他の部分には、ファイルのキーのキーグリップの~/.gnupg/sshcontrol追加、リモートホストへの公開キーの追加、環境変数の宣言が含まれます。 セットアップが機能しているように見えるさまざまなログをグローバルに見ると、SSHがキーを見つけましたが、実際にはそのキーで署名できていないことがわかります。からのログをgpg-agent見ると、pinentryプログラムの起動に失敗しており、PINコードを要求していないことがわかります。 2015-07-22 23:23:28 gpg-agent[6758] DBG: error calling pinentry: Ioctl() inappropriate for a device <Pinentry> 2015-07-22 23:23:28 gpg-agent[6758] DBG: chan_8 -> BYE 2015-07-22 23:23:28 gpg-agent[6758] DBG: chan_7 -> CAN 2015-07-22 23:23:28 gpg-agent[6758] DBG: chan_7 <- ERR 100663573 The …

2
gpg-agentはssh-addで「エージェントが操作を拒否しました」と報告してSSHキーを拒否します
Arch Linuxでopenssh7.5p1とgnupg 2.1.21を使用しています(これらはArchに付属するデフォルトのバージョンです)。gpg-agentsshエージェントとして使用したいと思います。私は次のものを私の中に入れました~/.gnupg/gpg-agent.conf: pinentry-program /usr/bin/pinentry-qt enable-ssh-support Archはsystemdからgpg-agentを自動的に起動するので、設定します export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/gnupg/S.gpg-agent.ssh" を実行するとssh-add -l、IDは報告されず、期待どおりにプロセスがps報告さgpg-agent --supervisedれます。 残念なことに、を実行するssh-addと、キーの種類に関係なく、機能しません。ここに私がdsaを試した方法の例があります: $ ssh-keygen -f testkey -t dsa -N '' Generating public/private dsa key pair. Your identification has been saved in testkey. Your public key has been saved in testkey.pub. $ ssh-add testkey Could not add identity "testkey": agent …

2
すべてのgpgサブキーパスワードを一度にキャッシュしますか?複数のgpgパスワードエントリの必要性を防ぎますか?
gpgパスワードを1回だけ入力して、すべてのサブキー(署名、復号化、認証)のロックを解除できますか? 現時点では、gpgパスワードを3回入力する必要があります(署名、復号、認証)。これは不便です。 私はシェルスクリプトを考え出そうとしました。 #!/bin/bash set -x set -e set +o history signing_key=77BB3C48 encryption_key=CE998547 tempfile="$(mktemp)" echo "test" > testfile unset passphrase || exit 1 read -sp 'Enter password. ' passphrase ; echo exec 3<<<"$passphrase" gpg2 --no-tty --use-agent --batch --yes --passphrase-fd 3 --sign-with "$signing_key" --clearsign "$tempfile" gpg2 --no-tty --use-agent --verify "$tempfile.asc" gpg2 …

2
2.1.15でgpg-preset-passphraseを使用してpinentry経由で入力されたパスフレーズをキャッシュするために必要な手順は何ですか?
無人マシンで使用するためにパスフレーズをキャッシュしたいと考えています。これを行うといくつかのリスクが発生するため、キャッシュするパスフレーズを選択し、両方default-cache-ttlを設定したりmax-cache-ttl、不愉快に高い値を設定したりしないようにし、gpg-agent定期的にキャッシュ全体をクリアする必要がないようにしたいので、で解決策を探していますgpg-preset-passphrase。トラブルシューティング中に見つけた情報の一部はGnuPGの古いバージョンを参照しているため、すべての違いを十分に考慮していたかどうかはわかりません。 まず、で規定されman 1 gpg-agentているようexport GPG_TTY=$(tty)に、.bashrcにあります。 ここで、eval $(gpg-agent --daemon --allow-preset-passphrase --default-cache-ttl 1 --max-cache-ttl 31536000)gpg-agentを起動するために実行するとします。gpg-preset-passphraseが--max-cache-ttl(デフォルトは2時間)を引き続き尊重していることに注意してください。 次に$KEYGRIP、で目的の秘密サブキーのキーグリップを取得しgpg --with-keygrip -Kます。 それで私は試し/path/to/gpg-preset-passphrase -c $KEYGRIPます。リターンを押すと、これは次のように出力します: gpg-preset-passphrase: caching passphrase failed: Not implemented に再度追加しようとする--verbose --debug 6 --log-file /path/to/gpg-agent.logとgpg-agent、私のログに gpg-agent[4206] listening on socket /run/user/1000/gnupg/S.gpg-agent gpg-agent[4207] gpg-agent (GnuPG) 2.1.15 started gpg-agent[4207] handler 0x7f86ef783700 for fd 5 started gpg-agent[4207] command PRESET_PASSPHRASE …
8 gpg  gpg-agent 

1
gpg-agent-connectツールを使用してssh秘密鍵ファイルを再構築します
~/.ssh/id_dsaパスフレーズを忘れたため、自分のファイル(DSAアルゴリズムのOpenSSH秘密鍵ファイル)にアクセスできなくなりました。 しかし、もともと私はgpg-agentそれをgpg-agentパスフレーズにインポートして保護しましたが、これは私が知っています。そして、私は今でもgpg-agentOpenSSH秘密鍵ファイルをに保存されているものを使用して再構築したいと思っていますが、秘密鍵は今でも問題なく機能していgpg-agentます。 gpg-connect-agent次の一連のコマンドを使用してツールを使用すると、秘密鍵を(16進数/ ASCII形式で)抽出できると思いますが、元のOpenSSH秘密鍵ファイル形式に再構築する方法がわかりません。 起動しgpg-connect-agentて--hexオプション。 >プロンプトで、keyinfo --ssh-listコマンドを使用してキーの16進IDを取得します(正確には、キーの16進IDを示す3番目のフィールドです)。 で>プロンプト、実行keywrap_key --export。 >プロンプトで、export_key <enter hex ID from step 2>またはを実行しますexport_key --openpgp <enter hex ID from step 2>。 パスフレーズの入力を求め、受け取って確認すると、gpg-connect-agentツールは数十行の16進数とASCIIコードを表示します。これは、インポートされた元のssh秘密鍵であると思われます。 次に、が表示されOK、操作が成功したことを示しています。 それが実際に私のssh秘密鍵であると仮定すると(「help export_key」に従って、画面にダンプされたものは、鍵のaeswrap-128暗号化バージョンです;おそらく私の既知のgpg-agentパスフレーズで暗号化されています)、方法に関するいくつかのヘルプその情報を従来のssh秘密鍵形式に変換することは大歓迎です(これを行うためのperl / python / shell / Cプログラムはおまけです!)。
8 gpg-agent 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.