Pesquisa de site

Configurando um servidor Apache seguro no Ubuntu 24.04


Neste guia completo, orientaremos você no processo de configuração de um servidor Apache seguro no Ubuntu 24.04. Esteja você configurando um site pessoal ou uma plataforma de negócios, seguir estas etapas garantirá que seu servidor não seja apenas funcional, mas também seguro. Lembre-se de substituir “myweb.linuxconfig.org” pelo seu próprio domínio ao longo deste tutorial.

Neste tutorial você aprenderá:

  • Como atualizar e atualizar seu sistema Ubuntu
  • Etapas para instalar e configurar o Apache
  • Configuração de firewall para segurança
  • Criando um site de exemplo e configurando hosts virtuais
  • Habilitando e iniciando o serviço Apache
  • Testando sua configuração do Apache
  • Protegendo o Apache com o certificado SSL Let's Encrypt
  • Fortaleça seu servidor Apache para maior segurança

Guia passo a passo

  1. Atualizar e atualizar o sistema: Comece atualizando os índices dos pacotes e atualizando seu sistema para a versão mais recente. Isso garante que você tenha todos os patches de segurança e dependências mais recentes.

    $ sudo apt update
    $ sudo apt upgrade
    
  2. Instalar o Apache: Em seguida, instale o servidor web Apache2. Apache é um software de servidor web gratuito e de código aberto que alimenta grande parte da web.

    $ sudo apt install apache2
    

    O comando sudo apt install certbot python3-certbot-apache instala ‘certbot’ e seu plugin Apache no sistema. ‘Certbot’ é uma ferramenta gratuita e automatizada projetada para obter certificados SSL da Let’s Encrypt, uma autoridade de certificação gratuita. O plugin Apache, ‘python3-certbot-apache’, é usado especificamente para configurar certificados SSL em servidores Apache. Após a instalação, o comando sudo certbot --apache é executado. Isso executa o ‘certbot’ com o plugin Apache, que não apenas obtém o certificado SSL do Let’s Encrypt, mas também configura automaticamente o Apache para usar este certificado, habilitando HTTPS no servidor.

  3. Testar site SSL seguro: neste ponto, o servidor web Apache2 deve redirecionar automaticamente quaisquer solicitações HTTP para a porta HTTPS. Teste seu site e confirme se ele funciona em uma porta HTTP SSL segura.

  4. Fortaleça a segurança do Apache: Finalmente, fortaleça a instalação do Apache modificando o arquivo de configuração do Apache. Isso inclui desabilitar solicitações de rastreamento, ocultar a versão do Apache e desligar assinaturas de servidor.

    $ sudo nano /etc/apache2/apache2.conf

    Adicione ou modifique as seguintes linhas:

    TraceEnable Off
    ServerTokens Prod
    ServerSignature Off
    

    As diretivas de configuração do Apache TraceEnable Off, ServerTokens Prod e ServerSignature Off são importantes para melhorar a segurança do servidor. TraceEnable Off desativa o método de solicitação HTTP TRACE, evitando possíveis ataques de rastreamento entre sites (XST). ServerTokens Prod limita a quantidade de informações (especificamente, a versão do servidor e o tipo de sistema operacional) que são enviadas nos cabeçalhos de resposta do servidor, reduzindo assim a exposição das informações a possíveis invasores. ServerSignature Off restringe ainda mais o vazamento de informações, removendo a versão do servidor das páginas de erro e dos documentos gerados pelo servidor. Coletivamente, essas configurações são cruciais para ocultar detalhes do servidor que poderiam ser explorados por invasores na elaboração de ataques direcionados.

    Além das diretivas de configuração TraceEnable Off, ServerTokens Prod e ServerSignature Off, você pode considerar adicionar as seguintes configurações para aumentar ainda mais a segurança e desempenho do seu servidor Apache. Você pode adicionar à seção .htaccess, httpd.conf ou VirtualHost:

    Cabeçalho sempre definido X-Content-Type-Options "nosniff": Este cabeçalho evita que os navegadores executem sniffing do tipo MIME, o que pode reduzir a exposição a ataques de download drive-by.

    Cabeçalho sempre definido X-Frame-Options "SAMEORIGIN": Esta configuração evita clickjacking instruindo o navegador a não permitir que a página seja exibida em um frame, a menos que esteja sendo solicitada da mesma origem.

    Cabeçalho sempre definido X-XSS-Protection "1; mode=block": Isso ativa o filtro Cross-Site Scripting (XSS) integrado nos navegadores da web mais recentes e instrui-o a bloquear respostas que contenham ataques detectados .

    SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1: esta linha desativa protocolos SSL/TLS mais antigos e menos seguros (SSLv3, TLSv1 e TLSv1.1) e permite apenas protocolos mais seguros, reduzindo o risco de ataques de downgrade de protocolo.

    SSLCipherSuite HIGH:!aNULL:!MD5: Isso define um Cipher Suite forte para conexões SSL/TLS, que define os algoritmos de criptografia usados.

    Adicionar essas configurações aumenta a segurança geral, mitigando várias vulnerabilidades comuns da web e garantindo que a comunicação com o seu servidor permaneça criptografada e segura. Lembre-se de reiniciar o Apache após fazer essas alterações para aplicá-las.

    Salve e saia e reinicie o Apache

    $ sudo systemctl restart apache2
    

Conclusão

Seguindo estas etapas, você configurou com sucesso um servidor Apache seguro no Ubuntu 24.04. Esta configuração fornece uma base sólida para hospedar seu site, garantindo funcionalidade e segurança. Lembre-se de manter seu servidor atualizado e revisar periodicamente suas configurações de segurança para manter uma presença na web robusta e segura.

Artigos relacionados: