Okee, met bovenstaande tips probeer ik het nu zo:
- de HLDS server draait op de local loopback 127.0.0.1
- ik stel iptables zo in dat alle verkeer dat geacccepteerd moet worden dat ook daadwerkelijk wordt. Die poorten staan
hier
en het script komt er dan alsvolgt uit te zien (volgens mij):
code:
1
2
3
4
5
6
| $IPTABLES -A INPUT -p udp --dport 1200 -j ACCEPT
$IPTABLES -A OUTPUT -p udp --sport 1200 -j ACCEPT
$IPTABLES -A INPUT -p udp --dport 27000:27039 -j ACCEPT
$IPTABLES -A OUTPUT -p udp --sport 27000:27039 -j ACCEPT
$IPTABLES -A INPUT -p tcp --dport 27020:27039 -j ACCEPT
$IPTABLES -A OUTPUT -p tcp --sport 27020:27039 -j ACCEPT |
- Vervolgens ga ik ervoor zorgen dat alle verkeer op zowel de ppp0 als eth0 interfaces geroute wordt naar de server:
code:
1
2
3
4
5
6
| $IPTABLES -t nat -A PREROUTING -i eth0 -j DNAT -p tcp --dport 27000:27039 --to 127.0.0.1
$IPTABLES -t nat -A PREROUTING -i eth0 -j DNAT -p udp --dport 1200 --to 127.0.0.1
$IPTABLES -t nat -A PREROUTING -i eth0 -j DNAT -p udp --dport 27000:27039 --to 127.0.0.1
$IPTABLES -t nat -A PREROUTING -i ppp0 -j DNAT -p tcp --dport 27000:27039 --to 127.0.0.1
$IPTABLES -t nat -A PREROUTING -i ppp0 -j DNAT -p udp --dport 1200 --to 127.0.0.1
$IPTABLES -t nat -A PREROUTING -i ppp0 -j DNAT -p udp --dport 27000:27039 --to 127.0.0.1 |
Maar wat een verassing: het werkt nog steeds niet. Dit is redelijk hopeloos zeg, dacht dat zo'n install nooit moeilijk kon zijn, valt vies tegen.
Om het overigens nog leuker te maken: ppp0 heeft een dynamisch IP, daarom wil ik graag dat de gebruikers kunnen connecten naar mijn xxx.homelinux.com account wat altijd wijst naar die server. kun je voor die PREROUTING rules ook een destination opgeven in de vorm van -d xxx.homelinux.com ?
Hij geeft er geen foutmeldingen over, maar werkt het ook?
Ik heb het overigens nog ietsje aangepast, omdat nu al het verkeer geroute werd waardoor het connecten met internet servers onmogelijk werd. Uitvoer van iptables -L:
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
| Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere tcp dpt:ftp-data
ACCEPT tcp -- anywhere anywhere tcp dpt:ftp
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh
ACCEPT tcp -- anywhere anywhere tcp dpt:http
ACCEPT tcp -- anywhere anywhere tcp dpt:81
ACCEPT tcp -- anywhere anywhere tcp dpt:8000
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere udp dpt:1200
ACCEPT udp -- anywhere anywhere udp dpts:27000:27099
ACCEPT tcp -- anywhere anywhere tcp dpts:27020:27099
Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
DROP all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp spt:1200
ACCEPT udp -- anywhere anywhere udp spts:27000:27099
ACCEPT tcp -- anywhere anywhere tcp spts:27020:27099
Chain ICMP-ACC (0 references)
target prot opt source destination
DROP all -- anywhere anywhere |
Starten van de server:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| Auto detecting CPU
Using default binary.
Auto-restarting the server on crash
Console initialized.
Protocol version 47
Exe version 1.1.2.5/Stdio (cstrike)
Exe build: 02:38:15 Jul 7 2004 (2738)
STEAM Auth Server
couldn't exec language.cfg
Server IP address 127.0.0.1:27015
Downloading Security Module from Speakeasy.net ...
Completed downloading Security Module from Speakeasy.net
Server is in Secure Mode.
couldn't exec listip.cfg
couldn't exec banned.cfg
No auth servers parsed
Disabling Valve Authentication.
Adding master server 207.173.177.11:27010
Adding master server 207.173.177.12:27010 |
[
Voor 48% gewijzigd door
jsiegmund op 12-05-2005 17:18
]