Example #1
0
def setup_firewall():
    """
    Shorewall config
    (based on http://www.shorewall.net/OpenVZ.html)
    """

    from fabtools.require.shorewall import firewall, started

    zones = [{"name": "fw", "type": "firewall"}, {"name": "net", "type": "ipv4"}, {"name": "vz", "type": "ipv4"}]

    interfaces = [
        {"zone": "net", "interface": "eth0", "options": "proxyarp=1"},
        {"zone": "vz", "interface": "venet0", "options": "routeback,arp_filter=0"},
    ]

    masq = [{"interface": "eth0", "source": "192.168.1.0/24"}]

    policy = [
        {"source": "$FW", "dest": "net", "policy": "ACCEPT"},
        {"source": "$FW", "dest": "vz", "policy": "ACCEPT"},
        {"source": "vz", "dest": "net", "policy": "ACCEPT"},
        {"source": "net", "dest": "all", "policy": "DROP", "log_level": "info"},
        {"source": "all", "dest": "all", "policy": "REJECT", "log_level": "info"},
    ]

    firewall(zones=zones, interfaces=interfaces, policy=policy, masq=masq)

    started()
Example #2
0
def firewall():
    from fabtools.require.shorewall import firewall
    import fabtools.shorewall
    firewall(rules=[
        fabtools.shorewall.Ping(),
        fabtools.shorewall.SSH(),
        fabtools.shorewall.HTTP(),
        fabtools.shorewall.HTTPS(),
        fabtools.shorewall.SMTP(),
        fabtools.shorewall.rule(
            port=1234,
            source=fabtools.shorewall.hosts(['example.com']),
        ),
    ])
Example #3
0
def firewall():
    from fabtools.require.shorewall import firewall
    import fabtools.shorewall
    firewall(
        rules=[
            fabtools.shorewall.Ping(),
            fabtools.shorewall.SSH(),
            fabtools.shorewall.HTTP(),
            fabtools.shorewall.HTTPS(),
            fabtools.shorewall.SMTP(),
            fabtools.shorewall.rule(
                port=1234,
                source=fabtools.shorewall.hosts(['example.com']),
            ),
        ]
    )
Example #4
0
def setup_firewall():
    """
    Shorewall config
    (based on http://www.shorewall.net/OpenVZ.html)
    """

    from fabtools.require.shorewall import firewall, started

    zones = [
        {
            'name': 'fw',
            'type': 'firewall',
        },
        {
            'name': 'net',
            'type': 'ipv4',
        },
        {
            'name': 'vz',
            'type': 'ipv4',
        },
    ]

    interfaces = [
        {
            'zone':      'net',
            'interface': 'eth0',
            'options':   'proxyarp=1',

        },
        {
            'zone':      'vz',
            'interface': 'venet0',
            'options':   'routeback,arp_filter=0',
        },
    ]

    masq = [
        {
            'interface': 'eth0',
            'source':    '192.168.1.0/24',
        }
    ]

    policy = [
        {
            'source': '$FW',
            'dest':   'net',
            'policy': 'ACCEPT',
        },
        {
            'source': '$FW',
            'dest':   'vz',
            'policy': 'ACCEPT',
        },
        {
            'source': 'vz',
            'dest':   'net',
            'policy': 'ACCEPT',
        },
        {
            'source':    'net',
            'dest':      'all',
            'policy':    'DROP',
            'log_level': 'info',
        },
        {
            'source':    'all',
            'dest':      'all',
            'policy':    'REJECT',
            'log_level': 'info',
        },
    ]

    firewall(
        zones=zones,
        interfaces=interfaces,
        policy=policy,
        masq=masq,
    )

    started()
Example #5
0
def setup_firewall():
    """
    Shorewall config
    (based on http://www.shorewall.net/OpenVZ.html)
    """

    from fabtools.require.shorewall import firewall, started

    zones = [
        {
            'name': 'fw',
            'type': 'firewall',
        },
        {
            'name': 'net',
            'type': 'ipv4',
        },
        {
            'name': 'vz',
            'type': 'ipv4',
        },
    ]

    interfaces = [
        {
            'zone': 'net',
            'interface': 'eth0',
            'options': 'proxyarp=1',
        },
        {
            'zone': 'vz',
            'interface': 'venet0',
            'options': 'routeback,arp_filter=0',
        },
    ]

    masq = [{
        'interface': 'eth0',
        'source': '192.168.1.0/24',
    }]

    policy = [
        {
            'source': '$FW',
            'dest': 'net',
            'policy': 'ACCEPT',
        },
        {
            'source': '$FW',
            'dest': 'vz',
            'policy': 'ACCEPT',
        },
        {
            'source': 'vz',
            'dest': 'net',
            'policy': 'ACCEPT',
        },
        {
            'source': 'net',
            'dest': 'all',
            'policy': 'DROP',
            'log_level': 'info',
        },
        {
            'source': 'all',
            'dest': 'all',
            'policy': 'REJECT',
            'log_level': 'info',
        },
    ]

    firewall(
        zones=zones,
        interfaces=interfaces,
        policy=policy,
        masq=masq,
    )

    started()