Hoi allen,
Ik zit wat in de moeilijkheden met men iptables. Om een korte schets te geven:
KVM server (debian) met 1 NIC, 2 IP's.
IP1 wordt gebruikt als external NIC & IP2 wordt gebruikt als passthrough voor de bridge. Er is een DHCP server actief die internal IP uitdeelt aan de KVM machines.
IP1: 5.9.82.xx/32
IP2: 5.9.175.xx/32
Bridge: br64
DHCP Range: 172.30.64.0/24
LAN IP1: 172.30.64.10
LAN IP2: 172.30.64.11
VM's krijgen een IP van DHCP en kunnen op internet.
Nu zou ik nog graag bereiken dat ik een NAT regel kan opzetten zodanig VM's ook van buiten af bereikbaar zijn.
Ik zou willen bereiken dat ik van IP2 -> LANIP2 op poort 80 bvb kan bereiken.
/etc/network/interfaces
/etc/iptables.up.rules
Ik heb al ettelijke howto's en man pages doorlezen maar ik geraak er niet direct uit. Kan me iemand een duwtje in de juiste richting geven?
Ik zit wat in de moeilijkheden met men iptables. Om een korte schets te geven:
KVM server (debian) met 1 NIC, 2 IP's.
IP1 wordt gebruikt als external NIC & IP2 wordt gebruikt als passthrough voor de bridge. Er is een DHCP server actief die internal IP uitdeelt aan de KVM machines.
IP1: 5.9.82.xx/32
IP2: 5.9.175.xx/32
Bridge: br64
DHCP Range: 172.30.64.0/24
LAN IP1: 172.30.64.10
LAN IP2: 172.30.64.11
VM's krijgen een IP van DHCP en kunnen op internet.
Nu zou ik nog graag bereiken dat ik een NAT regel kan opzetten zodanig VM's ook van buiten af bereikbaar zijn.
Ik zou willen bereiken dat ik van IP2 -> LANIP2 op poort 80 bvb kan bereiken.
/etc/network/interfaces
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| auto lo
iface lo inet loopback
# device: eth0
auto eth0
iface eth0 inet static
address 5.9.82.xx
netmask 255.255.255.255
gateway 5.9.82.33
pointopoint 5.9.82.33
post-up iptables-restore < /etc/iptables.up.rules
# broadcast 5.9.82.63
# default route to access subnet
# up route add -net 5.9.82.32 netmask 255.255.255.224 gw 5.9.82.33 eth0
auto br64
iface br64 inet static
address 172.30.64.1
netmask 255.255.255.0
pre-up brctl addbr $IFACE
post-up route add -host 5.9.175.xx $IFACE
post-down brctl delbr $IFACE
iface eth0 inet6 static
address 2a01:4f8:162:23::2
netmask 64
gateway fe80::1 |
/etc/iptables.up.rules
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
| # Generated by iptables-save v1.4.8 on Sat Dec 29 21:47:09 2012 *nat :OUTPUT ACCEPT [0:0] :PREROUTING ACCEPT [0:0] :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 172.30.64.0/24 -o eth0 -j SNAT --to-source 5.9.82.xx -A PREROUTING -p tcp -m tcp -d 5.9.175.xx --dport 80 --sport 80 -j DNAT --to-destination 172.30.64.11:80 COMMIT # Completed on Sat Dec 29 21:47:09 2012 # Generated by iptables-save v1.4.8 on Sat Dec 29 21:47:09 2012 *mangle :PREROUTING ACCEPT [94984:132333752] :INPUT ACCEPT [21877:7719692] :FORWARD ACCEPT [73107:124614060] :OUTPUT ACCEPT [24744:16807423] :POSTROUTING ACCEPT [97851:141421483] COMMIT # Completed on Sat Dec 29 21:47:09 2012 # Generated by iptables-save v1.4.8 on Sat Dec 29 21:47:09 2012 *filter :FORWARD ACCEPT [0:0] :INPUT ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -p udp -m udp -i virbr1 --dport 53 -j ACCEPT -A INPUT -p tcp -m tcp -i virbr1 --dport 53 -j ACCEPT -A INPUT -p udp -m udp -i virbr1 --dport 67 -j ACCEPT -A INPUT -p tcp -m tcp -i virbr1 --dport 67 -j ACCEPT -A INPUT -p udp -m udp -i br+ --dport 67 -j ACCEPT -A FORWARD -d 172.30.64.208/29 -o virbr1 -j ACCEPT -A FORWARD -s 172.30.64.208/29 -i virbr1 -j ACCEPT -A FORWARD -i virbr1 -o virbr1 -j ACCEPT -A FORWARD -o virbr1 -j REJECT --reject-with icmp-port-unreachable -A FORWARD -i virbr1 -j REJECT --reject-with icmp-port-unreachable -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT -A FORWARD -s 5.9.175.xx/32 -i br+ -o eth0 -j ACCEPT -A FORWARD -s 172.30.64.0/24 -i br+ -o eth0 -j ACCEPT -A FORWARD -s 5.9.175.xx/32 -d 5.9.175.60/32 -i br+ -o br+ -j ACCEPT -A FORWARD -s 172.30.64.0/24 -d 5.9.175.60/32 -i br+ -o br+ -j ACCEPT -A FORWARD -d 5.9.175.xx/32 -i eth0 -o br+ -j ACCEPT -A FORWARD -p tcp -m tcp -m state -d 172.30.64.11 -i eth0 -o br64 --dport 80 --sport 80 --state NEW -j ACCEPT -A FORWARD -j DROP COMMIT # Completed on Sat Dec 29 21:47:09 2012 |
Ik heb al ettelijke howto's en man pages doorlezen maar ik geraak er niet direct uit. Kan me iemand een duwtje in de juiste richting geven?