Configurando o firewall UFW

LinuxBeginner
Pratique Agora

Introdução

Imagine que seu computador seja uma casa. Por padrão, as portas e janelas podem estar abertas, permitindo a entrada de qualquer pessoa. Para protegê-la, você precisa de um segurança que controle o acesso com base em um conjunto de regras.

No Linux, o UFW (Uncomplicated Firewall) atua como esse segurança. Ele foi projetado para oferecer uma interface mais simples sobre sistemas de firewall de nível inferior. O UFW permite definir quem pode ou não se conectar ao seu sistema.

Essa distinção é importante: o UFW é uma camada de gerenciamento, não o mecanismo de firewall propriamente dito. Ele oferece aos iniciantes uma interface de políticas mais simples para controlar o acesso à rede sem precisar escrever diretamente regras de filtragem de pacotes de nível inferior.

No entanto, configurar um firewall em um ambiente de nuvem como o LabEx exige cuidado. Se você bloquear por padrão todas as conexões de entrada, uma prática comum de segurança, poderá desconectar acidentalmente o ambiente do laboratório.

Neste laboratório, você adotará uma abordagem segura:

  1. Definir a política padrão como Allow Incoming para evitar perder o acesso.
  2. Permitir explicitamente o tráfego na porta 8080 para uma aplicação web.
  3. Ativar o firewall.

Esse processo permite aprender a gerenciar regras do UFW sem perder o acesso ao seu espaço de trabalho.

Verificar o status do firewall

Antes de fazer qualquer alteração, é importante entender o estado atual da aplicação e do firewall.

Temos um servidor web simples em execução na porta 8080. Primeiro, verifique se a aplicação está acessível.

Execute o comando a seguir:

curl -I 127.0.0.1:8080

Você deverá ver uma resposta HTTP semelhante a esta:

HTTP/1.0 200 OK
Server: SimpleHTTP/0.6 Python/3.10.6
...

Isso confirma que a aplicação web está em execução e pode ser acessada localmente.

Verificar o serviço antes de alterar o firewall ajuda a distinguir dois problemas diferentes: problemas na aplicação e problemas na política de rede. Se o serviço já falhar localmente, o firewall não é o primeiro componente a ser investigado.

Em seguida, verifique o status do UFW para saber se ele está ativo no momento.

sudo ufw status

Provavelmente, você verá:

Status: inactive

Isso indica que o UFW está instalado, mas não está aplicando nenhuma regra no momento. Todo o tráfego pode passar livremente.

Um conjunto de regras de firewall é, na prática, uma política de acesso à rede. “Inactive” não significa que o software está com defeito; significa que a política não está sendo aplicada no momento.

Configurar a política padrão e as regras

Agora, vamos configurar como o firewall tratará o tráfego.

Definir a política padrão como Allow

Por padrão, o UFW costuma ser configurado para negar todas as conexões de entrada. Em uma máquina local, isso é seguro. No entanto, no ambiente online do LabEx, bloquear todas as conexões de entrada pode interromper a conexão entre seu navegador e o laboratório.

Para evitar isso, defina a política padrão do tráfego de entrada como ALLOW:

sudo ufw default allow incoming

Saída:

Default incoming policy changed to 'allow'
(be sure to update your rules accordingly)

Permitir a porta 8080

Em seguida, crie uma regra específica para garantir que o tráfego destinado à nossa aplicação web na porta 8080 seja explicitamente permitido. Essa é uma boa prática mesmo quando a política padrão é “allow”, pois documenta sua intenção e prepara a configuração para um futuro em que você talvez altere a política padrão para “deny”.

Essa intenção explícita é importante em segurança. Uma regra clara facilita entender posteriormente por que uma porta está aberta e se essa exposição ainda é necessária.

sudo ufw allow 8080

O sistema confirmará:

Rules updated
Rules updated (v6)

Agora, estabelecemos uma configuração básica segura e adicionamos uma regra específica para nossa aplicação.

Ativar o firewall

Com as regras configuradas, é hora de ativar o firewall.

Execute o comando a seguir para ativar o UFW:

sudo ufw enable

Como definimos a política padrão como ALLOW, o UFW é ativado imediatamente sem avisar que a conexão SSH pode ser interrompida, um aviso comum quando a política padrão é deny.

Você deverá ver:

Firewall is active and enabled on system startup

Isso efetivamente “liga” o segurança.

A partir deste momento, o UFW não está apenas armazenando regras; ele está aplicando essas regras. Essa diferença entre uma política configurada e uma política ativa é um conceito comum de segurança em muitos sistemas.

Verificar a configuração do firewall

Por fim, verifique se o firewall está ativo e se as regras foram aplicadas corretamente.

Verifique o status novamente:

sudo ufw status

Agora, o status deverá aparecer como active, junto com as regras que você criou:

Status: active

To                         Action      From
--                         ------      ----
8080                       ALLOW       Anywhere
8080 (v6)                  ALLOW       Anywhere (v6)

Testar a conectividade

Confirme que a aplicação web continua acessível com o firewall ativado.

curl -I 127.0.0.1:8080

Você deverá receber a mesma resposta HTTP/1.0 200 OK de antes.

Isso confirma que:

  1. O firewall está ativo.
  2. As regras estão funcionando conforme esperado.
  3. A aplicação continua acessível.

Resumo

Neste laboratório, você configurou e ativou o firewall UFW com sucesso.

Você aprendeu a:

  1. Verificar o status do firewall: usar sudo ufw status para saber se o firewall está ativo.
  2. Configurar padrões seguros: usar sudo ufw default allow incoming para evitar perder acidentalmente o acesso em ambientes de nuvem.
  3. Adicionar regras: usar sudo ufw allow 8080 para permitir tráfego em portas específicas.
  4. Ativar o firewall: usar sudo ufw enable para ativar as regras.

Em um ambiente de produção, normalmente você definiria a política padrão para deny no tráfego de entrada e permitiria explicitamente apenas as portas necessárias, como 22 para SSH, 80 para HTTP e outras. No entanto, entender como gerenciar essas regras com segurança é o primeiro passo para proteger seu sistema.