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:
ou:
Significado das flags:
- t — TCP;
- u — UDP;
- l — apenas portas em escuta (LISTEN);
- n — mostrar números de portas diretamente.
Como fechar/abrir portas com iptables?
Para fechar uma porta (por exemplo, a 80), use:
Essa regra bloqueia conexões de entrada na porta 80 via TCP.
Para verificar:
Para remover a regra:
Se quiser reabrir a porta:
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:
Para verificar as regras atuais:
Para excluir uma regra específica, veja o número dela na lista e remova:
Para reabrir a porta 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:
# 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 disable apache2
Para desativar o Nginx:
sudo systemctl disable nginx
Dicas de segurança
- Feche todas as portas não utilizadas.
- Libere apenas as portas específicas que você realmente precisa (por exemplo, 22 e 443).
- Use o fail2ban para proteger contra ataques de força bruta.
- Configure o firewall (UFW, firewalld ou iptables) imediatamente após instalar o servidor.
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.