5 个版本
0.2.3 | 2022 年 8 月 29 日 |
---|---|
0.2.2 | 2022 年 8 月 23 日 |
0.2.1 | 2022 年 8 月 19 日 |
0.2.0 | 2022 年 8 月 18 日 |
0.1.0 | 2022 年 8 月 15 日 |
#1211 in 密码学
12KB
180 行
gluon-mesh-vpn-key-translate
将 fastd 转换为 WireGuard 密钥。
用法
公钥转换
gluon-mesh-vpn-key-translate 12760ee9088d7b737a11c21c587ab73b64be3c2834eaef6185ec66c3c05c1d78
将提供的 fastd 公钥转换为对应的 WireGuard 密钥
Gluon+LYDa2ib6EDnWlRELwrst1s1Ut7WKNR5LMI83c=
从 stdin
读取同样有效,并提供相同的输出。
echo 12760ee9088d7b737a11c21c587ab73b64be3c2834eaef6185ec66c3c05c1d78 | gluon-mesh-vpn-key-translate
由于 gluon-mesh-vpn-key-translate
主要预期在 Freifunk 服务器上运行,该服务器将转换路由器的公钥,因此默认为公钥转换。
私钥转换
为了转换私钥,请提供 --private
标志或其别名 --secret
。
小心:不支持使用私钥作为 gluon-mesh-vpn-key-translate
的参数调用,以防止将私钥存储在 shell 历史记录中。请改用 stdin
。
cat fastd_secret | gluon-mesh-vpn-key-translate --private
aMLMgPlQVLbt1wuzVRQq3FTZAsaX/hztyJjfcbeeT3Y=
--if
和 --of
除了使用 stdin
和 stdout
之外,可以使用选项 --if
和 --of
指定输入和输出文件,每个选项都接受文件路径作为参数。要转换公钥[^2]
gluon-mesh-vpn-key-translate --if fastd_public
Gluon+LYDa2ib6EDnWlRELwrst1s1Ut7WKNR5LMI83c=
注意:建议私钥只能由所有者读取和写入。建议在存储密钥之前设置适当的 umask
。
mkdir -p generated_keys
(umask 0077; gluon-mesh-vpn-key-translate --private --if fastd_secret --of generated_keys/wg_secret.key)
ls -l generated_keys/
total 4
-rw------- 1 user user 45 Jan 01 00:00 wg_secret.key
此外
--version
输出当前版本[^3]
--help
提供简短的使用信息。
[^1]: fastd_secret
是一个包含示例私钥 68c2cc80f95054b6edd70bb355142adc54d902c697fe1cedc898df71b79e4f76
的文件。
[^2]: fastd_public
是一个包含原始十六进制字符串或 fastd-config-form 的文件: key "12760ee9088d7b737a11c21c587ab73b64be3c2834eaef6185ec66c3c05c1d78";
。
[^3]: 此项目遵循 SemVer,并且不会在主版本号增加之前引入不兼容的更改。
依赖项
~7-18MB
~249K SLoC