我希望在SSH会话中使用智能卡身份验证。现在,有时我希望在ssh会话中使用ssh客户机。所以这种情况:
我的带有智能卡的桌面计算机有一个到shell.provider.com的ssh会话。从shell.provider.com,我有一个ssh会话到ssh.Provider2.com(有时我称这种情况为“跳过”)
我的智能卡被插入到桌面计算机中。是否可以(以任何方式)使用智能卡身份验证登录到login .Provider2.com?
发布于 2016-06-10 19:05:07
您可以使用ssh-agent添加智能卡,然后将代理转发到其他主机。这将允许您从第一个主机上使用本地智能卡对第二个主机进行身份验证。简言之:
eval `ssh-agent` # if the agent is not running yet
ssh-add -s /path/to/pkcs11.so # probably /usr/lib64/opensc-pkcs11.so
# or Ubuntu: /usr/lib/x86_64-linux-gnu/pkcs11/opensc-pkcs11.so
# enter your pin
ssh-add -l # should list your smartcard
ssh -A shell.provider.com # should not prompt for pin
ssh shell.provider2.com # from the shell.provider.com发布于 2017-12-22 21:04:13
智能卡的解决方案可以是
您可以在~/.ssh/config中使用主机B的配置,也可以在ssh调用中使用它作为参数。
Host B
Hostname <the-real-hostname-for-B>
User <user>
Port 22
ProxyCommand ssh -p 22 -q -W %h:%p <the-real-hostname-for-A>一个优点是,您将有一个主机别名,也有代码完成(较少键入)。
ssh <user>@B注意:代理转发在共享机器上是一种糟糕的做法,因为通过环境变量SSH劫持代理_八月_袜子非常容易使攻击者能够接管您的身份和身份验证机制以跳转到其他主机。
当使用yubikeys作为您的智能卡时,您可以使用在需要密码操作(如登录)时需要物理触摸智能卡的特性。这样,攻击者还需要对您的智能卡进行物理访问,从而在大多数情况下攻击。
https://security.stackexchange.com/questions/126685
复制相似问题