Jump to content
Калькуляторы

freebsd, ipfw, ftp traffic

Есть задача - зарезать трафик по фтп на 20,21 порты с помощью dummynet.

Делаем так:

ipfw add pipe 1 tcp from any to me 20,21 out

ipfw pipe 1 config bw 100Kbit/s

 

В итоге ничего не меняется, т.к. при передача файлов по FTP происходит на порту, который открывается после конекта (например 44859, или любой другой рандомный порт). В кач-ве ftp демона пользую штатный /usr/libexec/ftpd.

Если зарезать так трафик на http:80, то все работает, т.к. пакеты летят прямо с 80-ого порта.

 

Подскажите как с помощью ipfw сделать задуманное с FTP.

 

Михаил.

Share this post


Link to post
Share on other sites

проблема в том что клиент может (и обычно делает это) затребовать режим passive mode. при этом сами данные передаются на каком-то неизвестном порту.

во фре штатный ftpd (последних версий) использует диапазон 49152..65535 (man ftpd).

 

не совсем понятно что вы хотите добиться, но если задача состоит в том что бы прижать трафик с вашего фтп сервера - то надо прижать этот диапазон.

 

ipfw add pipe 1 tcp from myftp 20,21,49152-65535 to any out

ipfw pipe 1 config bw 100Kbit/s

Share this post


Link to post
Share on other sites

А зачем все это...

Ведь можно и средствами самого ftp сервера ограничивать скорость.

По крайней мере ProFTPD и по моему WuFTPD это умеют.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.