连接到使用SSH CA的SSH服务器时,我的ssh-agent不想存储我的签名SSH密钥凭据。我的意思是,每次我尝试登录时,都要求我提供认证密钥的密码。
如果我使用不带SSH CA的服务器,则可以使用。
我在某些Linux服务器上为SSH设置了CA,如下所示:
- 创建一个用于测试的CA密钥对:
ssh-keygen -f myCA
myCA.pub
在服务器上发送并使用适当的设置配置sshd:TrustedUserCAKeys /etc/ssh/myCA.pub
- 重新启动服务器。
- 创建一个密钥对进行测试:
ssh-keygen -f myKey
- 与CA签署密钥:
ssh-keygen -s myCA -I user_username -n username -V +2w myKey.pub
有人知道这是否可能吗?谢谢。
您是否尝试过ssh-copy-id并将ID复制到远程服务器?
在这种情况下,拥有用于SSH的CA的好处是不必将我的ID发送到服务器。但是,我尝试过,但并没有帮助。
—
Flyounet
创建证书后,您似乎没有使用ssh-add将密钥加载到ssh-agent中,或者ssh-agent环境变量不在ssh客户端的环境中。实际上,这听起来像您的密钥/ ca /证书,并且远程设置运行正常,除非它不通过您的代理,而是使用磁盘上的标识。针对来自openssh 7.4的ssh-agent进行测试,ssh-add会自动为同一目录中的私钥提取证书文件并进行正确的身份验证。
—
安德鲁·多马塞克