Traffic-Begrenzung für einzelne FTP-User bei Pureftp

Mordor

Registered User
Moischen alle zusammen

Da ich beruflich ziemlich viele Audiodaten austausche muss, brauch ich nen FTP-Server. Bis jetzt lief das über nen Server von einem Bekannten, doch dieser hat seinen Server gekündigt. Also werde ich wohl nicht drum rum kommen, mit einen eigenen auf meinem Server zu installieren.

In den letzten Tagen hab ich mich ein bischen im Netz informitert, und bin auf PURE-FTP gestossen. Der sagt mir ziemlich zu, da gerade die Konfiguration der virtuellen User ziemlich einfach und übersichtlich ist, und man für jeden User auch Qotes in der Datenbank vergeben kann.

Jetzt hab ich nur noch ein Problem:
Bei meiner Recherche bin ich auf keinen Server gestossen, wo man den Traffic der einzelnen virtuellen User limitieren kann. Geht das bei Pureftp, und wenn ja wie? Bzw. geht es bei einem anderen FTP-Server?

So, ich dank euch schon mal im vorraus,

Gruß Mordor
 
Das mit den virtuellen Usern ist mir alles schon klar, das geht ja relativ einfach.

Mir wäre es halt noch um die Trafficbegrenzung gegangen. Aber so wie es aussieht, hab ich da wohl verloren. Werd wohl noch ein bischen bei Tante Google rumgucken, ob das irgendwie machbar ist. Ich hab nämlich keine lust, das das in unermessliche geht, denn ein Kunde is da nahezu der Up- und Downloadkönig.

Danke aber schon mal für die Hinweise.

Gruß Mordor
 
So wie ich das sehe, wir das so ne durch die Brust über die Nase ins Herz nummer.

Also, momentan hab ich folgenden Plan:
In der MYSQL-Datenbank für die Virtuellen User kann man einen Schalter setzen, ob der User aktiv oder gesperrt ist. Ausserdem hat man die Möglichkeit die Logfiles so zu schreiben, dass für jeden User der sich anmeldet auch der verursachte Up- und Download geschrieben wird. Und zum dritten, kann man nach jedem erfolgreichen Login oder Logout ein Shellskript vom Pureftpd starten lassen.
Die Idee wäre nun die, dass man einfach nach jedem Logout ein Shell-Skript laufen lässt, welches den Traffic aus den Logs liest, und diesen in die Datenbank schreibt. Ist der Traffic überschritten, wird der User einfach gesperrt. Das ganze könnte man ja via PHP oder Perl lösen.
 
Und was ist, wenn er sich nicht ausloggt?

Ich würde das Shell-Skript zusätzlich alle X Minuten laufen lassen (mit PID) und die Logs auch zwischendrin auswerten. Ich weiß, dass die Logdateien immer erst am Ende der Transaktion geschrieben werden, aber nichtsdestotrotz finde ich das vom Ansatz her besser.

--marneus
 
Das Problem ist, das man anscheinend nur ein Upload-Skrip, welches nach dem beendeten Upload ausgeführt wird, einbinden kann. Ein Download-Skript ist nicht möglich. Also werden ich nicht drum rum kommen, das ganze über einen Cronjob zu lösen, der zu bestimmten Zeiten das ganze über Cron ausliest.

Ausserdem hat man noch die Möglichkeiti über den Befehl pure-ftpwho den Status von laufenden Verbindungen auszulesen. Da könnte man dann den Traffic auslesen, wenn sich wirklich jemand nicht ausloggt.
 
Nachdem der Pure jetzt sauber läuft, bin ich grad dabei, das Skript für die Trafficmessungen zu schreiben. Gibt zwar grad noch ein paar Probs dabei, aber in den nächsten Tagen sollte ich es wohl fertig haben. Wer interesse hat, soll einfach bescheid sagen.
 
Und falls es nicht zwangsweise pure-ftpd sein muss, vlt mal openftpd oder glftpd anschauen. Diese haben zwar nicht den besten Ruf, da sie häufig in der W*rez Szene eingesetzt werden, aber auch da ist Traffic Accounting ebenfalls ein must-have ;)

Gruss
 
Generell geht das mit jedem FTP-Programm, solange in den Logfiles ein Timestamp, der Username und der Traffic aufgeführt wird.
 
Back
Top