The OpenNET Project / Index page

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

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

"роутер на две сети c алиасами + inet."  
Сообщение от redji email(ok) on 12-Мрт-07, 17:40 
Помогите, настроит роутер на две сети с алиасами + inet.

Исходные:
OS - Slackware 11.0.0
Ядро - 2.6.18
iptables - 1.3.6

Пров выдал мне, внешний айпи (INET_IP) и гейт через который я должен ходить в инет (INET_GW), также айпи в его локалке (LAN2_IP).

На eth0 – внешний айпишник смотрящий в инет (INET_IP), на алисе eth0:0 айпишник (LAN2_IP) выданный мне в локалке прова.
eth1 – смотрит в домашнюю сеть (LAN_IP)

Хочется чтоб, из LAN был доспуп в LAN2 и в инет.
Из LAN2 запретить ходить, через меня в инет, разрешить видеть на роутер сервисы на (80, 411)
Из инета запретить всё кроме нескольких проброшенных портов в LAN2.

Как грамотно написать правила, чтоб это работало. Учитывая то что, лакалка инет лежат в разных сетях, но на одном интерфейсе?

Сейчас работает только LAN – INET, а вот в LAN2 не пускает =(

ifconfig eth0 $INET_IP netmask 255.255.255.240
ifconfig eth0:0 $LAN2_IP netmask 255.255.0.0
ifconfig eth1 $LAN_IP netmask 255.255.255.0
route add default gw $INET_GW dev eth0

[cat /etc/rc.d/rc.firewall]
#!/bin/sh
#

# Internet Configuration.
INET_IP="195.182.x.5"
INET_IFACE="eth0"
INET_BROADCAST="195.182.x.46"

# Local Area Network configuration.
LAN_IP="192.168.0.1"
LAN_IP_RANGE="192.168.0.0/255.255.255.0"
LAN_IFACE="eth1"

LAN2_IP="10.0.0.112"
LAN2_IP_RANGE="10.0.0.0/255.255.0.0"
LAN2_IFACE="eth0"

# Localhost Configuration.
LO_IFACE="lo"
LO_IP="127.0.0.1"

# IPTables Configuration.
IPTABLES="/usr/sbin/iptables"

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

# Module loading.
/sbin/depmod -a

/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state

/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_conntrack_irc
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_nat_irc
################################################################################
$IPTABLES -F INPUT
$IPTABLES -F FORWARD
$IPTABLES -F OUTPUT
$IPTABLES -t nat -F POSTROUTING
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X

################################################################################
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

$IPTABLES -N bad_tcp_packets
$IPTABLES -N allowed
$IPTABLES -N tcp_packets
$IPTABLES -N udp_packets
$IPTABLES -N icmp_packets

# Цепочка bad_tcp_packets
$IPTABLES -A bad_tcp_packets -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
$IPTABLES -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP

# Цепочка allowed
$IPTABLES -A allowed -p TCP --syn -j ACCEPT
$IPTABLES -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A allowed -p TCP -j DROP

# Цепочка для TCP
#$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 21 -j allowed      # FTP
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 22 -j allowed      # SSH
#$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 80 -j allowed      # web
$IPTABLES -A tcp_packets -p TCP -s 0/0 --dport 113 -j allowed     # IDENTD

# Цепочка для UDP
#$IPTABLES -A udp_packets -p UDP -s 0/0 --destination-port 53 -j ACCEPT  # DNS
#$IPTABLES -A udp_packets -p UDP -s 0/0 --destination-port 123 -j ACCEPT # NTP
$IPTABLES -A udp_packets -p UDP -s 0/0 --destination-port 4000 -j ACCEPT  # ICQ

#$IPTABLES -A udp_packets -p UDP -i $INET_IFACE -d $INET_BROADCAST --destination-port 135:139 -j DROP
# Блокируетм DHCP запросы извне
$IPTABLES -A udp_packets -p UDP -i $INET_IFACE -d 255.255.255.255 --destination-port 67:68 -j DROP

# Цепочка для ICMP
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT   # PING
$IPTABLES -A icmp_packets -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT  # TTL

################################################################################
LOCAL_IP='192.168.0.4'
PORT1='48343'
PORT2='48343'
$IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
$IPTABLES -A FORWARD -i $INET_IFACE -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT

PORT1='12795'
PORT2='12795'
$IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
$IPTABLES -A FORWARD -i $INET_IFACE -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT

LOCAL_IP='192.168.0.2'
PORT1='31118'
PORT2='31118'
$IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
$IPTABLES -A FORWARD -i $INET_IFACE -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT

PORT1='5128'
PORT2='5128'
$IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
$IPTABLES -A FORWARD -i $INET_IFACE -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT

PORT1='5128'
PORT2='5128'
$IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
$IPTABLES -A FORWARD -i $INET_IFACE -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT


################################################################################
$IPTABLES -A INPUT -p tcp -j bad_tcp_packets

## Rules for special networks not part of the Internet
$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN2_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT

$IPTABLES -A INPUT -p ALL -d $LAN2_IP -m state --state ESTABLISHED,RELATED -j ACCEPT

# Rules for incoming packets from the internet.
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INET_IFACE -s $LAN2_IP_RANGE --dport 80 -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INET_IFACE -s $LAN2_IP_RANGE --dport 411 -j ACCEPT

$IPTABLES -A INPUT -p TCP -i $INET_IFACE -j tcp_packets
$IPTABLES -A INPUT -p UDP -i $INET_IFACE -j udp_packets
$IPTABLES -A INPUT -p ICMP -i $INET_IFACE -j icmp_packets

# Microsoft Network flooded by Multicasts
$IPTABLES -A INPUT -i $INET_IFACE -d 224.0.0.0/8 -j DROP

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

 Оглавление

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


1. "роутер на две сети c алиасами + inet."  
Сообщение от pavel_simple (ok) on 12-Мрт-07, 18:54 
если я всё праииильно понимаю, то нужен дмз + инет + локальная сеть
Правила такие ровные -- редко увидишь. Я помощь тут врядли смогу, хотел только посоветовать, создать ещё пару цепочек, только на основе source ip + dev и тогда легче разобраться будет.

Совет наверное пустой, да правила решил написать -- и туплю(Плохому танцору ....мешает). тяжелый денёк однако выдался. А лучше всего начать всё таки с фовардов и маршрутизации, и -j LOG в помощь.

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

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

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




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

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