Esta é simplesmente a minha melhor teoria longe de testar. Parece que:
- Nas alterações, o utilitário de firewall VZ executa uma pesquisa pela regra existente, remove-a e adiciona uma nova regra, em vez de redefinir as regras. Parece que isso pode não ser 100% confiável e que é possível editar regras e acabar com uma 'regra fantasma' que permanece até que o IPtables seja redefinido.
- Parece que o utilitário libera e executa periodicamente as regras (além de qualquer código em / etc / firewall / include).
- Parece que as regras configuradas usando a interface do usuário do utilitário estão incluídas na ordem e se comportam como eu esperava - a menos que haja uma dessas "regras fantasmas" nos bastidores.
Se isso for verdade, se alguém se encontrar na situação em que eu estava, você deve conseguir que o firewall do VZ se comporte racionalmente novamente usando o VZ para reiniciar o 'serviço' do iptables em 'Serviços do sistema' . Adicione uma regra de permissão temprorary ao topo da cadeia se ela disser que não é capaz de reiniciar o serviço.
( seja cauteloso de usar iptables -F
para liberar as regras do iptables, pois isso libera tudo, incluindo as regras que concedem acesso apropriado aos utilitários VZ. A ferramenta de reinicialização do sistema atualiza o iptables com tudo, incluindo o VZ configuração sob o capô, a configuração do seu host, regras configuradas no utilitário e regras personalizadas em /etc/firewall/include
. iptables -F
não. Se estiver configurado para rejeitar ou descartar por padrão, você pode se bloquear completamente)
Editar: Isso claramente não é tudo o que existe ... De repente, o utilitário de firewall VZ começou a não ter nenhum efeito nas regras subjacentes do iptables e usando iptables -n -L INPUT|grep dpt:22
para listar todas as regras do iptables que especificam o port dport 22, vejo muitas regras de lixo antigas que foram removidas e que não são removidas na reinicialização, mesmo após a limpeza do iptables e reinicialização do serviço. A leitura do link sugere que o firewall VZ também possui um banco de dados de regras que podem ficar fora de sincronia com o código e a interface do usuário ... mas não oferece nenhuma pista sobre como acessar esse banco de dados.
Editar 2: Parece que algo causou que o iptables e o firewall Virtuozzo iniciassem simplesmente a leitura do arquivo /etc/sysconfig/iptables
ao invés de regenerar corretamente. A correção que encontrei para isso foi essencialmente, renomear os arquivos /etc/sysconfig/iptables
e /etc/sysconfig/iptables.save
como backups, então usar o VZ Firewall Setup para redefinir os firewalls completamente, o que gerou arquivos iptables
vazios, então reiniciei o serviço iptables - depois Fazendo tudo isso, as configurações no utilitário de firewall VZ começaram a ter seus efeitos previstos.
iptables -n -L|grep dpt:22
ou iptables -n -L VZ_INPUT|grep dpt:22
ao invés de iptables -n -L INPUT|grep dpt:22
. Ímpar.
Espero que, se alguém acabar preso a um mau serviço de firewall Virtuozzo, algo aqui ajude.