Criar Certificado Digital (SSL) em Ubuntu LinuxAviso:Este tutorial, exemplifica os passos necessários de modo a criar o seu próprio certificado digital SSL (AES-256 bits). Este tutorial é destinado a servidores Ubuntu Linux, mas adapta-se com facilidade a outras distribuições linux.
---------------------------------------------------------------------------------------------------
::Pré-requesitos - Necessita de ter o apache2 instalado na sua maquina e previamente configurado!
Faça:
sudo apt-get install apache2
para instalar o pacote apache2 e sua dependências.
- Deve também possuir instalado o pacote openssl.
Faça:
sudo apt-get install openssl
para instalar o pacote openssl e sua dependências.
- Deve também assegurar-se que existe um link sÃmbolico entre o ficheiro /etc/apache2/sites-enabled/000-default e o ficheiro/etc/apache2/sites-available/default.
Faça:
sudo ln -sf /etc/apache2/sites-enable/000-default /etc/apache2/sites-available/default
... para criar o link entre os dois ficheiros.
-------------------------------------------------------------------------------------------------------
::Executar o script de criação de Certificado SSLO script, por defeito, não requesita o perÃodo de duração do certificado ao utilizador, devendo-se por isso, mencionar ao script o tempo que desejamos para a duração do certificado.
Para gerar um certificado com um ano de validade, execute o seguinte comando:
sudo /usr/sbin/apache2-ssl-certificate -days 365
Insira os dados requesitados pelo script durante a criação do certificado SSL.
-------------------------------------------------------------------------------------------------------
::Activar o módulo apache2-ssl-certificate - Após gerar o certificado SSL, necessita de activar o modulo apache2-ssl-certificate. Para activar este módulo, execute o seguinte comando:
sudo a2enmod ssl
-------------------------------------------------------------------------------------------------------
::Estabelecer os links necessários entre ficheiros - É necessário estabelecer links sÃmbolicos entre os ficheiros /etc/apache2/sites-available/ssl e /etc/apache2/sites-enable/ssl. Porém, o ficheiro /etc/apache2/sites-available/ssl não existe no sistema. Por isso vamos copiar o ficheiro /etc/apache2/sites-available/default para /etc/apache2/sites-available/ssl, e depois serão estabelecidos os links entre ficheiros necessários.
- De modo a realizar as tarefas acimas descritas, execute os seguintes comandos:
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl
(copia o ficheiro)
sudo ln -s /etc/apache2/sites-available/ssl /etc/apache2/sites-enabled/ssl
(criar os link entre os ficheiros)
-------------------------------------------------------------------------------------------------------
::Configurar Virtual Hosts - É agora necessário, configurar os seus virtual hosts para o novo protocolo implementado. Serão agora realizadas ligações ao servidor apache2 utilizando o protocolo https (porta 443). Para isso, é necessário configurar os seus virtual hosts para a mesma porta!
Por exemplo, o protocolo http, utilizada por defeito a porta 80 para as suas ligações, sendo então os seus virtual hosts direcionados para a porta 80.
Exemplo de virtual host do protocolo http:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
DocumentRoot /var/www/html
(exemplo do ficheiro /etc/apache2/sites-available/default)
- Agora, de modo a configurar os seus virtual hosts para o protocolo https, deve modificar o ficheiro /etc/apache2/sites-available/ssl, da seguinte forma:
NameVirtualHost *:443
<VirtualHost *:443>
ServerName localhost
DocumentRoot /var/www/html
(como pode verificar, todas as portas foram alteradas de 80 para 443)
-------------------------------------------------------------------------------------------------------
::Configurar Apache para porta a 443 - Necessita agora de configurar o seu servidor apache2 de modo a aceitar ligações através da porta 443 (protocolo https).
- Para isso deverá editar o ficheiro /etc/apache2/ports.conf e adicionar o seguinte:
Listen 443
- O seu ficheiro /etc/apache2/ports.conf deverá ficar semelhante a isto:
Listen 80
Listen 443
-------------------------------------------------------------------------------------------------------
::Activar o SSL Engine - Para que o SSL Engine seja activado, é necessário editar novamente o ficheiro /etc/apache2/sites-available/ssl e adicionar os comandos que indicarão a sua presença no sistema.
- Para inserir os comandos de activação do SSL Engine, edite o ficheiro /etc/apache2/sites-available/ssl, e depois da área comentada "# Possible values include: debug, info, notice, warn, error, crit...", adicione o seguinte:
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem
-------------------------------------------------------------------------------------------------------
::Reiniciar o Servidor Apache2 - Como passo final da configuração, é necessário reiniciar o servidor apache2, para que as alterações submetidas sejam agora utilizadas.
- Para reiniciar o servidor apache2, pode faze-lo executando um dos seguintes comandos:
sudo apache2 -k restart
...ou...
sudo /etc/init.d/apache2 restart
- Após reiniciar o servidor apache2, deve testar a sua configuração.
- Abra o seu browser, e tente aceder ao seu servidor através do protocolo https.
Exemplo de url de acesso por https:
https://o-seu-servidor.pt
...ou...
https://ip-do-servidor ( https://192.168.0.15/ )
-------------------------------------------------------------------------------------------------------
FONTE: You are not allowed to view links.
Register or
LoginBunk3r IT Wiki