O que é o UFW? Você pensaria que essa é uma pergunta fácil, mas quanto mais fontes eu leio, menos claro fica.
O acrônimo indica o Uncomplicated FireWall, como se o ufw realmente implementasse um firewall. E, de fato, em muitos lugares, é referido como um firewall em si, como neste artigo .
A página wiki de ajuda do Ubuntu na UFW diz que o UFW é uma ferramenta de configuração para o iptables. (Por sua vez, a página da wiki de ajuda sobre firewalls diz que iptables é o banco de dados de regras de firewall e que também é o firewall real, como se um banco de dados fosse um firewall, o que é obviamente falso. E é claro que 'iptables' também é o nome de um programa.)
Se o ufw for uma ferramenta de configuração, podemos esperar que seja um programa que você executa para configurar alguma coisa e, uma vez feito, você sai com a configuração estabelecida. Essa é a posição da resposta aceita desta pergunta: O FireWall não complicado (ufw) é um serviço?
Mas outras respostas sobre essa pergunta discordam - não, é um serviço. E, de fato, na minha máquina 18.04, vejo que o ufw está sendo executado como um serviço! Por que diabos uma ferramenta de configuração é executada como um serviço ?!
Além disso, systemctl list-units --all --type=service
shows ufw.service
é loaded and active
(e também exited
?!) Ainda ufw status
mostra inactive
.
Então, o que significa ufw status = inactive?
Que "o firewall" (seja o que for) está inativo? É o que o documento da página de manual do ufw para 'status' sugere.
Ou significa que as regras configuradas no ufw estão inativas (mas outras configuradas no iptables estão ativas)?
Ou isso significa que o ufw iniciou na inicialização, instalou suas regras no ipconfig (ou onde quer que vá) para que elas entrem em vigor agora, e agora o ufw não tem nada para fazer e fica inativo?
De interesse particular: desejo seguir algumas instruções que exigem a emissão de alguns comandos do iptables, mas estou preocupado que eles entrem em conflito ou sejam sobrescritos pelo aparelho ufw.
Respostas:
O ufw é um front-end para o netfilter / iptables, o mecanismo do Linux para rotear e filtrar o tráfego da Internet.
O ufw é completamente opcional e é possível criar tabelas de firewall e roteamento diretamente usando os comandos iptables. Algumas pessoas preferem a sintaxe do ufw, que deve facilitar um pouco.
O ufw em si não é o firewall, é uma ferramenta para definir a configuração do netfilter / iptables. Ele é registrado como um serviço porque precisa ser executado toda vez que sua máquina é inicializada. Não acredito que ele permaneça residente na memória depois de fazer essa configuração. "reiniciar" o serviço simplesmente executa novamente seus scripts. Não é incomum que coisas nas distribuições Linux sejam registradas como serviços, mesmo que sejam apenas scripts executados na inicialização ou no desligamento sem permanecer residente no meio.
Se você usa o ufw, não pode definir suas próprias regras do iptables usando seus próprios scripts, pois elas serão substituídas quando o ufw definir as suas próprias. Isso também significa que o ufw pode entrar em conflito com outras ferramentas que definem regras de firewall.
Se
sudo ufw status
retornar "inativo", significa que o ufw foi desativado (e, por exemplo, não reaplicará nenhuma regra na inicialização). Você precisa garantir que o ufw esteja ativadosudo ufw enable
, embora também precise configurar regras para que isso tenha significado. Se você tem certeza de que ativou o ufw, mas ele retorna "inativo", pode haver algum outro problema.Observe que "iniciar" o serviço não habilita o ufw, apenas ativa o script de inicialização. Se o ufw estiver desativado quando o script de inicialização for executado, ele não fará nada.
Você pode saber se suas regras de firewall foram aplicadas a qualquer momento usando o iptables diretamente:
fonte