使用 AD 证书从 Windows SSH 到 Linux

Chr*_*rna 4 linux windows certificate ssh active-directory

我有一台连接到 Active Directory 的 Windows 客户端机器和一个也连接到 Active Directory 的 Linux 服务器(通过 PAM 和 LDAP),我希望能够从 Windows 到 Linux 进行无密码 SSH。只要我提供 AD 帐户的密码,SSH 就可以正常工作。

我发现以下文章让我知道如何完成它,但我无法让它工作:http : //www.moelinux.net/wordpress/?p=95

我尝试过的是以下内容(基于上述文章):

  1. (在客户端)将我的 AD 证书导出为 .PFX 文件
  2. 使用以下命令将 .PFX 转换为 id_rsa 文件:openssl pkcs12 -in somefile.pfx -out id_rsa
  3. 使用以下命令去除密码的 id_rsa:openssl rsa -in id_rsa -out id_rsa
  4. 使用以下命令生成公钥:ssh-keygen -y -f id_rsa > id_rsa.pub
  5. (在服务器上)与上面相同的例程,所以我在客户端和服务器上有相同的 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub 。

正如您可能猜到的,这行不通。我仍然需要输入我的密码。我可能哪里出错了?

(我真正想要完成的是设置一种使用 AD 帐户从 Windows 连接到 Linux 的方法,尽可能无缝。这似乎是最好的方法,但如果有其他方法,我愿意想法:-))

Adm*_*emo 7

您将 X.509 证书与 RSA 密钥混淆了。它们是完全不同的 PKI 实现。不过,由于您的客户端和 SSH 服务器都是域成员,因此我想说忘记密钥并使用 Kerberos/GSSAPI。在/etc/ssh/sshd_config服务器上,您应该找到一个指令,GSSAPIAuthentication,取消注释并将值更改为yes。保存更改后重新启动 SSH 守护程序。

对于客户端,您需要最新的 PuTTY (0.61) 或 OpenSSH。腻子具有默认启用GSSAPI,所以刚进入主机的SSH服务器(IP地址将工作),点击连接。