Настройка простых правил в iptables (Конфиг с нуля)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

leksstav
Сообщения: 329

Настройка простых правил в iptables

Сообщение leksstav »

Всех приветствую !

Кто подскажет что поправить в конфиге, чтобы ip 192.168.1.20 мог выйти в инет ?

Вот сам конфиг:

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

#!/bin/sh
###########################
## opisyvayu interfeis na storone provaidera
INET_IP="192.168.0.20"
INET_IFACE="eth0"
INET_BROADCAST="192.168.0.255"
####################################
## opisyvayu interfeis na storone localnoi seti
LAN_IP="192.168.1.100"
LAN_IP_RANGE="192.168.1.0/24"
LAN_IFACE="eth1"
######################################
## opisyvayu podset dlya VPN
LAN_VPN_RANGE="192.168.99.0/24" #delaem podset dlya VPN
######################################
# Sbrasyvaem vse pravila
iptables -F
iptables -F -t nat
######################################
# Ustanavlivaem politiki po umolchaniyu
# Zapreschaem ves' vhodyaschii trafik:
iptables -P INPUT DROP
# Razreshaem ishodyaschii trafik:
iptables -P OUTPUT ACCEPT
# Zapreschaem peresylku trafika:
iptables -P FORWARD DROP
######################################
# Razreshaem vhodyaschii trafik v ramkah ustanovlennyh soedinenii:
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
######################################
# Razreshaem ves' trafik vnutri servera:
iptables -A INPUT -i lo -j ACCEPT
######################################
# Razreshaem ICMP-trafik dlya vseh:
iptables -A INPUT -p icmp -j ACCEPT
######################################
#vklyuchayu ip forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_nat_ftp
#####################################
#podcluchayu modyl IPTABLES
IPTABLES="/usr/sbin/iptables"
/sbin/depmod -a #podcluchayu modyl
/sbin/modprobe ip_tables #podcluchayu modyl
/sbin/modprobe ip_conntrack #podcluchayu modyl
/sbin/modprobe iptable_filter #podcluchayu modyl
/sbin/modprobe iptable_mangle #podcluchayu modyl
/sbin/modprobe iptable_nat #podcluchayu modyl
/sbin/modprobe ipt_LOG #podcluchayu modyl
/sbin/modprobe ipt_limit #podcluchayu modyl
/sbin/modprobe ipt_state #podcluchayu modyl
/sbin/modprobe ip_nat_ftp #podcluchayu modyl
########################################
iptables -A INPUT -s 192.168.0.25 -j ACCEPT # daem dostup iz vne po vsem port
########################################
##TR
iptables -t nat -A POSTROUTING -s 192.168.1.20 -o $INET_IFACE -j SNAT --to-source $INET_IP #
########################################
iptables -A INPUT -p tcp -s $LAN_IP_RANGE --dport 80 -j ACCEPT # http
########################################
iptables -A FORWARD -s 192.168.1.20 #
#########################################
iptables -t nat -A POSTROUTING -s 192.168.1.20 -j MASQUERADE #
####################################################
iptables -A FORWARD  -i $LAN_IFACE -s 192.168.1.20 -j ACCEPT


Как только закоментирую строку iptables -P FORWARD DROP пускает, раскоментирую не пускает.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Настройка простых правил в iptables

Сообщение Bizdelnick »

leksstav писал(а):
15.03.2014 21:58
iptables -A FORWARD -s 192.168.1.20 #dlya dostupa po PPP

Забыли, видимо, добавить -j ACCEPT. Возможно, ещё какие-то косяки есть, я не вчитывался.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Bizdelnick писал(а):
15.03.2014 22:04
leksstav писал(а):
15.03.2014 21:58
iptables -A FORWARD -s 192.168.1.20 #dlya dostupa po PPP

Забыли, видимо, добавить -j ACCEPT. Возможно, ещё какие-то косяки есть, я не вчитывался.



Не помогло

iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- 192.168.0.25 anywhere
ACCEPT tcp -- 192.168.1.0/24 anywhere tcp dpt:http

Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all -- 192.168.1.20 anywhere
ACCEPT all -- 192.168.1.20 anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3729
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение Hephaestus »

Посмотрите вывод

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

iptables -S
как выглядят правила и в каком порядке идут.

И нам покажите.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

fflatx писал(а):
16.03.2014 00:22
Посмотрите вывод

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

iptables -S
как выглядят правила и в каком порядке идут.

И нам покажите.



iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -s 192.168.0.25/32 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -s 192.168.1.20/32 -j ACCEPT
-A FORWARD -s 192.168.1.20/32 -i eth1 -j ACCEPT
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение drBatty »

leksstav писал(а):
15.03.2014 21:58
opisyvayu interfeis na storone provaidera

по-русски нельзя разве писать?
leksstav писал(а):
16.03.2014 07:34
-A FORWARD -s 192.168.1.20/32 -j ACCEPT
-A FORWARD -s 192.168.1.20/32 -i eth1 -j ACCEPT

leksstav писал(а):
15.03.2014 21:58
INET_IP="192.168.0.20"

leksstav писал(а):
15.03.2014 21:58
LAN_IP="192.168.1.100"

1. шлюз == система с двумя IP. У вас тут аж три, и что куда смотрит -- непонятно. Нарисуйте схемку, на ней обозначьте два интерфейса, каждому задайте свой IP.

2. гуглите про SNAT, раз вам шлюз нужно сделать. Это если у вас такая топология

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

роутер → шлюз → другой_компьютер
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

drBatty писал(а):
16.03.2014 08:09
leksstav писал(а):
15.03.2014 21:58
opisyvayu interfeis na storone provaidera

по-русски нельзя разве писать?
leksstav писал(а):
16.03.2014 07:34
-A FORWARD -s 192.168.1.20/32 -j ACCEPT
-A FORWARD -s 192.168.1.20/32 -i eth1 -j ACCEPT

leksstav писал(а):
15.03.2014 21:58
INET_IP="192.168.0.20"

leksstav писал(а):
15.03.2014 21:58
LAN_IP="192.168.1.100"

1. шлюз == система с двумя IP. У вас тут аж три, и что куда смотрит -- непонятно. Нарисуйте схемку, на ней обозначьте два интерфейса, каждому задайте свой IP.

2. гуглите про SNAT, раз вам шлюз нужно сделать. Это если у вас такая топология

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

роутер → шлюз → другой_компьютер




Где вы увидели третий интерфейс ???

Их всего 2. Из конфига же видно
В сторону провайдера смотрит eth0 INET_IP="192.168.0.20"
В сторону локалки смотрит eth1 LAN_IP="192.168.1.100"

А, 192.168.1.20 это ip адрес виндовой машинки которой необходимо инет предоставить.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение drBatty »

leksstav писал(а):
16.03.2014 08:25
А, 192.168.1.20 это ip адрес виндовой машинки которой необходимо инет предоставить.

ну вот вам нужен SNAT, дабы исправлять IP так, что-бы провайдер думал, что пакеты 192.168.1.20 идут кагбэ с 192.168.0.20. Ведь провайдерский шлюз не в курсе про внутреннюю топологию вашей сети, для него есть только 192.168.0.20.

И да, совет: что-бы не путаться, используйте для внутренней сети какие-то другие подсети, например 10.20.30.0/24, тогда у вас будет

1. шлюз(ваш) 10.20.30.1

2. вендовая машина 10.20.30.20

пакеты с 2(10.20.30.20) пойдут на 1(10.20.30.1), и там подвергунтся SNAT'у, и станут 192.168.0.20
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

drBatty писал(а):
16.03.2014 09:46
leksstav писал(а):
16.03.2014 08:25
А, 192.168.1.20 это ip адрес виндовой машинки которой необходимо инет предоставить.

ну вот вам нужен SNAT, дабы исправлять IP так, что-бы провайдер думал, что пакеты 192.168.1.20 идут кагбэ с 192.168.0.20. Ведь провайдерский шлюз не в курсе про внутреннюю топологию вашей сети, для него есть только 192.168.0.20.

И да, совет: что-бы не путаться, используйте для внутренней сети какие-то другие подсети, например 10.20.30.0/24, тогда у вас будет

1. шлюз(ваш) 10.20.30.1

2. вендовая машина 10.20.30.20

пакеты с 2(10.20.30.20) пойдут на 1(10.20.30.1), и там подвергунтся SNAT'у, и станут 192.168.0.20



Если, знаете и не сложно можете в моем случае подправить мой конфиг ?
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

1. Модули ядра что, уже сами не грузятся, зачем в кашу с маслом ещё масла добавлять? :laugh:
В сторону провайдера смотрит eth0 INET_IP="192.168.0.20"
В сторону локалки смотрит eth1 LAN_IP="192.168.1.100"

Попробуйте так
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Sun Mar 27 21:44:11 2011
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
[0:0] -A POSTROUTING -s 192.168.0.20/32 -d 192.168.1.100/32 -j MASQUERADE
COMMIT
# Completed on Sun Mar 27 21:44:11 2011
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
итд

Соответственно в sysctl.conf
net.ipv4.ip_forward=1

Вижу Вас внутри темы - отпишите результат.
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 10:59
1. Модули ядра что, уже сами не грузятся, зачем в кашу с маслом ещё масла добавлять? :laugh:
В сторону провайдера смотрит eth0 INET_IP="192.168.0.20"
В сторону локалки смотрит eth1 LAN_IP="192.168.1.100"

Попробуйте так
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Sun Mar 27 21:44:11 2011
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
[0:0] -A POSTROUTING -s 192.168.0.20/32 -d 192.168.1.100/32 -j MASQUERADE
COMMIT
# Completed on Sun Mar 27 21:44:11 2011
# Generated by iptables-save v1.4.10 on Sun Mar 27 21:44:11 2011
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
итд

Соответственно в sysctl.conf
net.ipv4.ip_forward=1

Вижу Вас внутри темы - отпишите результат.



net.ipv4.ip_forward=1 У меня стоит.

Можете именно в моем конфиге подправить.
Буду признателен.
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

1.Операционная система какая установлена?
2.Сделайте iptables-save > /etc/iptables/rules.v4
Это rules.v4 в студию
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 11:15
1.Операционная система какая установлена?
2.Сделайте iptables-save > /etc/iptables/rules.v4
Это rules.v4 в студию



iptables-save > /etc/iptables/rules.v4
-bash: /etc/iptables/rules.v4: No such file or directory

open_suse 12.3
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

Вот и понятно.
Где находится сам файл с правилами iptables?
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 11:23
Вот и понятно.
Где находится сам файл с правилами iptables?



/etc/sysconfig/network/
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

А если его почитать чем-то типа less или cat - что там внутри написано точно?
И ещё, если мне память не изменяет -в suse есть хитрый центр, который за iptables и управление им отвечает.
Нельзя-ли его отключить?
Или это тот конфиг, который дан в первом посте?
А если руками так, используя Ваши правила
iptables -t nat -A POSTROUTING -s 192.168.1.20 -j MASQUERADE # - есть
iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE - нужно сделать.
Работает?
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 11:33
А если его почитать чем-то типа less или cat - что там внутри написано точно?
И ещё, если мне память не изменяет -в suse есть хитрый центр, который за iptables и управление им отвечает.
Нельзя-ли его отключить?
Или это тот конфиг, который дан в первом посте?



Конфиг который дан в первом посте, это он и есть.
В ясте все отключено.
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE - работает?
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 12:02
iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE - работает?



Добавил в конец конфига, нет результат тот же.
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

а если так
iptables -t nat -A POSTROUTING -s 192.168.1.20 ! -d 192.168.1.100 -j MASQUERADE
А фарвол служба перезапускалась после замены строки?
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Настройка простых правил в iptables

Сообщение Institut »

Что-бы я сделал
1.iptables -t nat -A POSTROUTING -s 192.168.1.20 -o $INET_IFACE -j SNAT --to-source $INET_IP # - закоменнтировал эту строку
2.Вместо
iptables -t nat -A POSTROUTING -s 192.168.1.20 -j MASQUERADE # поствил-бы iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE
3. После внесения изменений презапустил службу фаервола.
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Institut писал(а):
16.03.2014 12:35
Что-бы я сделал
1.iptables -t nat -A POSTROUTING -s 192.168.1.20 -o $INET_IFACE -j SNAT --to-source $INET_IP # - закоменнтировал эту строку
2.Вместо
iptables -t nat -A POSTROUTING -s 192.168.1.20 -j MASQUERADE # поствил-бы iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE
3. После внесения изменений презапустил службу фаервола.



Не помогло, привел конфиг к такому виду :

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

#!/bin/sh
###########################
## opisyvayu interfeis na storone provaidera
INET_IP="192.168.0.20"
INET_IFACE="eth0"
INET_BROADCAST="192.168.0.255"
####################################
## opisyvayu interfeis na storone localnoi seti
LAN_IP="192.168.1.100"
LAN_IP_RANGE="192.168.1.0/24"
LAN_IFACE="eth1"
######################################
## opisyvayu podset dlya VPN
LAN_VPN_RANGE="192.168.99.0/24" #delaem podset dlya VPN
######################################
# Sbrasyvaem vse pravila
iptables -F
iptables -F -t nat
######################################
# Ustanavlivaem politiki po umolchaniyu
# Zapreschaem ves' vhodyaschii trafik:
iptables -P INPUT DROP
# Razreshaem ishodyaschii trafik:
iptables -P OUTPUT ACCEPT
# Zapreschaem peresylku trafika:
iptables -P FORWARD DROP
######################################
# Razreshaem vhodyaschii trafik v ramkah ustanovlennyh soedinenii:
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
######################################
# Razreshaem ves' trafik vnutri servera:
iptables -A INPUT -i lo -j ACCEPT
######################################
# Razreshaem ICMP-trafik dlya vseh:
iptables -A INPUT -p icmp -j ACCEPT
######################################
#vklyuchayu ip forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_nat_ftp
#####################################
#podcluchayu modyl IPTABLES
IPTABLES="/usr/sbin/iptables"
/sbin/depmod -a #podcluchayu modyl
/sbin/modprobe ip_tables #podcluchayu modyl
/sbin/modprobe ip_conntrack #podcluchayu modyl
/sbin/modprobe iptable_filter #podcluchayu modyl
/sbin/modprobe iptable_mangle #podcluchayu modyl
/sbin/modprobe iptable_nat #podcluchayu modyl
/sbin/modprobe ipt_LOG #podcluchayu modyl
/sbin/modprobe ipt_limit #podcluchayu modyl
/sbin/modprobe ipt_state #podcluchayu modyl
/sbin/modprobe ip_nat_ftp #podcluchayu modyl
########################################
iptables -A INPUT -s 192.168.0.25 -j ACCEPT # daem dostup iz vne po vsem port
########################################
##TR
#iptables -t nat -A POSTROUTING -s 192.168.1.20 -o $INET_IFACE -j SNAT --to-source $INET_IP #
########################################
iptables -A INPUT -p tcp -s $LAN_IP_RANGE --dport 80 -j ACCEPT # http
########################################
iptables -A FORWARD -s 192.168.1.20 #
#########################################
#iptables -t nat -A POSTROUTING -s 192.168.1.20 -j MASQUERADE #
iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE
####################################################
iptables -A FORWARD  -i $LAN_IFACE -s 192.168.1.20 -j ACCEPT
###################################################


Выводы:

iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- anywhere anywhere ctstate RELATED,ES TABLISHED
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- 192.168.0.25 anywhere
ACCEPT tcp -- 192.168.1.0/24 anywhere tcp dpt:http

Chain FORWARD (policy DROP)
target prot opt source destination
all -- 192.168.1.20 anywhere
ACCEPT all -- 192.168.1.20 anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

и еще

iptables -S
-P INPUT DROP
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -s 192.168.0.25/32 -j ACCEPT
-A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -s 192.168.1.20/32
-A FORWARD -s 192.168.1.20/32 -i eth1 -j ACCEPT

Фаервол, перегружал. И операционку перегружал на всякий так сказать пожарный.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение drBatty »

leksstav писал(а):
16.03.2014 14:51
iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.20 ! -d 192.168.1.100 -j MASQUERADE

что-то вы не то пишете.

Есть два разных способа:
1. SNAT
2. DNAT
они делают одно и то же, только с разного конца. Для SNAT нужно задавать ip источника, а для DNAT eth. Вы пытаетесь изобразить DNAT, но задаёте ip, а не eth.

Вы определитесь, что вы хотите(вроде вам любой способ подходит).
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

drBatty писал(а):
16.03.2014 15:00
leksstav писал(а):
16.03.2014 14:51
iptables -t nat -A POSTROUTING -s 192.168.1.20 -d 192.168.1.100 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.1.20 ! -d 192.168.1.100 -j MASQUERADE

что-то вы не то пишете.

Есть два разных способа:
1. SNAT
2. DNAT
они делают одно и то же, только с разного конца. Для SNAT нужно задавать ip источника, а для DNAT eth. Вы пытаетесь изобразить DNAT, но задаёте ip, а не eth.

Вы определитесь, что вы хотите(вроде вам любой способ подходит).



Уважаемый, если знаете то помогите. Буду благодарен. Подправте когфиг.
А, так трепатся то, не то это не так, а почему не по русски и.т.д. все горазды.
Без обид.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение drBatty »

я вам советовал:
http://www.opennet.ru/docs/RUS/iptables/#STARTINGSNAT

конкретно правило:

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

$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP


А если вы желаете делать DNAT, то там так будет
http://www.opennet.ru/docs/RUS/iptables/#DNATTARGET

конкретные правила

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

iptables -t nat -A PREROUTING --dst $INET_IP -p tcp --dport 80 -j DNAT --to-destination $HTTP_IP


как вам больше нравится?

ЗЫЖ, не, во втором варианте вам нужно
http://www.opennet.ru/docs/RUS/iptables/#MASQUERADETARGET

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

$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

drBatty писал(а):
16.03.2014 16:02
я вам советовал:
http://www.opennet.ru/docs/RUS/iptables/#STARTINGSNAT

конкретно правило:

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

$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP


А если вы желаете делать DNAT, то там так будет
http://www.opennet.ru/docs/RUS/iptables/#DNATTARGET

конкретные правила

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

iptables -t nat -A PREROUTING --dst $INET_IP -p tcp --dport 80 -j DNAT --to-destination $HTTP_IP


как вам больше нравится?

ЗЫЖ, не, во втором варианте вам нужно
http://www.opennet.ru/docs/RUS/iptables/#MASQUERADETARGET

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

$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j MASQUERADE


Что то, я уже запутался.

Если не сложно можете мой конфиг, переделать и вылоить т.к. вы это видите в полном виде.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Настройка простых правил в iptables

Сообщение drBatty »

leksstav
я же вам ссылки дал. Там примеры конфигов с объяснениями. Вам нужен первый, самый простой. Если вам ехать, а не шашечки. У меня у самого такой. Если интересно, то там же подробно всё рассказано.

Если вам что-то непонятно, то спрашивайте. Расскажу. Меня даже поправят, если я опять что-то спутаю (бывает, да).
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
leksstav
Сообщения: 329

Re: Настройка простых правил в iptables

Сообщение leksstav »

Заработало при такой конфигурации:

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

#!/bin/sh
###########################
## opisyvayu interfeis na storone provaidera
INET_IP="192.168.0.20"
INET_IFACE="eth0"
INET_BROADCAST="192.168.0.255"
####################################
## opisyvayu interfeis na storone localnoi seti
LAN_IP="192.168.1.100"
LAN_IP_RANGE="192.168.1.0/24"
LAN_IFACE="eth1"
######################################
## opisyvayu podset dlya VPN
LAN_VPN_RANGE="192.168.99.0/24" #delaem podset dlya VPN
######################################
# Sbrasyvaem vse pravila
iptables -F
iptables -F -t nat
######################################
# Ustanavlivaem politiki po umolchaniyu
# Zapreschaem ves' vhodyaschii trafik:
iptables -P INPUT DROP
# Razreshaem ishodyaschii trafik:
iptables -P OUTPUT ACCEPT
# Zapreschaem peresylku trafika:
iptables -P FORWARD DROP
######################################
# Razreshaem vhodyaschii trafik v ramkah ustanovlennyh soedinenii:
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
######################################
# Razreshaem ves' trafik vnutri servera:
iptables -A INPUT -i lo -j ACCEPT
######################################
# Razreshaem ICMP-trafik dlya vseh:
iptables -A INPUT -p icmp -j ACCEPT
######################################
#vklyuchayu ip forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_nat_ftp
#####################################
#podcluchayu modyl IPTABLES
IPTABLES="/usr/sbin/iptables"
/sbin/depmod -a #podcluchayu modyl
/sbin/modprobe ip_tables #podcluchayu modyl
/sbin/modprobe ip_conntrack #podcluchayu modyl
/sbin/modprobe iptable_filter #podcluchayu modyl
/sbin/modprobe iptable_mangle #podcluchayu modyl
/sbin/modprobe iptable_nat #podcluchayu modyl
/sbin/modprobe ipt_LOG #podcluchayu modyl
/sbin/modprobe ipt_limit #podcluchayu modyl
/sbin/modprobe ipt_state #podcluchayu modyl
/sbin/modprobe ip_nat_ftp #podcluchayu modyl
########################################
iptables -A INPUT -s 192.168.0.25 -j ACCEPT # daem dostup iz vne po vsem port
########################################
##TR
iptables -t nat -A POSTROUTING -s 192.168.1.20 -o $INET_IFACE -j SNAT --to-source $INET_IP #
########################################
# FORWARDинг на всю локальную сеть.(Пользователи из локалки могут ходить в интернет)
iptables -A FORWARD -i $LAN_IFACE -j ACCEPT
#Врубаем NAT
iptables -A FORWARD -o $LAN_IFACE -j ACCEPT


Только как теперь, ip-шнику 192.168.1.20 дать доступ только на 80 и отрубить все остальные 443,21 и.т.д.
Спасибо сказали:
carkov
Сообщения: 52
ОС: Debian GNU/Linux 9

Re: Настройка простых правил в iptables

Сообщение carkov »

Здравствуйте!
Решил написать в эту тему,так как вопрос простой и касается он на прямую iptables

пишу правило для iptables , и сталкнулся вот с какой проблемой

у меня на Debian крутится isc-dhcp-server
он настроин и раздают остальным в локальной сети айпи адреса

вопрос такой, почему при установки iptables политике по умолчанию DROP
тоесть

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

carkov@opsi:~$ sudo iptables -L
[sudo] password for root:
Chain INPUT (policy DROP)
target     prot opt source               destination

Chain FORWARD (policy DROP)
target     prot opt source               destination

Chain OUTPUT (policy DROP)
target     prot opt source               destination
carkov@opsi:~$


мои компьютеры подключаются, и им DHCP server выдает IP
ведь больше не каких правил длы прохождения пакетов нет

например

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

IPTABLES -A INPUT -i eth0 -p udp -dport 67:68 -sport 67:68 -j ACCEPT

именно это правило и должно разрешать запроссы к DHCP серверу
В iptables установлено лишь политика по умолчанию (DROP)
но это не мешает получить АЙПИ
ПОМОГИТЕ РАЗОБРАТСЯ ? :rolleyes:
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Настройка простых правил в iptables

Сообщение Bizdelnick »

carkov писал(а):
24.01.2016 22:33
мои компьютеры подключаются, и им DHCP server выдает IP

А точно сервер выдаёт? Может lease ещё не истёк?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Ответить