Início
» LINUX
»
Como bloquear portas específicas no Linux com UFW ou firewalld
Como bloquear portas específicas no Linux com UFW ou firewalld
Para bloquear uma porta específica no Linux, adicione uma regra de firewall para a porta e o protocolo que deseja bloquear. Em um sistema Ubuntu usando UFW, por exemplo, você sudo ufw deny 8080/tcppode bloquear novas conexões TCP de entrada na porta 8080. Em sistemas usando firewalld, você pode remover uma permissão de porta existente ou adicionar uma regra de rejeição explícita. O importante é alterar o firewall que seu sistema realmente usa, em vez de misturar regras de UFW, firewalld e nftables de baixo nível.
Antes de bloquear uma porta
Primeiro, confirme o número da porta e se o aplicativo usa TCP, UDP ou ambos. Uma regra TCP não bloqueia automaticamente o UDP no mesmo número. Você também pode verificar os sockets em escuta com:
sudo ss -lntup
Uma regra de firewall controla o tráfego de rede; ela não impede que o aplicativo fique escutando localmente. Se você não precisa do serviço, interromper ou desativar esse serviço geralmente é melhor do que depender apenas de uma regra de firewall.
Se você estiver conectado à máquina via SSH, proteja sua regra de acesso remoto antes de habilitar ou restringir o firewall. O manual atual do UFW alerta especificamente que habilitar o UFW pode interromper conexões SSH existentes e recomenda adicionar primeiro a permissão SSH necessária.
Se o resultado for esse Status: inactivee você quiser habilitar o UFW, primeiro permita o serviço de gerenciamento remoto do qual você depende. Para um perfil OpenSSH padrão:
sudo ufw allow OpenSSH
sudo ufw enable
Verifique se o UFW está ativo antes de alterar suas regras, especialmente em uma máquina gerenciada remotamente.
2. Adicione uma regra de negação para a porta.
Substitua 8080pela porta que deseja bloquear. Especifique o protocolo para que a regra seja inequívoca:
sudo ufw deny 8080/tcp
Para UDP, use:
sudo ufw deny 8080/udp
Se um aplicativo usa ambos os protocolos, adicione as duas regras. O UFW também oferece suporte a `reject` reject; diferentemente de uma negação silenciosa, um `reject` informa ao remetente que a conexão foi recusada.
Uma regra de negação do UFW bloqueia o tráfego TCP de entrada para a porta escolhida.
3. Verificar ou remover a regra UFW
sudo ufw status numbered
A saída deve mostrar uma entrada DENY IN para a porta bloqueada. A sintaxe oficial do UFW também permite excluir a regra, repetindo-a com delete:
sudo ufw delete deny 8080/tcp
Utilize a saída de status numerada para confirmar se a regra UFW pretendida está ativa.
Bloqueie uma porta com o firewalld.
Se a sua instalação do Linux utiliza o firewalld, comece por encontrar a zona ativa:
Substitua o texto publicabaixo se sua interface pertencer a uma zona diferente. Se a porta 8080 foi explicitamente aberta, remova essa permissão e recarregue a configuração permanente:
Com o firewalld, faça a alteração na zona ativa correta e recarregue as regras permanentes.
Se a porta ainda for permitida indiretamente por uma definição de serviço, ou se você quiser um bloqueio explícito específico, adicione uma regra de rejeição abrangente:
Execute sudo ss -lntupnovamente se quiser verificar se um aplicativo ainda está em execução. Em seguida, teste a partir de outra máquina na rede relevante. Se o Netcat estiver instalado, uma verificação TCP pode ser feita da seguinte forma nc -vz SERVER_IP 8080. Teste a partir do mesmo caminho de rede que seus clientes reais usam; um teste em localhost não comprova que o tráfego externo está bloqueado.
Se o serviço nunca deve ser exposto, desative-o ou reconfigure-o. Um firewall é uma camada de controle de acesso, não um substituto para a remoção de ouvintes desnecessários.