标签: gpg-agent

gpg-agent 忽略缓存配置 macOS Sierra

我通过自制程序安装了 gpg。

我有一个 ~/gpg-agent.conf 文件如下:

allow-preset-passphrase
default-cache-ttl 1209600
max-cache-ttl 1209600
max-cache-ttl-ssh 1209600
Run Code Online (Sandbox Code Playgroud)

我的 .bashrc (实际上:)~/.bash_it/custom/gpg-agent.bash

export GPG_TTY=$(tty)

[ -f ~/.gpg-agent-info ] && source ~/.gpg-agent-info
if [ -S "${GPG_AGENT_INFO%%:*}" ]; then
  export GPG_AGENT_INFO
else
  eval $( /usr/local/bin/gpg-agent --daemon --write-env-file ~/.gpg-agent-info )
fi
Run Code Online (Sandbox Code Playgroud)

我的假设是这样可以使我每 2 周只被要求输入一次密码,但仍然每 5 分钟被要求输入一次。gpg-agent --gpgconf-list显示正在使用的实际值?

$ gpg-agent --gpgconf-list
gpgconf-gpg-agent.conf:16:"/Users/notbrain/.gnupg/gpg-agent.conf
verbose:8:
quiet:8:
debug-level:24:"none:
log-file:8:
default-cache-ttl:24:600:
default-cache-ttl-ssh:24:1800:
max-cache-ttl:24:7200:
max-cache-ttl-ssh:24:7200:
enforce-passphrase-constraints:8:
min-passphrase-len:24:8:
min-passphrase-nonalpha:24:1:
check-passphrase-pattern:24:
max-passphrase-days:24:0:
enable-passphrase-history:8:
no-grab:8:
ignore-cache-for-signing:8:
no-allow-mark-trusted:8:
no-allow-external-cache:8:
disable-scdaemon:8:
enable-ssh-support:0:
Run Code Online (Sandbox Code Playgroud)

为什么我的 gpg-agent.conf 文件没有被遵守?我缺少什么?通过自制软件安装: …

encryption bash gnupg gpg-agent

5
推荐指数
1
解决办法
2718
查看次数

Windows下的gpg-agent作为git bash的SSH Agent

gpg-agent 具有选项“--enable-ssh-support”和“--enable-putty-support”,允许它使用它作为众所周知的 ssh-agent 的替代品。

我一直在努力弄清楚如何在 Windows 和 git-bash 中实现这项工作。(请不要建议我使用 putty,因为我有很多脚本和其他程序需要在我的 windows pc 机器上使用 git bash 和 openssh,包括 PHPStorm 等)

我的第一次尝试是enable-ssh-supportC:\Users\[user]\AppData\Roaming\gnupg\gpg-agent.conf文件中有一行,

export SSH_AUTH_SOCK=/c/users/[user]/AppData/Roaming/gnupg/S.gpg-agent.ssh/c/users/[user]/.bash_profile文件中行。(我还创建了一个SSH_AUTH_SOCK带有值的 Windows 环境变量C:\Users\[username]\AppData\Roaming\gnupg\S.gpg-agent.ssh

我在密钥环中有我的 GPG 秘密密钥,带有启用身份验证和加密的子密钥。

并且我在C:\Users\[user]\AppData\Roaming\gnupg\sshcontrol文件中添加了启用身份验证的子密钥的 keygrip 。

由于 GnuPG 2.2.4 带有--export-ssh-key选项,所以我不需要monkeysphere将 GPG 密钥转换为 OpenSSH 格式。所以我导出了我的公钥,并将它放在具有正确权限的远程 Linux 机器中的 authorized_keys 文件中(使用腻子在另一台计算机上测试)。

然后我执行: gpg-connect-agent killagent /byegpg-connect-agent /byePowerShell中(并开始在后台运行的GPG代理并创建了S.gpg-agent.sshSOCK文件)。

然后尝试以常规方式 ssh 进入服务器。

它给了我一个错误。

然后我尝试启用腻子支持(enable-putty-support行中gpg-agent.conf允许您启用腻子支持。

您还需要在 …

ssh git gpg4win gnupg gpg-agent

5
推荐指数
1
解决办法
5030
查看次数

如何配置 PuTTY + gpg-agent 连接 SSH Linux 服务器

我有一个用 Kleopatra 生成的密钥对(来自 Gpg4win 3.0 套件)。我已将公钥转换为 RSA ssh 密钥,并将其添加到 Linux 机器中的 authorized_keys 文件中。

在 Windows 机器上,我将gpg-agent.conf文件配置为:

enable-putty-support
debug-level guru
log-file C:/Users/myusername/log.txt
disable-scdaemon
Run Code Online (Sandbox Code Playgroud)

但是,当我打开 PuTTY 并尝试连接到服务器时,出现错误:

"Disconnected: No supported authentication methods available (server sent: publickey)"
Run Code Online (Sandbox Code Playgroud)

问题是:如何使用 Windows 机器上的 Putty 使用 gpg 密钥对通过 SSH 连接到 Linux 机器?我知道 gpg-agent 模拟Pageant代理,因此它应该使用内存上的 gpg 私钥将加密的字符串提供给 PuTTY。这是正确的吗?还是我误解了这里的一切?

putty gnupg gpg-agent

5
推荐指数
1
解决办法
2588
查看次数

如何设置默认的 GPG 加密密钥?

假设我大部分时间只使用一个加密密钥。

如何设置默认加密密钥以避免在加密命令中提及它

换句话说,我想要这个命令:

gpg -e
Run Code Online (Sandbox Code Playgroud)

等同于接收者的命令

gpg -e -r reciever@mail.edu
Run Code Online (Sandbox Code Playgroud)

gpgpu gpg4win gnupg gpg-agent

3
推荐指数
1
解决办法
4427
查看次数

在 Raspbian Buster 上使用 gpg 2.2.12 找不到 gpg.conf 和 gpg-agent.conf

我正在使用 gpg 加密我的电子邮件密码,并将其传递给 msmtp 以发送电子邮件。

我最初运行是gpg --full-gen-key为了生成一对密钥。在此过程中,它要求我输入密码。该过程已成功完成。

其次,我通过运行加密了我的电子邮件密码gpg --encrypt --output ~/.msmtp/msmtp-myaccount-pass.gpg --recipient my@gpg-email -

我配置了 msmtp 来使用passwordeval并尝试发送测试电子邮件。发送时,gpg 要求我输入密码。至此,邮件已成功发送。

现在,我想从这个无头树莓派服务器向自己发送系统报告电子邮件,为了做到这一点,我正在构建一个将由cron. 鉴于服务器将无人值守,因此需要缓存密码,我知道最安全的方法是使用gpg-agent.

为了使用gpg-agent,我需要编辑~/.gnupg/gpg.conf和添加use-agent。我还需要编辑gpg-agent.conf以自定义缓存期限。这就是我已经走到了死胡同的地方。

我找不到该文件gpg-conf,也找不到该文件gpg-agent.conf

当我列出.gnupg目录时,我得到:

drwx------ 2 pi pi 4096 Apr  5 22:11 crls.d
drwx------ 2 pi pi 4096 Apr  5 22:15 openpgp-revocs.d
drwx------ 2 pi pi 4096 Apr  5 22:15 private-keys-v1.d
-rw-r--r-- 1 pi pi 2475 Apr  5 …
Run Code Online (Sandbox Code Playgroud)

msmtp gnupg raspberry-pi raspbian gpg-agent

3
推荐指数
1
解决办法
6912
查看次数

gpg-preset-passphrase:缓存密码失败:不支持

我正在构建一个脚本,用于msmtp通过电子邮件向自己发送定期系统报告。我曾经gpg用来加密我的电子邮件密码并password-evalmsmtp.conf.

我成功发送了一封测试电子邮件,但在此过程中,gpg要求我提供用于创建密钥的密码gpg --full-generate-key

鉴于该脚本将在无人值守的情况下运行,我需要使用 缓存密码gpg-preset-passphrase。但是,当我/usr/lib/gnupg2/gpg-preset-passphrase --preset <keygrip>使用 运行 where keygrip is returned时gpg --list-keys --with-keygrip,我收到错误消息:gpg-preset-passphrase: caching passphrase failed: Not supported

作为参考,我gpg 2.2.12在运行 Raspbian Buster 的 Raspberry Pi 2 Model B 上使用。

请协助。

security gnupg raspberry-pi raspbian gpg-agent

3
推荐指数
1
解决办法
4191
查看次数

标签 统计

gnupg ×6

gpg-agent ×6

gpg4win ×2

raspberry-pi ×2

raspbian ×2

bash ×1

encryption ×1

git ×1

gpgpu ×1

msmtp ×1

putty ×1

security ×1

ssh ×1