From 4cb5c48c250191af1c0dae9a5c22f164afd61d3a Mon Sep 17 00:00:00 2001 From: LY <51789698+Young-Lord@users.noreply.github.com> Date: Thu, 14 Dec 2023 20:14:18 +0800 Subject: [PATCH] pgp stuff --- ...06\351\222\237\351\200\237\351\200\232.md" | 55 +++++++++++++++---- about.md | 18 +++--- pgp.asc | 29 ++++++++++ 3 files changed, 83 insertions(+), 19 deletions(-) create mode 100644 pgp.asc diff --git "a/_posts/2023-11-30-Ventoy_Arch_Linux_To_Go_\345\215\201\345\210\206\351\222\237\351\200\237\351\200\232.md" "b/_posts/2023-11-30-Ventoy_Arch_Linux_To_Go_\345\215\201\345\210\206\351\222\237\351\200\237\351\200\232.md" index 17b4c39..8bad806 100644 --- "a/_posts/2023-11-30-Ventoy_Arch_Linux_To_Go_\345\215\201\345\210\206\351\222\237\351\200\237\351\200\232.md" +++ "b/_posts/2023-11-30-Ventoy_Arch_Linux_To_Go_\345\215\201\345\210\206\351\222\237\351\200\237\351\200\232.md" @@ -7,7 +7,7 @@ last_modified_at: 2023-12-2 ## 前言 -最近不是[Canokey](https://item.taobao.com/item.htm?id=664914723920)有货了嘛,想买一个来玩玩gpg。gpg公钥显然需要离线生成,刚好几个月前参加科苗的时候认识了一个用Ventoy跑Fedora的人,于是就想到了用Ventoy做一个Arch Linux To Go。 +最近不是[CanoKey](https://item.taobao.com/item.htm?id=664914723920)有货了嘛,想买一个来玩玩gpg。gpg公钥显然需要离线生成,刚好几个月前参加科苗的时候认识了一个用Ventoy跑Fedora的人,于是就想到了用Ventoy做一个Arch Linux To Go。 中途出了一大堆问题,于是水了这篇博文以防后人踩坑。 @@ -24,7 +24,7 @@ last_modified_at: 2023-12-2 启动VirtualBox,新建个虚拟机,配置时有两点需要注意的: - 勾选“启用 EFI” -- 创建虚拟硬盘时选择“预先分配全部空间”,如果只是给Canokey用的话8GB就够了(这个以后可以扩容,) +- 创建虚拟硬盘时选择“预先分配全部空间”,如果只是给CanoKey用的话8GB就够了(这个以后可以扩容,) 开机,启动`archinstall`,我的配置如下(默认值省略): @@ -55,7 +55,7 @@ last_modified_at: 2023-12-2 此时可以从AUR装个`clash-for-windows-bin`来替代之前自己丢进去的版本(注意安装过程必须使用代理)。 -安装一系列基础包:`yay -S --needed curl wget nano vim p7zip which lvm2 git noto-fonts-cjk` +安装一系列基础包:`yay -S --needed curl wget nano vim p7zip which lvm2 git noto-fonts-cjk ntfs3g` 关于网络连接,使用`network-manager-applet`即可,参考[官方教程](https://wiki.archlinux.org/title/NetworkManager#nm-applet)可以在任务栏管理网络连接;如果不装,也可以使用`nmcli`与`nmtui`管理网络连接。 @@ -131,10 +131,10 @@ sudo bash ./vtoyboot.sh 那几个`Possibly missing firmware for module:`一般没有影响,绝大部分固件是用不到的,不过如果你想隐藏警告的话可以自行从AUR安装`mkinitcpio-firmware`。 -### Canokey相关 +### CanoKey相关 ```shell -yay -S --needed openssl gnupg ungoogled-chromium-bin python-pipx yubico-piv-tool swig opensc kleopatra canokey-usbip-git +yay -S --needed openssl gnupg ungoogled-chromium-bin python-pipx yubico-piv-tool swig opensc kleopatra canokey-usbip-git pcsclite pcsc-tools veracrypt pipx ensurepath pipx install yubikey-manager pipx install canokey-manager @@ -142,24 +142,57 @@ pipx install twisted pipx install ipython sudo modprobe vhci-hcd # 手动加载usbip内核模块 echo vhci-hcd | sudo tee /etc/modules-load.d/vhci-hcd.conf # 开机自动加载usbip内核模块 -# canokey-usbip 相关,用于模拟 Canokey + +## 模拟 CanoKey 的 canokey-usbip 相关 # canokey-usbip /tmp/canokey-file 3240 true & # sudo usbip attach -r localhost -b 1-1.1 -# 允许非 root 用户访问 USB 设备 +## 允许非 root 用户访问 USB 设备 # /etc/udev/rules.d/69-canokeys.rules -# 按照Canokey官方教程 https://docs.canokeys.org/userguide/setup/#udev 配置,最后一行取消注释 +# 按照CanoKey官方教程 https://docs.canokeys.org/userguide/setup/#udev 配置,最后一行取消注释 # 完成后运行 sudo udevadm control --reload-rules && sudo udevadm trigger # 重启后生效 -# yay -S --needed remmina freerdp 用于测试RDP共享Canokey +## 用于测试RDP共享CanoKey +# yay -S --needed remmina freerdp + +## pcsc 相关,用于ckman等软件连接CanoKey +sudo systemctl enable pcscd.socket +sudo systemctl enable pcscd +# 注意,这个会导致gnupg无法配置智能卡,解决方案以下两种任选一种即可。 +# +# 第一种方案:使gnupg使用pcscd(我仅用了这个就可以了,完整内容可以参考下面的Arch Wiki链接) +# echo disable-ccid >> $HOME/.gnupg/scdaemon.conf +# gpg-connect-agent 'SCD KILLSCD' /bye +# 可能需要:使gnupg支持pcscd共享访问 +# echo pcsc-shared >> $HOME/.gnupg/scdaemon.conf +# gpg-connect-agent 'SCD KILLSCD' /bye: +# +# 第二种方案:停止pcscd(不推荐) +# sudo systemctl stop pcscd.socket +# sudo systemctl stop pcscd +# +# 完成任意一种方案后,重新插入CanoKey。 +# 参考资料:https://wiki.archlinux.org/title/GnuPG#GnuPG_with_pcscd_(PCSC_Lite) +# 参考资料: https://support.nitrokey.com/t/nk3-mini-gpg-selecting-card-failed-no-such-device-gpg-card-setup/5057/7 + +## 如果浏览器无法连接到CanoKey,可以尝试以下方法 +# killall gpg gpg-agent ssh-agent pcscd +# sudo systemctl stop pcscd.socket +# sudo systemctl stop pcscd + +## 关于密钥冷备份: +# 使用 `sudo mkdir /mnt/cold && sudo mount -t ntfs /dev/sdb3 /mnt/cold`挂载外接设备,这里可以直接挂载Ventoy安装时位于分区表尾部的保留空间。 +# 建议使用 VeraCrypt 进行加密。 +# 使用 gpg --home /mnt/veracrypt/.gnupg xxx 进行操作。注意`--home`必须是第一个参数。 +# 这里可能需要适当进行`killall gpg-agent`等操作防止奇怪的bug。 ``` -关于Web Console,[新版](https://console.canokeys.org/)可以直接作为Chrome PWA应用安装,[旧版](https://console-legacy.canokeys.org/)可以使用我打包过的离线运行(`yay -S canokey-console-legacy`)。 +关于Web Console,[新版](https://console.canokeys.org/)(可能)可以直接作为Chrome PWA应用安装,[旧版](https://console-legacy.canokeys.org/)可以使用我打包过的离线运行(`yay -S canokey-console-legacy`)。 关于`gpg-agent`,不用的时候记得kill掉以防止占用USB设备。 -记得使用`shred -u -v`和`ramfs`保证文件私密性。 +记得使用`shred -u -v`保证文件私密性。 ## 丢进Ventoy diff --git a/about.md b/about.md index e88e4bc..e41f07e 100644 --- a/about.md +++ b/about.md @@ -24,6 +24,8 @@ Young-Lord 仅为一个曾用名字,不含任何意义。LY 与它无关。指 自由软件支持者,正在试图迁移到 GNU/Linux 系统(BTW I Use Arch) +PGP: `69D6E8DCB9E4117864368CA0EE4FB075119CE61F`,也可以在[这里](/pgp.asc)下载。 + a11y(无障碍)与i18n(国际化)推动者,向本站使用的评论系统Cusdis提供过无障碍改进,向Termux Monet、Coursera、K-9 Mail等项目提交过翻译。 比较喜欢的游戏有 史丹利的寓言/蔚蓝/请出示文件/传送门/MC/樱之诗 等,大多为独立游戏,有少量gal。网游基本没碰过。 @@ -117,14 +119,14 @@ function ad_switch() { 另外,最好买二手的。 -- YubiKey 5 NFC 或 [CanoKey Pigeon](https://item.taobao.com/item.htm?id=664914723920) -- ChatGPT账号 -- Redmi K60 至尊版 16GB+1TB(或24GB+1TB) -- 树莓派/菠萝派 或类似的设备 -- Wallpaper Engine -- Repainter -- 安卓智能手表(具体品牌/型号随意) -- 西数 My Passport 随行SSD 1TB(或更大) +- [x] YubiKey 5 NFC 或 [CanoKey Pigeon](https://item.taobao.com/item.htm?id=664914723920) +- [x] ChatGPT账号 +- [ ] Redmi K60 至尊版 16GB+1TB(或24GB+1TB) +- [ ] 树莓派/菠萝派 或类似的设备 +- [ ] Wallpaper Engine +- [ ] Repainter +- [ ] 安卓智能手表(具体品牌/型号随意) +- [ ] 西数 My Passport 随行SSD 1TB(或更大) ## 隐私政策 diff --git a/pgp.asc b/pgp.asc new file mode 100644 index 0000000..ed7d54c --- /dev/null +++ b/pgp.asc @@ -0,0 +1,29 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEZXqWtRYJKwYBBAHaRw8BAQdAwXLEKu41uRWxF7VyfKvLEeD9IWMNbT4OKigh +q1XzD4K0JE5pa28gKENhbm9LZXkgdmVyLikgPGx5LW5pa29AcXEuY29tPoiTBBMW +CgA7FiEEadbo3LnkEXhkNoyg7k+wdRGc5h8FAmV6lrUCGwMFCwkIBwICIgIGFQoJ +CAsCBBYCAwECHgcCF4AACgkQ7k+wdRGc5h9SrgEAlwz3+BgJgOG+cxh8U2BEbaiO +424C8238/UQcv3D2+G0BALVpmR+43fSMH8TDr0W8FXrjkH81pVZXGNCVOHPI35YA +uDgEZXqWtRIKKwYBBAGXVQEFAQEHQJSuSXAkam7aDWfikAwDWAFHsykGjSgCDu8f +sW434YJeAwEIB4h4BBgWCgAgFiEEadbo3LnkEXhkNoyg7k+wdRGc5h8FAmV6lrUC +GwwACgkQ7k+wdRGc5h/IEgD/Q3gIGLFzFtPeH60BNtoXikxXblyf6mVTBX/XIFeM +1yEA/0Ha5HEBdVBfCMxDZWc+CJKiP5o4sX8CrTAxENUk1lADuDMEZXqXKRYJKwYB +BAHaRw8BAQdAt7W1aV6OuopRXcvRt1cSr6M8wJCFyLlGZZRJL+YttS6I7wQYFgoA +IBYhBGnW6Ny55BF4ZDaMoO5PsHURnOYfBQJlepcpAhsCAIEJEO5PsHURnOYfdiAE +GRYKAB0WIQTy6eIoD7mRGDp8lwrLOXXsw1A8sgUCZXqXKQAKCRDLOXXsw1A8sgBZ +AP4nHp8p/uuELTpUGR/9DSdjLve4xPMjqsMOl0hvVXBMGQEAsKRGHyO0aHH+lcW+ +D1AdxhkDpbZrshSy1ca1LQ2nAgXIDgD/fZyIj33FiLA2iKmBu6DqXlLSen0/YXYO +6LLLrdntbSUBALDnfXDi6aePHfTPwzfLPN36+vl2SnfmdhnL5Vc6uZIKuDgEZXqX +QxIKKwYBBAGXVQEFAQEHQC721MNe+LqI+phAH1m0DOTYdjkQgro7g7jWJGGcurx7 +AwEIB4h4BBgWCgAgFiEEadbo3LnkEXhkNoyg7k+wdRGc5h8FAmV6l0MCGwwACgkQ +7k+wdRGc5h//FwEAiB0+tf38ubPLxDq7oo/MOUIjJk+MnRP3ZGyqqU89K8oBAMSe +unxh59UfMsEVrCyyVA5QgKiBxQ5gyZjT/4b27GsKuDMEZXqXUBYJKwYBBAHaRw8B +AQdALIi4GNTcOFxApX6I6tOxLYqzrSBjdcj++7/7jE0xUg2I7wQYFgoAIBYhBGnW +6Ny55BF4ZDaMoO5PsHURnOYfBQJlepdQAhsCAIEJEO5PsHURnOYfdiAEGRYKAB0W +IQSR9dkgR7AI5YBvMvSFGjZsC5qr2wUCZXqXUAAKCRCFGjZsC5qr2yk+AP9tbT3W +hzO/FFH1SQ6WGaZkbEW4faDZ+lfN62BlVqbx3QEA75yhYJ8dEEFZgjNwVRHH+b6O +6aFuTKKjXuUDsfKyLwXzfQD+M0ck/wyITRVWggpNjDwOqVwxc/vqkNZopDBL5EnX +nwkA/Ar3Z9oqsMNIAdL6MFGn0fjlA8BTM2lKu+g6P0KkjTAN +=yYFK +-----END PGP PUBLIC KEY BLOCK-----