Понимаю что этот вопрос всех достал но я сам победить не могу (хотя чувствую что ответ где то рядом) вот и решил обратится с всезнающему All
проблема такая, есть сервер на нем стоят route dhcpd squid sendmail ipfw (вообщем джентельменский набор) но правила 110 и 120 меня в принципе не устраивают потому как это не шлюз а хрен знает чего получается а если запретить эти правила тот route начинает судорожно дергатся и писать, что пермишн денайд (нет доступа к броадкасту), и ко всему прочему (если 110 и 120 не закоментарены) получается что из вне я могу пинговать внутреннюю сетку что не очень желательно.
Помогите советом как сделать так что бы все пользователи могли ходить куда угодно если в инет то через squid а из вне не могли ничего кроме пинга на внешний адреснастройки следующие
xl0 это внешний интерфейс (смотрит на интернет)
rl0 это внутренний<br>ipfw add 100 pass all from any to any via lo0
<br>ipfw add 110 pass all from any to any via xl0
<br>ipfw add 120 pass all from any to any via rl0
<br>ipfw add 130 pass icmp from any to any
<br>ipfw add 140 deny icmp from any to any frag
<br>ipfw add 150 pass tcp from any to any 25
<br>ipfw add 160 pass tcp from any 25 to any
<br>ipfw add 170 pass udp from any to any 53
<br>ipfw add 180 pass udp from any 53 to any
<br>ipfw add 190 pass udp from any to any 110
<br>ipfw add 200 pass udp from any 110 to any
<br>ipfw add 210 fwd $squid,3128 tcp from 192.168.42.101 to 0.0.0.0/0 80
какой из интерфейсов глядит наружу?общее: все закрываешь, ставишь НАТ на форвард подключений к сквиду, потом по логам смотришь чего можно открыть. я например ICMP вообще зарэзал на DMZ. и ничо, работает хоть бы хрен.
тьфу, не заметил про внешний интерфейс =)
ну суть от этого не меняется. =)
>какой из интерфейсов глядит наружу?
>
>общее: все закрываешь, ставишь НАТ на
>форвард подключений к сквиду, потом
>по логам смотришь чего можно
>открыть. я например ICMP вообще
>зарэзал на DMZ. и ничо,
>работает хоть бы хрен.
Т.е ICMP сообщение Host unreachable не доходит до твоих серверов? Ну ты крут.... ;))
>>какой из интерфейсов глядит наружу?
>>
>>общее: все закрываешь, ставишь НАТ на
>>форвард подключений к сквиду, потом
>>по логам смотришь чего можно
>>открыть. я например ICMP вообще
>>зарэзал на DMZ. и ничо,
>>работает хоть бы хрен.
>Т.е ICMP сообщение Host unreachable не
>доходит до твоих серверов? Ну
>ты крут.... ;))
Согласен с EDC icmp должон быть, но все же хотелось узнать как сделать (все зарезать это не решение)
>>>какой из интерфейсов глядит наружу?
>>>
>>>общее: все закрываешь, ставишь НАТ на
>>>форвард подключений к сквиду, потом
>>>по логам смотришь чего можно
>>>открыть. я например ICMP вообще
>>>зарэзал на DMZ. и ничо,
>>>работает хоть бы хрен.
>>Т.е ICMP сообщение Host unreachable не
>>доходит до твоих серверов? Ну
>>ты крут.... ;))
>Согласен с EDC icmp должон быть,
>но все же хотелось узнать
>как сделать (все зарезать это
>не решение)
man natd
пара бессоных ночей - и все работает.
у тебя должны висеть правила перекодировки
divert ip ...........
и в таклм же духе
иначе бяда. :)
>>>>какой из интерфейсов глядит наружу?
>>>>
>>>>общее: все закрываешь, ставишь НАТ на
>>>>форвард подключений к сквиду, потом
>>>>по логам смотришь чего можно
>>>>открыть. я например ICMP вообще
>>>>зарэзал на DMZ. и ничо,
>>>>работает хоть бы хрен.
>>>Т.е ICMP сообщение Host unreachable не
>>>доходит до твоих серверов? Ну
>>>ты крут.... ;))
>>Согласен с EDC icmp должон быть,
>>но все же хотелось узнать
>>как сделать (все зарезать это
>>не решение)
>man natd
>пара бессоных ночей - и все
>работает.
>у тебя должны висеть правила перекодировки
>
>divert ip ...........
>и в таклм же духе
>иначе бяда. :)
В соответстви с имеющимися у меня доками (в том числе и ман по ipfw) могу сказать что сделать это можно и без ДИВЕРТА но как сказать не могу (в манах описан самый простой пример (все выходят через СКВИД и никто не может войти во внутреннюя сеть,(что в принципе и нужно) но с этими правилами опять же ругается РОУТ) а редактирование этого примера под свои нужды приводит в написанию совершенно новых правил т.е. добавлением правила РАЗРЕШЕННО ВСЕ ПО ОБОИМ ИНТЕРФЕЙСАМ)
Я конечно не против ДИВЕРТА но лишнего не охота ставить (т.е. зачем добавлять в ядро ДИВЕРТ когда это можно сделать ФОРВАРДОМ) вот в чем вопрос
С другой стороны если н найду ответа придется ставить ДИВЕРТ - подождем
[skipped]без divert'a ты сможешь выпустить только http-траффик (в твоем случае) через squid. и то https работать не будет :) все остальное будет работать только в пределах внутренней сети.
>В соответстви с имеющимися у меня
>доками (в том числе и
>ман по ipfw) могу сказать
>что сделать это можно и
>без ДИВЕРТА но как сказать
>не могу (в манах описан
>самый простой пример (все выходят
>через СКВИД и никто не
>может войти во внутреннюя сеть,(что
>в принципе и нужно) но
>с этими правилами опять же
>ругается РОУТ) а редактирование этого
>примера под свои нужды приводит
>в написанию совершенно новых правил
>т.е. добавлением правила РАЗРЕШЕННО ВСЕ
>ПО ОБОИМ ИНТЕРФЕЙСАМ)
>Я конечно не против ДИВЕРТА но
>лишнего не охота ставить (т.е.
>зачем добавлять в ядро ДИВЕРТ
>когда это можно сделать ФОРВАРДОМ)
>вот в чем вопрос
>С другой стороны если н найду
>ответа придется ставить ДИВЕРТ -
>подождем
>[skipped]
>
>без divert'a ты сможешь выпустить только
>http-траффик (в твоем случае) через
>squid. и то https работать
>не будет :) все остальное
>будет работать только в пределах
>внутренней сети.
>
Мне ничего кроме http больше не нужно (только сайты - я так подошел к проблеме уменьшения траффика :-)))), вопрос в обепспечении безопасности.
[skipped]в таком случае правило для forward надо ставить первым. в том примере, что у тебя, пакет до этого правила не дойдет. обрати внимание на https. там дополнительные телодвижения надо делать. опять же с divert'ом :)
>Мне ничего кроме http больше
>не нужно (только сайты -
>я так подошел к проблеме
>уменьшения траффика :-)))), вопрос в
>обепспечении безопасности.
>[skipped]
>
>в таком случае правило для forward
>надо ставить первым. в том
>примере, что у тебя, пакет
>до этого правила не дойдет.
>обрати внимание на https. там
>дополнительные телодвижения надо делать. опять
>же с divert'ом :)
>
Блин убедили - ставлю divert
P.S. насчет пакет не дойдет до форвард правила - ДОХОДИТ
не дойдет и не доходит. man ipfw читал на предмет allow? как ты видишь, что пакет до правила доходит?>>[skipped]
>>
>>в таком случае правило для forward
>>надо ставить первым. в том
>>примере, что у тебя, пакет
>>до этого правила не дойдет.
>>обрати внимание на https. там
>>дополнительные телодвижения надо делать. опять
>>же с divert'ом :)
>>
>Блин убедили - ставлю divert
>P.S. насчет пакет не дойдет до
>форвард правила - ДОХОДИТ
>не дойдет и не доходит. man
>ipfw читал на предмет allow?
>как ты видишь, что пакет
>до правила доходит?
>
Ес-но если пакет не доходит по правила форвард то инета у моих юзеров не будет а он ЕСТЬ - правило форвард РАБОТАЕТ!!!
Поставил divert+natd - работает, теперь собственно вопрос как считать (к примеру у меня считает squid вернее создает лог, а считает sarg), а теперь получается, что я в обход squid'а хожу и соответственно учет не ведется.
ВНИМАНИЕ ВОПРОС:
Можно ли как нибудь пускать народ через squid методом divert+natd? (сам еле понял что написал, или не понял?!)
count'ом ipfw. через некоторые промежутки времени снимать показания и делать какие-то действия. скрипт надо писать.>Поставил divert+natd - работает, теперь собственно
>вопрос как считать (к примеру
>у меня считает squid вернее
>создает лог, а считает sarg),
>а теперь получается, что я
>в обход squid'а хожу и
>соответственно учет не ведется.
>ВНИМАНИЕ ВОПРОС:
>Можно ли как нибудь пускать народ
>через squid методом divert+natd? (сам
>еле понял что написал, или
>не понял?!)
>count'ом ipfw. через некоторые промежутки времени
>снимать показания и делать какие-то
>действия. скрипт надо писать.
>
Так не охота считать через count (в squid более обширная информация - кто куда ходил, кто чего смотрел, кто сколько времени просидел в инете), можно ли прикрутить squid к natd, то есть чтобы divert шел на squid?
Если можно то как это указать?
>Поставил divert+natd - работает, теперь собственно
>вопрос как считать (к примеру
>у меня считает squid вернее
>создает лог, а считает sarg),
>а теперь получается, что я
>в обход squid'а хожу и
>соответственно учет не ведется.
>ВНИМАНИЕ ВОПРОС:
>Можно ли как нибудь пускать народ
>через squid методом divert+natd? (сам
>еле понял что написал, или
>не понял?!)у меня стоит nat c divert'ом, а считается (лог айпи, сюды, туды, тотал) все ipfm
>>[skipped]
>>
>>без divert'a ты сможешь выпустить только
>>http-траффик (в твоем случае) через
>>squid. и то https работать
>>не будет :) все остальное
>>будет работать только в пределах
>>внутренней сети.
>>
>Мне ничего кроме http больше
>не нужно (только сайты -
>я так подошел к проблеме
>уменьшения траффика :-)))), вопрос в
>обепспечении безопасности.
странные у тебя представления об уменьшении трафика :))))
я бы тогда им оставила только почту :)))
и попинала антивирусы для безопасности:)
а еще сдесь в форуме была интересная мысль запретить получать письма с приаттаченными *.exe и пр. Если ее развить - экономия трафика налицо :))))
>>>[skipped]
>>>
>>>без divert'a ты сможешь выпустить только
>>>http-траффик (в твоем случае) через
>>>squid. и то https работать
>>>не будет :) все остальное
>>>будет работать только в пределах
>>>внутренней сети.
>>>
>>Мне ничего кроме http больше
>>не нужно (только сайты -
>>я так подошел к проблеме
>>уменьшения траффика :-)))), вопрос в
>>обепспечении безопасности.
>странные у тебя представления об уменьшении
>трафика :))))
>я бы тогда им оставила только
>почту :)))
>и попинала антивирусы для безопасности:)
>а еще сдесь в форуме была
>интересная мысль запретить получать письма
>с приаттаченными *.exe и пр.
>Если ее развить - экономия
>трафика налицо :))))
Во первых такие предвставления какие есть
Во вторых в нашей конторе нет нужды в скачивании файлов
В третьих почта меня в плане безопасности меньше всего волнует (мне нужно обеспечить безопасность сервера а не пользователей)
Как вот при 65535 правиле deny ip from any to any пользоваться ftp непосредственно с самого сервера, ftp -p или pftp не прокатывают, подключаешься без проблем, но просмотреть содержимое директории невозможно, Permission denied пишет.Подключиться к самому серверу по ftp получается ес-но только в пассивном режиме, получилось то собственно только из Windows Commander-а, не из броузера, не из CuteFTP номер не прошел..
Также хотелось бы пользоваться командой fetch на сервере и делать traceroute, что сейчас также невозможно.
Навскидку накидал следующие правила:
${fwcmd} add 100 pass all from any to any via lo0
${fwcmd} add 200 deny all from any to 127.0.0.0/8
${fwcmd} add 300 deny ip from 127.0.0.0/8 to any${fwcmd} add 01000 allow tcp from any to any 20,21,22,25,53,80,110,143
${fwcmd} add 02000 allow tcp from any 20,21,22,25,53,80,110,143 to any${fwcmd} add 02100 pass udp from any to any 53
${fwcmd} add 02200 pass udp from any 53 to any${fwcmd} add 02300 pass icmp from any to any
${fwcmd} add 02400 deny icmp from any to any fragFreeBSD 4.4 + ipfw
>Как вот при 65535 правиле deny
>ip from any to any
>пользоваться ftp непосредственно с самого
>сервера, ftp -p или pftp
>не прокатывают, подключаешься без проблем,
>но просмотреть содержимое директории невозможно,
>Permission denied пишет.
>
>Подключ%
>Как вот при 65535 правиле deny
>ip from any to any
>пользоваться ftp непосредственно с самого
>сервера, ftp -p или pftp
>не прокатывают, подключаешься без проблем,
>но просмотреть содержимое директории невозможно,
>Permission denied пишет.
>
>Подключиться к самому серверу по ftp
>получается ес-но только в пассивном
>режиме, получилось то собственно только
>из Windows Commander-а, не из
>броузера, не из CuteFTP номер
>не прошел..
>
>Также хотелось бы пользоваться командой fetch
>на сервере и делать traceroute,
>что сейчас также невозможно.
>
>Навскидку накидал следующие правила:
>
>${fwcmd} add 100 pass all from
>any to any via lo0
>
>${fwcmd} add 200 deny all from
>any to 127.0.0.0/8
>${fwcmd} add 300 deny ip from
>127.0.0.0/8 to any
>
>${fwcmd} add 01000 allow tcp from
>any to any 20,21,22,25,53,80,110,143
>${fwcmd} add 02000 allow tcp from
>any 20,21,22,25,53,80,110,143 to any
>
>${fwcmd} add 02100 pass udp from
>any to any 53
>${fwcmd} add 02200 pass udp from
>any 53 to any
>
>${fwcmd} add 02300 pass icmp from
>any to any
>${fwcmd} add 02400 deny icmp from
>any to any frag
>
>
>
>FreeBSD 4.4 + ipfwto: mmrc
открой интерфейсы твоего сервера
to: all
коль вы победили Ipfw то...
никаких скриптов писать ненадо для подсчёта трафика
идём и берём
http:/%
dc0 - интерфейс, смотрящий наружу.
rl0 - интерфейс, смотрящий вовнутрь.
up
>to: all
>коль вы победили Ipfw то...
>никаких скриптов писать ненадо для подсчёта
>трафика
>идём и берём
>http:/%а по подробней можно, если не сложно
Я имею одну интернетовскую связь, и я хочу дать это 2 различных организации но один из них должна иметь гарантироваться скорость, остальное скорость второму организацииipfw add pipe 10 tcp from 192.168.10.0/24 to any
ipfw pipe 10 config bw 256Kbit/sipfw add pipe 20 tcp from 192.168.20.0/24 to any
ipfw pipe 20 config bw 128Kbit/sно я хочу дать pipe 20 высоки приоритет, но я не знаю,
как это возможно?