[Kubuntu] Iptables komen na restart niet goed up*

Pagina: 1
Acties:

  • ToBe
  • Registratie: Juli 2002
  • Niet online
Ik draai op mijn router/firewall Kubuntu dapper drake. Ik heb daar middels FWbuilder (geweldige tool trouwens) een firewall ruleset in elkaar gedraaid om te zorgen dat mijn interne netwerk naar internet kan en dat mijn kubuntu box ook nog een paar dingen mag. Na instalaltie van de policy werkt alles perfect. De client pc's kunnen naar internet en de kubuntu machine mag ook nog het een en ander.

Om te zorgen dat ik na een herstart van deze box gelijk de goede firewall settings heb, heb ik een iptables-save > /root/firewall.conf gedaan.

In mijn /etc/network/interfaces heb ik bij eth0 (interne netwerkkaart van mijn box) de volgende regel opgenomen:
pre-up iptables-restore < /root/firewall.conf

Om de proef op de som te nemen heb ik mijn router/firewall een restart gegeven. Vanaf een client pc probeerde ik na de restart op internet te komen en dat wilde niet. De client pc krijgt netjes zijn ipadres en dns e.d.

Als ik handmatig de iptables-restore (na een iptables -F) doe, dan werkt het nog steeds niet. Start ik echter fwbuilder en installeer ik de policy opnieuw, dan werkt het ineens wel. Ik heb tot op heden niet kunnen vinden waar het in kan zitten.

Wat ik verder heb gedaan is het volgende:
* de pre-up ipv op het interne netwerkkaart op de externe gezet (geen verandering, zelfde verhaal)
* op internet gezocht met iptables-restore NAT does not work (maar kon hier niet echt iets vinden wat direct hielp)

Iemand een idee waar te zoeken?

  • Zwerver
  • Registratie: Februari 2001
  • Niet online
Geef de firewall regels na het rebooten eens?

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • ToBe
  • Registratie: Juli 2002
  • Niet online
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
Chain Cid45B9259D.0 (1 references)
target     prot opt source               destination         
Cid45B9259D.1  all  --  anywhere             192.168.1.2         
Cid45B9259D.1  all  --  anywhere             192.168.0.1         

Chain Cid45B9259D.1 (2 references)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere            tcp multiport dports ssh,domain 
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain 

Chain Cid45B925A8.0 (1 references)
target     prot opt source               destination         
Cid45B925A8.1  all  --  0.0.0.0              anywhere            
Cid45B925A8.1  all  --  192.168.0.0/24       anywhere            

Chain Cid45B925A8.1 (2 references)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             192.168.1.2         
ACCEPT     all  --  anywhere             192.168.0.1         

Chain Cid45B925A8.2 (1 references)
target     prot opt source               destination         
Cid45B925A8.3  udp  --  anywhere             anywhere            udp multiport dports bootpc,bootps 

Chain Cid45B925A8.3 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0              anywhere            
ACCEPT     all  --  192.168.0.0/24       anywhere            

Chain Cid45B925B4.0 (1 references)
target     prot opt source               destination         
Cid45B925B4.1  udp  --  anywhere             anywhere            udp multiport dports bootpc,bootps 

Chain Cid45B925B4.1 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B925BE.0 (2 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B925BE.1 (2 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDCD.0 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDCD.1 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDDC.0 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDDC.1 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDEB.0 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9BDEB.1 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9C0C0.0 (1 references)
target     prot opt source               destination         
Cid45B9C0C0.1  all  --  anywhere             192.168.1.2         
Cid45B9C0C0.1  all  --  anywhere             192.168.0.1         

Chain Cid45B9C0C0.1 (2 references)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere            tcp dpts:netbios-ns:netbios-ssn 
ACCEPT     tcp  --  anywhere             anywhere            tcp multiport dports swat,microsoft-ds 

Chain Cid45B9CD7D.0 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain Cid45B9CD7D.1 (1 references)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.2          anywhere            
ACCEPT     all  --  192.168.0.1          anywhere            

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
eth1_In_RULE_0  all  --  192.168.1.2          anywhere            
eth1_In_RULE_0  all  --  192.168.0.1          anywhere            
eth1_In_RULE_0  all  --  192.168.0.0/24       anywhere            
ACCEPT     all  --  anywhere             anywhere            state NEW 
Cid45B9CD7D.0  udp  --  anywhere             anywhere            udp dpt:ntp state NEW 
Cid45B9C0C0.0  all  --  192.168.0.20         anywhere            state NEW 
Cid45B9BDEB.0  tcp  --  anywhere             anywhere            tcp dpt:pop3 state NEW 
Cid45B9BDDC.0  tcp  --  anywhere             anywhere            tcp multiport dports smtp,ssmtp state NEW 
Cid45B9BDCD.0  tcp  --  anywhere             anywhere            tcp multiport dports www,https state NEW 
Cid45B9259D.0  all  --  192.168.0.0/24       anywhere            state NEW 
Cid45B925A8.0  udp  --  anywhere             anywhere            udp multiport dports bootpc,bootps state NEW 
Cid45B925A8.2  all  --  anywhere             255.255.255.255     state NEW 
Cid45B925BE.0  tcp  --  anywhere             anywhere            tcp dpt:domain state NEW 
Cid45B925BE.0  udp  --  anywhere             anywhere            udp dpt:domain state NEW 
RULE_9     all  --  anywhere             192.168.1.2         
RULE_9     all  --  anywhere             192.168.0.1         
ACCEPT     all  --  192.168.0.0/24       anywhere            state NEW 
DROP       all  --  224.0.0.251          anywhere            
RULE_12    all  --  anywhere             anywhere            

Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
eth1_In_RULE_0  all  --  192.168.1.2          anywhere            
eth1_In_RULE_0  all  --  192.168.0.1          anywhere            
eth1_In_RULE_0  all  --  192.168.0.0/24       anywhere            
ACCEPT     all  --  192.168.0.0/24       anywhere            state NEW 
RULE_12    all  --  anywhere             anywhere            

Chain OUTPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     all  --  anywhere             anywhere            state NEW 
Cid45B9CD7D.1  udp  --  anywhere             anywhere            udp dpt:ntp state NEW 
Cid45B9BDEB.1  tcp  --  anywhere             anywhere            tcp dpt:pop3 state NEW 
Cid45B9BDDC.1  tcp  --  anywhere             anywhere            tcp multiport dports smtp,ssmtp state NEW 
Cid45B9BDCD.1  tcp  --  anywhere             anywhere            tcp multiport dports www,https state NEW 
Cid45B925B4.0  all  --  anywhere             192.168.0.0/24      state NEW 
Cid45B925BE.1  tcp  --  anywhere             anywhere            tcp dpt:domain state NEW 
Cid45B925BE.1  udp  --  anywhere             anywhere            udp dpt:domain state NEW 
RULE_9     all  --  anywhere             192.168.1.2         
RULE_9     all  --  anywhere             192.168.0.1         
ACCEPT     all  --  192.168.0.0/24       anywhere            state NEW 
DROP       all  --  224.0.0.251          anywhere            
RULE_12    all  --  anywhere             anywhere            

Chain RULE_12 (3 references)
target     prot opt source               destination         
LOG        all  --  anywhere             anywhere            LOG level info prefix `RULE 12 -- DENY ' 
DROP       all  --  anywhere             anywhere            

Chain RULE_9 (4 references)
target     prot opt source               destination         
LOG        all  --  anywhere             anywhere            LOG level info prefix `RULE 9 -- DENY ' 
DROP       all  --  anywhere             anywhere            

Chain eth1_In_RULE_0 (6 references)
target     prot opt source               destination         
LOG        all  --  anywhere             anywhere            LOG level info prefix `RULE 0 -- DENY ' 
DROP       all  --  anywhere             anywhere


Het vreemde is, ik heb het volgende gedaan

na restart iptables -L > temp.txt
iptables -F
iptabels-restore < /origineelfirewallbestand - iptables -L > temp1.txt
iptables -F
middels firewall builder policy opnieuw installeren - iptables -L > temp2.txt

temp.txt == temp1.txt == temp2.txt (gecheckt met diff).

Ik snap er werkelijk niets van, tenzij er iets met NAT-rules elders nog zit, die niet door de restore worden meegenomen ne niet door iptables -L worden getoond.

  • Zwerver
  • Registratie: Februari 2001
  • Niet online
iptables -L -t nat ook meegenomen? Anders doet je nat het niet :P

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • ToBe
  • Registratie: Juli 2002
  • Niet online
Zwerver schreef op vrijdag 26 januari 2007 @ 14:55:
iptables -L -t nat ook meegenomen? Anders doet je nat het niet :P
Dat is het dus. Ik had alleen iptables-save > firewall.conf gedaan. Blijkbaar moet ik ook iptables-save -t nat >> firewall.conf doen om het te laten werken.

Ook weer opgelost.

(nog ff een check met een reboot voor de zekerheid!)

  • Zwerver
  • Registratie: Februari 2001
  • Niet online
Mjah, als ik zo naar die firewall regels kijk die je krijgt met iptables -L dan zou ik sowieso een overwegen om _zelf_ een firewall te maken.... er zijn gewoon teveel regels die je samen kan voegen. Om een voorbeeld te geven, weet je zeker dat al die chains die beginnen met Cid nodig zijn? Kan je dat niet beter oplossen met een eigen iptables-firewall?! De howto's die hierover gaan zijn imho duidelijk genoeg, en anders kan je altijd nog teruggrijpen op ferm om een mooie leesbare firewall te maken....

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • blaataaps
  • Registratie: Juli 2001
  • Niet online
ToBe schreef op vrijdag 26 januari 2007 @ 15:39:
[...]

Dat is het dus. Ik had alleen iptables-save > firewall.conf gedaan. Blijkbaar moet ik ook iptables-save -t nat >> firewall.conf doen om het te laten werken.

Ook weer opgelost.

(nog ff een check met een reboot voor de zekerheid!)
iptables-save geeft alle tables weer als je niks opgeeft, dus ook de nat-table, dus dit zou niet uit moeten maken.

[ Voor 3% gewijzigd door blaataaps op 26-01-2007 15:50 ]


  • Zwerver
  • Registratie: Februari 2001
  • Niet online
blaataaps schreef op vrijdag 26 januari 2007 @ 15:50:
[...]

iptables-save geeft alle tables weer als je niks opgeeft, dus ook de nat-table, dus dit zou niet uit moeten maken.
Dat klopt, maar het lijkt alsof die met de hand de firewall heeft opgeslagen ofzo? I.i.g. gaf ik antwoord op zijn vraag en niet direct de oplossing voor zijn probleem.... die zou ik persoonlijk eerder in /proc/sys/net/ipv4/ip_forward oid zoeken.... dus TS, hoe staat ie na een reboot? (cat
/proc/sys/net/ipv4/ip_forward zou een 1 moeten geven....)

Woonachtig Down Under. Ik negeer je insults niet, maar tegen de tijd dat ik ze lees zijn ze meestal niet relevant meer


  • ToBe
  • Registratie: Juli 2002
  • Niet online
Dat verhaal hiervoor wat ik tikte over iptables-save met nat klopte inderdaad niet. De waarde van de file in /proc/sys/net/ipv4/ip_forward was inderdaad 0. Ik heb nu in mijn /etc/network/interfaces een extra regel opgenomen met pre-up echo "1" > /proc/sys/net/ipv4/ip_forward. Dit is vast niet de meest elegante manier, maar het werkt.

Ik ga straks nog even kijken of er in kubuntu een elegantere manier is om dit goed te doen. Ik wil jullie beiden bedanken, want dit had ik zelf nooit gevonden.

De reden dat ik trouwens zelf geen firewall ruleset schrijf is omdat ik de beheersbaarheid van een tool als fwbuilder ideaal vind. Zeker als het gaat om een firewall die door meer dan 1 persoon beheerd wordt (in dit geval trouwens niet het geval).

Nogmaals: Dank!
Pagina: 1