Eu tenho um servidor de desenvolvimento com a pilha da lâmpada executando o CentOS:
[Prompt]# cat /etc/redhat-release
CentOS release 5.8 (Final)
[Prompt]# cat /proc/version
Linux version 2.6.18-308.16.1.el5xen ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-52)) #1 SMP Tue Oct 2 22:50:05 EDT 2012
[Prompt]# yum info iptables
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.anl.gov
* extras: centos.mirrors.tds.net
* rpmfusion-free-updates: mirror.us.leaseweb.net
* rpmfusion-nonfree-updates: mirror.us.leaseweb.net
* updates: mirror.steadfast.net
Installed Packages
Name : iptables
Arch : x86_64
Version : 1.3.5
Release : 9.1.el5
Size : 661 k
Repo : installed
.... Snip....
Quando eu corro:
service --status-all
Parte da saída é assim:
.... Snip....
httpd (pid xxxxx) is running...
Firewall is stopped.
Table: filter
Chain INPUT (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
....Snip....
iptables foi carregado no kernel e está ativo conforme representado pelas regras que estão sendo exibidas.
Verificando apenas o iptables retorna as regras como o status all:
[Prompt]# service iptables status
Table: filter
Chain INPUT (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
.... Snip....
Iniciando ou reiniciando iptables indica que o iptables foi carregado no kernel com sucesso:
[Prompt]# service iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]
[Prompt]# service iptables start
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]
Eu pesquisei "O firewall está parado". e ler um número de guias iptables, bem como a documentação do RHEL, mas sem sorte.
Tanto quanto eu posso dizer, não há um serviço "Firewall", então qual é a linha "Firewall is stopped."
referindo-se a?
EDITAR - Veja algumas informações adicionais.
O iptables está funcionando apesar do "Firewall está parado". saída do status do serviço.
Eu adicionei uma regra ao iptables que restringia o acesso do ssh a apenas um endereço IP (não meu endereço IP) e depois de reiniciar o iptables, eu não conseguia logar.
Eu tenho uma idéia de que os dois itens são enviados um após o outro em service --status-all
porque os serviços são enviados em ordem alfabética (apenas um palpite).
Então, alguém pode explicar porque eu vejo o "Firewall está parado". é minha saída de status de serviço mesmo que as regras do iptables estejam em vigor e funcionando corretamente?
Solução
O "Firewall está parado". mensagem aparece se iptables ou ip6tables estiver desativada.
Se ambos estiverem desligados, a mesma mensagem (exata) aparecerá duas vezes (não seria legal se a mensagem para ip6 indicasse que estava se referindo ao ip6).
Você também verá a mensagem de erro se o serviço estiver ativado, mas você tiver uma tabela de regras vazia (como aconteceu no meu caso para o ip6).
Informação fornecida por @Alexander Janssen. Veja a resposta para um link para o conjunto de regras ip6 do CentOS 5.8.