Estou um pouco confuso sobre como configurar o certificado para meu host local. Meu cenário é assim:
Temos dois servidores Windows 2012 (não associados a um domínio) e preciso executar um script powershell remotamente a partir de uma máquina. Isso tem que ser feito usando o IP da outra máquina. Eu tentei um pouco e finalmente pude saber que o protocolo deve ser HTTPS ao usar IP e requer um certificado de servidor.
Ler tantos blogs e postagens me deixou confuso e usando o powershell em ambos os servidores, instalei o certificado autoassinado criado usando o powershell. Os certificados são nomeados como computername.workgroup e estão localizados em Pessoal no armazenamento de certificados do computador local.
Mas quando tento winrm qc -transport:https Não é possível criar um ouvinte WinRM em HTTPS porque esta máquina não possui um certificado apropriado.
Alguém pode me ajudar o quanto antes? Como posso resolver esse erro, criando o certificado necessário? Qualquer ajuda seria muito apreciada.
De https://support.microsoft.com/en-us/kb/2019527 :
Portanto, primeiro você precisa instalar um certificado válido na máquina. Isso significa que ele precisa vir de uma autoridade de certificação. Não autoassinado. Pode ser uma CA interna à sua organização ou pode ser uma CA global como Godaddy ou Cybertrust ou algo assim.
Isso também significa que usar o endereço IP da máquina em vez de seu nome não funcionará, a menos que você obtenha um certificado que tenha o endereço IP da máquina como um nome alternativo da entidade (SAN).
Não há problema em usar um certificado autoassinado para WinRM https, mas ao conectar-se ao endpoint desse computador, você precisa especificar que o cliente (winRM) deve ignorar as verificações de certificado. Você pode fazer isso usando:
e, em seguida, configure a sessão assim:
Acho que o certificado que você está tentando usar não contém uma chave privada, esse deve ser o único requisito para o certificado.