Instalei o CentOS 7 com configuração mínima (ferramentas os + dev). Estou tentando abrir a porta 80 para o httpd
serviço, mas algo errado com o meu serviço iptables ... o que há de errado com ele? O que estou fazendo de errado?
# ifconfig/sbin/service iptables save
bash: ifconfig/sbin/service: No such file or directory
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables status
Redirecting to /bin/systemctl status iptables.service
iptables.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables start
Redirecting to /bin/systemctl start iptables.service
Failed to issue method call: Unit iptables.service failed to load: No such file or directory.
networking
centos
iptables
systemd
Meiblorn
fonte
fonte
Respostas:
Com o RHEL 7 / CentOS 7, o firewalld foi introduzido para gerenciar as tabelas de ip. IMHO, o firewalld é mais adequado para estações de trabalho do que para ambientes de servidor.
É possível voltar a uma configuração mais clássica do iptables. Primeiro, pare e oculte o serviço firewalld:
Em seguida, instale o pacote iptables-services:
Habilite o serviço no momento da inicialização:
Gerenciando o serviço
Salvar suas regras de firewall pode ser feito da seguinte maneira:
ou
fonte
O RHEL e o CentOS 7 usam firewall-cmd em vez de iptables . Você deve usar esse tipo de comando:
Em seguida, você pode recarregar as regras para ter certeza de que está tudo bem
Isso é melhor do que usar iptable-save, espacialmente, se você planeja usar contêineres lxc ou docker. O lançamento dos serviços do docker adicionará algumas regras que o comando iptable-save solicitará. Se você salvar o resultado, terá muitas regras que NÃO devem ser salvas. Como os contêineres do docker podem alterá-los endereços IP na próxima reinicialização.
O cmd do firewall com opção permanente é melhor para isso.
Marque "man firewall-cmd" ou consulte os documentos oficiais do firewalld para ver as opções. Existem muitas opções para verificar zonas, configuração, como funciona ... a página de manual está realmente completa.
Eu recomendo fortemente não usar o iptables-service desde o Centos 7
fonte
Eu tive o problema de que a reinicialização não iniciaria o iptables.
Isso corrigiu:
fonte
# systemctl start iptables
dáFailed to start iptables.service: Unit not found.
e# systemctl start ip6tables
dáFailed to start ip6tables.service: Unit not found.
Tente o seguinte comando
iptables-save
.fonte
iptables-save > /etc/sysconfig/iptables
Eu modifiquei a
/etc/sysconfig/ip6tables-config
alteração do arquivo:Para:
E isto:
Para:
Isso pareceu salvar as alterações que eu fiz usando os comandos iptables por meio de uma reinicialização.
fonte
Coloque a configuração do IPtables no arquivo tradicional e ele será carregado após a inicialização:
/ etc / sysconfig / iptables
fonte
No mês passado, tentei configurar o iptables em um contêiner LXC VM, mas todas as vezes após a reinicialização a configuração do iptables não era carregada automaticamente.
A única maneira de fazê-lo funcionar era executando o seguinte comando:
fonte
E para adicionar, você também deve fazer o mesmo com o ip6tables após executar o
systemctl mask firewalld
comando:fonte
Se você fizer isso e estiver usando o fail2ban, precisará ativar os filtros / ações adequados:
Coloque as seguintes linhas em
/etc/fail2ban/jail.d/sshd.local
Ative e inicie o fail2ban:
Referência: http://blog.iopsl.com/fail2ban-on-centos-7-to-protect-ssh-part-ii/
fonte