「gpg-agent」の版間の差分
(→関連項目) |
|||
行6: | 行6: | ||
== 概要 == | == 概要 == | ||
− | [[GNU Privacy Guard]]は、プロトコル依存しない[[秘密鍵]]([[プライベート鍵]])を管理するための | + | [[GNU Privacy Guard]]は、プロトコル依存しない[[秘密鍵]]([[プライベート鍵]])を管理するための'''デーモン'''です。[[gpg]]や'''gpgsm'''などのユーティリティから使用されます。 |
− | [[gpg-agent]]は、[[gpg]], | + | [[gpg-agent]]は、[[gpg]], '''gpgsm''', '''gpgconf''', '''gpg-connect-agent'''によるオンデマンドでたいてい起動されます。だから、手動で起動する必要はありません。[[Secure Shell]] エージェント([[ssh-agent]]のように)として使用した場合は、以下のようにエージェントを起動できます。 |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
gpg-connect-agent /bye | gpg-connect-agent /bye | ||
行24: | 行24: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
このコードは、ユーザーセッションで一度だけエージェントを起動します。 | このコードは、ユーザーセッションで一度だけエージェントを起動します。 | ||
− | この例では、オプションナルなサポートである[[Secure Shell]] | + | この例では、オプションナルなサポートである[[Secure Shell]]エージェントが有効になっていて、HOMEディレクトリのファイルにエージェントの情報があります。あなたがテストするときに、引数なしにpgp-agentが起動されているかもしれません。そのような場合に、テストは、[[競合状態]](レースコンディション)になります。 |
次のスクリプトは、それぞれのインタラクティブのセッションで実行される必要があります。 | 次のスクリプトは、それぞれのインタラクティブのセッションで実行される必要があります。 | ||
行40: | 行40: | ||
export GPG_TTY | export GPG_TTY | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== インストール == | == インストール == | ||
{{ports|/usr/ports/security/gnupg|gnupg}} | {{ports|/usr/ports/security/gnupg|gnupg}} | ||
行86: | 行85: | ||
{{gpg}} | {{gpg}} | ||
* [[ssh-agent]] ([[ssh]]) | * [[ssh-agent]] ([[ssh]]) | ||
− | + | <!-- vim: filetype=mediawiki | |
− | <!-- vim: filetype=mediawiki --> | + | --> |
2015年9月22日 (火) 15:16時点における最新版
gpg-agent とは、GnuPGの秘密鍵管理のエージェントプログラムです。
読み方
- gpg-agent
- じーぴーじ えーじぇんと
概要
GNU Privacy Guardは、プロトコル依存しない秘密鍵(プライベート鍵)を管理するためのデーモンです。gpgやgpgsmなどのユーティリティから使用されます。
gpg-agentは、gpg, gpgsm, gpgconf, gpg-connect-agentによるオンデマンドでたいてい起動されます。だから、手動で起動する必要はありません。Secure Shell エージェント(ssh-agentのように)として使用した場合は、以下のようにエージェントを起動できます。
gpg-connect-agent /bye
~/.xsession ファイルからよくこのように実行されます。
eval $(gpg-agent --daemon)
X サーバーを使用しない場合には、シェルの設定ファイル .profile, .bash_profile, .login から gpg-agentを起動します。gpg-agentの複数のインスタンを実行するべきではないので、コミュニケーションパラメーターをクライアントに知らせるために環境変数を使用します。実行されているエージェントをテストするために、環境変数をファイルに書き込んでおきます。
gpg-agent --daemon --enable-ssh-support \ --write-env-file "${HOME}/.gpg-agent-info"
このコードは、ユーザーセッションで一度だけエージェントを起動します。 この例では、オプションナルなサポートであるSecure Shellエージェントが有効になっていて、HOMEディレクトリのファイルにエージェントの情報があります。あなたがテストするときに、引数なしにpgp-agentが起動されているかもしれません。そのような場合に、テストは、競合状態(レースコンディション)になります。
次のスクリプトは、それぞれのインタラクティブのセッションで実行される必要があります。
if [ -f "${HOME}/.gpg-agent-info" ]; then . "${HOME}/.gpg-agent-info" export GPG_AGENT_INFO export SSH_AUTH_SOCK fi
Secure Shellで使用しない場合は、最後の2行の export ステートメントは不要です。 .bashrc などの初期化ファイルで以下の行を追加しておく必要があります。
GPG_TTY=$(tty) export GPG_TTY
インストール
FreeBSDにインストールする場合
ports コレクションからインストールする場合
cd /usr/ports/security/gnupg sudo make install clean
pkgコマンドでインストールする場合
sudo pkg install gnupg
portmasterコマンドでインストールする場合
sudo portmaster -y -d /usr/ports/security/gnupg
portinstallコマンドでインストールする場合
sudo portinstall /usr/ports/security/gnupg
使い方
% gpg-agent --help gpg-agent (GnuPG) 2.0.18 libgcrypt 1.5.0 Copyright (C) 2011 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. Syntax: gpg-agent [options] [command [args]] Secret key management for GnuPG Options: --server run in server mode (foreground) --daemon run in daemon mode (background) -v, --verbose verbose -q, --quiet be somewhat more quiet -s, --sh sh-style command output -c, --csh csh-style command output --options FILE read options from FILE --no-detach do not detach from the console --no-grab do not grab keyboard and mouse --log-file use a log file for the server --use-standard-socket use a standard location for the socket --pinentry-program PGM use PGM as the PIN-Entry program --scdaemon-program PGM use PGM as the SCdaemon program --disable-scdaemon do not use the SCdaemon --keep-tty ignore requests to change the TTY --keep-display ignore requests to change the X display --default-cache-ttl N expire cached PINs after N seconds --ignore-cache-for-signing do not use the PIN cache when signing --allow-mark-trusted allow clients to mark keys as "trusted" --allow-preset-passphrase allow presetting passphrase --enable-ssh-support enable ssh-agent emulation --write-env-file FILE write environment settings also to FILE Please report bugs to <http://bugs.gnupg.org>.
関連項目
- gpg-agent
- Gpg4win
- Pretty Good Privacy
- GNU Privacy Guard
- 公開鍵暗号
- デジタル署名
- 暗号
- gnupg
- gpg
- gpgsm
- gpgconf
- gpg-connect-agent
- pinentry-curses
- ssh-agent (ssh)