Настройка IPTables

Конфигурирование IPTABLES (Установка, настройка IPTABLES, Маскарадинг, Firewall)
Ответить
Sergey_1989
Сообщения: 2
Зарегистрирован: 02 июн 2008, 17:19

Настройка IPTables

Сообщение Sergey_1989 » 02 июн 2008, 18:01

Помогите довести скрипт до ума.
Есть 3 интерфейса.
eth0 - локалка провайдера
eth1 - моя локалка
ppp0 - интернет

Код: Выделить всё

#!/bin/sh

$IPTABLES="/sbin/iptables"

# Сбрасываем все правила
$IPTABLES -t filter -F
$IPTABLES -t filter -X
$IPTABLES -t nat -F
$IPTABLES -t nat -X

echo "1" > /proc/sys/net/ipv4/ip_forward

# Политики по умолчанию
$IPTABLES -t filter -P INPUT DROP
$IPTABLES -t filter -P OUTPUT DROP
$IPTABLES -t filter -P FORWARD DROP
$IPTABLES -t nat -P PREROUTING DROP
$IPTABLES -t nat -P POSTROUTING DROP
$IPTABLES -t nat -P OUTPUT DROP

# Разрешаем всё на локальном интерфейсе
$IPTABLES -t filter -A INPUT -i lo -j ACCEPT
$IPTABLES -t filter -A OUTPUT -o lo -j ACCEPT

# Разрешаем пинги
$IPTABLES -t filter -A INPUT -p icmp -j ACCEPT
$IPTABLES -t filter -A FORWARD -p icmp -j ACCEPT
$IPTABLES -t filter -A OUTPUT -p icmp -j ACCEPT

# Разрешаем FORWARD
$IPTABLES -A FORWARD -i eth1 -o eth0 -p tcp --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -i eth1 -o eth0 -p udp --dport 53 -j ACCEPT
$IPTABLES -A FORWARD -i eth1 -o ppp+ -p tcp --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -i ppp+ -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 -j ACCEPT
$IPTABLES -A FORWARD -i eth0 -o eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT

# SNAT
$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0 -j SNAT -o eth0 --to-source eth0
$IPTABLES -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0 -j SNAT -o ppp+ --to-source ppp+
[/size]
А помочь нужно в настройки цепочки FORWARD.

Аватара пользователя
Роман Торопов
Администратор
Сообщения: 134
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Re: Настройка IPTables

Сообщение Роман Торопов » 02 июн 2008, 19:28

Sergey_1989 писал(а):Помогите довести скрипт до ума.
Есть 3 интерфейса.
eth0 - локалка провайдера
eth1 - моя локалка
ppp0 - интернет

А помочь нужно в настройки цепочки FORWARD.
1. для начало изучить картинку(это один сет. интерфейс, вврху вход, внизу выход, слава локалхост (сервера установленные на этой машинке):


2. Сформулировать вопрос. Непонятно что хочишь достичь ...

Sergey_1989
Сообщения: 2
Зарегистрирован: 02 июн 2008, 17:19

Re: Настройка IPTables

Сообщение Sergey_1989 » 02 июн 2008, 19:45

Роман Торопов писал(а): 1. для начало изучить картинку(это один сет. интерфейс, вврху вход, внизу выход, слава локалхост (сервера установленные на этой машинке):
2. Сформулировать вопрос. Непонятно что хочишь достичь ...
Хочу добиться, чтобы локалка 192.168.88.0/24 (eth1) через сервер ходили в локалку (eth0) и интернет (ppp0).

Аватара пользователя
Роман Торопов
Администратор
Сообщения: 134
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Re: Настройка IPTables

Сообщение Роман Торопов » 02 июн 2008, 19:58

Sergey_1989 писал(а):Хочу добиться, чтобы локалка 192.168.88.0/24 (eth1) через сервер ходили в локалку (eth0) и интернет (ppp0).

Код: Выделить всё

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i eth+ -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j LOG --log-level 7 --log-tcp-options
-A INPUT -i eth+ -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -s 192.168.88.0/24 -p icmp -i eth1 -j ACCEPT
-A FORWARD -d 192.168.88.0/24 -p icmp -o eth1 -j ACCEPT
-A FORWARD -s 192.168.88.0/24 -p udp -m udp --dport 53 -i eth1 -j ACCEPT
-A FORWARD -d 192.168.88.0/24 -p udp -m udp --sport 53 -o eth1 -j ACCEPT
-A FORWARD -s 192.168.88.0/24 -p tcp -i eth1 -j ACCEPT
-A FORWARD -d 192.168.88.0/24 -p tcp -o eth1 -j ACCEPT
-A FORWARD -s 192.168.88.0/24 -p ! icmp -m state --state INVALID -i eth1 -j DROP
-A FORWARD -d 192.168.88.0/24 -p ! icmp -m state --state INVALID -o eth1 -j DROP
-A FORWARD -o eth0 -j DROP
-A FORWARD -o eth1 -j DROP
-A FORWARD -o ppp1 -j DROP
COMMIT 
При этом у всех пользователей в локали 192.168.88.0/24 должен быть прописан в свойствах сети шлюз (IP этого сервака на eth1, на котором этот IPTABLES) и DNS в локали провайдера и внешний-интернет DNS

De7c3L
Сообщения: 3
Зарегистрирован: 17 янв 2009, 03:20

Re: Настройка IPTables

Сообщение De7c3L » 17 янв 2009, 04:14

Хочу добиться того же, тока моя локалка eth0:10. А в iptables ":" нельзя вроде как писать. Как быть?

Ответить