Verifique, ative, configure e desative o firewall do sistema operacional Linux sem bloquear seu próprio acesso.
Como funciona
O grupo de segurança filtra todo o tráfego de entrada e saída da instância ECS antes que o firewall do sistema operacional o processe. O tráfego precisa passar por ambos para chegar à aplicação.
-
Grupo de segurança (camada de rede na nuvem)
Função: Um grupo de segurança atua como firewall virtual e controla o tráfego de entrada e saída fora do sistema operacional. É a primeira linha de defesa.
Lógica: Se um grupo de segurança negar tráfego em uma porta (como a porta 22 para SSH), todas as solicitações externas para essa porta serão bloqueadas, independentemente das configurações do firewall do sistema operacional.
-
Firewall do sistema (camada da instância)
Função: Softwares de firewall como
firewalldouufwsão executados dentro do sistema operacional Linux e vêm desativados por padrão. Eles oferecem controle granular sobre o tráfego já permitido pelo grupo de segurança.Lógica: O tráfego deve passar pelo grupo de segurança antes de chegar ao firewall do sistema operacional. Os dois formam uma relação lógica "E": a aplicação só recebe tráfego se ambos permitirem.
Procedimento
Verifique o status do firewall
Verifique o status atual do firewall antes de fazer alterações.
Alibaba Cloud Linux, CentOS ou Red Hat
Execute o comando a seguir para verificar o status do firewalld.
sudo firewall-cmd --state
not running: O firewall está desativado.running: O firewall está ativado.Se a saída for
command not found, ofirewalldnão está instalado. Instale-o executandosudo yum install firewalld -yousudo dnf install firewalld -y.
Ubuntu ou Debian
Execute o comando a seguir para verificar o status do ufw.
sudo ufw status
Status: active: O firewall está ativado.Status: inactive: O firewall está desativado.No Debian, se a saída for
command not found, oufwnão está instalado. Executesudo apt update && sudo apt install ufw -ypara instalá-lo.
Ative o firewall
Nunca ative o firewall antes de adicionar regras para permitir o tráfego necessário. Essa ação pode bloquear seu acesso à instância. Sempre permita o tráfego primeiro e depois ative o firewall.
Alibaba Cloud Linux, CentOS ou Red Hat
-
Permita permanentemente o SSH para manter sua sessão remota aberta.
sudo firewall-cmd --permanent --add-service=ssh -
Recarregue o firewall para aplicar as novas regras.
sudo firewall-cmd --reload -
Inicie o serviço de firewall.
sudo systemctl start firewalld -
(Opcional): Configure o firewall para iniciar automaticamente na inicialização do sistema.
sudo systemctl enable firewalld
Ubuntu ou Debian
-
Permita conexões SSH.
sudo ufw allow ssh -
Ative o firewall. O
ufwcarrega automaticamente as regrasallowexistentes e inicia na inicialização por padrão.sudo ufw enableO sistema avisa que a operação pode interromper conexões existentes. Insira
ypara confirmar. Como o SSH já está permitido, sua sessão permanece conectada.
Abrir uma porta ou serviço específico
Alibaba Cloud Linux, CentOS ou Red Hat
-
Abrir uma porta ou serviço específico:
-
Por nome do serviço (recomendado):
# Permanently allow the HTTP and HTTPS services sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https -
Por número da porta:
# Permanently allow port 8080/TCP sudo firewall-cmd --permanent --add-port=8080/tcp
-
-
Aplicar as novas regras: Recarregue o firewall após adicionar ou remover regras.
sudo firewall-cmd --reload -
Verifique se as regras estão em vigor:
Liste todas as regras ativas na zona atual, incluindo serviços, portas e protocolos.
sudo firewall-cmd --list-all -
Abrir uma porta ou serviço específico:
-
Por nome do serviço (recomendado):
# Allow the HTTP and HTTPS services sudo ufw allow http sudo ufw allow https -
Por número da porta:
# Allow port 3306/TCP sudo ufw allow 3306/tcp
-
-
Verifique se as regras estão em vigor:
Execute o comando a seguir para visualizar todas as regras ativas.
sudo ufw status -
Melhores práticas
Princípio do menor privilégio: Abra apenas as portas essenciais para sua aplicação. Para serviços críticos como bancos de dados, permita acesso somente de endereços IP internos confiáveis e evite exposição à Internet.
Manter uma conexão de backup: Antes de alterar regras de firewall, estabeleça uma conexão remota com a instância. Uma sessão existente persiste após mudanças nas regras e serve como canal de backup.
-
Prevenção de riscos
-
Logs e monitoramento: Audite regularmente os logs do firewall para detectar tentativas de acesso incomuns.
firewalld: Ojournaldgerencia os logs. Visualize-os comsudo journalctl -u firewalld.ufw: Os logs ficam em/var/log/ufw.log.
-
-
Serviço ainda inacessível após desativar o firewall do sistema operacional
Verifique os itens a seguir nesta ordem:
Verifique o grupo de segurança: Faça login na página Grupos de Segurança do console ECS. Confirme se as regras de entrada permitem tráfego na porta necessária a partir dos IPs de origem apropriados.
Verifique o status de escuta do serviço: Confirme se a aplicação escuta no endereço esperado (como
0.0.0.0) e na porta correta. Executess -tunlp | grep <port_number>ounetstat -tunlp | grep <port_number>na instância.Verifique a ACL de rede: Se sua instância estiver associada a uma ACL de rede, verifique se as regras dela permitem o tráfego relevante.
-
Resolver erro command not found
A ferramenta de gerenciamento de firewall não está instalada. Instale-a:
No CentOS/Red Hat/Alibaba Cloud Linux, execute
sudo yum install firewalld -yousudo dnf install firewalld -y.No Ubuntu/Debian, execute
sudo apt update && sudo apt install ufw -y.
Ubuntu ou Debian
Com o ufw, as regras entram em vigor imediatamente e persistem após reinicializações.
Desativar o firewall
Desative temporariamente o firewall para determinar se uma política de bloqueio causa problemas de conectividade.
Não desative o firewall em ambientes de produção. Reative-o após os testes ou após resolver o problema.
CentOS, Red Hat ou Alibaba Cloud Linux
sudo systemctl stop firewalld
Ubuntu ou Debian
sudo ufw disable