jails und der traffic

p.kraschinski

Well-Known Member
hi @all,

wir haben bei uns ein par jailserver mit jails im einsatz. wie man quoatas setzt und den ramspeicher begrenzt ist klar ;).

aber ich wollte nu noch wiessen wie ich ueberwachen kann welche jail wie viel traffic verbraucht ?

mfg chris
 
Hmm, hab ich mir noch gar keine Gedanken drüber gemacht.
Evtl. mit einem der Programme "argus" oder "iplog" (beide in den Ports)?
 
Hallo,

wenn Du einfach per Alias der Netzwerkkarte pro Jail eine IP gibst könntest Du mit IP Accounting problemlos den Traffic überwachen, welche die jeweilige IP Adresse verursacht.

Falls Du nicht genügend öffentliche IP Adressen hast einfach nicht öffentliche nehmen für die Jails und über NATD die öffentliche forwarden auf die priv. IP Addis in der Jails.

Gruß Bummibaer
 
@asg, werde ich mir mal nachher anschauen.......

@Bummibaer, hmm ich habe genug oeffentliche ips (soger ein bissel zu viele :P) hoert sich jut an koenntest du mir das mit dem "IP Accounting" vielleicht ein wenig genauer erlaeutern ?

mfg chris
 
p.kraschinski schrieb:
@asg, werde ich mir mal nachher anschauen.......

@Bummibaer, hmm ich habe genug oeffentliche ips (soger ein bissel zu viele :P) hoert sich jut an koenntest du mir das mit dem "IP Accounting" vielleicht ein wenig genauer erlaeutern ?

mfg chris

Also Du bindest auf die Netzwerkkarte einfach alle IP Adressen die Du nutzen möchtest (Stichwort Vhost mit Alias). Danach gibst Du jeder Jail EINE IP Adresse. Den Rest kannst du mit IPA z.B. machen, siehe http://ipa-system.sourceforge.net/

IPA setzt auf dem Firewall auf. Dort legst Du dann einfach die nötigen Rules für das Accounting noch an und filterst diese nach der IP Adresse, welche ja für jede Jail dann eindeutig ist. So erhälst Du pro IP Adresse den Traffic oder je nach Rules auch pro IP Adresse für bestimmte Art von Traffic die Trafficwerte.

Gruß Bummibaer
 
Bummibaer, hmm dan muss ich ja doch noch ne firewall einrichten :( hmm, und das ueber ssh, als ich das das letzte mal gemacht hatte durfte ich erstmal 200km fahren ins rz :(.

iptabels, kein problehm (habe bis vor1 1/2 jahren noch debian genutzt) .... hmm, giebt es dafuer vielleicht nen howto wo das genau erklaert ist ? oder koenntest du mir sagen wie ich das machen muesste ... wenn ich dir die daten gebe ?

mfg chris ;)
 
du kannst ja regeln nehmen die alles erlauben, aber eben nur für die ip der jail gelten, so kannst du alles erlauben und trotzdem den traffic messen
 
sor, also die aliases sind da jede jail hat ihre ip und nu zur firwall, ich habe mich nu für ipfw2 entschieden ... wie muss ich das jetzt in den kernel einbinden ? was muss ich in die rc.conf eintragen und wie muss die config weile aussehen, sodass der server auch 100% nach den aenderungen wieder bootet (den dieser server steht diesmal 600km entfernt). da frag ich lieber ein zwei mal mehr ... achja ich habe schon ins freebsd handbook geschaut befor das gleich kommt ;) und ich wollte das nur nochmal von euch erfahren, die es schon oefters gemacht haben.

mfg chris
 
Du setzt keine "Firewall" auf, sondern einen Paketfilter. Da nimmst du am besten ipfw, der kann inzwischen auch direkt nach Jail-ID filtern.

count ip from any to any in via xl0 jail 1
count ip from any to any out via xl0 jail 1
count ip from any to any in via xl0 jail 2
count ip from any to any out via xl0 jail 2

oder so aehnlich. Genaue Syntax steht in ipfw(8). Mit ipa kannst du die Counter dann bequem in eine Datenbank schreiben lassen.
 
Die Regeln beziehen sich in diesem fall nur auf Count , was ein Aussperren erstmal nicht ermöglicht, da ja nur was "erfasst" wird und nicht geblockt wird.

Gruß Bummi
 
okay, also muss ich dan in der rc.conf die ipfw aktivieren und nen pfad zu einer datei angeben (natuerlich mit dem ensprechenden syntax. und in dieser datei brauchen nur die eintraege von MrFixit stehen .... richtig ?
 
Bummibaer schrieb:
Also Du bindest auf die Netzwerkkarte einfach alle IP Adressen die Du nutzen möchtest (Stichwort Vhost mit Alias). Danach gibst Du jeder Jail EINE IP Adresse. Den Rest kannst du mit IPA z.B. machen, siehe http://ipa-system.sourceforge.net/

IPA setzt auf dem Firewall auf. Dort legst Du dann einfach die nötigen Rules für das Accounting noch an und filterst diese nach der IP Adresse, welche ja für jede Jail dann eindeutig ist. So erhälst Du pro IP Adresse den Traffic oder je nach Rules auch pro IP Adresse für bestimmte Art von Traffic die Trafficwerte.

Gruß Bummibaer
Das ist mal ein sinnvoller Link! Sowas hab ich echt eine Weile gesucht. :)
 
Viele Wege führen nach Rom so zu sagen, keine Frage. Es gibt einiges wo man machen könnte.

Bittefein, keine Ursache für den Link

Gruß Bummibär

PS: Viel Erfolg beim Experimentieren damit
 
befior ich nu reboote ;) ist das soweit richtig ?

make.conf
Code:
options         IPFIREWALL
options         IPDIVERT
options         TCP_DROP_SYNFIN

/etc/rc.conf
Code:
firewall_enable="YES"
firewall_script="/etc/ipfw.conf"

/etc/ipfw.conf
Code:
#!/bin/sh
fwcmd="/sbin/ipfw -q"

${fwcmd} add count ip from any to any jail231
${fwcmd} add count ip from any to any jail232
. . .
${fwcmd} add count ip from any to any jail254
 
Zuletzt bearbeitet:
Ich finde das mit ${fwcmd} superhaesslich. Das ist ja fast schon so eklig wie ipchains. Man sollte nicht 8271 mal ipfw aufrufen, sondern nur einmal.
Code:
firewall_enable="YES"
firewall_type="/etc/ipfw.conf"

/etc/ipfw.conf
Code:
add count ip from any to any jail231
add count ip from any to any jail232
. . .
add count ip from any to any jail254
[b]add allow ip from any to any[/b]  <-- WICHTIG

Die letzte Zeile ist wichtig, sonst sperrst du dich aus. Alternativ waere ein IPFIREWALL_DEFAULT_TO_ACCEPT (sp?) im Kernel moeglich.

Du kannst auch gleich alle 'counts' mit 'allow' ersetzen, bei denen werden die Paketzaehler naemlich auch inkrementiert.

allow == zaehlen und matching sofort abbrechen (bei vielen Regeln ist das performanter)
count == zaehlen und mit dem matching fortfahren
 
MrFixit schrieb:
count ip from any to any in via xl0 jail 1
count ip from any to any out via xl0 jail 1
count ip from any to any in via xl0 jail 2
count ip from any to any out via xl0 jail 2
So wird der Traffic jedoch nicht weiter gezählt, wenn die Jail neu-gestartet wird. Mit dem Restart verändert sich die Jail-ID auf die wir uns ja beziehen.
 
Öhm, jetzt mal gefragt: RAM begrenzen...

geht das, den pro Jail zu begrenzen? Oder ist hier die Rede von /etc/login.conf? Damit hab ich nämlich noch 0 Erfahrung.
 
Zurück
Oben