Trabalhando com Firewalld no CentOS 7

Publicado por Perfil removido em 27/09/2019

[ Hits: 12.507 ]

 


Trabalhando com Firewalld no CentOS 7



Para iniciarmos, verificaremos o estado do Firewalld.

Verificamos se o serviço está ativo e habilitado:

# systemctl is-active firewalld
# systemctl is-enabled firewalld

Para iniciarmos o serviço e habilitarmos no boot do sistema, executamos:

# systemctl start firewalld
# systemctl enable firewalld

Caso ocorra alguma falha, verifique se o serviço não está mascarado (administração desabilitada). Para habilitarmos, usamos:

# systemctl unmask firewalld

Com o serviço rodando, podemos ver as zonas criadas. Diferentes zonas podem ter diferentes configurações. Os comandos abaixo nos trazem a interface configurada na zona, portas liberadas, forward-ports etc:

# firewall-cmd --list-all
# firewall-cmd --list-all-zones

A zona padrão é a public. Para habilitar e remover um serviço podemos usar os comandos abaixo:

# firewall-cmd --permanent --zone=public --add-service=ssh
# firewall-cmd --permanent --zone=public --remove-service=ssh

Após qualquer alteração, é preciso executar reload no Firewalld para persistência:

# firewall-cmd --reload

Podemos, por exemplo, configurar para que hosts de uma rede consigam acesso SSH pela zona work (não padrão), mesmo que na zona pública (zona padrão) esteja bloqueado. Para a rede exemplo 10.0.0.0/24, rodamos:

# firewall-cmd --permanent --zone=work --add-service=ssh
# firewall-cmd --permanent --zone=work --add-source=10.0.0.0/24
# firewall-cmd --reload
# firewall-cmd --list-all --zone=work

Podemos também configurar um port Forward usando uma porta não padrão para acessarmos o servidor. Desfaça qualquer configuração de SSH, removendo o serviço das zonas public e work:

# firewall-cmd --permanent --zone=public --remove-service=ssh
# firewall-cmd --permanent --zone=work --remove-service=ssh
# firewall-cmd --reload

Importante alterar a política da porta do serviço no SELinux. Execute o comando "sestatus". Caso o SELinux esteja com status enabled, rode o comando abaixo e verá a porta 22 como padrão do SSH nas políticas do SELinux:

# semanage port -l | grep -i ssh

Vamos alterar a porta do SSH para 123:

# semanage port -a -t ssh_port_t -p tcp 123

Então, configuramos um port forward. Assim, quando a requisição de acesso bater no servidor, ela será redirecionada internamente para a porta 22:

# firewall-cmd --permanent --zone=public --add-forward-port=port=123:proto=tcp:toport=22
# firewall-cmd --reload

Para vermos a regra, executamos:

# firewall-cmd --list-all --zone=public

Podemos testar o redirecionamento acessando o IP do servidor com o parâmetro "-p", indicando a nova porta:

# ssh server1 -p 123

Outras dicas deste autor

Linux mais do que um sistema, uma cultura

Firefox - Dicionário em pt_BR

Bloqueando logins indesejados no servidor SSH

MDK (Mix Development Kit) no Projeto GNU

Tocando MP3 no Ubuntu

Leitura recomendada

Configurar apt e terminal para autenticação automática no servidor proxy

SUSE Security Checker

Lançado o Debian Linux Mint Edition

Wireless broadcom bcm43xx no Slackware Linux

Fechando programas que não estão respondendo no modo gráfico

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário