SSL no apache

4
Configuração inicial 1° Passo: É necessário que o usuário efetue o logon com o login de administrador, o "root". Para configurar o uso do proxy é preciso acrescentar as linhas no arquivo /etc/profile, usando o pico ficaria o seguinte comando: # pico /etc/profile Acrescentando as seguintes linhas com as devidas alterações do endereço ip e porta da rede: http_proxy="http://ip.do.servidor.proxy:porta" ftp_proxy="http://ip.do.servidor.proxy:porta" export http_proxy ftp_proxy 2° Passo: É necessário fazer a atualização dos pacotes de instalações de serviços, o comando é o seguinte: # apt-get update 3° Passo: Feita essa atualização será iniciada a instalação OpenSSL. O OpenSSL é uma implementação de código aberto dos protocolos SSL e TLS. A biblioteca implementa as funções básicas de criptografia e disponibiliza várias funções utilitárias. Para a instalação usamos o seguinte comando: # apt-get install openssl 4° Passo: Agora será instalado o Apache2 mais o complemento necessário para a ativação do SSL, o comando será o seguinte: # apt-get install apache2 apache2.2-common Se houver pedidos de confirmação durante este procedimento o usuário deve confirmar com "s". Em seguida será feita a habilitação do módulo SSL no Apache com o seguinte comando: # a2enmod ssl 5° Passo: O Apache2 com SSL funciona através de um certificado reconhecido na web, para gerar

description

Procedimento de instalação e configuração do SSL no servidor Apache

Transcript of SSL no apache

Configuração inicial 1° Passo: É necessário que o usuário efetue o logon com o login de administrador, o "root". Para configurar o uso do proxy é preciso acrescentar as linhas no arquivo /etc/profile, usando o pico ficaria o seguinte comando: # pico /etc/profile Acrescentando as seguintes linhas com as devidas alterações do endereço ip e porta da rede:

http_proxy="http://ip.do.servidor.proxy:porta" ftp_proxy="http://ip.do.servidor.proxy:porta" export http_proxy ftp_proxy 2° Passo: É necessário fazer a atualização dos pacotes de instalações de serviços, o comando é o seguinte: # apt-get update 3° Passo: Feita essa atualização será iniciada a instalação OpenSSL. O OpenSSL é uma implementação de código aberto dos protocolos SSL e TLS. A biblioteca implementa as funções básicas de criptografia e disponibiliza várias funções utilitárias. Para a instalação usamos o seguinte comando: # apt-get install openssl 4° Passo: Agora será instalado o Apache2 mais o complemento necessário para a ativação do SSL, o comando será o seguinte: # apt-get install apache2 apache2.2-common Se houver pedidos de confirmação durante este procedimento o usuário deve confirmar com "s". Em seguida será feita a habilitação do módulo SSL no Apache com o seguinte comando: # a2enmod ssl 5° Passo: O Apache2 com SSL funciona através de um certificado reconhecido na web, para gerar

o certificado (CSR) será necessário a criação de uma chave, essa chave deverá conter no mínimo 08 caracteres, a criptografia usada nessa chave é a DES3, essa chave ficará no arquivo server.key. De dentro do diretório onde ela ficará armazenada, o "/etc/ssl/private", o usuário deve digitar o comando abaixo para criação da chave: # openssl genrsa -des3 -out server.key 1024 6° Passo: Com a chave criada é importante acrescentar informações, após digitar o comando abaixo ele pedirá a chave e para preencher alguns dados, são os dados que serão visualizados referentes ao criador do certificado: # openssl req -new -key server.key -out server.csr Toda vez que o usuário reiniciar o Apache2 ele pedirá a chave, isso faz com que caso haja um restart por algum motivo, o serviço não suba pois dependerá da presença humana para a digitação. Os comandos abaixo fazem com que o Apache2 não peça a chave em caso de restart do serviço, ou seja, ele faz a autenticação automaticamente. O usuário deve entrar no diretório "/etc/ssl/private" e executar o comando abaixo: # openssl rsa -in server.key -out server.key.insecure Executado o comando acima, deverá feita a substituição do arquivo atual pelo criado. Antes desse passo o usuário deve fazer uma cópia de segurança do arquivo atual ou renomear o arquivo "server.key". Com o comando abaixo será feita a renomeação e o arquivo permanecerá na mesma pasta: # mv server.key server.bak Após a renomeação do arquivo, será feita a renomeação do arquivo criado, que fará com que não seja mais pedida a chave quando houver restart do serviço. O comando será o seguinte: # mv server.key.insecure server.key

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/