IPFW + kernel NAT

Операционки на базе Unix
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 17 Feb 2011, 20:50

2 RAVEN

Приветствую ) все таки остановился на твоем решении с дивертом... кое где поправил, кое где добавил )))

вопрос таков... появился человечик который ходит в обход прокси... никак не могу закрыть 80 порт, если убрать правило 040 то через прокси не идет инет... не поможешь???? Пасибо заранее
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: IPFW + kernel NAT

Post by Raven » 18 Feb 2011, 09:20

kotig
Ну показывай свой набор правил, а там думать будем)))
Я не злопамятный, я просто часто ковыряю логи
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 18 Feb 2011, 13:41

Code: Select all

#!/bin/sh
ipfw -q -f flush
IPFW="ipfw add"
SKIP="skipto 800"
EXT="vr0"
INT="rl0"
GOOD="1433,21,1434,1000,25,80,110,9030,9032,9039,9050-9060,40000-60000"

${IPFW} 005 allow all from any to any via rl0
${IPFW} 010 allow all from any to any via lo0
${IPFW} 014 divert natd ip from any to any in via ${EXT}
${IPFW} 015 check-state
${IPFW} 16 allow ip from any to any via lo0
${IPFW} 17 allow ip from any to any via tun0
${IPFW} 18 allow ip from any to any via ${INT}
${IPFW} 020 ${SKIP} udp from any to any 53 via ${EXT}
${IPFW} 022 ${SKIP} udp from any 53 to any via ${EXT}
${IPFW} 023 ${SKIP} udp from any to me 1194 via ${EXT}
${IPFW} 024 ${SKIP} udp from me to any 1194 via ${EXT}
${IPFW} 023 ${SKIP} udp from any to any 1434 via ${EXT}
${IPFW} 024 ${SKIP} udp from any 1434 to any via ${EXT}
${IPFW} 040 ${SKIP} tcp from any to any ${GOOD} out via ${EXT} setup keep-state
${IPFW} 080 ${SKIP} icmp from any to any out via ${EXT} keep-state
${IPFW} 110 ${SKIP} tcp from any to any 22 out via ${EXT} setup keep-state
${IPFW} 315 deny tcp from any to any 113 in via ${EXT}
${IPFW} 330 deny all from any to any frag in via ${EXT}
${IPFW} 332 deny tcp from any to any established in via ${EXT}
${IPFW} 400 deny log all from any to any in via ${EXT}
${IPFW} 450 deny log all from any to any out via ${EXT}
${IPFW} 800 divert natd ip from any to any out via ${EXT}
${IPFW} 801 allow ip from any to any
${IPFW} 999 deny log all from any to any
ну как то так поличились правила )
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: IPFW + kernel NAT

Post by Raven » 18 Feb 2011, 13:52

Попробуй так:

Code: Select all

#!/bin/sh
ipfw -q -f flush
IPFW="ipfw add"
SKIP="skipto 800"
EXT="vr0"
INT="rl0"
GOOD="1433,21,1434,1000,25,80,110,9030,9032,9039,9050-9060,40000-60000"

${IPFW} 005 allow all from any to any via rl0
${IPFW} 010 allow all from any to any via lo0
${IPFW} 014 divert natd ip from any to any in via ${EXT}
${IPFW} 015 check-state
${IPFW} 16 allow ip from any to any via lo0
${IPFW} 17 allow ip from any to any via tun0
${IPFW} 18 allow ip from any to any via ${INT}
${IPFW} 020 ${SKIP} udp from any to any 53 via ${EXT}
${IPFW} 022 ${SKIP} udp from any 53 to any via ${EXT}
${IPFW} 023 ${SKIP} udp from any to me 1194 via ${EXT}
${IPFW} 024 ${SKIP} udp from me to any 1194 via ${EXT}
${IPFW} 023 ${SKIP} udp from any to any 1434 via ${EXT}
${IPFW} 024 ${SKIP} udp from any 1434 to any via ${EXT}
${IPFW} 060 ${SKIP} tcp from any to any ${GOOD} out via ${EXT} setup keep-state
${IPFW} 080 ${SKIP} icmp from any to any out via ${EXT} keep-state
${IPFW} 110 ${SKIP} tcp from any to any 22 out via ${EXT} setup keep-state
${IPFW} 315 deny tcp from any to any 113 in via ${EXT}
${IPFW} 330 deny all from any to any frag in via ${EXT}
${IPFW} 332 deny tcp from any to any established in via ${EXT}
${IPFW} 400 deny log all from any to any in via ${EXT}
${IPFW} 450 deny log all from any to any out via ${EXT}

${IPFW} 700 add fwd 127.0.0.1:3129 tcp from 192.168.0.0/24(или какая там у тебя подсеть) to any 80,21,443 via ${EXT}
${IPFW} 800 divert natd ip from any to any out via ${EXT}

${IPFW} 801 allow ip from any to any
${IPFW} 999 deny log all from any to any
Сквид нужно собрать с поддержкой прозрачности и добавить директиву
http_port 3129 transparent после http_port 3128

Так ipfw будет заворачивать все пакеты на порты 80,21,443 на порт сквида и соответственно все пойдет через него
Я не злопамятный, я просто часто ковыряю логи
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 18 Feb 2011, 13:55

fwd не проконает... стоит SAMS + NSCA, читал где то, что такое не проконает
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 18 Feb 2011, 13:56

или проконает??? ))))
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: IPFW + kernel NAT

Post by Raven » 18 Feb 2011, 13:57

kotig wrote:NSCA
хм... добавь для того чела авторизацию по ip в сквид - проканает. И локалхост не забудь.
Я не злопамятный, я просто часто ковыряю логи
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 18 Feb 2011, 14:01

))))) так у этого чела нет постоянной жопа сидки ))))) он гуляет и сидит где хочет
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: IPFW + kernel NAT

Post by Raven » 18 Feb 2011, 14:08

ну блин... тогда дело дрянь
Я не злопамятный, я просто часто ковыряю логи
kotig
Юзер
Юзер
Posts: 97
Joined: 12 Apr 2010, 12:50

Re: IPFW + kernel NAT

Post by kotig » 18 Feb 2011, 14:11

я бы остался на старом ядреном нате... в связи с установкой Выннь 7 пришлось перейти на эти правила... так как 7-ка говорит что нет подключения к Интернет и никуда не идет хотя все прописано и шлюз и днс, все пингует к проксе подключается, а вот нет подключения к бд серверу на беом адресе... сантабарбара йопта )
Post Reply