Pesquisa de site

Regras úteis de 'FirewallD' para configurar e gerenciar firewall no Linux


Firewalld fornece uma maneira de configurar regras dinâmicas de firewall no Linux que podem ser aplicadas instantaneamente, sem a necessidade de reiniciar o firewall e também suporta conceitos de zona e D-BUS que facilitam a configuração.

Firewalld substituiu o antigo mecanismo de firewall do Fedora (Fedora 18 em diante), RHEL/CentOS 7 e outras distribuições mais recentes dependem este novo mecanismo. Um dos maiores motivos para a introdução de um novo sistema de firewall é que o firewall antigo precisa ser reiniciado após cada alteração, interrompendo assim todas as conexões ativas. Como dito acima, o firewalld mais recente oferece suporte a zonas dinâmicas, o que é útil na configuração de diferentes conjuntos de zonas e regras para seu escritório ou rede doméstica por meio de uma linha de comando ou usando um método GUI.

Inicialmente, o conceito de firewalld parece muito difícil de configurar, mas serviços e zonas facilitam a configuração mantendo ambos juntos, conforme abordado neste artigo.

Em nosso artigo anterior, onde vimos como brincar com o firewalld e suas zonas, agora aqui, neste artigo, veremos algumas regras úteis do firewalld para configurar seus sistemas Linux atuais usando a linha de comando.

  1. Configuração do Firewalld no RHEL/CentOS 7

Todos os exemplos abordados neste artigo são testados na prática na distribuição CentOS 7 e também funcionam nas distribuições RHEL e Fedora.

Antes de implementar regras de firewalld, certifique-se primeiro de verificar se o serviço firewalld está ativado e em execução.

systemctl status firewalld

A imagem acima mostra que o firewalld está ativo e em execução. Agora é hora de verificar todas as zonas e serviços ativos.

firewall-cmd --get-active-zones
firewall-cmd --get-services

Caso você não esteja familiarizado com linha de comando, você também pode gerenciar o firewalld a partir da GUI, para isso você precisa ter o pacote GUI instalado no sistema, caso contrário instale-o usando o seguinte comando.

yum install firewalld firewall-config

Como dito acima, este artigo foi escrito especialmente para amantes de linha de comando e todos os exemplos que iremos cobrir são baseados apenas em linha de comando, sem interface gráfica.

Antes de prosseguir, primeiro certifique-se de confirmar em qual zona pública você irá configurar o firewall do Linux e listar todos os serviços ativos, portas e regras avançadas para zona pública usando o seguinte comando.

firewall-cmd --zone=public --list-all

Na imagem acima, nenhuma regra ativa foi adicionada ainda, vamos ver como adicionar, remover e modificar regras na parte restante deste artigo….

1. Adicionando e removendo portas no Firewalld

Para abrir qualquer porta para zona pública, use o seguinte comando. Por exemplo, o comando a seguir abrirá a porta 80 para zona pública.

firewall-cmd --permanent --zone=public --add-port=80/tcp

Da mesma forma, para remover a porta adicionada, basta usar a opção ‘–remove’ com o comando firewalld conforme mostrado abaixo.

firewall-cmd --zone=public --remove-port=80/tcp

Depois de adicionar ou remover portas específicas, certifique-se de confirmar se a porta foi adicionada ou removida usando a opção ‘–list-ports’.

firewall-cmd --zone=public --list-ports

2. Adicionando e removendo serviços no Firewalld

Por padrão, o firewalld vem com serviços predefinidos, se você deseja adicionar uma lista de serviços específicos, você precisa criar um novo arquivo xml com todos os serviços incluídos no arquivo ou então você também pode definir ou remover cada serviço manualmente executando o seguinte comandos.

Por exemplo, os comandos a seguir irão ajudá-lo a adicionar ou remover serviços específicos, como fizemos para FTP aqui neste exemplo.

firewall-cmd --zone=public --add-service=ftp
firewall-cmd --zone=public --remove-service=ftp
firewall-cmd --zone=public --list-services

3. Bloquear pacotes de entrada e saída (modo pânico)

Se desejar bloquear qualquer conexão de entrada ou saída, você precisará usar o modo ‘pânico’ para bloquear tais solicitações. Por exemplo, a regra a seguir eliminará qualquer conexão estabelecida existente no sistema.

firewall-cmd --panic-on

Depois de ativar o modo de pânico, tente executar ping em qualquer domínio (por exemplo, google.com) e verifique se o modo de pânico está ATIVADO usando '–query-panic >' opção conforme listado abaixo.

ping google.com -c 1
firewall-cmd --query-panic

Você vê na imagem acima, a consulta de pânico diz “Host desconhecido google.com“. Agora tente desativar o modo de pânico e, mais uma vez, execute ping e verifique.

firewall-cmd --query-panic
firewall-cmd --panic-off
ping google.com -c 1

Agora, desta vez, haverá uma solicitação de ping do google.com.