The OpenNET Project / Index page

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

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

"Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от lvei email(ok) on 24-Мрт-09, 13:18 
Заранее прошу прощения у форума, если вопрос уже разобран, я искал решения и тут и, вообще, в инете. Уже неделю вожусь.

Запрет/разрешение доступа в Internet машин локальной сети по их IP адресам.

Как разрешить всем машинам локальной сети выходить в Интернет на фикисрованный список удалённых портов (tcp 20,21,25,110; udp 53,67,68,123)
При этом дать отдельным машимнам право на tcp 80.
Фильтровать только по собственным IP локальных машин.

Я прочитал уже много документов, находил примеры, делал как в примерах, пытался понимать. Читаю и сейчас, и ставлю эксперименты.

Добился только полного доступа всех локальных машин в интерент без разбора.

Вот мои настройки iptables.

Firwall.sh

--- Cut here ---
PRIVATE=10.0.0.0/16

INET=eth0

LOCAL=eth1

SSH=22222

LOOP=127.0.0.1

iptables -P OUTPUT DROP
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -F
iptables -F -t nat
iptables -F -t mangle

iptables -A INPUT -i $INET -s $LOOP -j DROP
iptables -A FORWARD -i $INET -s $LOOP -j DROP
iptables -A INPUT -i $INET -d $LOOP -j DROP
iptables -A FORWARD -i $INET -d $LOOP -j DROP

#iptables -A FORWARD -i $INET -s 192.168.0.0/16 -j DROP
iptables -A FORWARD -i $INET -s 172.16.0.0/12 -j DROP
iptables -A FORWARD -i $INET -s 10.0.0.0/8 -j DROP
#iptables -A INPUT -i $INET -s 192.168.0.0/16 -j DROP
iptables -A INPUT -i $INET -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i $INET -s 10.0.0.0/8 -j DROP

iptables -A FORWARD -p tcp --sport 137:139 -o $INET -j DROP
iptables -A FORWARD -p udp --sport 137:139 -o $INET -j DROP
iptables -A OUTPUT -p tcp --sport 137:139 -o $INET -j DROP
iptables -A OUTPUT -p udp --sport 137:139 -o $INET -j DROP

iptables -A FORWARD -s ! $PRIVATE -i $LOCAL -j DROP

iptables -A INPUT -s $LOOP -j ACCEPT
iptables -A INPUT -d $LOOP -j ACCEPT

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -j ACCEPT

iptables -A INPUT -p tcp --dport $SSH -j ACCEPT
iptables -A OUTPUT -p tcp --sport $SSH -j ACCEPT
iptables -A FORWARD -p tcp --dport $SSH -j ACCEPT


# Отсебятина
# ALL Allow UDP
iptables -A FORWARD -s $PRIVATE -p udp -m multiport --dport 53,67,68,123 -o $LOCAL -j ACCEPT
iptables -A FORWARD -d $PRIVATE -p udp -m multiport --sport 53,67,68,123 -o $LOCAL -j ACCEPT

#ALL Allow TCP
iptables -A FORWARD -s $PRIVATE -p tcp -m multiport --dport 20,21,25,110,5190,4889,5900,30000,30001,30002,30003,30004,30005 -o $LOCAL -j ACCEPT
iptables -A FORWARD -d $PRIVATE -p tcp -m multiport --sport 20,21,25,110,5190,4889,5900,30000,30001,30002,30003,30004,30005 -o $LOCAL -j ACCEPT

#Unic TCP Allow
iptables -A FORWARD -s 10.0.0.21 -p tcp -m multiport --dport 80,443 -o $LOCAL -j ACCEPT
iptables -A FORWARD -d 10.0.0.21 -p tcp -m multiport --sport 80,443 -o $LOCAL -j ACCEPT

iptables -A OUTPUT -m state --state NEW -o $INET -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -o $INET -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -o $INET -p tcp -j DROP
iptables -A FORWARD -o $INET -p udp -j DROP
iptables -A FORWARD -o $LOCAL -p tcp -j DROP
iptables -A FORWARD -o $LOCAL -p udp -j DROP

iptables -t nat -A POSTROUTING -s $PRIVATE -o $INET -j MASQUERADE
--- Cut here ---

Вот вывод сохранения:
iptables-save | moreh

--- Cut here ---
# Generated by iptables-save v1.4.0 on Tue Mar 24 12:52:40 2009
*mangle
:PREROUTING ACCEPT [192620:134838583]
:INPUT ACCEPT [7045:619830]
:FORWARD ACCEPT [185575:134218753]
:OUTPUT ACCEPT [2249:411273]
:POSTROUTING ACCEPT [187766:134595573]
COMMIT
# Completed on Tue Mar 24 12:52:40 2009
# Generated by iptables-save v1.4.0 on Tue Mar 24 12:52:40 2009
*nat
:PREROUTING ACCEPT [25861:1920682]
:POSTROUTING ACCEPT [608:40861]
:OUTPUT ACCEPT [751:61121]
-A POSTROUTING -s 10.0.0.0/16 -o eth0 -j MASQUERADE
COMMIT
# Completed on Tue Mar 24 12:52:40 2009
# Generated by iptables-save v1.4.0 on Tue Mar 24 12:52:40 2009
*filter
:INPUT DROP [6:815]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
-A INPUT -s 127.0.0.1/32 -i eth0 -j DROP
-A INPUT -d 127.0.0.1/32 -i eth0 -j DROP
-A INPUT -s 172.16.0.0/12 -i eth0 -j DROP
-A INPUT -s 10.0.0.0/8 -i eth0 -j DROP
-A INPUT -s 127.0.0.1/32 -j ACCEPT
-A INPUT -d 127.0.0.1/32 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22222 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 127.0.0.1/32 -i eth0 -j DROP
-A FORWARD -d 127.0.0.1/32 -i eth0 -j DROP
-A FORWARD -s 172.16.0.0/12 -i eth0 -j DROP
-A FORWARD -s 10.0.0.0/8 -i eth0 -j DROP
-A FORWARD -o eth0 -p tcp -m tcp --sport 137:139 -j DROP
-A FORWARD -o eth0 -p udp -m udp --sport 137:139 -j DROP
-A FORWARD -s ! 10.0.0.0/16 -i eth1 -j DROP
-A FORWARD -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 22222 -j ACCEPT
-A FORWARD -s 10.0.0.0/16 -o eth1 -p udp -m multiport --dports 53,67,68,123 -j A
CCEPT
-A FORWARD -d 10.0.0.0/16 -o eth1 -p udp -m multiport --sports 53,67,68,123 -j A
CCEPT
-A FORWARD -s 10.0.0.0/16 -o eth1 -p tcp -m multiport --dports 20,21,25,110,5190
,4889,5900,30000,30001,30002,30003,30004,30005 -j ACCEPT
-A FORWARD -d 10.0.0.0/16 -o eth1 -p tcp -m multiport --sports 20,21,25,110,5190
,4889,5900,30000,30001,30002,30003,30004,30005 -j ACCEPT
-A FORWARD -s 10.0.0.21/32 -o eth1 -p tcp -m multiport --dports 80,443 -j ACCEPT

-A FORWARD -d 10.0.0.21/32 -o eth1 -p tcp -m multiport --sports 80,443 -j ACCEPT

-A FORWARD -o eth0 -m state --state NEW -j ACCEPT
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o eth0 -p tcp -j DROP
-A FORWARD -o eth0 -p udp -j DROP
-A FORWARD -o eth1 -p tcp -j DROP
-A FORWARD -o eth1 -p udp -j DROP
-A OUTPUT -o eth0 -p tcp -m tcp --sport 137:139 -j DROP
-A OUTPUT -o eth0 -p udp -m udp --sport 137:139 -j DROP
-A OUTPUT -p tcp -m tcp --sport 22222 -j ACCEPT
-A OUTPUT -o eth0 -m state --state NEW -j ACCEPT
COMMIT
# Completed on Tue Mar 24 12:52:40 2009
--- Cut here ---

Если я коментирую строчки:
iptables -A FORWARD -m state --state NEW -o $INET -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

То всякая связь локальной сети с интерент обрывается.
Не могу понять, чего я не доделал в iptables.

Может сможете поделиться не только мыслями, но и работающими конфигами, чтобы я сравнил?

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

 Оглавление

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


1. "Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от reader (ok) on 24-Мрт-09, 14:34 
>[оверквотинг удален]
>COMMIT
># Completed on Tue Mar 24 12:52:40 2009
>--- Cut here ---
>
>Если я коментирую строчки:
>iptables -A FORWARD -m state --state NEW -o $INET -j ACCEPT
>iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
>
>То всякая связь локальной сети с интерент обрывается.
>Не могу понять, чего я не доделал в iptables.

их не комментировать ,а дополнить нужно.
не:
-A FORWARD -s 10.0.0.21/32 -o eth1 -p tcp -m multiport --dports 80,443 -j ACCEPT
-A FORWARD -d 10.0.0.21/32 -o eth1 -p tcp -m multiport --sports 80,443 -j ACCEPT
а
-A FORWARD -s 10.0.0.21/32 -p tcp -m multiport --dports 80,443 -m state --state NEW,ESTABLISHED,RELATED -o $INET -j ACCEPT
-A FORWARD -d 10.0.0.21/32 -p tcp -m multiport --sports 80,443 -m state --state ESTABLISHED,RELATED -j ACCEPT
или
-A FORWARD -s 10.0.0.0/16 -p tcp -m multiport --dports 20,21,25,110,5190,4889,5900,30000,30001,30002,30003,30004,30005 -m state --state NEW -o $INET -j ACCEPT
-A FORWARD -s 10.0.0.21/32 -p tcp -m multiport --dports 80,443 -m state --state NEW -o $INET -j ACCEPT
-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

так же разберитесь когда интерфейс -i, а когда -o
>
>Может сможете поделиться не только мыслями, но и работающими конфигами, чтобы я
>сравнил?

свой конфиг я оставлю себе , что бы у вас мысли не перестали появляться  

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

3. "Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от lvei (ok) on 24-Мрт-09, 18:43 

>так же разберитесь когда интерфейс -i, а когда -o
>>
>>Может сможете поделиться не только мыслями, но и работающими конфигами, чтобы я
>>сравнил?
>
>свой конфиг я оставлю себе , что бы у вас мысли не
>перестали появляться

ОГРОМНОЕ СПАСИБО. Я тоже сомневался в тех строчках, только источник был очень категоричен, вот и тыкался вслепую.

Я Понимал, что новым соединениям по правильным портам с правильных адресов надо давать зелёную улицу.
Также понимал, что установленные соединения должны поддерживаться слепо.

Но, вот, тормознул

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

5. "Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от Dolphn email on 15-Апр-09, 14:33 
пипец, почитай руководство к твоему маршрутизатору
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от angra (ok) on 24-Мрт-09, 14:50 
>я искал решения и тут и, вообще, в инете. Уже неделю вожусь.

Всегда восхищало как люди тратят в разы больше времени на поиски готового решения вместо того, чтобы просто прочитать доку.

https://www.opennet.ru/docs/RUS/iptables читается за пару часов(да, да, не суток, не недель), после чего вопросов о решении твоей задачи возникнуть не должно. Особое внимание уделить разделу описывающему принципы и порядок прохождения пакетов через таблицы и цепочки. Это самое важное, остальное можно и в man iptables глянуть.

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

4. "Как разграничи доступ в Internet машин локальной сети по их ..."  
Сообщение от lvei (ok) on 24-Мрт-09, 18:44 
>>я искал решения и тут и, вообще, в инете. Уже неделю вожусь.
>
>Всегда восхищало как люди тратят в разы больше времени на поиски готового
>решения вместо того, чтобы просто прочитать доку.
>
>https://www.opennet.ru/docs/RUS/iptables читается за пару часов(да, да, не суток, не недель), после чего
>вопросов о решении твоей задачи возникнуть не должно. Особое внимание уделить
>разделу описывающему принципы и порядок прохождения пакетов через таблицы и цепочки.
>Это самое важное, остальное можно и в man iptables глянуть.

Вы не правы, читаю, пытаюсь понять. Одновременно применяю. А время поджимает. И шлюз должен работать уже.

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

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

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




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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