Como Configurar o WordPress com SSL Autoassinado no Ubuntu com Apache
A segurança é um dos aspectos mais importantes na gestão de um site, e o uso de SSL (Secure Sockets Layer) para criptografar a comunicação entre o navegador e o servidor é uma das melhores práticas. Embora seja recomendado utilizar um certificado SSL emitido por uma autoridade certificadora (CA) em produção, é possível usar um certificado autoassinado para fins de desenvolvimento ou ambientes internos.
Neste guia, vamos configurar o WordPress com um certificado SSL autoassinado no Ubuntu com o servidor Apache.
Pré-requisitos
Antes de começar, você precisará:
- Um servidor Ubuntu com Apache e OpenSSL instalados.
- WordPress já instalado e funcionando.
- Acesso de superusuário (root) ou permissões sudo.
Passo 1: Instalar o OpenSSL e Apache
Se ainda não tiver o OpenSSL ou o Apache instalados, use o seguinte comando:
sudo apt update
sudo apt install apache2 openssl
Passo 2: Criar a Chave Privada e o Certificado SSL Autoassinado
Vamos gerar a chave privada e o certificado SSL autoassinado usando o OpenSSL.
- Criar a chave privada: No terminal, execute:
openssl genrsa -out /etc/ssl/private/chave-privada.key 2048
Esse comando gera uma chave privada de 2048 bits e a salva no diretório /etc/ssl/private/.
- Criar uma solicitação de assinatura de certificado (CSR): Execute o comando abaixo para gerar um CSR:
openssl req -new -key /etc/ssl/private/chave-privada.key -out /etc/ssl/private/requisicao.csr
Preencha as informações solicitadas, como nome da sua organização e nome comum (geralmente, o domínio do site).
- Gerar o certificado SSL autoassinado: Agora, crie o certificado autoassinado com o comando:
openssl x509 -req -days 365 -in /etc/ssl/private/requisicao.csr -signkey /etc/ssl/private/chave-privada.key -out /etc/ssl/certs/certificado.crt
Este comando gera um certificado válido por 1 ano (365 dias). O certificado será salvo no diretório /etc/ssl/certs/.
Passo 3: Configurar o Apache para Usar o Certificado SSL
Agora, precisamos configurar o Apache para usar o certificado SSL autoassinado.
- Habilitar o módulo SSL do Apache: Primeiro, ative o módulo SSL no Apache com o seguinte comando:
sudo a2enmod ssl
Em seguida, reinicie o Apache para aplicar as alterações:
sudo systemctl restart apache2
- Criar uma configuração de Virtual Host para o WordPress com SSL: Agora, crie um arquivo de configuração de virtual host para habilitar o SSL no site WordPress. Vamos criar um arquivo específico para o site WordPress com SSL:
sudo nano /etc/apache2/sites-available/wordpress-ssl.conf
Adicione o seguinte conteúdo ao arquivo:
<VirtualHost *:443>
ServerAdmin admin@seudominio.com
ServerName seusite.com
ServerAlias www.seusite.com
DocumentRoot /var/www/wordpress
SSLEngine on
SSLCertificateFile /etc/ssl/certs/certificado.crt
SSLCertificateKeyFile /etc/ssl/private/chave-privada.key
<Directory /var/www/wordpress/>
AllowOverride All
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Esse arquivo configura o Apache para servir seu site WordPress sobre HTTPS, utilizando o certificado e a chave que você gerou anteriormente.
- Ativar o novo Virtual Host e SSL: Ative a configuração SSL com o comando:
sudo a2ensite wordpress-ssl.conf
Em seguida, reinicie o Apache:
sudo systemctl restart apache2
Passo 4: Forçar o Uso de HTTPS no WordPress
Agora que o SSL está habilitado, o próximo passo é garantir que todas as conexões com o WordPress sejam feitas via HTTPS.
- Atualizar o arquivo
.htaccess: Para forçar o uso de HTTPS em todo o site, adicione a seguinte regra de redirecionamento ao arquivo.htaccessdo WordPress:
sudo nano /var/www/wordpress/.htaccess
Adicione as seguintes linhas ao início do arquivo:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
Essas linhas forçam automaticamente todos os usuários a serem redirecionados para a versão HTTPS do site.
- Atualizar o URL do WordPress: Acesse o painel de administração do WordPress (
http://seusite.com/wp-admin), vá até Configurações > Geral e atualize os campos Endereço do WordPress (URL) e Endereço do site (URL) parahttps://seusite.com.
Passo 5: Testar o SSL Autoassinado
Agora, abra seu navegador e acesse seu site WordPress usando https://. Como o certificado é autoassinado, seu navegador provavelmente exibirá um aviso de que o certificado não é confiável. Esse comportamento é normal para certificados autoassinados. Em um ambiente de desenvolvimento, você pode ignorar esse aviso.
Passo 6: Considerações Finais
O uso de certificados SSL autoassinados é uma solução prática para ambientes de teste e desenvolvimento. No entanto, eles não devem ser usados em produção, já que não são reconhecidos por navegadores modernos e causarão avisos de segurança para os usuários. Para ambientes de produção, recomenda-se usar um certificado SSL emitido por uma autoridade certificadora, como o Let’s Encrypt, que oferece certificados gratuitos e confiáveis.
Com este guia, você agora tem o WordPress funcionando com SSL autoassinado em um servidor Ubuntu com Apache. Isso garantirá que as conexões sejam criptografadas e seguras, ao menos em um ambiente de desenvolvimento ou de testes.

Leave a comment