IPFW+SQUID

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Shizik
ефрейтор
Сообщения: 67
Зарегистрирован: 2008-04-28 14:27:59
Откуда: Москва
Контактная информация:

IPFW+SQUID

Непрочитанное сообщение Shizik » 2008-05-12 21:12:35

Возможно грабли!
Но все же...

Код: Выделить всё

ipfw="/sbin/ipfw"
uports="1025-65535"
int_if="rl0"
ext_if="rl1"

int_ip="192.168.0.1"
ext_ip="66.66.66.66"

int_net="192.168.0.1/24"
ext_net="66.66.66.66/30"

for_lan="smtp,pop3,domain,ntp"
services="smtp,pop3,domain,ssh,ftp,ntp"

#Сбрасываем правила файрова
${ipfw} -q -f flush

${ipfw} add deny ip from any to any not verrevpath in
${ipfw} add deny ip from any to any frag

#Проверка на соответствие динамическим правилам
${ipfw} add check-state

#Это разрещения для localhost
${ipfw} add allow all from any to any via lo0
${ipfw} add deny all from any to 127.0.0.0/8
${ipfw} add deny all from 127.0.0.0/8 to any

#Запрещаем частные сети на внешнем интерфейсе
${ipfw} add deny all from 10.0.0.0/8 to any in recv $ext_if
${ipfw} add deny all from 172.16.0.0/12 to any in recv $ext_if
${ipfw} add deny all from 192.168.0.0/16 to any in recv $ext_if
${ipfw} add deny all from 0.0.0.0/8 to any in recv $ext_if
${ipfw} add deny all from 169.254.0.0/16 to any in recv $ext_if
${ipfw} add deny all from 224.0.0.0/3 to any in recv $ext_if
${ipfw} add deny all from 204.152.64.0/23 to any in recv $ext_if

#Разрещаем пользователям свободно себя чувствовать внутри сети
${ipfw} add allow all from $int_net to any in recv  $int_if
${ipfw} add allow all from any to $int_net out xmit $int_if

#Перенапровляем с внешнего на внутренний интерфейс и наоборот
#${ipfw} add fwd 127.0.0.1,3128 tcp from $int_net to any 80 in via rl0
${ipfw} add divert natd all from $int_net to any via $ext_if
${ipfw} add divert natd all from any to $ext_ip via $ext_if
Вот такой вот конфиг правил ipfw

А вот что у меня в squid.conf (SQUID 3.0 STABLE5)

Код: Выделить всё

http_port 3128 transparent
И уже перерыл много статей на тему прозрачного проксирования, и правила ipfw анализировал...но грабли так и не нашел :(
Пожалуйста помогите найти грабли, чтобы впоследствии на них не наступать
Езда в переполненных автобусах, есть не что иное как самая лучшая закалка нервов…© Shizik

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
modjo
рядовой
Сообщения: 26
Зарегистрирован: 2007-09-15 0:00:51
Контактная информация:

Re: IPFW+SQUID

Непрочитанное сообщение modjo » 2008-05-13 12:36:38

А так?

Код: Выделить всё

# SQUID. HTTP only.
00060 fwd 127.0.0.1,3128 tcp from 192.168.0.0/24 to any dst-port 80 via fxp0
00061 allow tcp from any to any dst-port 80 out via fxp0 setup keep-state
ps
хотя это для 2.5_18. Может в squid'е поменяли формат http_port?

Аватара пользователя
Shizik
ефрейтор
Сообщения: 67
Зарегистрирован: 2008-04-28 14:27:59
Откуда: Москва
Контактная информация:

Re: IPFW+SQUID

Непрочитанное сообщение Shizik » 2008-05-13 13:18:30

Ура! Заработало!!! СПАСИБО!
Только не понимаю, а что собственно дает это правило?
Вроде как позволяет поддерживать соединения от любого с любого порта к любому 80-му порту через внешний интерфейс...
Езда в переполненных автобусах, есть не что иное как самая лучшая закалка нервов…© Shizik

Аватара пользователя
modjo
рядовой
Сообщения: 26
Зарегистрирован: 2007-09-15 0:00:51
Контактная информация:

Re: IPFW+SQUID

Непрочитанное сообщение modjo » 2008-05-13 13:32:37

Первое ловит и заворачивает удаленный 80 порт на squid, а второе разрешает выход на удаленный 80 порт с внешнего интерфейса.