информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsГде водятся OGRыПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / sysadmin
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Re: Поправочка 09.06.03 12:22  Число просмотров: 1176
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
> Пробовал менять только для 20 - estblished или только для
> 21- estblished - не работает.

Извините, наврал. 21 можно сделать - estblished.
<sysadmin>
Покритикуйте rc.firewall, плз 05.06.03 13:42  
Автор: whiletrue <Роман> Статус: Elderman
Отредактировано 05.06.03 17:45  Количество правок: 1
<"чистая" ссылка>
Задача: дать доступ из внутренней сети 192.168.0.0/24 и модемного подключения -> в интеренет. Кое что - через нат, www - через прокси. DNS - внутренний + форварды во вне.

Гляньте на уязвимость. Может че попроще можно написать. Может где лучше динамические правила использовать... ну и т.д.
############
# Flush out the list before we begin.
01: ${fwcmd} -f flush

############
# Only in rare cases do you want to change these rules
02: ${fwcmd} add 100 pass all from any to any via lo0
03: ${fwcmd} add 200 deny all from any to 127.0.0.0/8
04: ${fwcmd} add 300 deny ip from 127.0.0.0/8 to any

############

05: oif="ed1"
06: iif="ed0"
07: own_net="192.168.0.0/24"
08: dialip="192.168.0.128" 
09: ftp="ftp,ftp\\-data"
10: mail="pop3,smtp"
11: diverted_ports="${ftp},${mail},https"
12: proxy="3128"
	
# outer HACKERS !!!
13: ${fwcmd} add deny all from xxx.xxx.xxx.xxx to any
14: ${fwcmd} add deny all from any to xxx.xxx.xxx.xxx

# Top-secret inner IP's
15: ${fwcmd} add deny all from xxx.xxx.xxx.xxx to any
16: ${fwcmd} add deny all from any to xxx.xxx.xxx.xxx
	
############
# DIVERTING PACKETS FOR diverted_ports
17: case ${natd_enable} in
18: [Yy][Ee][Ss])
19:	if [ -n "${natd_interface}" ]; then
20:		oif=${natd_interface}
21:		${fwcmd} add divert natd tcp from any ${diverted_ports} to me in recv ${oif}
22:		${fwcmd} add divert natd tcp from ${own_net} to any ${diverted_ports} out xmit ${oif}
23:		${fwcmd} add pass tcp from me to any ${diverted_ports} out xmit ${oif}
24:		${fwcmd} add pass tcp from any ${diverted_ports} to ${own_net} in recv ${oif}
			
		# ICMP - enable if you need it
25:		#${fwcmd} add divert natd icmp from any to any via ${oif}
26:	fi
27:	;;
28: esac
	
# Allow access to DNS for me
29: ${fwcmd} add pass udp from me to any domain out xmit ${oif}
30: ${fwcmd} add pass udp from any domain to me in recv ${oif}
	
# Allow access to WWW for me
31: ${fwcmd} add pass tcp from me to any www out xmit ${oif}
32: ${fwcmd} add pass tcp from any www to me in recv ${oif} established
	
# ICMP - enable if you need it
33: #${fwcmd} add deny icmp from any to any frag
34: #${fwcmd} add pass icmp from any to any
	
# Redirect www-queries to my proxy
35: ${fwcmd} add 350 fwd 127.0.0.1,${proxy} tcp from ${own_net} to any www,${proxy} in recv ${iif}
# and for dialup
36: ${fwcmd} add 351 fwd 127.0.0.1,${proxy} tcp from ${dialip} to any www,${proxy} in recv ppp0
	
# Allow DNS for my own net
37: ${fwcmd} add pass udp from ${own_net} to me domain in recv ${iif}
38: ${fwcmd} add pass udp from me domain to ${own_net} out xmit ${iif}
# and for dialup
39: ${fwcmd} add pass udp from ${dialip} to me domain in recv ppp0
40: ${fwcmd} add pass udp from me domain to ${dialip} out xmit ppp0
	
# Direct access to internet resources from my own net
41: ${fwcmd} add pass tcp from any www,${proxy},${ftp},${mail},https to ${own_net} out xmit ${iif}
42: ${fwcmd} add pass tcp from ${own_net} to any www,${proxy},${ftp},${mail},https in recv ${iif}
# and for dialup
43: ${fwcmd} add pass tcp from any www,${proxy},${ftp},${mail} to ${dialip} out xmit ppp0
44: ${fwcmd} add pass tcp from ${dialip} to any www,${proxy},${ftp},${mail} in recv ppp0

# Everything else is denied by default

---
Покритикуйте rc.firewall, плз 05.06.03 17:38  
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
<"чистая" ссылка>
Вот мои ИМХО:
> Задача: дать доступ из внутренней сети 192.168.0.0/24 и
> модемного подключения -> в интеренет. Кое что - через
> нат, www - через прокси. DNS - внутренний + форварды во
> вне.
>
> Гляньте на уязвимость. Может че попроще можно написать.
> Может где лучше динамические правила использовать... ну и
> т.д.
>
> ############
> # Flush out the list before we begin.
> ${fwcmd} -f flush
>
> ############
> # Only in rare cases do you want to change these rules
> ${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
>
> ############
>
> oif="ed1"
> iif="ed0"
> own_net="192.168.0.0/24"
> dialip="192.168.0.128"
> ftp="ftp,ftp\\-data"
> mail="pop3,smtp"
> diverted_ports="${ftp},${mail},https"
> proxy="3128"
>
> # outer HACKERS !!!
> ${fwcmd} add deny all from xxx.xxx.xxx.xxx to any
> ${fwcmd} add deny all from any to xxx.xxx.xxx.xxx
>
> # Top-secret inner IP's
> ${fwcmd} add deny all from xxx.xxx.xxx.xxx to any
> ${fwcmd} add deny all from any to xxx.xxx.xxx.xxx
>
> ############
> # DIVERTING PACKETS FOR diverted_ports
> case ${natd_enable} in
> [Yy][Ee][Ss])
> if [ -n "${natd_interface}" ]; then
> oif=${natd_interface}
> ${fwcmd} add divert natd tcp from any
> ${diverted_ports} to me in recv ${oif}
> ${fwcmd} add divert natd tcp from
> ${own_net} to any ${diverted_ports} out xmit ${oif}
Следующие два правила ИМХО лишние и даже вредные.
>${fwcmd} add pass tcp from me to any ${diverted_ports} out xmit ${oif}
>${fwcmd} add pass tcp from any ${diverted_ports} to ${own_net} in recv ${oif}
> # ICMP - enable if you need it
> #${fwcmd} add divert natd icmp from any to
> any via ${oif}
> fi
> ;;
> esac
>
> # Allow access to DNS for me
> ${fwcmd} add pass udp from me to any domain out xmit ${oif}
> ${fwcmd} add pass udp from any domain to me in recv ${oif}
>
> # Allow access to WWW for me
> ${fwcmd} add pass tcp from me to any www out xmit ${oif}
> ${fwcmd} add pass tcp from any www to me in recv ${oif}
> established
>
> # ICMP - enable if you need it
> #${fwcmd} add deny icmp from any to any frag
> #${fwcmd} add pass icmp from any to any
>
> # Redirect www-queries to my proxy
> ${fwcmd} add 350 fwd 127.0.0.1,${proxy} tcp from ${own_net}
> to any www,${proxy} in recv ${iif}
> # and for dialup
> ${fwcmd} add 351 fwd 127.0.0.1,${proxy} tcp from ${dialip}
> to any www,${proxy} in recv ppp0
>
> # Allow DNS for my own net
> ${fwcmd} add pass udp from ${own_net} to me domain in recv
> ${iif}
> ${fwcmd} add pass udp from me domain to ${own_net} out xmit
> ${iif}
> # and for dialup
> ${fwcmd} add pass udp from ${dialip} to me domain in recv
> ppp0
> ${fwcmd} add pass udp from me domain to ${dialip} out xmit
> ppp0
>
Для следующих 4-х правил два замечания:
1. Может убрать отсюда www,${proxy} ? Они же редиректятся на проксю.
2. Может добавить флажок established для входящих пакетов (правило 1 и 3)
> # Direct access to internet resources from my own net
> ${fwcmd} add pass tcp from any
> www,${proxy},${ftp},${mail},https to ${own_net} out xmit
> ${iif}
> ${fwcmd} add pass tcp from ${own_net} to any
> www,${proxy},${ftp},${mail},https in recv ${iif}
> # and for dialup
> ${fwcmd} add pass tcp from any www,${proxy},${ftp},${mail}
> to ${dialip} out xmit ppp0
> ${fwcmd} add pass tcp from ${dialip} to any
> www,${proxy},${ftp},${mail} in recv ppp0
>
> # Everything else is denied by default
ЗЫ: Стоило бы наверное пронумеровать правила прежде чем постить, тогда не пришлось бы квотить всю эту байду :)
Примечание. Почему бы не написать одно правило
pass tcp from any to any established
и убрать кучу отдельных правил на эту же тему?
Re: NKritsky ИМХО 06.06.03 14:19  
Автор: whiletrue <Роман> Статус: Elderman
Отредактировано 06.06.03 15:35  Количество правок: 1
<"чистая" ссылка>
>Вот мои ИМХО:
>>...
>> ${fwcmd} add divert natd tcp from any ${diverted_ports} to me in recv ${oif}
>> ${fwcmd} add divert natd tcp from ${own_net} to any ${diverted_ports} out xmit ${oif}
>Следующие два правила ИМХО лишние и даже вредные.
>>${fwcmd} add pass tcp from me to any ${diverted_ports} out xmit ${oif}
>>${fwcmd} add pass tcp from any ${diverted_ports} to ${own_net} in recv ${oif}

Без них нат не работает. До ната - нужно обязательно пакет пропустить.
Может как-то по-другому можно?..

>>...
>Для следующих 4-х правил два замечания:
>1. Может убрать отсюда www,${proxy} ? Они же редиректятся на проксю.
>2. Может добавить флажок established для входящих пакетов (правило 1 и 3)
>> # Direct access to internet resources from my own net
>> ${fwcmd} add pass tcp from any www,${proxy},${ftp},${mail},https to ${own_net} out xmit ${iif}
>> ${fwcmd} add pass tcp from ${own_net} to any www,${proxy},${ftp},${mail},https in recv ${iif}
>> # and for dialup
>> ${fwcmd} add pass tcp from any www,${proxy},${ftp},${mail} to ${dialip} out xmit ppp0
>> ${fwcmd} add pass tcp from ${dialip} to any www,${proxy},${ftp},${mail} in recv ppp0

1. Да, для входящих ко мне (2-4) - можно - исправил, см. пост "Вот это критикуйте, плз".
Для исходящих от меня (1-3) - нельзя

2. Спасибо, исправил, см. пост "Вот это критикуйте, плз".
Только для ftp такая фишка не работает :( Почему?

> Примечание. Почему бы не написать одно правило
> pass tcp from any to any established
> и убрать кучу отдельных правил на эту же тему?

Не понял, разъясни на каких-нибудь моих правилах.
Re: NKritsky ИМХО 06.06.03 17:10  
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
<"чистая" ссылка>
> >Вот мои ИМХО:
> >Следующие два правила ИМХО лишние и даже вредные.
> >>${fwcmd} add pass tcp from me to any
> ${diverted_ports} out xmit ${oif}
> >>${fwcmd} add pass tcp from any ${diverted_ports} to
> ${own_net} in recv ${oif}
>
> Без них нат не работает. До ната - нужно обязательно пакет
> пропустить.
> Может как-то по-другому можно?..
>
Прошу прощения, я ошибся. Действительно они нужны.
> 2. Спасибо, исправил, см. пост "Вот это критикуйте, плз".
> Только для ftp такая фишка не работает :( Почему?
А это потому что в $ftp у тебя включены и 21 и 20 порты. Соединение с 21 портом - исходящее, а с 20-м - входящее.
> > Примечание. Почему бы не написать одно правило
> > pass tcp from any to any established
> > и убрать кучу отдельных правил на эту же тему?
>
> Не понял, разъясни на каких-нибудь моих правилах.
Например, вместо правил 802,1201,1204 поставить одно правило
690 pass tcp from any to any establsihed
Но это дело вкуса.
Кстати, если ты хочешь, чтобы твои юзеры могли делать passive ftp, имеет смысл добавить в diverted_ports порты 4000-65535. Если это не нарушает полиси доступа к инету. Кстати почему ты ограничил количесетво diverted_ports? Почему не написал
${fwcmd} add 601 divert natd tcp from any to me in recv ${oif}
${fwcmd} add 602 divert natd tcp from ${own_net} to any out xmit ${oif}
Re: NKritsky ИМХО 09.06.03 11:31  
Автор: whiletrue <Роман> Статус: Elderman
Отредактировано 09.06.03 11:36  Количество правок: 1
<"чистая" ссылка>
> > Только для ftp такая фишка не работает :( Почему?
> А это потому что в $ftp у тебя включены и 21 и 20 порты.
> Соединение с 21 портом - исходящее, а с 20-м - входящее.

Ну и что? Я же их оба и туда и сюда пропускаю.

Пробовал менять только для 20 - estblished или только для 21- estblished - не работает. Наверное, по этому поводу лучше доку почитать...

> > > Примечание. Почему бы не написать одно правило
> > > pass tcp from any to any established
> > > и убрать кучу отдельных правил на эту же тему?
> >
> > Не понял, разъясни на каких-нибудь моих правилах.
> Например, вместо правил 802,1201,1204 поставить одно
> правило
> 690 pass tcp from any to any establsihed
> Но это дело вкуса.
> Кстати, если ты хочешь, чтобы твои юзеры могли делать
> passive ftp, имеет смысл добавить в diverted_ports порты
> 4000-65535. Если это не нарушает полиси доступа к инету.
> Кстати почему ты ограничил количесетво diverted_ports?
> Почему не написал
> ${fwcmd} add 601 divert natd tcp from any to me in recv
> ${oif}
> ${fwcmd} add 602 divert natd tcp from ${own_net} to any out
> xmit ${oif}

Ну, я хочу сделать "глухо, как в танке", т.е. пропускать только нужное aka полный контроль. Поэтому и прошу покритиковать.
А так получится, что я лишнее пропущу.
Re: NKritsky ИМХО 07.07.03 12:59  
Автор: RazDolBai Статус: Member
<"чистая" ссылка>
> Ну, я хочу сделать "глухо, как в танке", т.е. пропускать
> только нужное aka полный контроль. Поэтому и прошу
> покритиковать.
> А так получится, что я лишнее пропущу.

а вот тогда и пардон глупость получается
в таком случае лучше поставить внутри прокси (сквид+сокс5) и разрешить выход в инет только через прокси (плюс получаешь кэширование /денежек наэкономишь ;0)/, более полный контроль за действиями юзверей и полную инфу кто,что и когда хотел)
Re: Поправочка 09.06.03 12:22  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
> Пробовал менять только для 20 - estblished или только для
> 21- estblished - не работает.

Извините, наврал. 21 можно сделать - estblished.
Вот это критикуйте, плз 06.06.03 14:18  
Автор: whiletrue <Роман> Статус: Elderman
Отредактировано 06.06.03 15:39  Количество правок: 4
<"чистая" ссылка>
Вот, разобрался с нумерацией и воспользовался некоторыми рекомндациями...
01: ############
02: # Flush out the list before we begin.
03: ${fwcmd} -f flush
04: 
05: ############
06: # Only in rare cases do you want to change these rules
07: ${fwcmd} add 100 pass all from any to any via lo0
08: ${fwcmd} add 200 deny all from any to 127.0.0.0/8
09: ${fwcmd} add 300 deny ip from 127.0.0.0/8 to any
10: 	
11: ############
12: # Set these to your values
13: oif="ed1"
14: iif="ed0"
15: own_net="192.168.0.0/24"
16: dialip="192.168.0.128"
17: ftp="ftp,ftp\\-data"
18: mail="pop3,smtp"
19: proxy="3128"
20: diverted_ports="${ftp},${mail},https"
21: 
22: # outer HACKERS !!!
23: ${fwcmd} add 401 deny all from xxx.xxx.xxx.xxx to any
24: ${fwcmd} add 402 deny all from any to xxx.xxx.xxx.xxx
25: 
26: # Top-secret inner IP's
27: ${fwcmd} add 501 deny all from xxx.xxx.xxx.xxx to any
28: ${fwcmd} add 502 deny all from any to xxx.xxx.xxx.xxx
29: 	
30: ############
31: # DIVERTING PACKETS FOR diverted_ports	
32: case ${natd_enable} in
33: [Yy][Ee][Ss])
34:		if [ -n "${natd_interface}" ]; then
35:			oif=${natd_interface}
36:			${fwcmd} add 601 divert natd tcp from any ${diverted_ports} to me in recv ${oif}
37:			${fwcmd} add 602 divert natd tcp from ${own_net} to any ${diverted_ports} out xmit ${oif}
38:			${fwcmd} add 603 pass tcp from any ${diverted_ports} to ${own_net} in recv ${oif}
39:			${fwcmd} add 604 pass tcp from me to any ${diverted_ports} out xmit ${oif}
40:			
41:			# ICMP - enable this, if you really need it
42:			#${fwcmd} add 650 divert natd icmp from any to any via ${oif}
43:		fi
44:		;;
45: esac
46:
47: # Allow access to DNS for me
48: ${fwcmd} add 701 pass udp from me to any domain out xmit ${oif}
49: ${fwcmd} add 702 pass udp from any domain to me in recv ${oif}
50:	
51: # Allow access to WWW for me
52: ${fwcmd} add 801 pass tcp from me to any www out xmit ${oif}
53: ${fwcmd} add 802 pass tcp from any www to me in recv ${oif} established
54: 	
55: # ICMP - enable this, if you really need it
56: #${fwcmd} add 901 deny icmp from any to any frag
57: #${fwcmd} add 902 pass icmp from any to any
58:	
59: # Allow DNS for my own net
60: ${fwcmd} add 1001 pass udp from ${own_net} to me domain in recv ${iif}
61: ${fwcmd} add 1002 pass udp from me domain to ${own_net} out xmit ${iif}
62: # and for dialup
63: ${fwcmd} add 1003 pass udp from ${dialip} to me domain in recv ppp0
64: ${fwcmd} add 1004 pass udp from me domain to ${dialip} out xmit ppp0
65: 
66: # Redirect www-queries to my proxy
67: ${fwcmd} add 1101 fwd 127.0.0.1,${proxy} tcp from ${own_net} to any www,${proxy} in recv ${iif}
68: # and for dialup
69: ${fwcmd} add 1102 fwd 127.0.0.1,${proxy} tcp from ${dialip} to any www,${proxy} in recv ppp0
70:	
71: # Access to internet resources from my own net
72: ${fwcmd} add 1201 pass tcp from any www,${proxy},${mail},https to ${own_net} out xmit ${iif} established
73: ${fwcmd} add 1202 pass tcp from any ${ftp} to ${own_net} out xmit ${iif} 
74: ${fwcmd} add 1203 pass tcp from ${own_net} to any ${ftp},${mail},https in recv ${iif}
75: # and for dialup
76: ${fwcmd} add 1204 pass tcp from any www,${proxy},${mail} to ${dialip} out xmit ppp0 established
77: ${fwcmd} add 1205 pass tcp from any ${ftp} to ${own_net} out xmit ppp0
78: ${fwcmd} add 1206 pass tcp from ${dialip} to any ${ftp},${mail} in recv ppp0
79:
80: # Everything else is denied by default

---
Мои извинения 05.06.03 17:46  
Автор: whiletrue <Роман> Статус: Elderman
<"чистая" ссылка>
> ЗЫ: Стоило бы наверное пронумеровать правила прежде чем
> постить, тогда не пришлось бы квотить всю эту байду :)

Исправил - пронумеровал.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach