SSH do Windows para o Linux com certificados AD

4

Eu tenho uma máquina cliente Windows conectada ao Active Directory e um servidor Linux também conectado ao Active Directory (por meio do PAM com LDAP), e quero ser capaz de fazer SSH sem senha do Windows para o Linux. O SSH funciona bem desde que eu forneça a senha para a conta do AD.

Eu encontrei o seguinte artigo que meio que me deu uma idéia de como isso pode ser feito, mas não consigo fazê-lo funcionar: link

O que eu tentei é o seguinte (baseado no artigo acima):

  1. (no cliente) Exportar meu certificado do AD para um arquivo .PFX
  2. Converta o .PFX em um arquivo id_rsa usando o seguinte comando: openssl pkcs12 -em algum arquivo.pfx -out id_rsa
  3. Retira o id_rsa da senha usando o seguinte comando: openssl rsa -in id_rsa -out id_rsa
  4. Gere uma chave pública usando o seguinte comando: ssh-keygen -y -f id_rsa > id_rsa.pub
  5. (no servidor) A mesma rotina acima, então eu tenho idênticos ~ / .ssh / id_rsa e ~ / .ssh / id_rsa.pub no cliente e servidor. / li>

Como você pode imaginar, isso não funciona. Eu ainda tenho que inserir minha senha. Onde eu poderia ter errado?

(O que eu estou realmente tentando fazer é configurar uma maneira de conectar do Windows ao Linux com uma conta do AD, o mais perfeitamente possível. Essa parece ser a melhor maneira de fazer isso, mas se houver outras maneiras, eu estou aberto a idéias: -))

    
por Christian Palmstierna 06.12.2011 / 01:23

1 resposta

7

Você está confundindo certificados X.509 com chaves RSA. São implementações totalmente diferentes de PKI. Como tanto o cliente quanto o servidor SSH são membros do domínio, eu diria que esqueça as chaves e use o Kerberos / GSSAPI. Em /etc/ssh/sshd_config no servidor, você deve encontrar uma diretiva, GSSAPIAuthentication , descomentar e alterar o valor para yes . Reinicie o daemon SSH depois de salvar a mudança.

Para o cliente, você precisa do mais recente PuTTY (0.61) ou OpenSSH. O PuTTY tem o GSSAPI habilitado por padrão, então apenas digite o hostname do servidor SSH (o endereço IP irá não funcionar) e clique em conectar.

    
por 06.12.2011 / 04:00