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
Manjaro Linux sem som? Instale pacotes multimídia
Como instalar o TeamViewer no Solus OS
Instalar o giFT + Apollon no Kurumin
Proteção contra phishing no Opera 9.10
Fedora 18 - Firewall para desktop + script de inicialização
Leitura recomendada
Qual distribuição utilizar
Como rodar um Shell Script como se fosse um comando
Compilando o kernel do Debian 3.1
Medidor de energia e bateria no Linux
Instalando a impressora BJC-1000 no Debian Lenny 5.0
Comentários
Nenhum comentário foi encontrado.