Como mover um certificado SSL para outro servidor
Introdução
Cada servidor precisa do certificado SSL num formato específico para o processar: a instalação Windows/IIS exige o SSL em formato .pfx, os servidores Linux/Apache ou Nginx exigem o certificado em formato .crt, e outros servidores, como o Haproxy, exigem-no em formato .pem. Basta exportar os certificados do servidor onde estão instalados e convertê-los para o formato correto, conforme o servidor de destino exige. Certifique-se de que exporta os certificados juntamente com a sua chave privada e com os certificados intermédios usados com esse certificado.
#1 Mover um certificado SSL de um servidor IIS para outro servidor IIS.
Entre dois servidores IIS não é necessária conversão.
1.) Abra o IIS como administrador e localize a opção «Server Certificates» na janela Home.
2.) Selecione na lista o certificado que quer exportar, clique nele com o botão direito e escolha a opção Export.
3.) A exportação pede a localização do diretório de destino para os certificados exportados e uma palavra-passe para os proteger.
4.) Copie o certificado da localização de exportação e mova-o para uma localização no servidor IIS de destino. Abra o IIS no servidor de destino como administrador, abra «Server Certificates» nas opções do ecrã Home e selecione a opção de importação no painel esquerdo. Localize e selecione o ficheiro do certificado, indique a palavra-passe usada na exportação a partir do outro servidor e clique em «Ok».
5.) Pode agora instalar este certificado importado para o seu domínio. Abra o IIS com privilégios de administrador, expanda «Sites», clique no website onde quer instalar o certificado. Clique em «Bindings» no painel esquerdo, clique no botão «Add», selecione o certificado SSL importado na lista pendente, acrescente o host name e clique no botão «Ok».
Reinicie o website a partir da opção «Manage Web Site» do painel esquerdo.
#2 Copiar um SSL de um servidor Windows/IIS para um servidor Linux/Apache
1.) Exporte os certificados do servidor Windows IIS como descrito acima (passos 1, 2 e 3).
2.) Copie o certificado .pfx exportado do servidor Windows para o servidor Linux. Pode usar aplicações como o WinSCP, ou o serviço FTP do servidor Linux, para transferir os certificados.
3.) Abra o terminal no servidor Linux e execute o comando abaixo para converter o certificado .pfx para o formato .crt e de chave privada.
openssl pkcs12 -in eurovps.pfx -out testconvert.txt -nodes
** substitua testexport.pfx pelo nome do seu ficheiro .pfx exportado e testconvert.txt pelo nome que quer dar ao ficheiro do certificado convertido.
O ficheiro .txt convertido terá duas partes, a secção da chave privada e a secção do certificado. Copie o texto compreendido entre o marcador «BEGIN PRIVATE KEY» e o marcador «END PRIVATE KEY» para outro ficheiro e dê-lhe o nome domain.key. Copie o texto compreendido entre o marcador «BEGIN CERTIFICATE» e o marcador «END CERTIFICATE» para outro ficheiro e dê-lhe o nome domain.crt. Estes são a chave privada e o certificado do domínio, que pode instalar diretamente no Apache, no Nginx ou a partir de um painel de controlo como o Plesk ou o cPanel.
#3 Copiar certificados SSL de um servidor Apache para outro servidor Apache.
1.) A localização do ficheiro do certificado SSL no servidor de origem encontra-se no ficheiro de configuração do Apache. A configuração do Apache está normalmente numa das localizações abaixo.
/etc/apache2/conf/httpd.conf
/etc/httpd/conf/httpd.conf
/etc/apache2/apache2.conf
/etc/httpd/httpd.conf
Também pode usar o comando «httpd -V» no terminal, que indica o ficheiro de configuração carregado pelo Apache.
2.) No VirtualHost do domínio, anote os três caminhos SSL:
<VirtualHost 123.456.789.10:443>
ServerName domain.com
ServerAlias www.domain.com mail.domain.com
DocumentRoot /var/ww/html/domain.com
--
SSLEngine on
SSLCertificateFile /etc/ssl/crt/primary.crt
SSLCertificateKeyFile /etc/ssl/crt/private.key
SSLCertificateChainFile /etc/ssl/crt/intermediate.crt
…..
….
…
</VirtualHost>
Identifique as localizações de SSLCertificateFile, SSLCertificateKeyFile e SSLCertificateChainFile no virtualhost do domínio, copie os ficheiros dessas localizações e mova-os para a mesma localização, ou para uma à sua escolha, no servidor de destino. Altere a entrada do virtualhost do domínio no Apache do servidor de destino para que SSLCertificateFile, SSLCertificateKeyFile e SSLCertificateChainFile apontem para a localização dos certificados.
Teste a sintaxe da configuração do Apache (apachectl configtest) e recarregue a configuração (service httpd reload) para carregar o novo SSL do domínio.
#4 Copiar certificados SSL de um servidor Linux/Apache para um servidor Windows IIS
1.) Identifique as localizações dos ficheiros SSLCertificateFile, SSLCertificateKeyFile e SSLCertificateChainFile no virtualhost do domínio no Apache (ver #3.1 e #3.2).
2.) Copie os ficheiros para um diretório de teste no servidor.
mkdir /root/ssl/
cp /etc/ssl/crt/primary.crt /root/ssl/primary.crt
cp /etc/ssl/crt/private.key /root/ssl/private.key
cp /etc/ssl/crt/intermediate.crt /root/ssl/intermediate.crt
3.) Use o comando openssl abaixo para converter os certificados e a chave para o formato .pfx.
openssl pkcs12 -export -out eurovpstest.pfx -inkey /root/ssl/private.key -in /root/ssl/primary.crt -certfile /root/ssl/intermediate.crt
Substitua eurovpstest.pfx pelo nome de ficheiro que preferir.
Depois da conversão, carregue os ficheiros para o servidor Windows por FTP e importe-os no IIS como descrito em #1.4 e #1.5.
Das FAQ da EuroVPS.
Mais na categoria «Guias»O seu próximo parceiro de infraestrutura
Ainda tem
uma pergunta?
Diga-nos o que está a tentar fazer. Um engenheiro vai ler e responder.
+357 222 32280
Comecemos pela sua infraestrutura.
Um pouco de contexto ajuda-nos a começar a conversa certa.
