Agrupar blocos IP dinâmicos para várias regras de firewall

0

Eu estou em um IP dinâmico que é definido pelo conjunto de blocos IP do meu ISP. Eu quero abrir ssh, ftp, MySql e assim por diante, para esse conjunto de blocos. Eu não quero ter que especificar todas as entradas para cada regra. Existe uma maneira de configurar todos os endereços permitidos como um grupo que é então atribuído uma vez a cada porta que eu quero acessar?

    
por strattonn 13.12.2016 / 12:10

2 respostas

0

Você menciona o CentOS, mas não uma versão específica.

CentOS 6

No CentOS 6, seu firewall pode ser parecido com isso em /etc/sysconfig/iptables :

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:INTERNAL - [0:0]
:INTERNAL_allow - [0:0]
:LOGGING - [0:0]

#LOGGING Chain
-A LOGGING -p tcp -m limit --limit 2/min -j LOG --log-prefix "iptables DROP: " --log-level 4

#INPUT Chain
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j INTERNAL
-A INPUT -j LOGGING
-A INPUT -j REJECT --reject-with icmp-host-prohibited

#INTERNAL Chain to define networks (only networks that match continue to INTERNAL_allow)
-A INTERNAL -s 192.168.10.0/24 -g INTERNAL_allow
-A INTERNAL -s 10.9.8.0/24 -g INTERNAL_allow

#INTERNAL_allow Chain to define allowed ports on those networks
-A INTERNAL_allow -p icmp -j ACCEPT
#open a single port using tcp module
-A INTERNAL_allow -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
#open multiple ports using multiport module
-A INTERNAL_allow -p tcp -m state --state NEW -m multiport --dport 21,3306 -j ACCEPT

Veja também:

  • man iptables para multiport e tcp modules, bem como -g parameter.

CentOS 7

Você provavelmente poderia usar zonas no firewalld. Eu não sou muito experiente com isso.

    
por 13.12.2016 / 12:39
0

Você pode fazer um conjunto de IPs usando ipset e adicionar qualquer restrição a ele.

Por exemplo, para criar um ipset :

ipset -N myset hash:ip,port

Para adicionar ip com port ao conjunto:

ipset add myset x.x.x.0/24,80-82 
ipset add myset x.x.x.x,udp:53 
ipset add myset y.y.y.y,vrrp:0 

Em seguida, para criar uma regra nesse conjunto, você pode usar iptables para firewall:

iptables -A INPUT -m set --set myset dst -j ACCEPT

Os comandos ipset acima criam um novo conjunto (myset do tipo iphash) com dois endereços ( x.x.x.x e y.y.y.y ).

O comando iptables faz referência ao conjunto com a especificação de correspondência -m set --set myset dst , que significa "pacotes de correspondência cujo cabeçalho de destino corresponde (ou seja, está contido dentro) ao conjunto chamado myset".

O sinalizador dst significa correspondência no "destino". O sinalizador src corresponderia à "origem" e o sinalizador src, dst corresponderia na origem e no destino.

    
por 13.12.2016 / 12:33