The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Iptables - промаркировать локальный FTP трафик"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Firewall, Фильтрация пакетов)
Изначальное сообщение [ Отслеживать ]

"Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Infox (ok) on 20-Фев-15, 13:39 
Внезапно, сложная задача: промаркировать весь FTP трафик на локальной машине и зарулить его по отдельному каналу. Локальная машина - FTP клиент, коннектится ко множеству неизвестных и неподконтрольных FTP серверов.
Промаркировать нужно и active и passive ftp (в последнем, помимо соединений на порты 21 и 20, устанавливается исходящее соединение на произвольный порт от 1024 до 65535)

Решил начать сначала с passive, подход в лоб не работает:


modprobe nf_conntrack_ftp
modprobe nf_nat_ftp
iptables -t mangle -I OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j MARK --set-mark 22
iptables -t mangle -I OUTPUT -p tcp --dport 20 -m state --state ESTABLISHED -j MARK --set-mark 22
iptables -t mangle -A OUTPUT -p tcp -m helper --helper "ftp" -j MARK --set-mark 22

Не работает - т.к. маркируются только коннекты на 20 и 21 порт, коннекты пассивного FTP на порты 1024 и выше не маркируются.

Вроде простая и старая как мир задача, но уже кажется, решения у нее нет, helper не работает, а без него нереально, т.к. придется весь трафик с порта 1024 и выше маркировать, а это не годится. Как вообще локально шейпят FTP трафик? Подход то должен быть тот же.

Кто-нибудь имеет хоть какое-нибудь решение этой задачи? Очень прошу помочь.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от _uznik_ (ok) on 20-Фев-15, 13:59 
Добрый день, а если инвертировать так сказать... т.е маркировать тот трафик который возможно(80, rdp, все что угодно) и отправлять его в not_default маршрут, а все остальное будет ftp...

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Infox (ok) on 20-Фев-15, 14:15 
> Добрый день, а если инвертировать так сказать... т.е маркировать тот трафик который
> возможно(80, rdp, все что угодно) и отправлять его в not_default маршрут,
> а все остальное будет ftp...

Спасибо, но не вариант, неизвестно, какой трафик еще будет на этом клиенте.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от поросёнок_петя on 20-Фев-15, 15:53 
Если по фтп лазят скрипты итп так как это локальная машина можно их(скрипты) навесить на отдельного юзверя и матчить по owner-у.
Если это человек - надо думать, фтп как протокол та ещё пакость.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Infox (ok) on 20-Фев-15, 15:56 
> Если по фтп лазят скрипты итп так как это локальная машина можно
> их(скрипты) навесить на отдельного юзверя и матчить по owner-у.
> Если это человек - надо думать, фтп как протокол та ещё пакость.

И скрипты, которые помимо FTP еще и по другим протоколам ходят, и человек. По владельцу уже давно бы сделал, это то просто.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Infox (ok) on 20-Фев-15, 15:57 
Непонятно, почему ftp helper не работает? Он же вроде как раз для таких целей и задумывался.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Iptables - промаркировать локальный FTP трафик"  +1 +/
Сообщение от Анонимфывфыв on 20-Фев-15, 15:58 
мне кажется что вы неправильно используете helper
он работает с conntrack, вот в мануале
Example: FTP helper

If your clients are authorized to access FTP outside of your network, you can add

iptables -A FORWARD -m conntrack --ctstate RELATED -m helper \\
       --helper ftp -o $OUT_IFACE -p tcp \\
       --dport 1024: -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate RELATED -m helper \\
       --helper ftp -i $OUT_IFACE -p tcp \\
       --dport 1024: -j ACCEPT

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Iptables - промаркировать локальный FTP трафик"  –1 +/
Сообщение от Infox (ok) on 20-Фев-15, 16:02 
> мне кажется что вы неправильно используете helper
> он работает с conntrack, вот в мануале
> Example: FTP helper

Читал этот мануал, пробовал и в такой комбинации, не работает. Может быть он не работает для локальных соединений в принципе, а только для маршрутизируемых? Мало что-то документации по этому хелперу.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Vaso Petrovich on 22-Фев-15, 07:40 
А это обязательно надо незаметно сделать не проще поставить прокси и не парится с маркировкой?
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Iptables - промаркировать локальный FTP трафик"  +/
Сообщение от Infox (ok) on 23-Фев-15, 17:11 
> А это обязательно надо незаметно сделать не проще поставить прокси и не
> парится с маркировкой?

Не, прокси не подходит никак.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру