URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 56219
[ Назад ]

Исходное сообщение
"ftp и ipfw"

Отправлено pablo , 05-Май-05 17:32 
Добрый день.
Подскажите как правильно решить проблему.
Существует железяка на которой стоит ftp сервер.
ОС - FreeBSD 5.3-RELEASE-p10
ftp сервер - vsftpd-2.0.1

Как правильно настроить firewall для для того чтобы клиенты коннектились в passive режиме? Проблема осложняеться тем что хочеться использовать фильтрацию по состояниям (keep-state в ipfw).
После усиленного тугугла нашел следующие варианты:
1. Разрешить средствами ipfw доступ к конкретному uid.
например:
add pass ip from any to me uid <ftp_server_uid>

Однако это не работает поскольку в vsftpd порт для передачи данных открываеться от uid пользователя под которым осуществлен вход.

2. Ограничить область используемых ftp сервером портов и в firewall открыть только их.
например:
vsftpd.conf:
pasv_min_port=50000
pasv_max_port=60000

ipfw:
pass tcp from any to me 50000-60000

Тоже не особо прельшает... держать такую кучу портов открытыми...

Неужели нет других вариантов?


Содержание

Сообщения в этом обсуждении
"ftp и ipfw"
Отправлено QeV , 05-Май-05 23:23 
Ты вообще понимаешь как работает активный и пассивный режимы фтп???

открывай 21 на входящие соединения, 20 ( для активного соединений) - на исход. В фтп сервере выстави в настройках порт для пассивных соединений (например 3333) и откррой его на входящие соединения.

И будет тебя ЩастьЕ


"ftp и ipfw"
Отправлено 80286 20Mhz bez soprocessora , 06-Май-05 06:55 
про варианты с портами 50000-60000 всё правильно,
только на твой вопрос - "зачем держать столько портов открытым?":
ответ: сколько одновременных соединений надо -> столько и открывай.
мб: 30000-30033 => 33 одновременных коннекта (на серваке ессно, для всех)
к тому же (как сам понимаешь) эти порты открываются только для общепринятых браузеров + фтп клиентов. FAR под виндами даже без этих фишек будет ходить на ура ТОЛЬКО через 20,21.

бай гуд


"ftp и ipfw"
Отправлено pablo , 06-Май-05 11:01 
>про варианты с портами 50000-60000 всё правильно,
>только на твой вопрос - "зачем держать столько портов открытым?":
>ответ: сколько одновременных соединений надо -> столько и открывай.
>мб: 30000-30033 => 33 одновременных коннекта (на серваке ессно, для всех)
>к тому же (как сам понимаешь) эти порты открываются только для общепринятых
>браузеров + фтп клиентов. FAR под виндами даже без этих фишек
>будет ходить на ура ТОЛЬКО через 20,21.
>
>бай гуд


Про порты, спасибо. Жаль.

Что значит "FAR под виндами даже без этих фишек будет ходить на ура" и чем  он отличаеться от "общепринятых браузеров + фтп клиентов" ?
Что имееться в виду?
Мы говорим о пассивном режиме ftp. Сервер должен открыть у себя дополнительный порт на обработку каждой команды клиента. И 20,21 здесь не обойтись.


"ftp и ipfw"
Отправлено pablo , 06-Май-05 10:56 
>Ты вообще понимаешь как работает активный и пассивный режимы фтп???
Представте себе.

>
>открывай 21 на входящие соединения, 20 ( для активного соединений) - на
>исход. В фтп сервере выстави в настройках порт для пассивных соединений
>(например 3333) и откррой его на входящие соединения.
Активный ftp - не устраивает однозначно.
Т.е. проблема решаеться только открытием конкретных портов для всех.
Ясно.

>
>И будет тебя ЩастьЕ



"ftp и ipfw"
Отправлено 80286 20Mhz bez soprocessora , 06-Май-05 11:09 
про фару - попробуй сначала :) ::
только 21 и всё прёт на пассиве (все остальные клиенты требуют дополнительных портов-пассивов, что является стандартом).
а насчёт ЖАЛЬ - фигня это всё: порты открываются только для конкретного коннекта на данный ИП+порт (там сами фитипихи договариваются), и потом закрываются, И ВЕДЬ НИЧЕГО ДРУГОГО НЕ ВИСИТ на них = так что беспокоиться не о чем.

короче, маслай, скань, радуйся.

бай эгэйн.


"ftp и ipfw"
Отправлено pablo , 06-Май-05 11:29 
>про фару - попробуй сначала :) ::
>только 21 и всё прёт на пассиве (все остальные клиенты требуют дополнительных
>портов-пассивов, что является стандартом).
Только что специально проверил.
Far - 1.70 beta 5
ftp сервер - ftpd штатный FreeBSD 4.11-RELEASE

По умолчанию far действительно общаеться с портами на сервере только 20,21
Однако это настройка по умолчанию на активный (PORT) режим.
Если в настройках выставить галку "[x] Passive mode" Far ведет себя так же как и все остальные ftp клиенты.


>а насчёт ЖАЛЬ - фигня это всё: порты открываются только для конкретного
>коннекта на данный ИП+порт (там сами фитипихи договариваются), и потом закрываются,
>И ВЕДЬ НИЧЕГО ДРУГОГО НЕ ВИСИТ на них = так что
>беспокоиться не о чем.
Если клиентов много, приходиться открывать большое количество портов. Причем человек животное забывчивое... :-) потом можно и не вспомнить что открыто, а туда что-нибудь поставить.
К тому же нужно искать сервер которому можно было-бы указать в каком диапазоне портов работать. Хорошо что vsftpd это умеет. Но у меня на паре машин стоит шатный ftpd, afaik он этого не умееет.

Насколько я понимаю открываеться порт для всех. А не для конкретного IP клиента. Вроде как даже были атаки направленные на угадывание порта который открое сервер и перехват данных (или на угадывание порта который откроет клиент (в активном режиме) и передачу ему неверных данных).

Вот если бы ftp сервер говорил ipfw какой порт для какого IP открыть. Это было бы чудесно...


>
>короче, маслай, скань, радуйся.
>
>бай эгэйн.



"ftp и ipfw"
Отправлено 80286 20Mhz bez soprocessora , 06-Май-05 12:16 
так в чём проблема?
сначала разреши ipfw диапазоны ИП + порт, а потом укажи фитипи => какие открывать. типа:

ipfw add pass tcp from 1.2.3.4/xxx to me 50000-50010

+ на 21 тоже самое.
ЗЫ: хотя в принципе достаточно фаерить ТОЛЬКО 21 => тк только после обращения по нему демонята_эфтипята открывают дырки свыше. т.е. хоть тыщу лет работай с портами там 50000-ххх => коннекта не будет.

а насчёт запомнить какие разрешал - есть конфиг (да и вообще-то правило для себя надо иметь, типа такие-то для фтп, такие-то для птф_или_что_там).

у меня есть тачка - много сервисов + 6 сеток + ipnat (разрулено по различным портам на каждую сетку) + vsftpd = всё отлично работает годами.