The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Запрет при помощи ipfw"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Запрет при помощи ipfw"  
Сообщение от AndreyN email(??) on 14-Сен-07, 10:20 
Всем привет!

есть правила:
add allow ip from 10.10.0/24 to any
add allow ip from 10.10.1/24 to any

Необходимо запретить адресам 10.10.0.85, 87,... а также некоторым адресам из сети 10.10.1 прохождение любого трафика.
Как это сделать учитывая, что сеть растет и необходимо контролировать адреса, чтобы не было самовольного назначения.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "Запрет при помощи ipfw"  
Сообщение от Lgo email(ok) on 14-Сен-07, 10:48 
>Всем привет!
>
>есть правила:
>add allow ip from 10.10.0/24 to any
>add allow ip from 10.10.1/24 to any
>
>Необходимо запретить адресам 10.10.0.85, 87,... а также некоторым адресам из сети 10.10.1
>прохождение любого трафика.
>Как это сделать учитывая, что сеть растет и необходимо контролировать адреса, чтобы
>не было самовольного назначения.

ipfw add 100 deny ip from "table(1)" to any
ipfw add 100 deny ip from any to "table(1)"

ipfw table 1 add 10.10.0.85
ipfw table 1 add 10.10.0.86
ipfw table 1 add 10.10.0.87
ipfw table 1 add 10.10.1.88
ipfw table 1 add 10.10.1.85
...
...

Вопрос был в этом?

На счет назначения, имеется ввиду назначение юзером себе ip адреса? Можно привязать к серверу все свободные адреса, и юзер просто не сможет себе такой адрес поставить.
Или использовать управляемые свичи 2+/3 уровня.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Запрет при помощи ipfw"  
Сообщение от Starshina email(ok) on 14-Сен-07, 15:07 
Помоему проще сначала запретить всем, а потом подключать того кто нужен...
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Запрет при помощи ipfw"  
Сообщение от Serge email(??) on 16-Сен-07, 01:30 
>Всем привет!
>
>есть правила:
>add allow ip from 10.10.0/24 to any
>add allow ip from 10.10.1/24 to any
>
>Необходимо запретить адресам 10.10.0.85, 87,... а также некоторым адресам из сети 10.10.1
>прохождение любого трафика.
>Как это сделать учитывая, что сеть растет и необходимо контролировать адреса, чтобы
>не было самовольного назначения.

#!/bin/sh
ipfw -q -f flush
dollheads="10.10.0.0/24{85,87}" #отбиваем придурков
ipfw add 1000 deny ip from ${dollheads} to any
ipfw add 1200 allow ip from any to any via lo0
ipfw add 1300 allow ip from 10.10.0.0/24 to any
ipfw add 1400 allow ip from 10.10.1.0/24 to any
#........
ipfw add 50000 deny ip from any to any

сохраняешь всё это на диск (путь помнишь) и вводишь "sh {путь, куда сохранил (без скобок только)}", напр. sh /etc/rules.sh. Потом можешь насладиться зрелищем ipfw -a list (команда ipfw -q -f flush срежет всё наворочанное ранее, так что либо пихай свои правила в этот скрипт, либо комментируй строку (не рекомендуется - каша будет)). Более прикольно сделать плохишам трубу на напр. 0,5 кб - пусть сидят и грешат на своё железо.
ВНИМАНИЕ: ограничение по MAC или адресам легко обходятся

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Запрет при помощи ipfw"  
Сообщение от AndreyN email(??) on 16-Сен-07, 16:37 
>#!/bin/sh
>ipfw -q -f flush
>dollheads="10.10.0.0/24{85,87}" #отбиваем придурков
>ipfw add 1000 deny ip from ${dollheads} to any
>ipfw add 1200 allow ip from any to any via lo0
>ipfw add 1300 allow ip from 10.10.0.0/24 to any
>ipfw add 1400 allow ip from 10.10.1.0/24 to any
>#........
>ipfw add 50000 deny ip from any to any

Подредактрируйте пожалуйста на предмет запрета IP из подсетей 10.10.0.0/24{12,7,3,17,23}, 10.10.3.0/24{4,8,111,32,56,78}
Дело в том, что я сначала разрешаю, а потом всем по-умолчанию запрещено.
Так вот, если добавить такое правило, например:
normalip="10.10.3.0/24{4,8,111,32,56,78},10.10.0.0/24{12,7,3,17,23},10.10.5.0/24"
ipfw add pass tcp from ${normalip} to any 25 out
ipfw add pass tcp from any 25 to ${normalip} out

то оно работать не будет. В лучшем случае только для 10.10.3.0/24{4,8,111,32,56,78}.
Что неправильно?

Мой файерволл:

ipfw -q -f flush
#-----------PIPE AND QUEUE----------------------------------------------------
excelentip="10.10.1.0/24"
goodip="10.10.2.0/24"
normalip="10.10.3.0/24{4,8,111,32,56,78},10.10.0.0/24{12,7,3,17,23},10.10.5.0/24"

ipfw pipe 1 config bw 1Mbit/s queue 80
ipfw queue  1 config pipe 1 weight 12 queue 80 mask dst-ip 0xffffffff #160Kbit/s
ipfw queue 11 config pipe 1 weight 12 queue 80 mask src-ip 0xffffffff #160Kbit/s
ipfw queue  2 config pipe 1 weight 20 queue 80 mask dst-ip 0xffffffff #256Kbit/s
ipfw queue 21 config pipe 1 weight 20 queue 80 mask src-ip 0xffffffff #256Kbit/s
ipfw queue  3 config pipe 1 weight 38 queue 80                  #512Kbit/s
ipfw queue 31 config pipe 1 weight 38 queue 80              #512Kbit/s

ipfw add queue  1 ip from any to ${normalip} in via em1
ipfw add queue 11 ip from ${normalip} to any out via em1
ipfw add queue  2 ip from any to ${goodip} in via em1
ipfw add queue 21 ip from ${goodip} to any out via em1
ipfw add queue  3 ip from any to ${excelentip} in via em1
ipfw add queue 31 ip from ${excelentip} to any out via em1

#-----------MAIN SETUP-------------------------------------------------------
ipfw add allow udp from 0.0.0.0 2054 to 0.0.0.0

# ICMP
ipfw add pass ICMP from any to any

# SMTP
ipfw add pass tcp from any to any 25 out
ipfw add pass tcp from any 25 to any out

# POP
ipfw add pass udp from any to any 110
ipfw add pass udp from any 110 to any
    
# HTTPS
ipfw add pass tcp from any to any 443 out
ipfw add pass tcp from any 443 to any out

# DNS
ipfw add pass tcp from any to 10.10.1.2 53 setup
ipfw add pass udp from any to any 53
ipfw add pass udp from any 53 to any

# FTP
ipfw add pass tcp from any 21 to any
ipfw add pass tcp from any to any 21
ipfw add pass tcp from any 20 to any
ipfw add pass tcp from any to any 20

# SSH
ipfw add pass tcp from 10.10.1.10 22 to any
ipfw add pass tcp from any to 10.10.1.10 22

# MAIN
ipfw add pass all from any to any via lo0
ipfw add pass tcp from any 80,137-139,443,453,791,901,953,1025-65535 to any
ipfw add pass tcp from any to any 80,137-139,443,453,791,901,953,1025-65535

Еще надо разрешить работу самба и широковещательный, какие порты нужно указать?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру