iptables und usertraffic ...
iptables und usertraffic ...
Hallo allerseits,
 
ich möchte gerne den Traffic, den Benutzer mit ihren Diensten
erzeugen(in meinem Fall irgendein gameserver) protokollieren.
 
Das heißt:
Benutzer Fred, betreibt einen Gameserver (der dienst wird als
Benutzer Fred ausgeführt). ich möchte jetzt den up/downstream für
benutzer fred und diesen server loggen.
 
Wie muss jetzt der Befehl lauten um das zu loggen für iptables ?
Oder besser gesagt gibt es vielleicht schon tools die mir die arbeit
abnehmen?
 
danke im voraus :-)
 
mfg Bene
p.s. ich kenne den artikel der tutorials über iam aber leider weiß ich nicht wie ich das für einen dienst eines benutzers ausführe ???
			
			
									
						
										
						ich möchte gerne den Traffic, den Benutzer mit ihren Diensten
erzeugen(in meinem Fall irgendein gameserver) protokollieren.
Das heißt:
Benutzer Fred, betreibt einen Gameserver (der dienst wird als
Benutzer Fred ausgeführt). ich möchte jetzt den up/downstream für
benutzer fred und diesen server loggen.
Wie muss jetzt der Befehl lauten um das zu loggen für iptables ?
Oder besser gesagt gibt es vielleicht schon tools die mir die arbeit
abnehmen?
danke im voraus :-)
mfg Bene
p.s. ich kenne den artikel der tutorials über iam aber leider weiß ich nicht wie ich das für einen dienst eines benutzers ausführe ???
- 
				Anonymous
Re: iptables und usertraffic ...
Out of the box funktioniert das nicht .. jegliche Tools kannst du in dieser Hinsicht vergessen, weil man einen Gameserver nicht einfach nach *ports* statisch loggen kann aufgrund von diversen handshake Mechanismen.
Es gibt dennoch eine relativ triviale Lösung:
Schau dir den POM (patch-o-matic) patch von Netfilter für den Kernel an [1] .. dieser erlaubt das socketowner matchen auch in der INPUT chain, in der OUTPUT chain ist das standardmäßig vorhanden (sofern Netfilter im Kernel).
das ganze würde dann sofern du alles richtig eingespielt hast in etwa so aussehen:
Das <socket-owner-id> ist natürlich entsprechend zu ersetzen, in deinem Fall würdest du die id über
herausbekommen.
Den eigentlichen traffic müsstest du dann ggf. über ein Script parsen und in einer mysqlDB addieren:
damit erhälst du die bytes in der chain account1
  
 
Links:
[1] http://netfilter.org/patch-o-matic/pom- ... cketlookup
			
			
									
						
										
						Es gibt dennoch eine relativ triviale Lösung:
Schau dir den POM (patch-o-matic) patch von Netfilter für den Kernel an [1] .. dieser erlaubt das socketowner matchen auch in der INPUT chain, in der OUTPUT chain ist das standardmäßig vorhanden (sofern Netfilter im Kernel).
das ganze würde dann sofern du alles richtig eingespielt hast in etwa so aussehen:
Code: Select all
iptables -X account1
iptables -N account1
iptables -A account1 -j ACCEPT
iptables -A INPUT -d IP -p udp -m owner --uid-owner <socket-owner-id> -j account1
iptables -A INPUT -d IP -p tcp -m owner --uid-owner <socket-owner-id> -j account1
iptables -A OUTPUT -s IP -p udp -m owner --uid-owner <socket-owner-id> -j account1
iptables -A OUTPUT -s IP -p tcp -m owner --uid-owner <socket-owner-id> -j account1
Code: Select all
id -u fredDen eigentlichen traffic müsstest du dann ggf. über ein Script parsen und in einer mysqlDB addieren:
Code: Select all
iptables -vxnL account1 | grep ACCEPT | awk '{print $2}'Links:
[1] http://netfilter.org/patch-o-matic/pom- ... cketlookup
Re: iptables und usertraffic ...
wow :-)
vielen dank.
werde das jetzt mal ausprobieren!
ich hoffe das ich das irgendwie hinbekomme!
teile mir den server mit nem freund!
ich (programmierer brauche datenbanken usw. er Schüler will onlinegaming!
und irgendwie muss ich das halt für ihn mitloggen! damit wir diesbezüglich genaue triaffic infos haben ...
melde mich gleich nochmal ob es funktioniert hat.
			
			
									
						
										
						vielen dank.
werde das jetzt mal ausprobieren!
ich hoffe das ich das irgendwie hinbekomme!
teile mir den server mit nem freund!
ich (programmierer brauche datenbanken usw. er Schüler will onlinegaming!
und irgendwie muss ich das halt für ihn mitloggen! damit wir diesbezüglich genaue triaffic infos haben ...
melde mich gleich nochmal ob es funktioniert hat.
Re: iptables und usertraffic ...
kann man das vielleicht auch irgendwie in iam  einbinden ?
ich kriege das was du oben wirklich gut beschrieben hast nicht hin!
daher würde es mir mittlerweile schon reichen incomming und outgoing traffic für einzelne ports zu protokollieren!
wenn ich z.b. alles was auf 1716 kommt mit in iam aufnhemen möchte, was muss ich dann tun?
danke nochmals für die verschwendete zeit :-)
			
			
									
						
										
						ich kriege das was du oben wirklich gut beschrieben hast nicht hin!
daher würde es mir mittlerweile schon reichen incomming und outgoing traffic für einzelne ports zu protokollieren!
wenn ich z.b. alles was auf 1716 kommt mit in iam aufnhemen möchte, was muss ich dann tun?
danke nochmals für die verschwendete zeit :-)
- 
				Anonymous
Re: iptables und usertraffic ...
Du musst einfach nen eigenen neuen kernel backen wo der POM patch mit drin ist .. und wie gesagt nach ports loggen bringt dir bei nem gameserver nichts.fettbird wrote:kann man das vielleicht auch irgendwie in iam einbinden ?
ich kriege das was du oben wirklich gut beschrieben hast nicht hin!
daher würde es mir mittlerweile schon reichen incomming und outgoing traffic für einzelne ports zu protokollieren!
wenn ich z.b. alles was auf 1716 kommt mit in iam aufnhemen möchte, was muss ich dann tun?
danke nochmals für die verschwendete zeit :-)
Ansonsten habe ich von IAM keine Ahnung da ich mir Dinge die ich brauche selber schreibe
Re: iptables und usertraffic ...
dafür gibts doch sogar ne howto von mir ;)
http://www.debianhowto.de/howtos/de/use ... index.html
ist halt mit ipac-ng
			
			
									
						
										
						http://www.debianhowto.de/howtos/de/use ... index.html
ist halt mit ipac-ng
Re: iptables und usertraffic ...
und damit kann ich den traffic von nem gameserver richtig loggen ?
			
			
									
						
										
						Re: iptables und usertraffic ...
Kommt auf den GameServer an. Bei einem Counter-Strike Server ist es zB so, dass mehr als 95% über den Port 27015 fließen, dh, wenn man diesen Port misst, hat man schon eine recht hohe Genauigkeit, und brauch nicht groß Kernel patchen, usw.smashie wrote: und wie gesagt nach ports loggen bringt dir bei nem gameserver nichts.
Ansonsten würde ich ipac-ng sogar iam bevorzugen, da iam inzwischen doch etwas veraltet ist. (IMHO)
Re: iptables und usertraffic ...
mir reicht eine ungefähre angabe!
hauptsache mein freund verbraucht mit der daddelei nicht zuviel traffic!
und dafür reicht dieses ipac-ng ja ?
danke für all euere tipps
			
			
									
						
										
						hauptsache mein freund verbraucht mit der daddelei nicht zuviel traffic!
und dafür reicht dieses ipac-ng ja ?
danke für all euere tipps
- 
				Anonymous
Re: iptables und usertraffic ...
dazu musst du den Kernel trotzdem Patchen .. und das mit den 95% über den port 20715 stimmt nicht .. habe ich aus eigener Erfahrung getestetfettbird wrote:mir reicht eine ungefähre angabe!
hauptsache mein freund verbraucht mit der daddelei nicht zuviel traffic!
und dafür reicht dieses ipac-ng ja ?
danke für all euere tipps
Re: iptables und usertraffic ...
ok,
habe das kernel patchen nach dieser anleitung versucht:
(bin genau danach vorgegangen)
http://www.debianhowto.de/howtos/de/use ... tions.html
aber leider sucht der bei mir nach den dateien die er zu brauchen scheint in den falschen verzeichnissen:
ich nutze suse 9.1
jemand nen tip ?
			
			
									
						
										
						habe das kernel patchen nach dieser anleitung versucht:
(bin genau danach vorgegangen)
http://www.debianhowto.de/howtos/de/use ... tions.html
aber leider sucht der bei mir nach den dateien die er zu brauchen scheint in den falschen verzeichnissen:
Code: Select all
linux:/usr/src/linux # patch -p1 < ../owner-socketlookup.patch
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -urN a/include/net/tcp.h b/include/net/tcp.h
|--- a/include/net/tcp.h        2002-11-29 00:53:15.000000000 +0100
|+++ b/include/net/tcp.h        2003-03-27 15:33:45.000000000 +0100
--------------------------
File to patch:jemand nen tip ?
- 
				Anonymous
Re: iptables und usertraffic ...
back doch einfach nen neuen eigenen Kernel .. zu jeder Kenerl option gibts ne 'help' da sollte man mit ein wenig Verstand nichts falsch machen können
			
			
									
						
										
						Re: iptables und usertraffic ...
Du brauchst den Kernel nicht patchen.
Falls du Debian hast, installier ipac-ng nach diesem HowTo:
http://www.debianhowto.de/howtos/de/ipa ... ac-ng.html
Und adde einfach 27015 zur Ã?berwachung. Wenn dir die 95% zu ungenu sind, dann adde einfach 27000 bis 27030 tcp und udp, dann hast du auf jeden Fall sämtlichen Traffic zu 100% erfasst.
(Mal abgesehen von Layer2 Traffic, den eh nur dein Switch erfasst, und iptables nicht mitloggen kann)
			
			
									
						
										
						Falls du Debian hast, installier ipac-ng nach diesem HowTo:
http://www.debianhowto.de/howtos/de/ipa ... ac-ng.html
Und adde einfach 27015 zur Ã?berwachung. Wenn dir die 95% zu ungenu sind, dann adde einfach 27000 bis 27030 tcp und udp, dann hast du auf jeden Fall sämtlichen Traffic zu 100% erfasst.
(Mal abgesehen von Layer2 Traffic, den eh nur dein Switch erfasst, und iptables nicht mitloggen kann)
Re: iptables und usertraffic ...
ja aber ich muss doch diese "owner-socketlookup" sache noch mit in den kernel backen! und ich habe suse 9.1. (jaja ich weiß ;-))
hat da einer nen tip wie man was in den kernel nachträglich reinbaut?
und kann mir einer mal die genauen iptables commands geben um alle
udp und tcppacket die über 1716 zu erwischen ?
danke weiterhin :-)
			
			
									
						
										
						hat da einer nen tip wie man was in den kernel nachträglich reinbaut?
und kann mir einer mal die genauen iptables commands geben um alle
udp und tcppacket die über 1716 zu erwischen ?
danke weiterhin :-)
- 
				Anonymous
Re: iptables und usertraffic ...
Nein wenn du nach Portranges gehst musst du das nicht unbedingt .. dann wird halt jeglicher traffic auf den spezifischen ports gelogged .. halte ich für ne schwachsinns methode .. ich frage mich wirklich wo das Problem ist nen Kernel zu backen.fettbird wrote:ja aber ich muss doch diese "owner-socketlookup" sache noch mit in den kernel backen! und ich habe suse 9.1. (jaja ich weiß ;-))
hat da einer nen tip wie man was in den kernel nachträglich reinbaut?
und kann mir einer mal die genauen iptables commands geben um alle
udp und tcppacket die über 1716 zu erwischen ?
danke weiterhin :-)
Desweiteren gab ich dir die _genauen_ commands bereits im 1. Posting
Re: iptables und usertraffic ...
hast ja recht :-)
gibt bei mir nur irgendwie die probleme, das in dem patchfile schwachsinnige ordnerangaben sind!
die dateien gibt es bei mir aber in ganz anderen ordner als es die patchfile erwartet!
naja :-( werde mir das morgen nochmal anschauen!
versuchen den scheiss kernel mit diesem owner /netfilter patch zu bezwingen und dann mal weiter sehen ...
mfg Bene
			
			
									
						
										
						gibt bei mir nur irgendwie die probleme, das in dem patchfile schwachsinnige ordnerangaben sind!
die dateien gibt es bei mir aber in ganz anderen ordner als es die patchfile erwartet!
naja :-( werde mir das morgen nochmal anschauen!
versuchen den scheiss kernel mit diesem owner /netfilter patch zu bezwingen und dann mal weiter sehen ...
mfg Bene
- 
				Anonymous
Re: iptables und usertraffic ...
die Pathangaben sind bei einem Patch vollkommen irrelevant .. hol dir von kernel.org nen 2.4.27er danach make menuconfig und entsprechend alles durchgehen .. danach POM benutzen und patchen das klappt wunderbar
			
			
									
						
										
						Re: iptables und usertraffic ...
habe aber nen 2.6 kernel!
geht das damit trotzdem ?
wahrscheinlich nicht! woher kriegt man denn den richtigen patch für die 2.6 version ?
			
			
									
						
										
						geht das damit trotzdem ?
wahrscheinlich nicht! woher kriegt man denn den richtigen patch für die 2.6 version ?
- 
				Anonymous
Re: iptables und usertraffic ...
ja geht es siehe patch-o-matic-ng ... benutz keinen SuSE Kernel sondern back dir nen eigenen :roll:fettbird wrote:habe aber nen 2.6 kernel!
geht das damit trotzdem ?
wahrscheinlich nicht! woher kriegt man denn den richtigen patch für die 2.6 version ?
Re: iptables und usertraffic ...
so hab mir den thread nochmal komplett durchgelesen.
also ipac-ng geht auch mit kernel2.6, der patch ist nur nötig wenn man traffic userbasierend loggen will.
mich würde mal interessieren wo z.b. CS noch traffic verursacht?
Für CS 1.6 mit STEAM sind es diese Ports:
UDP 1200
UDP 27000 to 27015 inclusive
TCP 27030 to 27039 inclusive
Für 1.5:
Incoming UDP to local destination 27015.
In and out UDP to local destination 27011.
Outgoing UDP to remote destination 27010, 27012.
Outgoing TCP to remote destination 5273.
Outgoing TCP to remote destination 7002.
hier steht doch ganz klar welche ports wohin traffic verursachen.
			
			
									
						
										
						also ipac-ng geht auch mit kernel2.6, der patch ist nur nötig wenn man traffic userbasierend loggen will.
mich würde mal interessieren wo z.b. CS noch traffic verursacht?
Für CS 1.6 mit STEAM sind es diese Ports:
UDP 1200
UDP 27000 to 27015 inclusive
TCP 27030 to 27039 inclusive
Für 1.5:
Incoming UDP to local destination 27015.
In and out UDP to local destination 27011.
Outgoing UDP to remote destination 27010, 27012.
Outgoing TCP to remote destination 5273.
Outgoing TCP to remote destination 7002.
hier steht doch ganz klar welche ports wohin traffic verursachen.