成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Fedora 中使用 Gnu PG 代理

系統 Linux
有時使用某個應用程序的時候,你需要非常頻繁地使用你的 Gnu PG 密鑰,但是出于安全的目的,卻不能讓緩存的口令(密碼)在多個程序之間交叉使用。本文就詳細談談如何設置 Gnu PG 的代理。

有時使用某個應用程序的時候,你需要非常頻繁地使用你的 Gnu PG 密鑰,這就意味著你需要多次輸入密匙解密口令。相當多的應用程序支持將口令(密碼)緩存起來方便用戶使用。但是出于安全的目的,卻不能讓緩存的口令(密碼)在多個程序之間交叉使用。不過,Gnu PG 提供了很安全的密碼緩存方式,也即 Gnu PG 的代理 gpg-agent。通過它,多個應用程序可以共用 Gnu PG 密匙的解密口令。如果你在使用某個應用程序的時候輸入了密匙解密口令,其他應用程序可以在一段時間內不用再請求輸入口令也能解密 Gnu PG 密鑰。下面就來談談如何設置 Gnu PG 的代理。

盡管我們不談論 Gnu PG 公匙、密匙的生成與使用過程,但是使用 Gnu PG,***步當然是安裝它:

$ sudo yum install gnupg

通常,Gnu PG 程序本身就有代理功能。不過在圖形界面下,Gnu PG 的代理功能需要用 pinentry 來開啟,所以需要先在 Linux 中安裝 pinentry 程序。

$ sudo yum install pinentry-gtk

現在創建 gpg-agent 的配置文件:

$ cat > ~/.gnupg/gpg-agent.conf << EOF 
# PIN entry Program
#pinentry-program /usr/bin/pinentry-curses
#pinentry-program /usr/bin/pinentry-qt4
#pinentry-program /usr/bin/pinentry-kwallet
pinentry-program /usr/bin/pinentry-gtk-2
# Keyboard control
no-grab
# Cache timeout: 3 hours
default-cache-ttl 10800
#default-cache-ttl-ssh 10800
EOF

這個配置指明了 pinentry 程序、口令緩存的超時時間等等。接著激活 Gnu PG 的代理能力,這只要使用下面這一行即可

$ echo "gpg-agent" >> ~/.gnupg/gpg.conf

這一行告訴 Gnu PG 在需要密碼時使用 gpg-agent,但前提是需要 gpg-agent 事先已經工作。運行 gpg-agent 的方法很簡單:

$ eval $(gpg-agent --daemon)

停止 gpg-agent 的方法是:

$ pkill -u "$USER" gpg-agent

為了讓 gpg-agent 的使用更加方便,我們自然希望它能夠隨機器啟動而自動工作,這可通過在 /etc/profile.d/ 中作如下的配置來實現

$ sudo cat > /etc/profile.d/gpg-agent.sh << EOF
#!/bin/sh
envfile="${HOME}/.gnupg/gpg-agent.env"
if test -f "$envfile" && kill -0 $(grep GPG_AGENT_INFO “$envfile" |cut -d: -f 2) 2>/dev/null; then
     eval "$(cat :$envfile")"
else
     eval "$(gpg-agent --daemon --write-env-file "$envfile")"
fi
export GPG_AGENT_INFO # the env file does not contain the export statement
EOF
$ sudo chmod 755 /etc/profile.d/gpg-agent.sh

以上的設置使得每位登錄 Linux 的用戶自動啟用 gpg-agent。一般而言,一個會話只允許開啟一個 gpg-agent 進程。關于這一點,我們可以從上面的配置中可以看到。如果我們只希望為某個用戶啟用 gpg-agent,可在 ~/.xprofile、~/.xsession 或者 ~/.xinitrc 中添加下面這一行,這取決于我們使用的圖形界面的啟動方式,例如:

$ echo 'eval "$(gpg-agent --daemon)"' >> ~/.xprofile

如果用戶不使用圖形界面的話,也可以將上面這一行寫入 ~/.bash_profile。通過前面這些設置便能自動啟動 gpg-agent 了。關于 gpg-agent 的更多設置,請自行參看 gpg-agent 的手冊頁

$ man gpg-agent

實際上,從手冊頁中可以看到,gpg-agent 還可以作為 ssh-agent,這只需要在命令行 gpg-agent 中增加 --enable-ssh-support 選項即可。下面給出一個自動作為 ssh-agent 與 gpg-agent 的配置:

$ cat >> ~/.bash_profile << EOF
#!/bin/sh
# Start the GnuPG agent and enable OpenSSH agent emulation
gnupginf="${HOME}/.gpg-agent-info"
if pgrep -u "${USER}" gpg-agent >/dev/null 2>&1; then
    eval `cat $gnupginf`
    eval `cut -d= -f1 $gnupginf | xargs echo export`
else
    eval `gpg-agent -s --enable-ssh-support --daemon`
fi
EOF

值得指出的是,Gnome 桌面自身提供的 Gnome-keyring 也整合了 gpg-agent 功能,這取決于 Gnome-keyring 包編譯過程有沒有開啟 gpg-agent 選項。如果我們想禁用 Gnome-keyring 的 gpg-agent 功能,除去修改源碼的編譯選項之外,還可作如下操作來實現

$ cp /etc/xdg/autostart/gnome-keyring-gpg.desktop ~/.config/autostart/gnome-keyring-gpg.desktop
$ echo "X-GNOME-Autostart-enabled=false" >> ~/.config/autostart/gnome-keyring-gpg.desktop

如果只是想臨時禁用 Gnome-keyring,可執行

$ sudo kill $GNOME_KEYRING_PID
責任編輯:黃丹 來源: is-Programmer
相關推薦

2019-06-27 14:00:13

edoraMycroft開源

2019-12-26 15:45:23

FedoraLinuxCockpit

2009-12-16 13:11:13

Fedora操作系統

2009-06-22 15:10:00

java 編程AOP

2020-08-25 19:56:43

MinGWWindowsGNU

2021-05-13 12:46:54

GNU ScreenLinux

2011-03-21 09:17:06

NagiosFedora

2019-08-20 13:22:36

LVMFedoraLinux

2020-03-02 18:56:03

PythonGNU Octave編程語言

2010-01-22 10:56:01

fedorarar

2021-07-25 10:34:17

FedoraPodmanLinux

2021-04-12 17:53:22

Debuginfod服務器Fedora 35

2009-12-15 13:06:30

Fedora掛載

2024-03-14 10:43:23

.NET CoreRedis數據庫

2010-11-03 10:01:32

Fedora 14截圖

2010-01-22 11:06:03

GNUkFreeBSDLinux

2011-06-07 10:15:38

GNULinux

2010-12-12 11:27:00

PGP使用指南

2009-12-17 13:25:38

Fedora Core

2010-01-11 09:12:15

Fedora LAMP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 69av网 | 中文字幕韩在线第一页 | 亚洲欧美第一视频 | 久久久免费电影 | 中文字幕亚洲专区 | 亚洲成人av | 孰女乱色一区二区三区 | 青草久久免费视频 | 国产综合在线视频 | 国产综合在线视频 | 在线精品一区二区 | 国产激情视频 | 久久久久久久久久久久久久av | 国产一区二| 精品一区二区三区四区五区 | 国产成人精品高清久久 | 国产精品美女www | 久久久久国产一级毛片高清网站 | 欧美一级高潮片免费的 | 成人精品视频在线观看 | 亚洲精品乱码久久久久久按摩观 | 涩涩视频在线观看 | 一区二区av| 欧美三级视频在线观看 | 国产一区在线免费观看 | 亚洲欧美中文日韩在线v日本 | 午夜视频免费在线 | 黄色欧美大片 | 精品一区二区三区四区五区 | 久久久久久亚洲 | 中文字幕国产精品 | 日韩精品久久一区二区三区 | 国产探花在线观看视频 | 日韩精品一区二区三区四区视频 | 亚洲日本中文 | 五月婷婷导航 | 久在线视频播放免费视频 | 韩日在线视频 | 综合视频在线 | 99re热精品视频 | 日日综合|