Esta web utiliza cookies, puedes ver nuestra política de cookies aquí. Si continuas navegando estás aceptándola

Iptables desde python


Configurar un buen firewall es una tarea básica a la hora de securizar sistemas operativos modernos, iptables es el estandar incluído en la mayoría de distribuciones Linux, al menos hasta que nftables lo sustituya. En este artículo aprenderemos a configurar reglas de iptables mediante un script de python.
 

Instalamos el módulo de Python necesario mediante pip:

pip install python-iptables --user

En este ejemplo programaremos un script básico donde bloqueamos una dirección ip A.B.C.D y comprobamos que se haya insertado dicha regla:

vi iptest.py
import iptc

rule = iptc.Rule()
rule.src = "A.B.C.D"
rule.create_target("DROP")
rule.target = iptc.Target(rule, "DROP")
chain = iptc.Chain(iptc.Table(iptc.Table.FILTER), "INPUT")
chain.insert_rule(rule)

rawdata = iptc.easy.dump_table('filter', ipv6=False)

for rule in rawdata['INPUT']:
    print rule
    if 'src' in rule and 'target' in rule:
        if rule['src'] == 'A.B.C.D/32' and rule['target'] == 'DROP':
            print 'Matched rule'

Autor: Kr0m -- 15/12/2019 19:23:41