nov
13
Se você hospeda seu próprio wordpress é interessante habilitar o ssl para criptografar seu sua comunicação com o servidor, do contrário todas as suas senhas e demais dados que você envia no ato da publicação de conteúdo estarão vulneráveis a sniffing e M-i-M attack. Veremos como fazer essa configuração de uma forma bem simples.
Estou presumindo aqui que o seu wordpress já está funcionando e configurado, com Mysql, Apache, etc.
Passo 1 - Instalar pacotes necessários, caso ainda não tenha instalado.
$ sudo aptitude install openssl ssl-cert
Passo 2 - Gerar a chave privada do servidor.
$ cd /etc/ssl
$ sudo openssl genrsa -out private/server.key 2048
$ sudo chmod 400 private/server.key
Passo 3 - Gerar a requisição de certificado auto assinado. (Para blogs profissionais contrate um certificado “oficial”, verisign, godaddy, etc.)
$ sudo openssl req -new -key private/server.key -out server.csr
You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]: seu pais State or Province Name (full name) [Some-State]: seu estado Locality Name (eg, city) []: sua cidade Organization Name (eg, company) [Internet Widgits Pty Ltd]: sua empresa Organizational Unit Name (eg, section) []: seu departamento Common Name (eg, YOUR name) []: * Email Address []: seu e-mail Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:
Note que qualquer dos campos pode ser deixado em branco, basta digitar “.”, sem as aspas. Se você não tem vários IPs sobrando sugiro criar um certificado genérico (para todos os sites) usando no campo “Common name” um asterisco (*).
Passo 4 - Gerando o certificado
$ sudo openssl x509 -days 365 -req -in server.csr -signkey private/server.key -out certs/server.crt
Passo 5 - Configurando o site
Habilite o ssl
$ sudo a2enmod ssl
Crie um novo arquivo
$ cd /etc/apache2/sites-available
$ sudo vim wordpress-ssl
Coloque o conteúdo abaixo no arquivo
NameVirtualHost *:443
<VirtualHost *:443> ServerName www.seusite.com.br DocumentRoot /var/www/seusite/ Errorlog /var/log/apache2/site-error_log Customlog /var/log/apache2/site-access_log common AddDefaultCharset utf-8 SSLEngine On SSLOptions +StrictRequire SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key </VirtualHost>
Habilite o site criado
$ sudo a2ensite wordpress-ssl
Reinicie o apache para habilitar as configurações
$ sudo /etc/init.d/apache2 force-reload
Pronto, agora é só testar seu site https://www.seusite.com.br. O interessante é que deste jeito você poderá criar vários sites ssl, com o mesmo IP, todavia não tem como usar certificados diferentes para cada site.
Comments
Leave a Reply