Como configurar o Apache com PHP e SSL de um jeito mais seguro e sem complicações

Tenho visto na net muitos usuarios com dúvidas sobre como configurar o Apache com suporte ao famoso SSL. Sendo assim, resolvi contribuir com algumas dicas sobre o assunto.

[ Hits: 38.958 ]

Por: Fernando da Silva Santos em 10/07/2003


Configuração do Apache com suporte a SSL e PHP



Estes são os pacotes que vamos precisar: Após feito os downloads vamos extrair os pacotes como segue:

tar -xzf openssl-versão.tar.gz
tar -xzf mod_ssl-versão.tar.gz
tar -xzf apache_versão.tar.gz
tar -xzf php-versão.tar.gz


Após descompactar os arquivos vamos para a instalação dos mesmos. Para instalar o Apache com suporte a SSL, primeiro precisamos instalar o pacote OpenSSL:

$ cd openssl-versão
$ ./config
$ make
$ make test
# make install
$ cd ..


Pronto o OpenSSL já está configurado e instalado perfeitamente. Uma vez instalado o OpenSSL torna-se possível instalar o Apache com o MOD-SSL, vamos prosseguir como segue:

$ cd mod_ssl-mod_ssl-versão
$ ./configure --with-apache=/apacheversão --with-ssl=/OpenSSLversão


$ cd ../apacheversão
$ ./configure --enable-module=ssl --enable-module=so
$ make
$ make certificate
# make install
$ cd ..

$ ./configure --prefix=/www --enable-module=rewrite --enable-shared=rewrite --enable-module=proxy --enable-shared=proxy --enable-module=ssl --enable-module=so


Uma vez o Apache instalado, vamos então instalar o PHP como um módulo dinâmico (DS0):

$ cd phpversão
$ ./configure --enable-track-vars --enable-trans-sid --with-mysql --disable-debug --with-apxs=/var/www/bin/apxs
$ make
# make install
$ cp php.ini-dist /usr/local/lib/php.ini
$ cd ..


Edite o arquivo de configuração do Apache (httpd.conf) e do PHP (php.ini). Tenha certeza de que as seguintes linhas estão no arquivo httpd.conf:

LoadModule php4_module libexec/libphp4.so
AddType application/x-httpd-php .php


Se você tiver ClearModuleList em seu httpd.conf então adicione esta linha:

AddModule mod_php4.c

Para iniciar o Apache com SSL:

# /www/bin/apachectl startssl

Ou, se você optar sem SSL:

# /www/bin/apachectl start

Após a instalação crie um arquivo com o seguinte conteúdo para visualizar as variáveis do seu PHP.

<?
   phpinfo();
?>

Bom por enquanto é só. Breve estarei com contribuindo com mais dicas e artigos.

Fernando da Silva Santos

fernandossantos@hotmail.com

   

Páginas do artigo
   1. Configuração do Apache com suporte a SSL e PHP
Outros artigos deste autor

Configurando o Samba para compartilhamento por autenticação de usuários

Como converter sua partição de ext2 para ext3

Problemas com o Squid

Leitura recomendada

Configurando DNS (bind9) no Debian Sarge

Recuperando sistema em mirror LVM 1

Apache básico

HAproxy + Stunnel (https) + CentOS 6

Instalando e configurando o vsftpd no Ubuntu

  
Comentários
[1] Comentário enviado por removido em 14/07/2003 - 13:43h

Como faco depois de configurado para pedir um certificado para o servidor, pois o navegador fala que esta chave nao e confiavel pois foi assinada por mim mesmo

[2] Comentário enviado por eduardok em 16/07/2003 - 15:19h

Aparte de como de adicionar o modulo do php no apache me ajudou muito pois o meu apache estava travando por causa de um linha "LoadModule php4_module libexec/libphp4.so"

Valeu!

[3] Comentário enviado por gomes.angela em 24/06/2004 - 10:28h

E se o meu Apache for o 2.0????

[4] Comentário enviado por duduzinhu em 26/06/2007 - 16:46h

Finalmente deu certo!
Depois de centenas de tutoriais lidos esse deu certo mas fiz algumas alterações:
1º - no ./config do openssl seria melhor colocar ./config --prefix=/usr/local/openssl para q possamos localizar o openssl na hora de compilar o mod_ssl
2º - NÃO FUNCIONA NO APACHE2
3º - NÃO FUNCIONA NO PHP5
4º - na hora de compilar o mod_ssl ñ seria (./configure --with-apache=/apacheversão --with-ssl=/OpenSSLversão) e sim (./configure --with-apache=/diretoriodoapache --with-ssl=/usr/local/openssl) <<<< se ñ colocassemos o openssl na sua propria pasta onde ele estaria?
5º - na hora de compilar o php com o (./configure --enable-track-vars --enable-trans-sid --with-mysql --disable-debug --with-apxs=/var/www/bin/apxs) ñ vai dar certo pq vc instalou o apache no /www e ñ no /var/www -.-"
Tirando isso tudo certo, tive q seguir centenas de tutoriais só pq os autores dos mesmos não disceram Ñ FUNFA EM PHP5. ta na hora de faaser tutos melhores hein!!
Thanks


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts