]> git.llucax.com Git - personal/website.git/blob - source/proj/pymin/config-examples.rst
Update resume with The Podcast App
[personal/website.git] / source / proj / pymin / config-examples.rst
1
2 ====================================
3 Services Configuration File Examples
4 ====================================
5
6
7 DHCP server
8 ===========
9
10 Variables
11 ---------
12
13 Globals
14 +++++++
15
16 ================ ====================================================
17 Name             Value
18 ================ ====================================================
19 ``domain_name``  Domain name
20 ``dns_1``        Primary DNS
21 ``dns_2``        Secondary DNS
22 ``net_address``  Network address where the DHCP service will run
23 ``net_mask``     Network mask
24 ``net_start``    Start address for the dynamic address range
25 ``net_end``      End address for the dynamic address range
26 ``net_gateway``  Network gateway
27 ================ ====================================================
28
29
30 For each host
31 +++++++++++++
32
33 ================ ====================================================
34 Name             Value
35 ================ ====================================================
36 ``host1_name``   Host name
37 ``host1_mac``    Host MAC Address (for example ``00:00:12:34:56:78``)
38 ``host1_ip``     Host IP Address
39 ================ ====================================================
40
41
42
43 Configuration file
44 ------------------
45
46 ::
47
48    ddns-update-style none;
49
50    option domain-name %(domain_name);
51    option domain-name-servers %(dns_1), %(dns_2);
52
53    authoritative;
54
55    log-facility local7;
56
57    subnet %(net_address) netmask %(net_mask) {
58      range %(net_start) %(net_end);
59      option routers %(net_gateway);
60    }
61
62    # for each host
63    host %(host1_name) {
64      fixed-address %(host1_ip);
65      hardware ethernet %(host1_mac);
66    }
67    # end for each host
68
69
70
71
72 DNS (Bind)
73 ==========
74
75 Variables
76 ---------
77
78 ================ ====================================================
79 Name             Value
80 ================ ====================================================
81 ``isp_dns1``     ISP's DNS server (can have multiple values)
82 ``bind_addr1``   IP Address where the server will listen (can have \
83                  multiple values)
84 ``zone1``        *Zone* (or domain) that the server will manage \
85                  (can have multiple values)
86 ================ ====================================================
87
88
89 Configuration file
90 ------------------
91
92 ::
93
94    options {
95            directory "/var/bind";
96
97            forward first;
98            forwarders {
99                    %(isp_dns1);
100                    %(isp_dns2);
101            };
102
103            listen-on-v6 { none; };
104            listen-on {
105                    %(bind_addr1);
106                    %(bind_addr2);
107            };
108
109            pid-file "/var/run/named/named.pid";
110    };
111
112    zone "." IN {
113            type hint;
114            file "named.ca";
115    };
116
117    zone "localhost" IN {
118            type master;
119            file "pri/localhost.zone";
120            allow-update { none; };
121            notify no;
122    };
123
124    zone "127.in-addr.arpa" IN {
125            type master;
126            file "pri/127.zone";
127            allow-update { none; };
128            notify no;
129    };
130
131    # for each host
132    zone "%(zone1)" IN {
133            type master;
134            file "pri/%(zone1).zone";
135            allow-update { none; };
136            notify no;
137    };
138
139    zone "%(zone1)" IN {
140            type master;
141            file "pri/%(zone1).zone.ptr";
142            allow-update { none; };
143            notify no;
144    };
145    # end for each host
146
147
148
149
150 iptables
151 ========
152
153 Table management
154 ----------------
155
156 List rules from a table
157 +++++++++++++++++++++++
158
159 ::
160
161    # iptables -t ${table} -L -v
162
163 Remove a rule from a table
164 ++++++++++++++++++++++++++
165
166 ::
167
168    # iptables -t ${table} -D ${chain} ${num}
169
170 Remove all rules from a table
171 +++++++++++++++++++++++++++++
172
173 ::
174
175    # iptables -t ${table} -F
176
177 Remove all rules of a specific *chain* from a table
178 +++++++++++++++++++++++++++++++++++++++++++++++++++
179
180 ::
181
182    # iptables -t ${table} -F ${chain}
183
184
185
186 Filter rules
187 ------------
188
189 List
190 ++++
191
192 ::
193
194    # iptables -t filter -L -v
195
196 Add
197 +++
198
199 ::
200
201    # iptables -t filter -I ${chain} ${pos} -j ${target} \
202          [-s ${src_ip}/${src_ip_prefix_length}] \
203          [-d ${dest_ip}/${dst_ip_prefix_length}] \
204          [-p ${protocol}]
205
206 If ``protocol`` (``-p`` option) is ``udp`` or ``tcp``, source and target ports
207 can be added::
208
209    # iptables -t filter -I ${chain} ${num} -j ${target} \
210          [-s ${src_ip}/${src_ip_prefix_length}] \
211          [-d ${dest_ip}/${dst_ip_prefix_length}] \
212          [-p ${protocol}] -m ${protocolo} \
213          [--sport ${src_port}] [--dport ${dst_port}]
214
215 Where:
216
217 * ``${chain}`` is ``INPUT``, ``OUTPUT`` or ``FORWARD``
218 * ``${pos}`` is the index of the rule inside de table
219 * ``${protocol}`` is ``udp``, ``tcp``, ``icmp`` or ``all``
220 * ``${target}`` is ``DROP``, ``ACCEPT`` or ``REJECT``
221
222
223
224 NAT rules
225 ---------
226
227 List
228 ++++
229
230 ::
231
232    # iptables -t nat -L -v
233
234 Port forwarding
235 +++++++++++++++
236
237 ::
238
239    # iptables -t nat -I PREROUTING ${pos} -i ${dev} \
240          -j DNAT --to ${nat_dst_ip}[:${nat_dst_port}] \
241          -p <tcp|udp> --dport ${port} \
242          [-s ${src_ip}/${src_ip_prefix_length}] \
243          [-d ${dest_ip}/${dst_ip_prefix_length}]
244
245 Masquerading (masq)
246 +++++++++++++++++++
247
248 ::
249
250    # iptables -t nat -I POSTROUTING ${pos} -o ${dev} \
251          -j MASQUERADE -s ${src_ip}/${src_ip_prefix_length}
252
253 SNAT (snat)
254 +++++++++++
255
256 ::
257
258    # iptables -t nat -I POSTROUTING ${pos} -o ${dev} \
259          -j SNAT --to ${nat_src_ip} \
260          -s ${src_ip}/${src_ip_prefix_length}
261
262
263
264 .. vim: set et sw=3 sts=3 tw=78 :