Preciso fazer o download de um certificado SSL de um servidor remoto (não HTTPS, mas o handshake SSL deve ser o mesmo do Google Chrome / IE / wget e curl, todos fornecem erros de verificação de certificado) e adicionar o certificado como confiável nos laptops do Windows ' armazenamento de certificados, já que não consigo que meu pessoal de TI me dê o certificado da CA.
isso é para comunicações de escritório, então não posso realmente usar o cliente real para obter o certificado.
Como faço isso, tenho o Windows 7 e uma pilha de Linux à mão, para que qualquer linguagem de ferramenta / script seja adequada.
ssl
certificate
Kimvais
fonte
fonte
Respostas:
Se você tiver acesso ao OpenSSL, tente
substituindo {HOSTNAME} e {PORT} pelos seus valores.
fonte
-servername
opção para obter o certificado de host virtual. gist.github.com/Artistan/5219484efb2fe51cd064175b3d0d5971Um método rápido para obter o certificado obtido e baixado seria executar o comando a seguir, que canaliza a saída dos -showcerts para o comando x509 ssl, que retira tudo de fora. Por exemplo:
Para usar o certificado, com wget,
fonte
openssl s_client -showcerts
exibe todos os certificados na cadeia recebida (se a conexão for bem-sucedida), mas a tubulaçãoopenssl x509
passa apenas pelo primeiro e descarta o restante. Para obter todos eles, use...| sed -n '/^-----BEGIN CERT/,/^-----END CERT/p'
ou...| awk '/^-----BEGIN CERT/,/^-----END CERT/'
Você também pode usar um pouco mais complicadoawk
para colocar cada certificado em um arquivo separado, o que os torna mais fáceis de usaropenssl
e com outras ferramentas.index.html
=>HTTP request sent, awaiting response... 200 OK Length: unspecified [text/html] Saving to: ‘index.html.1’
Para ser sincero, nunca tentei isso antes (nunca precisei), no entanto, tentei apenas no Firefox e parece funcionar para salvar:
View Certificate
Details
guiaExport
fonte
Exportando um certificado usando o navegador Chrome
2. Clique no símbolo de cadeado e, em seguida, clique em DetalhesDesde a versão 56 do Chrome, faça o seguinte: vá para o menu Três pontos -> Mais ferramentas -> Ferramentas de desenvolvedor e clique na guia Segurança. Isso fornecerá uma Visão geral da segurança com o botão Exibir certificado .
Clique no botão Exibir certificado .
Uma janela modal será aberta. Tem dois painéis. O primeiro mostra a hierarquia de confiança do certificado do site (o último listado), os certificados intermediários e o certificado raiz (o mais alto).
O segundo painel maior mostra os detalhes de um dos certificados.
Pode haver zero ou mais certificados intermediários.
Observe que o certificado raiz possui um ícone com borda dourada. Os outros têm uma borda azul.
Veja a imagem abaixo.
Para exportar um certificado:
fonte
Esta é a resposta dos gbroiles , mas eu queria ressaltar que o projeto cURL tem uma página com mais alguns detalhes sobre o uso
openssl
para salvar o certificado SSL do servidor remoto:QUIT
e pressione a tecla Enter / Return.Se você deseja ver os dados no certificado, pode usar:
de onde
certfile
é extraído o certificadologfile
. Olhe dentrocertdata
.fonte
automatizado
-servername era necessário para eu obter o certificado certo do host virtual em nosso servidor.
openssl s_client -showcerts -connect host.name.com:443 -servername host.name.com </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > host.name.com.pem
você também pode converter para um certificado para desktop
openssl x509 -inform PEM -in host.name.com.pem -outform DER -out host.name.com.cer
última parte é adicioná-lo ao seu certs, não tenho certeza no windows
para mac keychain que eu usei, deve ser semelhante ...
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain host.name.com.cer
fonte
login.keychain
meio doKeychain Access
aplicativo. basta procurar o certificado em System / SystemRoot e clicar e arrastá-lo para o seulogin
chaveiro.-d
do comando será aplicada apenas ao chaveiro do usuário em vez do chaveiro do sistema.trustAsRoot
vez detrustRoot
para que ele seja adicionado corretamente.Isso fornecerá os resultados que contêm apenas os certificados
fonte
Encontrou uma maneira muito mais fácil se no Windows. Tentei o Microsoft Edge (pré-cromo) e clicou no cadeado na barra de endereço -> Exibir certificado A caixa de diálogo é exibida com o botão "Exportar para arquivo", que o salva como um arquivo .crt.
Não usaria muito o Edge, mas era um pedaço de bolo.
fonte