Sem um firewall, não existem regras ou restrições no tráfego de rede, o que leva a uma série de consequências negativas. O sistema Linux vem com uma ferramenta de configuração de firewall padrão, que é o Uncomplicated Firewall (UFW). Mas como configurar um firewall UFW? Sente-se e relaxe, este tutorial tem tudo explicado!
Neste tutorial, você aprenderá como configurar o UFW e criar um firewall em seu sistema Linux para proteger sua rede e evitar atividades maliciosas.
Preparado? Continue lendo para começar!
Pré-requisitos
Este tutorial será uma demonstração prática. Se deseja acompanhar, certifique-se de ter o seguinte:
- Uma máquina Ubuntu – Este tutorial utiliza o Ubuntu 20.04 LTS, mas outras distribuições Linux também funcionarão.
- Privilégios de root para a sua máquina.
Instalando o UFW e Habilitando a Conexão IPv6
Mesmo que o UFW venha embutido no sistema Ubuntu, ele não é instalado por padrão. Instale primeiro o UFW com o gerenciador de pacotes apt
e configure-o para permitir conexões sobre o IPv6.
1. Abra o seu terminal e execute o comando apt update
abaixo para atualizar o índice de pacotes local. O comando aceita todas as solicitações (-y
) durante a atualização para reduzir a intervenção do usuário.

2. Em seguida, execute o comando abaixo para instalar o UFW (install uwf
) no seu sistema, aceitando todas as solicitações (-y
) durante a instalação.

3. Abra o arquivo de configuração do UFW (/etc/default/ufw) com o seu editor de texto favorito. O UFW suporta IPv6, mas você precisa garantir que o firewall esteja configurado para aceitar conexões sobre IPv6.
Se você só tiver o IPv4 ativado, ainda estará vulnerável a ataques IPv6.
4. Role até a variável IPV6 e defina o valor como yes, como mostrado abaixo, depois salve as alterações e saia do editor

5. Por fim, execute o comando abaixo para desativar e reativar o UFW. O comando reinicia o serviço UFW para que as alterações possam entrar em vigor.
Após a conclusão do comando, o seu firewall agora pode escrever conjuntos de regras de firewall tanto para IPv4 quanto para IPv6.
Configurando Políticas Padrão para Regras do Firewall
Se você está começando com o UFW, é recomendável configurar uma política padrão para as suas regras. As políticas padrão são aplicadas a uma cadeia que ainda não tem regras específicas definidas.
Configure o UFW para negar todas as conexões de entrada e permitir todas as conexões de saída. Como resultado, qualquer tentativa de alcançar a sua máquina do mundo exterior será negada, enquanto você ainda pode se conectar livremente a qualquer site ou servidor.
Execute o comando ufw
abaixo para negar
todas as conexões entrantes
por padrão
.

Agora execute o seguinte comando para permitir
todas as conexões saíntes
por padrão
.

Permitindo Conexões SSH no Firewall UFW
Você acabou de configurar políticas padrão no seu firewall UFW para negar todo o tráfego de entrada, e a regra “permitir tudo-negar tudo” é uma boa configuração para um usuário comum. Mas e se você estiver executando um servidor? Você precisará permitir tráfego específico de entrada e saída. Permitir a conexão SSH no seu firewall UFW resolverá para permitir tráfego específico de entrada e saída.
Você configurará um servidor SSH que permite conexões SSH de entrada na porta 22. Mas por que a porta 22 e não qualquer outra porta? Em sistemas tipo Unix, o daemon SSH escuta na porta 22 por padrão, então é uma boa prática usar a porta SSH padrão para facilitar um pouco a sua vida.
1. Execute os comandos abaixo para instalar o servidor OpenSSH (install openssh-server
) no seu sistema e iniciar um servidor OpenSSH (start ssh
).
2. Agora execute o comando abaixo para permitir conexões SSH de entrada. Sem especificar a porta 22 será suficiente, pois o UFW sabe qual porta é para SSH.

O arquivo /etc/services contém uma lista de todos os serviços disponíveis no seu sistema. Abra o arquivo no seu editor de texto, vá até ssh e veja que o número da porta (22) faz parte da descrição do serviço, como mostrado abaixo.

Mas talvez você prefira especificar o número da porta (22
) para permitir o SSH. Se for o caso, execute o seguinte comando.
3. Agora execute o comando abaixo para ativar o UFW.
Digite Y na prompt de confirmação, conforme mostrado abaixo, e pressione Enter para continuar executando o comando. O UFW agora começará a filtrar pacotes no seu sistema.

4. Finalmente, execute um dos comandos abaixo para verificar o status do seu firewall UFW.
Se você executar o comando com a opção verbose
, verá uma saída semelhante à mostrada abaixo:
- Status: ativo – Indica que o firewall está atualmente em execução.
- Logging: on (baixo) – Indica que o UFW está registrando todos os pacotes processados pelo firewall.
- Padrão: negar (entrante), permitir (saída), desativado (roteado) – Indica que a política padrão é negar todas as conexões de entrada e permitir todas as conexões de saída.
- Novos perfis: ignorar – Indica que o firewall está atualmente usando o conjunto padrão de regras.

Se você executar o comando com a opção numerado
em vez disso, verá a saída abaixo. Você pode ver uma lista de regras numeradas e seu status correspondente de PERMITIR ou NÃO PERMITIR.

Permitindo Conexões HTTP e HTTPS
Neste ponto, você só permitiu conexões SSH no seu firewall UFW, mas isso limita as capacidades do seu servidor. Permita outros tipos de conexões, como HTTP ou HTTPS, e adicione mais regras ao firewall UFW.
Execute um dos seguintes comandos para permitir conexões HTTP de entrada.

Agora, execute um dos comandos abaixo para permitir conexões HTTPS de entrada.

Permitindo Conexões de Faixa de Portas Específica e Endereço IP
Algumas aplicações usam várias portas para fornecer seus serviços. E talvez você tenha uma faixa de portas para abrir ou precise permitir conexão de um endereço IP específico. Nesse caso, adicione mais regras de firewall UFW.
Execute os comandos abaixo para permitir conexões de entrada nas portas 5001 a 5009. Você sempre deve especificar o protocolo (tcp
ou udp
) após o intervalo de portas que as regras se aplicam porque nem todas as portas são usadas por ambos os protocolos.
Por exemplo, as portas TCP comumente usadas incluem 80 (HTTP) e 443 (HTTPS). Mas as portas UDP comuns incluem 53 (DNS) e 67/68 (DHCP).

Execute o comando abaixo se preferir permitir conexões SSH de um endereço IP específico. O comando permite conexões SSH (porta 22
) apenas do endereço IP 192.168.1.2
.

Permitindo Tráfego de uma Interface de Rede Específica
O UFW também permite que você permita tráfego apenas em uma interface de rede específica, como eth0 é a primeira interface Ethernet e wlan0 é a primeira interface Wi-Fi.
Execute um dos comandos abaixo para permitir conexões HTTP apenas nas interfaces eth0
e wlan0
.

Excluindo Regras de Firewall UFW
Talvez algumas regras do firewall UFW não sirvam mais para nada. Nesse caso, você pode querer remover algumas das regras do UFW. Mas primeiro, você deve saber o número ou o nome da regra a ser excluída.
1. Execute o comando abaixo para obter uma lista numerada das regras adicionadas ao UFW.
Observe o número ou nome da regra na saída, como o abaixo.

2. Em seguida, execute o comando abaixo para excluir
a regra número 4
, que é o intervalo de porta 5001:5010/tcp
.

3. Execute o comando abaixo para excluir
uma regra pelo seu nome real com o status permitir
. Neste exemplo, você excluiria a regra http
executando o seguinte comando.

4. Agora execute o seguinte comando para excluir
uma regra especificando um número de porta (443
) com o status permitir
.

5. Por fim, execute novamente o seguinte comando como fez no passo um para listar todas as regras.
Como mostrado abaixo, as regras para o intervalo de porta 5001:5010/tcp
, o http
e a porta 443
agora estão ausentes.

Redefinindo o Firewall UFW
Pode haver momentos em que você precise redefinir o UFW para suas configurações padrão, como após configurar um grande conjunto de regras. Uma atualização pode alterar sua configuração, exigindo que você reconfigure o UFW e possivelmente comece do zero.
Execute o comando ufw reset
abaixo para redefinir todas as suas regras de firewall para suas configurações padrão. Este comando desativa o UFW e exclui todas as suas regras de firewall atuais.
Digite ‘Y’ e pressione Enter para continuar redefinindo seu firewall UFW.

Após a redefinição ser concluída, você terá uma instalação nova do UFW totalmente desativada, e até mesmo suas políticas padrão terão desaparecido.
Agora execute o comando abaixo para reativar o UFW e começar a configurar suas regras de firewall do zero.
Se decidir que não deseja mais usar o UFW, então não há necessidade de reativá-lo. Ou execute o comando abaixo para garantir que o UFW esteja desativado.

Conclusão
Ao longo deste tutorial, você percebeu que configurar um firewall não é tão assustador ao usar o UFW. Agora, você deve ter uma boa compreensão de como configurar e implementar suas próprias regras com o UFW no Ubuntu.
Agora, por que não construir sobre esse conhecimento recém-descoberto aprendendo mais sobre Segurança UFW e Docker em uma máquina Linux?