Configurando OpenSSH no Windows Server 2003 para autenticação por chave (sem senha)

Neste artigo irei mostrar como configurar o OpenSSH no Windows Server 2003 para utilizar autenticação por chave ou "key authorization" possibilitando o acesso sem senha.

[ Hits: 49.118 ]

Por: Fernando Ribeiro em 12/09/2007 | Blog: http://www.vivaolinux.com.br/~fernandofat


Introdução



Para que um acesso via SSH seja possível em um sistema operacional Windows é necessário que ele tenha o daemon do SSH ou "sshd".

Neste caso eu estarei trabalhando com o Windows Server 2003, mas é bem provável que esta instalação funcione para o Windows 2000 e XP também.

Apenas instalando o OpenSSH no Windows e seguindo as instruções iniciais da própria instalação já é possível um acesso via SSH utilizando o processo normal de autenticação onde é preciso fornecer usuário e senha.

Neste artigo estarei utilizando um processo de autenticação utilizando um par de chaves publica e privada chamada também de "key authorization" ou autorização por chave, desta forma é possível um acesso sem senha que por sua vez possibilita a execução remota de comandos. É bem útil em situações onde é preciso fazer scripts ou batchs que executam tarefas em outro(s) servidor(es).

Por motivos de conveniência o cliente SSH que estarei utilizando será o PuTTY juntamente com o Plink (linha de comando do PuTTY), mas o mesmo processo pode ser realizado em clientes SSH de sistemas operacionais Linux sem nenhum problema.

Para alguma referência na configuração do cliente SSH no Linux para autenticação com chave veja o seguinte artigo:
(note que este artigo ensina a fazer o mesmo processo de autenticação por chaves, mas no daemon SSH em sistemas Linux)

Para referências sobre chaves públicas confira o seguinte link:
Software necessário:
AVISO: Lembre-se de que as configurações mostradas por este artigo se referem especificamente para uma autenticação por chaves pública/privada, se você precisa de um acesso comum por SSH a um computador com Windows, apenas a instalação do OpenSSH é suficiente para isso.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando o OpenSSH
   3. Configurando o cliente e as chaves pública/privada
Outros artigos deste autor

Conexões SSH sem senha fácil e descomplicado

Linux logando no Domínio NT

Leitura recomendada

gGedit como IDE para COBOL

Automatizando a conexão com Internet via ADSL com PPPoE no OpenBSD

KeepAlive para conexão discada (ou não)

BigBashView, interface gráfica para o seu shell script

Multi-head usando udev e Xnest

  
Comentários
[1] Comentário enviado por lord_roxton em 12/09/2007 - 11:03h

Artigo muito interessante!

[2] Comentário enviado por sombriks em 13/09/2007 - 03:03h

kra, silverBullet!

as máquinas da minha rede tão todas ganhando um sshd (pra desligar aqueles clientes xatos, hahahahahaha!!!)

[3] Comentário enviado por fernandofat em 13/09/2007 - 15:04h

SilverBullet foi ótimo! huahauhauahu

Mas falando sério...

Caso alguém encontre problemas ao subir o serviço como um usuário local ou de dominio, experimente fazer o seguinte:

- Desfaça os passos da seção "Trocando o usuário que inicia o serviço do OpenSSH" do artigo
- Depois dê permissão de escrita e leitura no diretório "C:\OpenSSH" e seus subdiretórios para o usuário que irá rodar o serviço do SSHD
- Agora refaça os passos da seção "Trocando o usuário que inicia o serviço do OpenSSH" do artigo

[]'s

Fernando

[4] Comentário enviado por cadmec em 09/02/2010 - 16:51h

Olá Fernando,

Fiz como descrito. Mas quando tento logar usando o Putty, o sistema retorna:
Server refused our Key
[email protected]'s password:

E quando coloco a senha que está no servidor para o usuáro Alves, ele diz - Acess denied.

Poderia me ajuda ai,

Abraços e Obrigado.
Alves

[5] Comentário enviado por rafaelalmeida em 31/05/2010 - 16:00h

Opa, blz Fernando?

Aqui não funciona... copiei várias chaves públicas de outros servidores para o arquivo authorized_keys do meu servidor windows, e ao tentar logar de um destes servidores no mesmoele pede senha. A intensão aqui é fazer o backup dos servidores linux em um servidor windows, inicialmente pensamos em rsync, mais para isto precisamos de ssh rodando sem senha, pode me ajudar??


Contribuir com comentário