IPFW+FTP
Модераторы: Trinity admin`s, Free-lance moderator`s
IPFW+FTP
Добрый день!
Проблема такая: надо организовать внешний ftp-сервер под FreeBSD, и закрыть его с помощью ipfw.
ОС - FreeBSD 6.2-RELEASE
Сервер - ProFTPD 1.3.0a (stable)
printenv | grep FTP
FTP_PASSIVE_MODE=YES
Прописываю правила:
/sbin/ipfw add 500 check-state
/sbin/ipfw add 600 deny all from any to any frag in via re0
/sbin/ipfw add 700 deny tcp from any to any established in via re0
/sbin/ipfw add 800 pass tcp from any 1024-65535 to me 21 in via re0 keep-state
/sbin/ipfw add 900 pass tcp from any 1024-65535 to me 20,1024-65535 in via re0 keep-state
/sbin/ipfw add 1000 pass tcp from me 21 to any 113,1024-65535 out via re0 keep-state
/sbin/ipfw add 1100 pass tcp from me 20,1024-65535 to any 113,1024-65535 out via re0 keep-state
Проверяю с двух внешних ip-адресов, находящихся в одной подсети. С одного работает, со второго нет. На нем отваливается по тайм-ауту. При этом на клиенте firewall'а нет и без поднятого на сервере ipfw он добирается до ftp-сервера.
Оба тестируемых клиента - FreeBSD 4.
Сделал /sbin/ipfw add 10000 deny log all from any to any
В лог отброшенных пакетов ipfw ничего не сваливается...
Судя по /sbin/ipfw show счетчик изменяется только для 800 правила. А ftp-сервер, после запроса, ничего не отдает клиенту...
Проблема такая: надо организовать внешний ftp-сервер под FreeBSD, и закрыть его с помощью ipfw.
ОС - FreeBSD 6.2-RELEASE
Сервер - ProFTPD 1.3.0a (stable)
printenv | grep FTP
FTP_PASSIVE_MODE=YES
Прописываю правила:
/sbin/ipfw add 500 check-state
/sbin/ipfw add 600 deny all from any to any frag in via re0
/sbin/ipfw add 700 deny tcp from any to any established in via re0
/sbin/ipfw add 800 pass tcp from any 1024-65535 to me 21 in via re0 keep-state
/sbin/ipfw add 900 pass tcp from any 1024-65535 to me 20,1024-65535 in via re0 keep-state
/sbin/ipfw add 1000 pass tcp from me 21 to any 113,1024-65535 out via re0 keep-state
/sbin/ipfw add 1100 pass tcp from me 20,1024-65535 to any 113,1024-65535 out via re0 keep-state
Проверяю с двух внешних ip-адресов, находящихся в одной подсети. С одного работает, со второго нет. На нем отваливается по тайм-ауту. При этом на клиенте firewall'а нет и без поднятого на сервере ipfw он добирается до ftp-сервера.
Оба тестируемых клиента - FreeBSD 4.
Сделал /sbin/ipfw add 10000 deny log all from any to any
В лог отброшенных пакетов ipfw ничего не сваливается...
Судя по /sbin/ipfw show счетчик изменяется только для 800 правила. А ftp-сервер, после запроса, ничего не отдает клиенту...
- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Re: IPFW+FTP
Интересно как это вы собираетесь его повесить наружу да и еще прикрыть? Самый простой способ для избавления от сканирования, это повесить фтп на какой-нибудь нестантартный порт. Правила я бы написал так:a_kabanov писал(а):Проблема такая: надо организовать внешний ftp-сервер под FreeBSD, и закрыть его с помощью ipfw.
Код: Выделить всё
/sbin/ipfw add 1100 pass tcp from any to my 20
/sbin/ipfw add 1101 pass tcp from my 20 to any
/sbin/ipfw add 1102 pass tcp from any to my 21
/sbin/ipfw add 1103 pass tcp from my 21 to any established
Виноват, несколько неправильные правила привёл...
Но сути это не меняет...
Предполагается разрешать доступ на ftp сервер только с определенного ip-адреса.
В процессе тестирования поставил "any" вместо ip-адреса.
Пытаюсь достучаться до ftp-сервера с двух клиентов с внешними ip-адресами. Причём оба клиента в одной подсети (из одного пула ip-шников, выданного провайдером), на обоих FreeBSD 4, firewall'a нет.
Если на сервере только "allow all from any to any", то с обоих клиентов все работает... Как только прописываю правила, с одного клиента работает, а со второй отваливается по тайм-ауту.
Судя по логам ipfw, счетчик крутится только на "Client initiates connection" (allow ip from _клиент_ to me 21). На следующем правиле ("Server responds to client's control port" allow ip from me 21 to _клиент_ 1024-65535) всё по нулям.
Причем, повторюсь, без ipfw всё работает и траблы только с одним клиентом из двух тестируемых...
Но сути это не меняет...
Предполагается разрешать доступ на ftp сервер только с определенного ip-адреса.
В процессе тестирования поставил "any" вместо ip-адреса.
Пытаюсь достучаться до ftp-сервера с двух клиентов с внешними ip-адресами. Причём оба клиента в одной подсети (из одного пула ip-шников, выданного провайдером), на обоих FreeBSD 4, firewall'a нет.
Если на сервере только "allow all from any to any", то с обоих клиентов все работает... Как только прописываю правила, с одного клиента работает, а со второй отваливается по тайм-ауту.
Судя по логам ipfw, счетчик крутится только на "Client initiates connection" (allow ip from _клиент_ to me 21). На следующем правиле ("Server responds to client's control port" allow ip from me 21 to _клиент_ 1024-65535) всё по нулям.
Причем, повторюсь, без ipfw всё работает и траблы только с одним клиентом из двух тестируемых...
- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
В том то и дело, что с Вашими (да и с любыми другими) правилами, у меня работает только с половины (примерно) тестируемых клиентов... Видимо, надо разрешить ещё какой-нибудь порт/протокол, но вот какой - я не знаю....Stranger03 писал(а):Ну возьмите мои правила, поправьте вместо эни айпишники. Будет 8-мь правил вместо 4-х. В чем проблема то?
у вас наверно проблема PASSIVE FTP На клиенте поменяйте режим на Active.
PS: Active FTP vs. Passive FTP, a Definitive Explanation (eng)
PS: Active FTP vs. Passive FTP, a Definitive Explanation (eng)
Да нет, на обоих тестируемых клиентах (FreeBSD 4.7):apelsin писал(а):у вас наверно проблема PASSIVE FTP На клиенте поменяйте режим на Active.
PS: Active FTP vs. Passive FTP, a Definitive Explanation (eng)
printenv | grep FTP
FTP_PASSIVE_MODE=YES
Пробовал и так делать:
ftp> passive
Passive mode: on; fallback to active mode: on.
Не помогает...
- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Понятно, встречали. На самом деле это не очень то ваши проблемы, а проблемы клиента. Я особо не разбирался, но на старых Самбах к примеру не очень корректно отрабатывались правила актив-пассив режима. Однако коннекты через НАТ работали на ура (это все про клиентов). Я особо не заморачивался с этой проблемой. Может еще кто из здешних гуру подскажет.a_kabanov писал(а):тестируемых клиентов... Видимо, надо разрешить ещё какой-нибудь порт/протокол, но вот какой - я не знаю....
- Stranger03
- Сотрудник Тринити
- Сообщения: 12979
- Зарегистрирован: 14 ноя 2003, 16:25
- Откуда: СПб, Екатеринбург
- Контактная информация:
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 18 гостей