- set hostname in CLI prompt
[l2tpns.git] / INSTALL
1 Brief Installation guide for L2TPNS
2
3 1. Requirements
4
5     * libcli 1.5.0 or greater
6       You can get it from http://sourceforge.net/projects/libcli.
7
8     * A kernel with iptables support
9
10     * If you want to use throttling, you must have a kernel and a tc (iproute) which supports HTB.
11
12
13 2. Compile
14
15 make
16
17
18 3. Install
19
20     * make install. This does:
21         * Install the binaries into /usr/bin (l2tpns, cluster_master and nsctl)
22         * Create config dir /etc/l2tpns and create default config files
23         * Ensures that /dev/net/tun exists
24
25     * Modify config file. You probably need to change most of the config options.
26
27     * Set up basic firewall rules. This should be done in an init script.
28
29         iptables -t nat -N l2tpns
30         iptables -t nat -A PREROUTING -j l2tpns
31         iptables -t mangle -N l2tpns
32         iptables -t mangle -A PREROUTING -j l2tpns
33
34     * Set up walled garden firewall rules. This should be done in an init
35       script. This is not required unless you are using the garden plugin.
36
37         iptables -t nat -N garden >/dev/null 2>&1
38         iptables -t nat -F garden
39         iptables -t nat -A garden -p tcp -m tcp --dport 25 -j DNAT --to 192.168.1.1
40         iptables -t nat -A garden -p udp -m udp --dport 53 -j DNAT --to 192.168.1.1
41         iptables -t nat -A garden -p tcp -m tcp --dport 53 -j DNAT --to 192.168.1.1
42         iptables -t nat -A garden -p tcp -m tcp --dport 80 -j DNAT --to 192.168.1.1
43         iptables -t nat -A garden -p tcp -m tcp --dport 110 -j DNAT --to 192.168.1.1
44         iptables -t nat -A garden -p tcp -m tcp --dport 443 -j DNAT --to 192.168.1.1
45         iptables -t nat -A garden -p icmp -m icmp --icmp-type echo-request -j DNAT --to 192.168.1.1
46         iptables -t nat -A garden -p icmp -j ACCEPT
47         iptables -t nat -A garden -j DROP
48
49     * Set up IP address pools in /etc/l2tpns/ip_pool
50
51     * Set up clustering
52
53         * Run cluster_master on a separate machine
54         * Set the "cluster master" and "bind address" parameters in /etc/l2tpns/l2tpns.cfg
55
56     * Make l2tpns run on startup
57
58     * Test it out
59
60
61
62
63 This software is quite stable and is being used in a production
64 environment at a quite large ISP. However, you may have problems
65 setting it up, and if so, I would appreciate it if you would file
66 useful bug reports on the Source Forge page:
67
68 http://sourceforge.net/projects/l2tpns/
69
70 -- David Parrish