www.ProFTPD.de
13. März 2007, 19:29:04 *
Willkommen Gast. Bitte einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge
News: SMF - Neu installiert!
 
   Übersicht   Hilfe Suche Login Registrieren  
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: Bandbreite für alle User beschränken  (Gelesen 600 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
mcb
ProFTPD
*
Offline Offline

Beiträge: 1


Profil anzeigen
« am: 16. Februar 2004, 20:14:35 »

Hallo zusammen wie in der Doku beschrieben begrenze ich mit :

TransferRate RETR 13.0

Die Downlodrate der User auf max. 13 kb. Leider gilt das aber nur für den einzelnen User.
Wenn sich mehrere Connecten und gleichzietig ziehen, dann kommen sie ohne probleme über die 13 kb insg. hinaus.

Laden also mehr als 1 user gleichzeitig daten vom ftp dann kann ichs mit dem Internet surfen total vergessen.

Ist es irgendwie möglich die GESAMTE transfererate für retr zu begrenzen?


danke im vorraus
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #1 am: 16. Februar 2004, 22:32:52 »

http://www.proftpd.de/index.php?id=13&backPID=13&tx_faq_faq=10

leider nein !
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
Anonymous
Gast
« Antwort #2 am: 17. Februar 2004, 00:40:52 »

hmpf ... schade ...
an was liegtn das? is doch eigentlich nicht so schwer .... normalerweise doch einfach zu lösen. Oder bin ich da falsch informiert?

Greez Maic
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #3 am: 17. Februar 2004, 08:30:03 »

Zitat von: "Anonymous"
hmpf ... schade ...
an was liegtn das? is doch eigentlich nicht so schwer .... normalerweise doch einfach zu lösen. Oder bin ich da falsch informiert?

Greez Maic


das frage ich mich auch  :?!
Das design von ProFTPD ist so, dass die einzelnen Threads pro Verbindung nicht miteinander kommunizieren, daher kann die Bandbreite nicht dynamisch angepasst werden.

cu
stonki
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
tomes
ProFTPD
*
Offline Offline

Beiträge: 9


Profil anzeigen
« Antwort #4 am: 24. Februar 2004, 22:22:25 »

Wenn du Linux als OS benutzt, kannst du Bandbreite mit iptables und iproute2 begrenzen.
Hier mal ein kleines Beispiel, wie es gerade auf einem "Versuchsserver" von mir arbeitet.

1. PassivePorts  50000 55000
in die proftpd.conf. Damit wird eine Port-Range fuer die passiven Ports bestimmt, die der Server aufmacht.

2. Mit iptables werden jetzt die ftp Pakete makiert:
/usr/sbin/iptables -t mangle -A OUTPUT -p tcp -s [IP des Server] --sport 50000:55000 -j MARK --set-mark 101
/usr/sbin/iptables -t mangle -A OUTPUT -p tcp -s [IP des Servers] --sport 20 -j MARK --set-mark 102

3. mit tc aus iproute2 Bandbreite beschraenken:
/usr/sbin/tc qdisc add dev [Device Name] root handle 1: htb default 10
/usr/sbin/tc class add dev [Device Name] parent 1: classid 1:1 htb rate [Wieviel] ceil [Wieviel]
/usr/sbin/tc class add dev [Device Name] parent 1:1 classid 1:10 htb rate [Wieviel] ceil [Wieviel]
/usr/sbin/tc filter add dev [Device Name] protocol ip parent 1:1 prio 5 handle 101 fw flowid 1:10
/usr/sbin/tc filter add dev [Device Name] protocol ip parent 1:1 prio 5 handle 102 fw flowid 1:10

[Wieviel] --> hier einfach die max Bandbreite, die man geben moechte, eintragen, in bps oder kbps.
Wenn der Wert nicht ganz klar sein sollte, dann einfach ausprobieren Zwinkernd
Also ungefaehr sind z.B. 3Mbps 24 MBytes/s Bandbreite (1 Byte = 8 Bits)
[Device Name] --> z.B. eth0. Sollte hier das DSL Device sein, dann natuerlich ppp0
[IP des Servers] --> Einfach die IP des Interface eintragen.

Das Prinzip kurz:
Durch die iptables Regeln werden alle Pakete makiert die 1. die Ports 50000:55000 verlassen (passives FTP), bzw. den Port 20 (aktives FTP).
Nach diesen Paketen haelt iproutes durch die Filterregeln jetzt ausschau und pakt sie in die "Warteschlange" des Device. Kann sein, dass die eine Klasse eigendlich nicht gebraucht wird, bin aber selber gerade erst am probieren und so wie oben *funct* es Zwinkernd
Es gibt im Netz jede Menge Sites zu QoS unter Linux. Leider sind die meisten sehr verwirrend Lächelnd Lächelnd Lächelnd
Also, wenn ihr mehr dazu wissen wollt, viel lesen und probieren Zwinkernd

Zum installieren von iptables/iproute2 bitte googlen Zwinkernd

tomes
Gespeichert
lieber1
ProFTPD
*
Offline Offline

Beiträge: 12


Profil anzeigen
« Antwort #5 am: 26. Februar 2004, 15:32:14 »

-- Tolle Information, klar und einfach formuliert -- solche Leute fehlen leider zu oft im Internet.. lg Tom
PS: eine Frage hab ich da noch ... Wie kann ich verhindern das ein User von seinem Homedir rauskommt ?? verwende das MOD_SQL mit Homedir eintrag, wenn ich mich connecte, kann ich mit cd .. ins darüber gelegene Directorie wechseln .. Danke !!
Gespeichert
stonki
Administrator
ProFTPD
*****
Offline Offline

Beiträge: 1853


15318939
Profil anzeigen WWW E-Mail
« Antwort #6 am: 26. Februar 2004, 17:05:22 »

Zitat von: "lieber1"

PS: eine Frage hab ich da noch ... Wie kann ich verhindern das ein User von seinem Homedir rauskommt ?? verwende das MOD_SQL mit Homedir eintrag, wenn ich mich connecte, kann ich mit cd .. ins darüber gelegene Directorie wechseln .. Danke !!


RTFM
defaultroot ~
Gespeichert

www.stonki.de:    the more I see, the more I know.......
www.proftpd.de:   Deutsche ProFTPD Dokumentation
www.krename.net:  Der Batch Renamer für KDE
www.kbarcode.net: Die Barcode Solution für KDE
lieber1
ProFTPD
*
Offline Offline

Beiträge: 12


Profil anzeigen
« Antwort #7 am: 26. Februar 2004, 20:51:17 »

Übrigens wenn ihr kernel 2.4.20 verwendet musst ihr das TC file im SBIN ersetzen ... zu finden auf http://luxik.cdi.cz/~devik/qos/htb/

Ich habe alles so gemacht wie du geschrieben hast , leider ist sogar mein ssh nun langsam ;-))

ähm .. eine idee ??

lg tom
PS: Danke stonki, funktioniert jetzt..
Gespeichert
tomes
ProFTPD
*
Offline Offline

Beiträge: 9


Profil anzeigen
« Antwort #8 am: 06. März 2004, 17:17:21 »

Hast du wirklich alles genauso gemacht, oder hast z.B. einen anderen Bereich fuer die pass Port gewaehlt ?

Ansonsten sollte der Effect nicht eintreten. SSH benutz Port 22 fuer den Server und normalerweise 1025 + xxx fuer die unpreviligierten Ports.

tomes
Gespeichert
lieber1
ProFTPD
*
Offline Offline

Beiträge: 12


Profil anzeigen
« Antwort #9 am: 06. März 2004, 17:53:30 »

iptables -t mangle -A OUTPUT -p tcp -s 192.168.0.101 --sport 60000:60050 -j MARK --set-mark 101
iptables -t mangle -A OUTPUT -p tcp -s 192.168.0.101 --sport 20 -j MARK --set-mark 102

tc qdisc add dev eth0 root handle 1: htb default 1
tc class add dev eth0 parent 1: classid 1:1 htb rate 10kbit ceil 10kbit
tc class add dev eth0 parent 1:1 classid 1:10 htb rate 10kbit ceil 10kbit

tc filter add dev eth0 protocol ip parent 1:1 prio 5 handle 101 fw flowid 1:10
tc filter add dev eth0 protocol ip parent 1:1 prio 5 handle 102 fw flowid 1:10

was ist da genau falsch ... ich versteh die syntax auch nicht wirklich .. aber was so im internet zu finden ist, versteht die eigentlich sowieso nicht sehr viele leute ;-))
Gespeichert
tomes
ProFTPD
*
Offline Offline

Beiträge: 9


Profil anzeigen
« Antwort #10 am: 07. März 2004, 16:12:00 »

Hm, an der Syntax ist ersteinmal nichts falsch und eigendlich sollte der ssh Deamon keine Verbindungen in diesem Bereich aufmachen.

Was sagt den ein lsof -i wenn du eine ssh-Verbindung auf hast ?
Hast du noch ander iptables-Filter am laufen ?

Bei meinem Test-Server funktioniert alles wunderbar.

tomes
Gespeichert
lieber1
ProFTPD
*
Offline Offline

Beiträge: 12


Profil anzeigen
« Antwort #11 am: 07. März 2004, 19:00:05 »

und jetzt funktioniert es die syntax ist ein bissal anders:

#!/bin/sh
#
#Shell-Skript fuer Quality of Service mit HTB
#
INTIF=eth0

###########
# Incoming
###########
/sbin/tc qdisc add dev $INTIF root handle 2:0 htb default 20
/sbin/tc class add dev $INTIF parent 2:0 classid 2:2 htb rate 1750kbit ceil 1750kbit
/sbin/tc class add dev $INTIF parent 2:2 classid 2:20 htb rate 1500kbit ceil 1500kbit prio 0
/sbin/tc class add dev $INTIF parent 2:2 classid 2:21 htb rate 30kbit ceil 30kbit prio 1

iptables -A OUTPUT -t mangle -o $INTIF -p tcp --sport 20 -j MARK --set-mark 21
iptables -A OUTPUT -t mangle -o $INTIF -p tcp --sport 60000:60050 -j MARK --set-mark 21

tc filter add dev $INTIF parent 2:0 prio 0 protocol ip handle 21 fw flowid 2:21

Danke nochmal !!

servus aus wien
Gespeichert
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC Prüfe XHTML 1.0 Prüfe CSS
Seite erstellt in 0.064 Sekunden mit 15 Zugriffen.