Como restringir o acesso à rede usando FirewallD
Como usuário Linux, você pode optar por permitir ou restringir o acesso à rede a alguns serviços ou endereços IP usando o firewall firewalld que é nativo do CentOS/RHEL 8 e da maioria do RHEL. distribuições baseadas em Fedora.
O firewall firewalld usa o utilitário de linha de comando firewall-cmd para configurar regras de firewall.
Antes de podermos realizar qualquer configuração, vamos primeiro habilitar o serviço firewalld usando o utilitário systemctl conforme mostrado:
sudo systemctl enable firewalld
Uma vez ativado, você pode iniciar o serviço firewalld executando:
sudo systemctl start firewalld
Você pode verificar o status do firewalld executando o comando:
sudo systemctl status firewalld
A saída abaixo confirma que o serviço firewalld está instalado e funcionando.
Configurando regras usando Firewalld
Agora que temos o firewalld em execução, podemos ir direto para fazer algumas configurações. O Firewalld permite adicionar e bloquear portas, lista negra e também endereços IP da lista branca para fornecer acesso ao servidor. Depois de concluir as configurações, certifique-se sempre de recarregar o firewall para que as novas regras tenham efeito.
Adicionando uma porta TCP/UDP
Para adicionar uma porta, digamos porta 443 para HTTPS, use a sintaxe abaixo. Observe que você deve especificar se a porta é TCP ou UDP após o número da porta:
sudo firewall-cmd --add-port=22/tcp --permanent
Da mesma forma, para adicionar uma porta UDP, especifique a opção UDP conforme mostrado:
sudo firewall-cmd --add-port=53/udp --permanent
O sinalizador --permanent
garante que as regras persistam mesmo após uma reinicialização.
Bloqueando uma porta TCP/UDP
Para bloquear uma porta TCP, como a porta 22, execute o comando.
sudo firewall-cmd --remove-port=22/tcp --permanent
Da mesma forma, bloquear uma porta UDP seguirá a mesma sintaxe:
sudo firewall-cmd --remove-port=53/udp --permanent
Permitindo um serviço
Os serviços de rede são definidos no arquivo /etc/services. Para permitir um serviço como https, execute o comando:
sudo firewall-cmd --add-service=https
Bloqueando um serviço
Para bloquear um serviço, por exemplo, FTP, execute:
sudo firewall-cmd --remove-service=https
Listando um endereço IP na lista de permissões
Para permitir um único endereço IP no firewall, execute o comando:
sudo firewall-cmd --permanent --add-source=192.168.2.50
Você também pode permitir um intervalo de IPs ou uma sub-rede inteira usando uma notação CIDR (Classless Inter-Domain Routing). Por exemplo, para permitir uma sub-rede inteira na sub-rede 255.255.255.0, execute.
sudo firewall-cmd --permanent --add-source=192.168.2.0/24
Removendo um endereço IP da lista de permissões
Se você deseja remover um IP da lista de permissões do firewall, use o sinalizador --remove-source
conforme mostrado:
sudo firewall-cmd --permanent --remove-source=192.168.2.50
Para toda a sub-rede, execute:
sudo firewall-cmd --permanent --remove-source=192.168.2.50/24
Bloqueando um endereço IP
Até agora, vimos como você pode adicionar e remover portas e serviços, bem como colocar e remover IPs da lista de permissões. Para bloquear um endereço IP, ‘regras ricas’ são usadas para essa finalidade.
Por exemplo, para bloquear o IP 192.168.2.50 execute o comando:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.50' reject"
Para bloquear toda a sub-rede, execute:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.0/24' reject"
Salvando regras de firewall
Se você fez alguma alteração nas regras do firewall, será necessário executar o comando abaixo para que as alterações sejam aplicadas imediatamente:
sudo firewall-cmd --reload
Visualizando as regras de firewall
Para ter que espiar todas as regras do firewall, execute o comando:
sudo firewall-cmd --list-all
Isso conclui este guia sobre como permitir ou restringir o acesso à rede usando FirewallD no CentOS/RHEL 8. Esperamos que você tenha achado este guia útil.