我在Ubuntu服务器上创建了一个PGP主密钥和一个Authenticate子密钥。对于仍然需要创建的用户testUserX,我希望他(testUserX)使用authenticate子项登录该服务器。
sec rsa1024/1CA56EBE6E0D128A
created: 2020-03-27 expires: never usage: C
trust: ultimate validity: ultimate
ssb rsa1024/7D9558836D7E9E72
created: 2020-03-27 expires: never usage: A
[ultimate] (1). admin <admin-test@example.com>
我试图按照我在互联网上找到的一些教程进行操作,但是到目前为止,它们都没有起作用。我有一个Ubuntu 18.04服务器,我的gpg(GnuPG)版本是2.2.4。
有人可以帮我怎么做吗?它必须相当简单,但是我无法对其进行管理。谢谢。
编辑:也许我应该详细说明我到目前为止所做的事情。
在Ubuntu服务器上,我将authenticate子项的公钥导出到~/.ssh/authorized_keys
gpg --export-ssh-key 7D9558836D7E9E72! > 7D9558836D7E9E72.pub.ssh
cat ~/7D9558836D7E9E72.pub.ssh >> ~/.ssh/authorized_keys
然后,我将私钥导出到我的Windows 10计算机并将其导入到那里:
scp ferit@192.168.2.8:~/7D9558836D7E9E72.sub.key C:\Users\ferit\Downloads\
gpg --import 7D9558836D7E9E72.sub.key
所以,问题是:如何通过PGP从Windows 10登录到Ubuntu服务器?
答案 0 :(得分:0)
我不确定这种方法是否正确,但是也许我误解了一些东西。
想法如下:
总而言之,每个用户(即使目前只有一个……)也应该有自己的密钥对,并由他们提供。您没有为他们提供一个密钥,当然也不会与多个用户共享同一密钥。
每个人都将他们的秘密密钥保密,但是公共密钥可以(必须)自由共享。
这是2FA的一种,因此,我相信您会很容易找到此任务的代码示例。但是您没有指定要使用的语言。另外,您并没有确切说明目的。 “登录”是模糊的。目标是登录网站还是某些服务(例如SSH)?实施会因目标而异。