HTB pro ftp

Dalibor Straka dast na panelnet.cz
Pondělí Duben 24 16:34:53 CEST 2006


On Mon, Apr 24, 2006 at 03:47:28PM +0200, Stanislav Mařík wrote:
> Dobrý den,
> snažím se rozchodit htb pro omezení uploadu (eth0-internet) z ftp 
> serveru, ale nějak mě to nechce házet označené pakety do třídy 11, 
> můžete mi poradit kde dělám chybu? Markování paketů je dle logu vpořádku.
> 
> #!/bin/bash
> tc=`which tc`
> iptables=`which iptables`
> $tc qdisc del dev eth0 root
> $tc qdisc add dev eth0 root handle 1:0 htb default 12
> $tc class add dev eth0 parent 1:0 classid 1:1 htb rate 512kbit
> 
> $tc class add dev eth0 parent 1:1 classid 1:11 htb rate 128kbit
> $tc class add dev eth0 parent 1:1 classid 1:12 htb rate 128kbit ceil 512kbit
> 
> $tc qdisc add dev eth0 parent 1:11 handle 11:0 sfq perturb 5
> $tc qdisc add dev eth0 parent 1:12 handle 12:0 sfq perturb 5
> 
> $iptables -t mangle -F POSTROUTING
> $iptables -t mangle -A POSTROUTING -p tcp -j MARK --set-mark 12
> $iptables -t mangle -A POSTROUTING -p tcp --sport 20 -j MARK --set-mark 11
> $iptables -t mangle -A POSTROUTING -p tcp --sport 21 -j MARK --set-mark 11
> 

neznam zpameti vsechny defaultni hodnoty iptables, proto pro jistotu
zkuste definovat explicitne "-o eth0" a take tim neosetrite pasivni ftp,
kdy se klient pripojuje na server (pri datovem spojeni) mimo port 20
viz:
http://slacksite.com/other/ftp.html
Jedna z moznosti je na ftp serveru vymezit rozsah portu pro passive ftp
a ty pak drapnout necim takovymhle
iptables -t mangle -p tcp --dport 20001:20010 -o eth0 -j MARK --set-mark 0x4
iptables -t mangle -p tcp --dport 20001:20010 -o eth0 -j RETURN

Jinou moznosti je passive ftp zakazat.

Mozna na to existuje specielni modul :-) neco jako je ip_conntrack_ftp.

-- Dalibor Straka


Další informace o konferenci Linux