08.08.2025

Como fechar portas no Linux: iptables e ufw?

Portas abertas são uma das principais vulnerabilidades em um servidor. Se você não as gerencia, corre o risco de deixar uma “porta aberta” para invasores. Neste artigo, vamos ver como fechar portas no Linux usando iptables, ufw e também como verificar quais portas já estão abertas.

Você também vai aprender a fechar a porta 80, bloquear todas as portas exceto as necessárias e entender como isso se relaciona com a segurança de servidores e clientes HTTP.

Como visualizar as portas abertas no servidor?

Antes de fechar as portas, é necessário saber quais estão abertas no momento e quais serviços as utilizam:

sudo ss -tuln

ou:

sudo netstat -tuln

Significado das flags:

Como fechar/abrir portas com iptables?

Para fechar uma porta (por exemplo, a 80), use:

sudo iptables -A INPUT -p tcp --dport 80 -j DROP

Essa regra bloqueia conexões de entrada na porta 80 via TCP.

Para verificar:

sudo iptables -L -n --line-numbers

Para remover a regra:

sudo iptables -D INPUT

Se quiser reabrir a porta:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Como fechar ou abrir uma porta com UFW

O UFW (Uncomplicated Firewall) é uma ferramenta simples para configurar o firewall no Linux, especialmente no Ubuntu.

Para bloquear a porta 80:

sudo ufw deny 80

Para verificar as regras atuais:

sudo ufw status numbered

Para excluir uma regra específica, veja o número dela na lista e remova:

sudo ufw delete

Para reabrir a porta 80:

sudo ufw allow 80

Dessa forma, é possível controlar facilmente o acesso às portas: bloqueando as desnecessárias e liberando apenas as essenciais, sem a complexidade do iptables.

Script para configurar portas

Você pode usar um script automatizado para gerenciar o acesso às portas, bloqueando todas por padrão e liberando apenas as que você desejar:

#!/bin/bash

# Verifica se o UFW está instalado
if ! command -v ufw /dev/null; then
echo "UFW não está instalado. Instalando..."
sudo apt update && sudo apt install -y ufw
fi

echo "Desativando o UFW, se já estiver ativo..."
sudo ufw disable

echo "Resetando todas as regras..."
sudo ufw reset

echo "Definindo política padrão: negar entrada, permitir saída..."
sudo ufw default deny incoming
sudo ufw default allow outgoing

echo "Liberando HTTPS (porta 443)..."
sudo ufw allow 443/tcp

echo "Ativando o UFW..."
sudo ufw enable

echo "Status atual do UFW:"
sudo ufw status verbose

Como desativar serviços que abrem portas

Às vezes, uma porta está aberta porque um serviço está ativo (como Apache ou Nginx). Se você não estiver utilizando, desative-o.

Para desativar o Apache:

sudo systemctl stop apache2
sudo systemctl disable apache2

Para desativar o Nginx:

sudo systemctl stop nginx
sudo systemctl disable nginx

Dicas de segurança

O gerenciamento de portas é uma parte fundamental da segurança em servidores Linux. Agora você sabe como fechar portas, verificar quais estão abertas, bloquear a porta 80 e manter apenas as conexões necessárias ativas.