Apache2 com suporte a SSL
Dica publicada em PHP / Internet
Apache2 com suporte a SSL
Em primeiro lugar, se você não tem o Apache instalado no seu Linux:
# apt-get install apache2
Mude para o diretório /etc/apache2/mods-available e veja os módulos disponíveis. Mude para o diretório /etc/apache2/mods-enabled para ver quais módulos estão habilitados:
# cd / etc/apache2/mods-available
# ls
# cd / etc/apache2/mods-enabled
# ls
Agora, instalar e ativar o SSL. Se o módulo SSL não estiver habilitado, ative-o:
# a2enmod SSL
# / etc/init.d/apache2 force-reload
Agora digite:
# cd / etc/apache2
# openssl genrsa-des3-out server.key 1024
Use este conjunto de chaves para criar um pedido de certificado:
# openssl req-new-chave server.key-out server.csr
Quando perguntado aos dados de entrada, crie algo adequado. Certifique-se de anotar a sua senha. Use este comando para criar o seu certificado auto-assinado:
# openssl x509-req-days 365-in-server.csr signkey server.key server.crt-out
Instalar a chave e certificado:
# cp server.crt /etc/ssl/certs/
# cp server.key /etc/ssl/private/
Abra arquivo para edição:
cd / etc/apache2/sites-available
# nano default-ssll
Este arquivo é basicamente criar, mas você vai querer descomentar a linha "SSLOptions" e também alterar as linhas "SSLCertificate" para refletir a localização e nome de sua nova informação:
Não se esqueça de comentar as linhas:
A porta 443 é habilitada quando você usa SSL, para que esteja pronto para ir. Ativar o site SSL padrão:
# a2ensite default-ssl
Se você não ativar o default-ssl irá obter este erro "Apache SSL_ERROR_RX_RECORD_TOO_LONG". Reinicie o Apache:
# /etc/init.d/apache2 restart
# apt-get install apache2
Mude para o diretório /etc/apache2/mods-available e veja os módulos disponíveis. Mude para o diretório /etc/apache2/mods-enabled para ver quais módulos estão habilitados:
# cd / etc/apache2/mods-available
# ls
# cd / etc/apache2/mods-enabled
# ls
Agora, instalar e ativar o SSL. Se o módulo SSL não estiver habilitado, ative-o:
# a2enmod SSL
# / etc/init.d/apache2 force-reload
Agora digite:
# cd / etc/apache2
# openssl genrsa-des3-out server.key 1024
Use este conjunto de chaves para criar um pedido de certificado:
# openssl req-new-chave server.key-out server.csr
Quando perguntado aos dados de entrada, crie algo adequado. Certifique-se de anotar a sua senha. Use este comando para criar o seu certificado auto-assinado:
# openssl x509-req-days 365-in-server.csr signkey server.key server.crt-out
Instalar a chave e certificado:
# cp server.crt /etc/ssl/certs/
# cp server.key /etc/ssl/private/
Abra arquivo para edição:
cd / etc/apache2/sites-available
# nano default-ssll
Este arquivo é basicamente criar, mas você vai querer descomentar a linha "SSLOptions" e também alterar as linhas "SSLCertificate" para refletir a localização e nome de sua nova informação:
SSLEngine em
SSLOptions FakeBasicAuth + + ExportCertData + StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key
SSLOptions FakeBasicAuth + + ExportCertData + StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key
Não se esqueça de comentar as linhas:
#SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
#SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
A porta 443 é habilitada quando você usa SSL, para que esteja pronto para ir. Ativar o site SSL padrão:
# a2ensite default-ssl
Se você não ativar o default-ssl irá obter este erro "Apache SSL_ERROR_RX_RECORD_TOO_LONG". Reinicie o Apache:
# /etc/init.d/apache2 restart
# a2enmod SSL
# / etc/init.d/apache2 force-reload
Corrigir para
#/etc/init.d/apache2 force-reload
Estes comandos não estão errados?
#openssl genrsa-des3-out server.key 1024
#openssl req-new-chave server.key-out server.csr
#openssl x509-req-days 365-in-server.csr signkey server.key server.crt-out
Aqui também tem espaço entre a /
#cp server.key /etc/ssl/private/
Aqui esta errado também
SSLEngine em
Seria correto:
SSLEngine on
Este parementro esta errado.
SSLOptions FakeBasicAuth + + ExportCertData + StrictRequire
Correto seria.
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
Bom faça a correção assim que possível, pois vai deixar muitos que não tem experiencia como eu na dúvida.
Abraço