X-Git-Url: https://git.llucax.com/software/pymin.git/blobdiff_plain/b276cdc94ede3b794301573f61ce9288a51aa432..cc2c1a77e8a59d961714f0ac336595fa0992e21f:/config.py?ds=sidebyside diff --git a/config.py b/config.py index b27a59a..aae79c1 100644 --- a/config.py +++ b/config.py @@ -1,5 +1,13 @@ # vim: set et sts=4 sw=4 encoding=utf-8 : +# First of all, we need to setup the logging framework +import logging +logging.basicConfig( + level = logging.DEBUG, + format = '%(asctime)s %(name)-24s %(levelname)-8s %(message)s', + datefmt = '%a, %d %b %Y %H:%M:%S', +) + from pymin.services import * from pymin.dispatcher import Handler from os.path import join @@ -10,36 +18,66 @@ pickle_path = join(base_path, 'pickle') config_path = join(base_path, 'config') class Root(Handler): + + def __init__(self): + try: + f = file("/proc/sys/net/ipv4/ip_forward","w") + f.write("1") + f.close() + except (IOError, OSError), e: + print "Can't set ip_forward:", e + #self.ip.device_up_hook(self.dns) + + firewall = FirewallHandler( + pickle_dir = join(pickle_path, 'firewall'), + config_dir = join(config_path, 'firewall')) + + nat = NatHandler(pickle_dir = join(pickle_path, 'nat')) + + ppp = PppHandler( + pickle_dir = join(pickle_path, 'ppp'), + config_dir = { + 'pap-secrets': join(config_path, 'ppp'), + 'chap-secrets': join(config_path, 'ppp'), + 'options.X': join(config_path, 'ppp'), + 'nameX': join(config_path, 'ppp', 'peers'), + }) + + vpn = VpnHandler( + pickle_dir = join(pickle_path, 'vpn'), + config_dir = join(config_path, 'vpn')) + ip = IpHandler( pickle_dir = join(pickle_path, 'ip'), config_dir = join(config_path, 'ip')) - dhcp = DhcpHandler( - pickle_dir = join(pickle_path, 'dhcp'), - config_dir = '/etc') + dns = DnsHandler( pickle_dir = join(pickle_path, 'dns'), config_dir = { - 'named.conf': '/etc', - 'zoneX.zone': '/var/lib/named', + 'named.conf': join(config_path, 'dns'), + 'zoneX.zone': join(config_path, 'dns', 'zones'), }) - firewall = FirewallHandler( - pickle_dir = join(pickle_path, 'firewall'), - config_dir = '/tmp') - nat = NatHandler(pickle_dir = join(pickle_path, 'nat')) + + dhcp = DhcpHandler( + pickle_dir = join(pickle_path, 'dhcp'), + config_dir = join(config_path, 'dhcp')) + proxy = ProxyHandler( pickle_dir = join(pickle_path, 'proxy'), - config_dir = '/etc/squid')) + config_dir = join(config_path, 'proxy')) + vrrp = VrrpHandler( pickle_dir = join(pickle_path, 'vrrp'), - config_dir = join(config_path, 'vrrp')) - ppp = PppHandler( - pickle_dir = join(pickle_path, 'ppp'), - config_dir = { - 'pap-secrets': '/etc/ppp', - 'chap-secrets': '/etc/ppp', - 'options.X': '/etc/ppp', - 'nameX': '/etc/ppp/peers', - }) + config_dir = join(config_path, 'vrrp'), + pid_dir = join(config_path, 'vrrp', 'run')) + + vpn = VpnHandler( + pickle_dir = join(pickle_path, 'vpn'), + config_dir = join(config_path, 'vpn')) + + #qos = QoSHandler( + # pickle_dir = join(pickle_path, 'qos'), + # config_dir = join(config_path, 'qos')) bind_addr = \ (