wiki:linux:comandos:comando_firewalld
Table of Contents
Exemplos do comando firewalld
Nível Básico
- Verificar o status do `firewalld`:
sudo firewall-cmd --state
- Verifica se o serviço `firewalld` está ativo ou inativo.
- Iniciar o serviço `firewalld`:
sudo systemctl start firewalld
- Inicia o serviço `firewalld`.
- Ativar o `firewalld` para iniciar no boot:
sudo systemctl enable firewalld
- Ativa o serviço para iniciar automaticamente no boot.
- Listar todas as zonas ativas e suas interfaces:
sudo firewall-cmd --get-active-zones
- Mostra todas as zonas ativas e as interfaces de rede atribuídas a cada zona.
- Listar os serviços permitidos em uma zona:
sudo firewall-cmd --list-services --zone=public
- Lista todos os serviços permitidos na zona `public`.
- Permitir temporariamente o tráfego HTTP (porta 80):
sudo firewall-cmd --add-service=http
- Permite o tráfego HTTP (porta 80) temporariamente (até o próximo reload ou reboot).
- Remover temporariamente o tráfego HTTP:
sudo firewall-cmd --remove-service=http
- Remove a permissão para tráfego HTTP (porta 80) temporariamente.
Nível Intermediário
- Permitir permanentemente o tráfego SSH (porta 22):
sudo firewall-cmd --add-service=ssh --permanent
- Permite o tráfego SSH na porta `22` de forma permanente.
- Adicionar uma porta específica para tráfego TCP ou UDP:
sudo firewall-cmd --add-port=8080/tcp
- Permite o tráfego na porta `8080` para o protocolo `TCP`.
- Remover uma porta aberta:
sudo firewall-cmd --remove-port=8080/tcp
- Remove o acesso à porta `8080` via protocolo `TCP`.
- Recarregar as configurações de firewall sem interromper conexões:
sudo firewall-cmd --reload
- Recarrega as regras do firewall sem derrubar conexões ativas.
- Verificar se uma porta está aberta em uma zona específica:
sudo firewall-cmd --zone=public --query-port=8080/tcp
- Verifica se a porta `8080` está aberta na zona `public`.
- Listar as zonas e configurações ativas:
sudo firewall-cmd --list-all
- Lista todas as configurações da zona ativa padrão, incluindo serviços, portas e interfaces permitidas.
- Bloquear permanentemente um endereço IP:
sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.100" reject' --permanent
- Bloqueia permanentemente o tráfego do endereço IP `192.168.1.100`.
- Permitir permanentemente uma faixa de IPs:
sudo firewall-cmd --add-source=192.168.1.0/24 --zone=public --permanent
- Permite permanentemente o tráfego de uma faixa de IPs (`192.168.1.0/24`) na zona `public`.
Nível Avançado
- Criar uma nova zona personalizada:
sudo firewall-cmd --new-zone=zona-personalizada --permanent
- Cria uma nova zona chamada `zona-personalizada`.
- Atribuir uma interface de rede a uma zona específica:
sudo firewall-cmd --zone=public --change-interface=eth0
- Atribui a interface `eth0` à zona `public`.
- Permitir tráfego de um serviço específico apenas em uma zona:
sudo firewall-cmd --zone=home --add-service=samba --permanent
- Permite permanentemente o tráfego para o serviço `Samba` apenas na zona `home`.
- Aplicar uma regra de rich-rule para aceitar tráfego HTTP apenas de um IP específico:
sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.50" service name="http" accept' --permanent
- Permite o tráfego HTTP (porta 80) apenas do IP `192.168.1.50`.
- Configurar um port forwarding (redirecionamento de porta):
sudo firewall-cmd --zone=public --add-forward-port=port=80:proto=tcp:toport=8080 --permanent
- Redireciona o tráfego TCP da porta `80` para a porta `8080` na zona `public`.
- Listar todos os serviços disponíveis no `firewalld`:
sudo firewall-cmd --get-services
- Exibe uma lista de todos os serviços disponíveis que podem ser permitidos ou bloqueados no firewall.
- Remover uma zona personalizada:
sudo firewall-cmd --delete-zone=zona-personalizada --permanent
- Remove a zona `zona-personalizada` do `firewalld` de forma permanente.
- Visualizar a zona associada a uma interface específica:
sudo firewall-cmd --get-zone-of-interface=eth0
- Exibe a zona atual associada à interface `eth0`.
Nível Especializado
- Criar e aplicar uma regra de rich-rule com base em horário:
sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.100" service name="ssh" log prefix="SSH-Access" time daytime start="08:00" stop="18:00" accept' --permanent
- Permite o acesso SSH (porta 22) do IP `192.168.1.100` apenas entre 08:00 e 18:00, registrando cada tentativa no log.
- Bloquear pacotes ICMP (ping) de uma zona específica:
sudo firewall-cmd --zone=public --add-icmp-block=echo-request --permanent
- Bloqueia pacotes ICMP `echo-request` (ping) na zona `public`.
- Ativar masquerading (NAT) para compartilhamento de internet:
sudo firewall-cmd --zone=public --add-masquerade --permanent
- Ativa o masquerading na zona `public` para realizar NAT (compartilhamento de internet).
- Desativar masquerading:
sudo firewall-cmd --zone=public --remove-masquerade --permanent
- Remove a regra de masquerading na zona `public`.
- Permitir múltiplos serviços de uma só vez:
sudo firewall-cmd --add-service={http,https,ftp} --permanent- Permite permanentemente os serviços `http`, `https` e `ftp` com um único comando.
- Monitorar alterações em tempo real no `firewalld`:
sudo firewall-cmd --watch
- Monitora alterações no firewall em tempo real, mostrando modificações na configuração do firewall.
- Desativar completamente o `firewalld`:
sudo systemctl stop firewalld
<br>
sudo systemctl disable firewalld
- Para e desativa o `firewalld` para que ele não inicie automaticamente no boot.
- Restaurar as configurações de fábrica do `firewalld`:
sudo firewall-cmd --complete-reload
- Restaura todas as configurações do firewall para o estado padrão.
wiki/linux/comandos/comando_firewalld.txt · Last modified: by Wiki Administrator
