jul10murillo
10/1/2014 - 4:32 PM

gistfile1.py

#!/usr/bin/python
from commands import getstatusoutput as comando


def limpiar_reglas():
    #Deshabilitando el forwarding
    #comando("echo 0 > /proc/sys/net/ipv4/ip_forward")
    comando("ifup eth2")
    comando("iptables -F")
    comando("iptables -X")
    comando("iptables -Z")
    comando("iptables -t nat -F")

def reglas_por_defecto():
    comando("iptables -P INPUT ACCEPT")
    comando("iptables -P OUTPUT ACCEPT")
    comando("iptables -P FORWARD ACCEPT")
    comando("iptables -t nat -P PREROUTING ACCEPT")
    comando("iptables -t nat -P POSTROUTING ACCEPT")
    comando("iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE")


def iniciar():
    print "Limpiando reglas del firewall"
    limpiar_reglas()
    print "Politicas por defecto"
    reglas_por_defecto()
        

###***************PROGRAMA DE ESTATUS**************************###################
def estado():
    print comando("iptables -L -n")[1]
    print comando("iptables -t mangle -L -n")[1]
    print comando("iptables -t nat -L -n")[1]



#####*****************PROGRAMA DETENER**********************######################

def detener():
    comando("killall mrtg")
    print "Borrando reglas"
    limpiar_reglas()
##################################################################################
#################################################################################
#################################################################################
if __name__ == "__main__":
    import sys
    comando("echo 1024 > /sys/block/sda/queue/read_ahead_kb")
    comando("echo 256 > /sys/block/sda/queue/nr_requests")
    comando("echo 128 > /sys/block/sda/device/queue_depth")



    if sys.argv[1] == "status" :
        estado()
    elif sys.argv[1] == "stop":
        detener()
    elif sys.argv[1] == "start":
        iniciar()
    else:
        print "Solo se puede hacer status,start o stop"