Faz pouco o lançamento de a nova versão do firewall de gerenciamento dinâmico firewalld 1.2, implementado como um wrapper sobre os filtros de pacotes nftables e iptables.
Para quem não conhece o Firewalld, posso dizer que é um firewall dinâmico gerenciável, com suporte para zonas de rede para definir o nível de confiança das redes ou interfaces que você usa para se conectar. Tem suporte para configurações IPv4, IPv6 e pontes ethernet.
Além disso, firewalld mantém uma configuração em execução e uma configuração permanente separadamente. Assim, o firewalld também fornece uma interface para que os aplicativos adicionem regras ao firewall de maneira conveniente.
O antigo modelo de firewall (system-config-firewall/lokkit) era estático e cada alteração exigia uma reinicialização completa do firewall. Isso significava ter que descarregar os módulos de firewall do kernel (por exemplo, netfilter) e recarregá-los novamente em cada configuração. Além disso, essa reinicialização significou a perda das informações de status das conexões estabelecidas.
Em contraste, firewalld não requer uma reinicialização do serviço para aplicar uma nova configuração. Portanto, não é necessário recarregar os módulos do kernel. A única desvantagem é que para que tudo isso funcione corretamente, a configuração do firewall deve ser feita através do firewalld e suas ferramentas de configuração (firewall-cmd ou firewall-config). O Firewalld é capaz de adicionar regras usando a mesma sintaxe dos comandos {ip,ip6,eb}tables (regras diretas).
O serviço também fornece informações sobre a configuração atual do firewall via DBus, e da mesma forma, novas regras também podem ser adicionadas, usando o PolicyKit para o processo de autenticação.
O Firewalld é executado como um processo em segundo plano que permite que as regras de filtragem de pacotes sejam alteradas dinamicamente pelo D-Bus sem recarregar as regras de filtragem de pacotes e sem desconectar as conexões estabelecidas.
Para gerenciar o firewall, o utilitário firewall-cmd é usado que, ao criar regras, não se baseia em endereços IP, interfaces de rede e números de porta, mas nos nomes dos serviços (por exemplo, para abrir o acesso SSH, você precisa executar “firewall-cmd – add — service=ssh” , para fechar o SSH – “firewall-cmd –remove –service=ssh”).
A interface gráfica firewall-config (GTK) e o applet firewall-applet (Qt) também podem ser usados para alterar as configurações do firewall. O suporte para gerenciamento de firewall por meio da API D-BUS firewalld está disponível em projetos como NetworkManager, libvirt, podman, docker e fail2ban.
Principais novos recursos do firewalld 1.2
Nesta nova versão Os serviços snmptls e snmptls-trap foram implementados para gerenciar o acesso ao protocolo SNMP por meio de um canal de comunicação seguro.
Destaca-se também que implementou um serviço que suporta o protocolo usado no sistema de arquivos IPFS descentralizado.
Outra das mudanças que se destacam nesta nova versão é que serviços com suporte foram adicionados para gpsd, ident, ps3netsrv, CrateDB, checkmk, netdata, Kodi JSON-RPC, EventServer, exportador de nó Prometheus, kubelet-readonly.
Além disso, destaca-se também que adicionado modo de inicialização à prova de falhas, que permite, em caso de problemas com as regras especificadas, retornar à configuração padrão sem deixar o host desprotegido.
Das outras mudanças que se destacam nesta nova versão:
- Adicionado parâmetro “–log-target”.
- O Bash fornece suporte para preenchimento automático de comandos para trabalhar com regras.
- Adicionada versão segura dos componentes do blueprint do driver k8s
Se estiver interessado em saber mais sobre esta nova versão, pode consultar os detalhes no link a seguir
Obter Firewall 1.2
Finalmente para aqueles que interessado em poder instalar este Firewall, você deve saber que o projeto já está em uso em muitas distribuições Linux, incluindo RHEL 7+, Fedora 18+ e SUSE/openSUSE 15+. O código firewalld é escrito em Python e é liberado sob a licença GPLv2.
Você pode obter o código-fonte para sua compilação no link abaixo.
Quanto à parte de um manual do usuário, Posso recomendar o seguinte.