ipfw правила запрета по умолчанию
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
ipfw правила запрета по умолчанию
всем добрый вечер. подскажите пожалуйста с вопросами, связанными с настройкой ipfw по принципу "запрет по умолчанию"
проблема в следующем.
dns запросы
сервер отправляет upd запросы на 53 порт dns сервера с разных локальных портов. можно ли как-то настроить, чтоб запросы отправлялись с какого-то одного порта? то есть я хочу настроить без динамических правил
и можно ли как-то без динамических правил открыть 25 порт для отправки почты, но только для отправки, чтоб коннектиться к нему было нельзя?
проблема в следующем.
dns запросы
сервер отправляет upd запросы на 53 порт dns сервера с разных локальных портов. можно ли как-то настроить, чтоб запросы отправлялись с какого-то одного порта? то есть я хочу настроить без динамических правил
и можно ли как-то без динамических правил открыть 25 порт для отправки почты, но только для отправки, чтоб коннектиться к нему было нельзя?
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
В смысле изменить реализацию работы DNS? Ну ну..можно ли как-то настроить, чтоб запросы отправлялись с какого-то одного порта?
Что-то у вас страх от динамических правил. Вообще можно конечно, пробуйте.можно ли как-то без динамических правил открыть 25 порт для отправки почты, но только для отправки, чтоб коннектиться к нему было нельзя?
P.S. Так как новенький, поясняю что от вас требуется.
Прочитал ТУТ, ТУТ и ТУТ о работе IPFW, создал ВОТ ТАКОЕ ПРАВИЛО, оно должно работать вот ТАК, но не работает как я хочу, помогите.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
а можете подсказать как? я пробовал примерно следующим образомВообще можно конечно, пробуйте.
Код: Выделить всё
deny ip from any to me 25
allow ip from me to any
а что вы с таким скептицизмом отнеслись? вы же у нас тут не новенький, порекомендуйте в какую сторону копать, что изучать?В смысле изменить реализацию работы DNS? Ну ну..
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: ipfw правила запрета по умолчанию
начните с handbook-а и man ipfw, судя по правилам вы их пропустили, непростительно
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
там все на инглише, но я немного там читал, я смотрю exim тоже с какого-то левого порта начинает отправку, похоже что с этим и проблема. и если с днс можно еще добавить доверенные сервера, с порта 53 которых разрешаются коннекты к нам (любым портам), то с почтой тут сложнее. мой вопрос собственно заключается в том, а можно ли сделать это без динамических правил? потому что с динамическими правилами я могу это реализовать без проблем.
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: ipfw правила запрета по умолчанию
идите от противного, если не можете контролировать в одну сторону, почему не контролировать в другую?
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
- hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Re: ipfw правила запрета по умолчанию
без технического англцкого нечего делать в сисьадминах
довольно подробно обо всех фаерволах на русском здесь http://www.house.hcn-strela.ru/BSDCert/ ... index.html
насчет случайных портов, почитайте статьи как работают сокеты(sockets) , воспользуйтесь google-фу
довольно подробно обо всех фаерволах на русском здесь http://www.house.hcn-strela.ru/BSDCert/ ... index.html
насчет случайных портов, почитайте статьи как работают сокеты(sockets) , воспользуйтесь google-фу
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
ну я не говорил что не знаю тех англ. просто я читал там сравнительно немного 

это намек использовать динамические правила? ну тоже можно, просто главное контролировать чтоб их не было слишком много. если кто-то знает, как конкретно можно в данном случае обойтись без них, буду раз за примеры. насчет сокетов понятно, серверное приложение слушает порт, но клиент не обязательно сидит на этом порте...идите от противного, если не можете контролировать в одну сторону, почему не контролировать в другую?
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
Опять почта.. Ладно, пока не спится расскажу.
1. Есть почтовый клиент (CLIENT)
2. Есть почтовый сервер (SERVER)
3. Есть ещё почтовый сервер (любой другой) X-SERVER
Обычно пользователь через почтовый клиент соединяется с почтовым сервером и отправляет письмо другому почтовому серверу (или этому-же).
Связка выглядит так:
CLIENT->SERVER->X-SERVER->CLIENT2
В роли клиента может быть и SERVER и CLIENT.
Клиент начинает соединение с портов 1024-65535 на порт сервера 25,465 и т.п. (RFC читай).
Есть небольшое различие между соединением пользователя с почтовым сервером и сервера с сервером.
Жизнь стала настолько трудной, что из-за спама пришлось вводить аутентификацию (Логин и пароль) для клиентов-пользователей.
Но когда клиентом выступает сам сервер (например mail.ru передаёт данные на yandex.ru), у mail.ru нет пароля и логина на сервере yandex.ru, зато есть другие средства подлинности:
Наличие mx записи в DNS и т.п.
Подумай какую роль клиента/сервера должен выполнять твой компьютер и соответственно настрой правила в ipfw.
Полная цепочка соединений с портами выглядит так:
IP_CLIENT:1024-65535 -> IP_SERVER1:25 (Отправка письма почтовым клиентом)
IP_SERVER1:1024-65535 -> IP_SERVER2:25
IP_SERVER2:1024-65535 -> IP_SERVER_X:25
...и т.д. до последнего сервера. пользователь эти этапы не видит.
IP_CLIENT2:1024-65535 -> IP_SERVER_X:25 (Получение письма почтовым клиентом)
1. Есть почтовый клиент (CLIENT)
2. Есть почтовый сервер (SERVER)
3. Есть ещё почтовый сервер (любой другой) X-SERVER
Обычно пользователь через почтовый клиент соединяется с почтовым сервером и отправляет письмо другому почтовому серверу (или этому-же).
Связка выглядит так:
CLIENT->SERVER->X-SERVER->CLIENT2
В роли клиента может быть и SERVER и CLIENT.
Клиент начинает соединение с портов 1024-65535 на порт сервера 25,465 и т.п. (RFC читай).
Есть небольшое различие между соединением пользователя с почтовым сервером и сервера с сервером.
Жизнь стала настолько трудной, что из-за спама пришлось вводить аутентификацию (Логин и пароль) для клиентов-пользователей.
Но когда клиентом выступает сам сервер (например mail.ru передаёт данные на yandex.ru), у mail.ru нет пароля и логина на сервере yandex.ru, зато есть другие средства подлинности:
Наличие mx записи в DNS и т.п.
Подумай какую роль клиента/сервера должен выполнять твой компьютер и соответственно настрой правила в ipfw.
Полная цепочка соединений с портами выглядит так:
IP_CLIENT:1024-65535 -> IP_SERVER1:25 (Отправка письма почтовым клиентом)
IP_SERVER1:1024-65535 -> IP_SERVER2:25
IP_SERVER2:1024-65535 -> IP_SERVER_X:25
...и т.д. до последнего сервера. пользователь эти этапы не видит.
IP_CLIENT2:1024-65535 -> IP_SERVER_X:25 (Получение письма почтовым клиентом)
Ага, у него диапазон портов.но клиент не обязательно сидит на этом порте...
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
Спасибо за некоторые пояснения. И это получается что мне нужно принимать от неизвестно кого (any) любой трафик (пусть и только с 25 порта) на локальные порты 1024-65535
Да, пусть на этом порте нету веб сервера и т.д. но все же в чем тогда суть
если я буду так портами разбрасываться? 
Значит выход - динамические правила.
Да, пусть на этом порте нету веб сервера и т.д. но все же в чем тогда суть
Код: Выделить всё
...
deny from any to any

Значит выход - динамические правила.
Код: Выделить всё
check-state
...
allow tcp from any to any 25 out via re0 setup keep-state
...
deny ip from any to any
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
Вы не понимаете работу TCP протокола. Почитайте про тройное рукопожатие. Может что прояснится.
А потом ответьте, что означает выделенное?
А потом ответьте, что означает выделенное?
P.S.allow tcp from any to any 25 out via re0 setup keep-state
и ещё:
allow tcp from any 25 to me in via re0 established
Шлюз, сервер, клиент? Совместные задачи какие-то?Подумай какую роль клиента/сервера должен выполнять твой компьютер
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
цель - сервер, отправляющий почту от www.
здесь разрешается коннект исходящий с 25 порта при этом правило запоминается, чтобы принять ответ. setup отслеживает флаг SYN (http://www.house.hcn-strela.ru/BSDCert/ ... -TCP-flags) то есть он ловит первый пакет тройного рукопожатия. кстати, хороший линк, там есть что почитать...
здесь разрешается коннекты от мира 25 порта ко мне, которые уже установились.. а что, это идея 
то есть по аналогии я так понял данные правила должны работать ?
Код: Выделить всё
allow tcp from any to any 25 out via re0 setup keep-state
Код: Выделить всё
allow tcp from any 25 to me in via re0 established

то есть по аналогии я так понял данные правила должны работать ?
Код: Выделить всё
allow tcp from any 25 to me in via re0 established
allow tcp from me to any
deny tcp from any to any
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
На 25 порт. Видимо ты описался.здесь разрешается коннект исходящий с 25 порта при этом правило запоминается, чтобы принять ответ.
И если попался первый, через эту связку идут и другие пакеты в цепочке IP<->IP для протокола TCP до окончания сессии.то есть он ловит первый пакет тройного рукопожатия.
Проще понять наверное так:
1. Имеется правило с keep-state за номером 1000
2. Имеется таблица динамических соединений (ipfw -d)
При прохождении пакета через правило с номером 1000 появляется запись в таблице соединений с номером 1000
IP<->IP
и пакет принимается
Теперь при последующем прохождении любого пакета через это правило, сначала проверяется таблица динамических соединений, и если связка уже есть, пакет принимается, независимо от наличия setup в правиле и т.п.
Для более быстрого принятия пакета можно в начало поставить другое правило проверки динамических соединений ckeck-state
Т.о. принять пакет через динамическое соединение можно двумя путями.
1. Через это же правило, но только по совпадению IP<->IP.
2. Через check-state
+100500то есть по аналогии я так понял данные правила должны работать ?
Код: Выделить всё
allow tcp from any 25 to me in via re0 established allow tcp from me to any deny tcp from any to any
Я бы добавил в начало упоминание про lo конечно же, DNS, ICMP, tracert и т.п.:-))
P.S. Осваивайте log в ipfw, очень помогает строить конкретные правила и отлавливать проблемы.
P.S2. Если у вас сервер, он должен быть виден снаружи и нормально функционировать хотя бы для проверки существования пользователей иметь запись в DNS и т.п.
Но если через smarthost используете, то пофиг конечно. Используйте как пересыльщик, нормально будет.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
так у меня до этого еще есть правила. а насчет этого
allow tcp from any to any 25 out via re0 setup keep-state
то есть исходящий трафик через re0 пропускается и затем запоминается чтоб принять по этому же динамическому правилу входящий. или я чего-то не понимаю?
не совсем понятно. там же указаноНа 25 порт. Видимо ты описался.
allow tcp from any to any 25 out via re0 setup keep-state
то есть исходящий трафик через re0 пропускается и затем запоминается чтоб принять по этому же динамическому правилу входящий. или я чего-то не понимаю?
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
Не исходящий с 25 порта, а направляющийся на 25 порт удалённого сервера. Может ты это и имел ввиду.allow tcp from any to any 25 out via re0 setup keep-state
здесь разрешается коннект исходящий с 25 порта при этом правило запоминается, чтобы принять ответ.
Ага, именно так.то есть исходящий трафик через re0 пропускается и затем запоминается чтоб принять по этому же динамическому правилу входящий.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
Да, это я имел в виду.
-
- сержант
- Сообщения: 224
- Зарегистрирован: 2011-09-21 1:23:43
Re: ipfw правила запрета по умолчанию
скажите, а fetch (та что сорцы тянет когда порты ставишь) с какого диапазона портов работает?
- dikens3
- подполковник
- Сообщения: 4856
- Зарегистрирован: 2006-09-06 16:24:08
- Откуда: Нижний Новгород
- Контактная информация:
Re: ipfw правила запрета по умолчанию
А смотря куда ссылки ведут, иногда с 80 порта, иногда через FTP.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.