Configuração do SSL no Apache

Passo a passo para configurar SSL no Apache. Feito isso seu site permitirá conexão segura criptografada com o usuário através do protocolo HTTPS. Tutorial homologado no Ubuntu Linux, mas sua teoria pode ser aplicada em outras distribuições.

[ Hits: 118.056 ]

Por: Roberto Santos, Marcelo Gordiano e Elpidio Neri em 02/12/2008


Criando certificado digital



7° Passo:

O certificado será criado com o comando abaixo:

# openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

8° Passo:

Será necessário efetuar a instalação da chave e do certificado anteriormente criados com os seguintes comandos:

# cp server.crt /etc/ssl/certs
# cp server.key /etc/ssl/private


No comando para instalação do server.key vai dar uma mensagem, isso porque foi criado no próprio diretório onde ele seria instalado, se tivesse sido criado em outro diretório não haveria a mensagem.

9° Passo:

Agora serão efetuadas algumas alterações de configuração no Apache editando o arquivo /etc/apache2/sites-available/default. Usando o pico o comando será o seguinte:

# pico etc/apache2/sites-available/default

Dentro do arquivo, abaixo da linha "DocumentRoot /var/www/", é necessário acrescentar as seguintes linhas:

SSLEngine on
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key

10° Passo:

O HTTPS escuta sobre a porta de número 443. É necessário adicionar a linha abaixo ao /etc/apache2/ports.conf, se já não houver:

<IfModule mod_ssl.c>
   Listen 443
</IfModule>

11° Passo:

Depois de instalado o certificado será feito o reinício do Apache2. Se o usuário optou pela instalação com o pedido da chave criada no início do tutorial, a chave será pedida toda vez que houver reiniciar o serviço, mas se o usuário efetuou os passos para a autenticação automática, o Apache2 não pedirá a chave, o comando será o seguinte:

# /etc/init.d/apache2 restart

12° Passo:

Feito todos os passos do tutorial será feito um teste prático, o usuário deve criar uma pasta chamada "teste" dentro do "/var/www/", o comando para criar é:

# mkdir /var/www/nome_pasta

Em seguida deve-se editar o arquivo /etc/apache2/sites-available/default com um editor de texto, usando o pico ficará:

# pico /etc/apache2/sites-available/default

Dentro do arquivo o usuário deve alterar as linhas que possuam "/var/www/" para "/var/www/teste/" (só serão duas linhas), assim estará sendo indicando o caminho para a pasta da página inicial.

Dentro da pasta "/var/www/teste/" deve-se criar o arquivo "index.html". Para criar o arquivo dentro da pasta teste o usuário deve digitar:

# pico index.html

Inserir os códigos abaixo, depois salvar e sair:

<HTML>
<HEAD> <TITLE> Teste do Apache2 com SSL</TITLE></HEAD>
<BODY> teste efetuado com sucesso...</BODY>
</HTML>

Em seguida, no browser, para testar o endereço será o seguinte:

https://localhost/teste/

Será pedido para aceitar o certificado, pois o certificado criado no tutorial não será reconhecido automaticamente pelo browser como seguro. Para haver esse reconhecimento o criador da chave deve contratar uma autoridade certificadora para gerar o certificado a partir da chave gerada, essa autoridade de certificação é uma empresa autorizada e emitir, renovar e cancelar certificados digitais após verificar a identidade e a legitimidade da parte solicitante através de uma autoridade de registro. A principal autoridade de certificação é a VeriSign.

Referências

HTTPD - Apache2 Web Server, disponível em:
https://help.ubuntu.com/7.10/server/C/httpd.html#https-configuration
Acessado em 10/11/08

Certificados Digitais, disponível em:
http://www.speedhost.com.br/certificado-digital-ssl/faqs/index.php
Acessado em 10/11/08

Página anterior    

Páginas do artigo
   1. Introdução
   2. Configuração inicial
   3. Criando certificado digital
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Configurar rede wireless (ndiswrapper)

Verificando a temperatura do HD no Slackware

LTSP 5 no Ubuntu 8.04

Configurando Servidor Web Cherokee no Centos 6.3

Configuração Linux (Debian) com mínimo de recursos e interface gráfica super leve

  
Comentários
[1] Comentário enviado por verdin em 27/01/2009 - 15:13h

muito bom o tutorial valeu ae foi muito util.

[2] Comentário enviado por claudiosouzajr em 20/03/2016 - 18:09h

Muito bom. Duas coisas: para criar sem senha, tire o parâmetro "-des3" do comando. Certificados com criptografia SHA1 já são considerados vulneráveis - dê preferência à SHA256.

[3] Comentário enviado por gealves97 em 29/09/2017 - 23:17h

otimo tutorial. To com um problema ao tentar acessar usando https não acessa e se eu tentar acessar http ele acusa que e https. Como proceder


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts