emite a configuração de regras de firewall para o Postgres on Centos

2

Estou tentando seguir este guia para permitir conexões remotas com o link
No momento estou tendo problemas com o firewall.
Eu tenho a configuração, então eu tenho um /tmp/v4 que eu posso modificar e apenas restaurar minhas regras de firewall.
Eu tentei 2 configurações.
Aquele que o guia recomenda:

-A INPUT -p tcp -s 0/0 --sport 1024:65535 -d 00.000.000.00  --dport 5432 -m state --state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -s 00.000.000.00 --sport 5432 -d 0/0 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

Quando eu uso essa configuração e executo nc ipofserver 5432 , recebo Ncat: connection timed out
Se eu tentar configurações

-I INPUT -p tcp -s 00.000.000.00  --dport 5432 -j ACCEPT
-I INPUT -p tcp -s 00.000.000.00  --dport 5432 -j ACCEPT

Eu executo o mesmo comando ncat, recebo Ncat: Connection refused

Eu uso os mesmos firewalls de base (não o que está listado acima) em outro servidor para servir os redis e funciona corretamente.

O firewalld foi desativado nesta caixa em favor do iptables, principalmente para fins de familiaridade.

Ambas as máquinas são CentOS 7

00.000.000.00 substitui o IP do computador que estou realmente usando

    
por Jon Heckman 10.07.2016 / 15:58

1 resposta

6

O centos7 usa o firewall-cmd fora da caixa, a menos que você o tenha desativado. Eu suponho que você não tem porque você teria mencionado de outra forma.

Com essa suposição, você pode simplesmente executar isso no seu host postgresql:

firewall-cmd --add-service=postgresql

Depois de verificar se funciona, você pode executá-lo novamente com o comutador permanente para mantê-lo após as reinicializações:

firewall-cmd --add-service=postgresql --permanent

Se você instalar o pacote bash-completion, após fazer login novamente, o firewall-cmd será preenchido automaticamente, tornando-o realmente fácil de usar.

Edit: OP indica que ele não usa o firewall-cmd. Então, assumindo que ele usa o antigo serviço iptables, então a maneira canônica de modificar é editar o / etc / sysconfig / iptables.

Se você quiser permitir conexões de entrada para a porta 5432 / tcp nesse host, então você precisa adicionar esta linha

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

antes

-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

e recarregue o serviço iptables. Obviamente, isso permitirá todas as conexões com o servidor de banco de dados de qualquer host.

Se você quiser limitar quais hosts podem se conectar (vamos limitá-lo a um, 111.222.111.222), então:

-A INPUT -p tcp -s 111.222.111.222 --sport 1024:65535 --dport 5432 -m state --state NEW,ESTABLISHED -j ACCEPT

Isso deve ser feito, remova o outro, é claro, e recarregue o serviço iptables

    
por 10.07.2016 / 16:06