O firewall-cmd é uma ferramenta de interface de linha de comando que fornece uma maneira fácil de gerenciar o firewall firewalld no Linux. Este artigo se concentrará em como utilizar o firewall-cmd para adicionar portas de banco de dados, listar as regras atuais e verificar o status do firewall.

Instalação do firewalld

O primeiro passo é garantir que o firewalld esteja instalado em seu sistema. No CentOS ou RHEL, você pode fazer isso com o seguinte comando:

sudo yum install firewalld

No Ubuntu, use o comando:

sudo apt-get install firewalld

Adicionando Portas do Banco de Dados

Para adicionar uma porta ao firewall, você pode usar o comando firewall-cmd com a opção --add-port. Por exemplo, para adicionar a porta 3306 (padrão para o MySQL) à zona pública, você usaria o seguinte comando:

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent

A opção --permanent faz com que a regra persista após a reinicialização.

Exemplos Práticos

Vamos ilustrar o uso do firewall-cmd com exemplos práticos para bancos de dados comuns:

1. MySQL/MariaDB:

O MySQL e MariaDB, por padrão, escutam na porta 3306. Para permitir o tráfego através desta porta, o comando seria:

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
sudo firewall-cmd --reload

2. PostgreSQL:

O PostgreSQL escuta na porta 5432 por padrão. Para permitir o tráfego, o comando seria:

sudo firewall-cmd --zone=public --add-port=5432/tcp --permanent
sudo firewall-cmd --reload

3. MongoDB:

O MongoDB usa a porta 27017 por padrão. Para abrir esta porta, o comando seria:

sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent
sudo firewall-cmd --reload

Lembre-se de substituir public pela zona correta se o seu sistema estiver usando uma zona diferente.

Listando as Regras Atuais

Para listar todas as regras de firewall atuais, incluindo portas abertas, você pode usar o comando firewall-cmd com a opção --list-all. Por exemplo:

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

Output:

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources: 
  services: ssh dhcpv6-client
  ports: 3306/tcp 5432/tcp 27017/tcp
  protocols: 
  masquerade: no
  forward-ports: 
  source-ports: 
  icmp-blocks: 
  rich rules:

Neste exemplo, o output mostra que a zona “public” está ativa na interface “eth0”, com os serviços “ssh” e “dhcpv6-client” permitidos. Além disso, as portas 3306 (MySQL/MariaDB), 5432 (PostgreSQL) e 27017 (MongoDB) estão abertas para tráfego TCP.

Verificando o Status do Firewall

Você pode verificar o status do firewall a qualquer momento com o comando firewall-cmd --state. Isso retornará “running” se o firewall estiver ativo e “not running” se não estiver.

sudo firewall-cmd --state

Conclusão

Neste artigo, exploramos como usar o firewall-cmd para gerenciar as portas de um banco de dados em um servidor Linux. Com exemplos práticos para MySQL/MariaDB, PostgreSQL e MongoDB, demonstramos como essa ferramenta pode ser útil para o

Sobre o autor

Pós graduado em Gestão de Projetos em Tecnologia da Informação pela UNIASSELVI.
Esposo e Pai, curto atividades ao ar livre (Bike, SUP, Natação, Caminhar, Brincar no campo)

Atua com Banco de Dados Oracle desde de 2007. Atualmente é DBA Senior na FLUIDATA Serviços em Banco de dados (www.fluidata.com.br)

Principais atividade Banco de dados:

Implementação, migração, gerenciamento e suporte a produtos Oracle (8i, 9i, 10g, 11g, 12c, 18c, 19c RAC), multiplataforma;
Implementação, migração, gerenciamento e suporte a produtos Microsoft SQL Server (2008 - 2019);
Implementação, migração, gerenciamento e suporte a produtos PostgreSQL (9.3 - 14);
Monitoramento de ambientes 24×7;
Backup e Recovery;
Performance e Tuning;
Alta disponibilidade (HA);
EM database/grid/cloud control;
Conversão de databases;
Standby database / Oracle Data Guard;

Certificações:

Oracle Cloud Infrastructure 2019 Certified Architect AssociateOracle Cloud Infrastructure 2019 Certified Architect Associate
Oracle Database 12c Administrator Certified ProfessionalOracle Database 12c Administrator Certified Professional
Exadata Database Machine Models X2-2 and X2-8 Technology Support SpecialistExadata Database Machine Models X2-2 and X2-8 Technology Support Specialist
Oracle Database 11g Support SpecialistOracle Database 11g Support Specialist
OCP 11g - Oracle Certified Professional AdministratorOCP 11g - Oracle Certified Professional Administrator
OPN Certified Specialist 10g - PartnerNetwork Certified SpecialistOPN Certified Specialist 10g - PartnerNetwork Certified Specialist
Oracle Database 10g Real Applications Clusters AdministratorCertified ExpertOracle Database 10g Real Applications Clusters AdministratorCertified Expert
Oracle Database 10g: Managing Oracle on Linux Certified ExpertOracle Database 10g: Managing Oracle on Linux Certified Expert
OCP 10g - Oracle Certified Professional AdministratorOCP 10g - Oracle Certified Professional Administrator

Principais atividades DEVOPS:

PHP
ASP.net
C#
Docker
Golang
C++
Delphi
Python
HTML5
JavaScript

Você também pode gostar: