iptables доступ к локалке (Ограничить доступ в локальную сеть для OpenVPN клиентов)

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

Модераторы: SLEDopit, Модераторы разделов

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

iptables доступ к локалке

Сообщение leksstav »

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

Имеем на борту linux шлюз с поднятым OpenVPN сервером центральный офис подсеть за шлюзом скажем 192.168.10.0/24
Удаленный офис OpenVPN клиент вшит в Mikrotik подсеть за роутером скажем 192.168.1.0/24
OpenVPN подсеть 192.168.99.0/24

Задача чтобы скажем вся подсеть центрального офиса 192.168.10.0/24 могла только пинговать все подсеть филиала 192.168.1.0/24.
И только один ПК из центрального офиса с адресом 192.168.10.25 имел доступ на пк удаленного офиса 192.168.1.50 только на порт 55.
И все.
Т.е. необходима фильтрация по ip адресам за роутером внутри OpenVPN тунеля.

В данные момент клиенты центрального офиса и удаленного видят друг друга без ограничений.

Ниже приведен примерный конфиг который используется.

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

#!/bin/sh
################################################################################################################################################
## opisyvayu interfeis na storone provaidera
INET_IP="xx.xx.xx.xx"
INET_IFACE="eth0"
INET_BROADCAST="yy.yy.yy.yy"
#################################################################################################################################################
## opisyvayu interfeis na storone localnoi seti
LAN_IP="192.168.10.1"
LAN_IP_RANGE="192.168.10.0/24"
LAN_IFACE="eth1"
###################################################################################################################################################
## opisyvayu podset dlya VPN
LAN_VPN_RANGE="192.168.99.0/24" #delaem podset dlya VPN
###################################################################################################################################################
# Razreshit' zaschitu ot fal'sifikacii IP-adresov.
# Vklyuchit' proverku ishodnyh adreso
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $f
done
####################################################################################################################################################
# Sbrasyvaem vse pravila
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
iptables -t nat -X
iptables -t mangle -X
#####################################################################################################################################################
# Ustanavlivaem politiki po umolchaniyu
# Zapreschaem ves' vhodyaschii trafik:
iptables -P INPUT DROP
# Zapreschaem ishodyaschii trafik:
iptables -P OUTPUT DROP
# Zapreschaem peresylku trafika:
iptables -P FORWARD ACCEPT
##########################
#iptables -P FORWARD DROP
#iptables -A FORWARD -p tcp -i eth0 -j ACCEPT
#iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#######################################################################################################################################################
# Простая защита от DoS-атаки
iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Защита от спуфинга
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT --reject-with tcp-reset
# Защита от попытки открыть входящее соединение TCP не через SYN
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
# Закрываемся от кри ого icmp
iptables -I INPUT -p icmp -f -j 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
iptables -A OUTPUT -o lo -j ACCEPT
########################################################################################################################################################
# Разрешаю самому инет шлюзу доступ в инет на все порты и все протоколы
iptables -A OUTPUT -o eth0 -j ACCEPT
##########################################################################################################################################################
# ICMP: разрешаем пинговать наш шлюз из интернета
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
##########################################################################################################################################################
#Разрешаем нашему шлюзу пинговать нашу локальную сеть
iptables -A OUTPUT -p icmp -j ACCEPT
###########################################################################################################################################################
#DNS
iptables -A INPUT  -i eth0 -p udp -m udp --sport 53 -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
#vklyuchayu ip forwarding
echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_nat_ftp
###########################################################################################################################################################
# imya i mesto nahojdenie utility
IPTABLES="/usr/sbin/iptables"
#podcluchayu modyl
/sbin/depmod -a #podcluchayu modyl
/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_nat_ftp
###########################################################################################################################################################
#Разрешаем компъютерам в нашей локальной сети пинговать интернет ресурсы
iptables -t nat -A POSTROUTING -o eth0 -p icmp -j MASQUERADE # Разрешаем пинги
###########################################################################################################################################################
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.8.8 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.4.4 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d ww.ww.ww.ww -j MASQUERADE #ДНС сервер от провайдера
iptables -t nat -A POSTROUTING -o eth0 -d ss.ss.ss.ss -j MASQUERADE #ДНС сервер от провайдера
###########################################################################################################################################################
#Дать доступ определеннопу ПК с адресом 192.168.10.2
#на все ресурсы в сети интернет без ограничений (комп админа локальный)
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.2 -j SNAT --to-source $INET_IP
###########################################################################################################################################################
#Доступ для ip 192.168.10.11 на инет шлюз на порт 8080
iptables -A INPUT -p tcp --dport 8080 -s 192.168.10.11 -j ACCEPT
##########################################################################################################################################################
#Доступ для ip 192.168.10.2 на инет шлюз на все порты локальный ПК админа
iptables -A INPUT -s 192.168.10.2 -j ACCEPT
###########################################################################################################################################################
#Дать доступ для всей локальной сети на сам шлюз на порт 80
iptables -A INPUT -p tcp --dport 80 -s 192.168.10.0/24 -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
###########################################################################################################################################################
#Дать доступ для всей локальной сети на сам шлюз на порт 3128
iptables -A INPUT -p tcp --dport 3128 -s 192.168.10.0/24 -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
###########################################################################################################################################################
#Разрешаем доступ из внутреней сети наружу-интернет для определенных ip адресов опция multiport поддерживает до 15 портов
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.3 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.4 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.5 -m multiport --dports 110,3128,443,25,80,21,2041,2042,1500 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.6 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.7 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.8 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.9 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.10 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
############################################################################################################################################################
#Одному из компов локалки с адресом 192.168.10.17
#открыть только 25 и 110. (на любые pop и smtp адреса
#независимо на каком внешнем портале находится почта)
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 25 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 110 -j SNAT --to-source $INET_IP
############################################################################################################################################################
#Одному пк в локалке с адресом 192.168.10.18 дать доступ
#на 80 порт только на определенный ip допустим в
#по вдресу rr.rr.rr.rr крутится некий web портал
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.18 -o eth0 -d rr.rr.rr.rr --dport 80 -j SNAT --to-source $INET_IP
###########################################################################################################################################################
#Дать доступ из вне с определенного IP например 93.179.122.36 адреса на шлюз
#на все порты (если потребуется админу из дома зайти на шлюз например)
iptables -A INPUT -i eth0 -s zz.zz.zz.zz -j ACCEPT
iptables -A OUTPUT -o eth0 -d zz.zz.zz.zz -j ACCEPT
###########################################################################################################################################################
#Даем доступ адресу 192.168.99.10 из openvpn подсети доступ на шлюз и на все пк в локалке,  на все порты (ip принадлежит админу :-))
iptables -A INPUT -i tun0 -s 192.168.99.10 -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.10 -j ACCEPT
############################################################################################################################################################
#Даем доступ адресу 192.168.99.2 из openvpn подсети доступ на шлюз и на все пк в локалке, на порт 80
iptables -A INPUT -i tun0 -s 192.168.99.8 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.8 -p tcp --dport 80 -j ACCEPT
############################################################################################################################################################
#Разрешаю доступ с определенного ip адреса на конкретный порт т.е. ssh т.е. 22 порт по протоколу tcp на наш инет шлюз
iptables -A INPUT -s 149.255.30.6 -d $INET_IP -p tcp --dport 22 -j ACCEPT
############################################################################################################################################################
#Дать досту из вне с любого IP адреса на порт 1194 и 25 OPENVPN и почта
iptables -A INPUT -i $INET_IFACE -p tcp -s 0/0 --sport 513:65535 -d $INET_IP -m multiport --dports 1194,25 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o $INET_IFACE -p tcp -s $INET_IP -d 0/0 --dport 513:65535 -m conntrack --ctstate ESTABLISHED -j ACCEPT
##########################################################################################################################################################
Спасибо сказали:
gesigor
Сообщения: 410
ОС: Fedora 30

Re: iptables доступ к локалке

Сообщение gesigor »

Мне кажется, доступы к локальным компам проще закрыть не iptables, а правкой конфига openvpn.
Например строка

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

route 192.168.6.0 255.255.255.0 192.168.101.200
дает клиенту с сетью 192.168.6.0 и адресом vpn 192.168.101.200 доступ к сети.
Вот наличие подобных записей и надо смотреть.
OC Centos, FC21
https://gesigor.ru
Спасибо сказали:
leksstav
Сообщения: 331

Re: iptables доступ к локалке

Сообщение leksstav »

gesigor писал(а):
16.03.2014 22:54
Мне кажется, доступы к локальным компам проще закрыть не iptables, а правкой конфига openvpn.
Например строка

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

route 192.168.6.0 255.255.255.0 192.168.101.200
дает клиенту с сетью 192.168.6.0 и адресом vpn 192.168.101.200 доступ к сети.
Вот наличие подобных записей и надо смотреть.



Спасибо, но этот вариант не подходит.
Это делается тольк с помощью iptables и не как иначе.
Спасибо сказали:
Sleeping Daemon
Сообщения: 1450

Re: iptables доступ к локалке

Сообщение Sleeping Daemon »

leksstav писал(а):
26.05.2014 22:14
...
Это делается тольк с помощью iptables и не как иначе.

Ну какие проблемы в FORWARD написать нужные правила?
Однрму компу отурыть порт, остальным только icmp и всё остальное закрыть.
Спасибо сказали:
leksstav
Сообщения: 331

Re: iptables доступ к локалке

Сообщение leksstav »

Sleeping Daemon писал(а):
27.05.2014 08:31
leksstav писал(а):
26.05.2014 22:14
...
Это делается тольк с помощью iptables и не как иначе.

Ну какие проблемы в FORWARD написать нужные правила?
Однрму компу отурыть порт, остальным только icmp и всё остальное закрыть.



Ну, таи вот и прошу помочь с правилами.
На основе моего конфига.
Спасибо сказали:
Аватара пользователя
faria
Сообщения: 70

Re: iptables доступ к локалке

Сообщение faria »

leksstav писал(а):
27.05.2014 12:35
Sleeping Daemon писал(а):
27.05.2014 08:31
leksstav писал(а):
26.05.2014 22:14
...
Это делается тольк с помощью iptables и не как иначе.

Ну какие проблемы в FORWARD написать нужные правила?
Однрму компу отурыть порт, остальным только icmp и всё остальное закрыть.



Ну, таи вот и прошу помочь с правилами.
На основе моего конфига.

Добрый день, попытался разобраться в вашем "примерном конфиге", кроме как "черт ногу сломит", слов больше не нахожу. Возникло ощущение, что это какая-то солянка из конфигов. Определяете переменные, однако не используете, модули грузите где-то в середине, куча комментариев(это конечно хорошо) и решеток, но трудно читается. Для удобства чтения сделал так:

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

eth0 inet
eth1 lan

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT --reject-with tcp-reset
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
iptables -I INPUT -p icmp -f -j DROP
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT  -i eth0 -p udp -m udp --sport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 8080 -s 192.168.10.11 -j ACCEPT
iptables -A INPUT -s 192.168.10.2 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 3128 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -i eth0 -s zz.zz.zz.zz -j ACCEPT
iptables -A INPUT -i tun0 -s 192.168.99.10 -j ACCEPT
iptables -A INPUT -i tun0 -s 192.168.99.8 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s 149.255.30.6 -d $INET_IP -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i $INET_IFACE -p tcp -s 0/0 --sport 513:65535 -d $INET_IP -m multiport --dports 1194,25 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT


iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -d zz.zz.zz.zz -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.10 -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.8 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o $INET_IFACE -p tcp -s $INET_IP -d 0/0 --dport 513:65535 -m conntrack --ctstate ESTABLISHED -j ACCEPT


iptables -t nat -A POSTROUTING -o eth0 -p icmp -j MASQUERADE # Разрешаем пинги
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.8.8 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.4.4 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d ww.ww.ww.ww -j MASQUERADE #ДНС сервер от провайдера
iptables -t nat -A POSTROUTING -o eth0 -d ss.ss.ss.ss -j MASQUERADE #ДНС сервер от провайдера
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.2 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.3 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.4 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.5 -m multiport --dports 110,3128,443,25,80,21,2041,2042,1500 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.6 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.7 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.8 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.9 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.10 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 25 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 110 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.18 -o eth0 -d rr.rr.rr.rr --dport 80 -j SNAT --to-source $INET_IP

Некоторые правила я бы сказал явно лишние(советую всмотреться), некоторые вызывают изумление. возникает вопрос, у вас это работает? и для анализа я бы посоветывал скидывать iptables-save.

По поводу форварда, вам уже сказали, у вас политика по умолчанию ацепт и далее никакой фильтрации нет.
Думаю после прочтения этого. У вас не возникнет вопросов, по созданию этих цепочек самостоятельно.

Кастаельно высказывания:
Спасибо, но этот вариант не подходит.
Это делается тольк с помощью iptables и не как иначе.

это делается массой способов.
Спасибо сказали:
leksstav
Сообщения: 331

Re: iptables доступ к локалке

Сообщение leksstav »

faria писал(а):
27.05.2014 15:57
leksstav писал(а):
27.05.2014 12:35
Sleeping Daemon писал(а):
27.05.2014 08:31
leksstav писал(а):
26.05.2014 22:14
...
Это делается тольк с помощью iptables и не как иначе.

Ну какие проблемы в FORWARD написать нужные правила?
Однрму компу отурыть порт, остальным только icmp и всё остальное закрыть.



Ну, таи вот и прошу помочь с правилами.
На основе моего конфига.

Добрый день, попытался разобраться в вашем "примерном конфиге", кроме как "черт ногу сломит", слов больше не нахожу. Возникло ощущение, что это какая-то солянка из конфигов. Определяете переменные, однако не используете, модули грузите где-то в середине, куча комментариев(это конечно хорошо) и решеток, но трудно читается. Для удобства чтения сделал так:

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

eth0 inet
eth1 lan

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT --reject-with tcp-reset
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
iptables -I INPUT -p icmp -f -j DROP
iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A INPUT  -i eth0 -p udp -m udp --sport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 8080 -s 192.168.10.11 -j ACCEPT
iptables -A INPUT -s 192.168.10.2 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 3128 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -i eth0 -s zz.zz.zz.zz -j ACCEPT
iptables -A INPUT -i tun0 -s 192.168.99.10 -j ACCEPT
iptables -A INPUT -i tun0 -s 192.168.99.8 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s 149.255.30.6 -d $INET_IP -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i $INET_IFACE -p tcp -s 0/0 --sport 513:65535 -d $INET_IP -m multiport --dports 1194,25 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT


iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -d 192.168.10.0/24 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -d zz.zz.zz.zz -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.10 -j ACCEPT
iptables -A OUTPUT -o tun0 -d 192.168.99.8 -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o $INET_IFACE -p tcp -s $INET_IP -d 0/0 --dport 513:65535 -m conntrack --ctstate ESTABLISHED -j ACCEPT


iptables -t nat -A POSTROUTING -o eth0 -p icmp -j MASQUERADE # Разрешаем пинги
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.8.8 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d 8.8.4.4 -j MASQUERADE #ДНС сервер от GOOGLE
iptables -t nat -A POSTROUTING -o eth0 -d ww.ww.ww.ww -j MASQUERADE #ДНС сервер от провайдера
iptables -t nat -A POSTROUTING -o eth0 -d ss.ss.ss.ss -j MASQUERADE #ДНС сервер от провайдера
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.2 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.3 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.4 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.5 -m multiport --dports 110,3128,443,25,80,21,2041,2042,1500 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.6 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.7 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.8 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.9 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.10 -m multiport --dports 110,3128,443,25,80,21,2041,2042 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 25 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.17 --dport 110 -j SNAT --to-source $INET_IP
iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.18 -o eth0 -d rr.rr.rr.rr --dport 80 -j SNAT --to-source $INET_IP

Некоторые правила я бы сказал явно лишние(советую всмотреться), некоторые вызывают изумление. возникает вопрос, у вас это работает? и для анализа я бы посоветывал скидывать iptables-save.

По поводу форварда, вам уже сказали, у вас политика по умолчанию ацепт и далее никакой фильтрации нет.
Думаю после прочтения этого. У вас не возникнет вопросов, по созданию этих цепочек самостоятельно.

Кастаельно высказывания:
Спасибо, но этот вариант не подходит.
Это делается тольк с помощью iptables и не как иначе.

это делается массой способов.



Спасибо, за советы типа http://www.opennet.ru/docs/RUS/iptables/ и http://www.google.ru/ и подобных.
Там, я уже был, в теме просил помочь с правилами кто знает и умеет, а не хаить конфиг.
Спасибо сказали:
Sleeping Daemon
Сообщения: 1450

Re: iptables доступ к локалке

Сообщение Sleeping Daemon »

leksstav писал(а):
28.05.2014 11:38
...
Спасибо, за советы типа http://www.opennet.ru/docs/RUS/iptables/ и http://www.google.ru/ и подобных.
Там, я уже был, в теме просил помочь с правилами кто знает и умеет, а не хаить конфиг.

Здесь не техническая поддержка.
Если хотите, что бы Вам помогли - напишите правила, которые считаете правильные и спросите здесь, правильно или нет.
Вот тогда больше вероятности, что помогут.
А я уже писал - Вам нужен FORWARD.
Спасибо сказали:
leksstav
Сообщения: 331

Re: iptables доступ к локалке

Сообщение leksstav »

В общем тема закрыта, друг помог реальными правилами а не трепом.
Спасибо сказали:
Аватара пользователя
faria
Сообщения: 70

Re: iptables доступ к локалке

Сообщение faria »

leksstav писал(а):
28.05.2014 11:38
Спасибо, за советы типа http://www.opennet.ru/docs/RUS/iptables/ и http://www.google.ru/ и подобных.
Там, я уже был, в теме просил помочь с правилами кто знает и умеет, а не хаить конфиг.

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

leksstav писал(а):
28.05.2014 12:24
В общем тема закрыта, друг помог реальными правилами а не трепом.


Вот и славно. Ну это и понятно, хотели найти кого-нибудь, кто бы сделал это за вас, нашли. Кто не сделал это за вас, тот трепач.

В чем проблема вашего конфига вам сказали. Где посмотреть, как сделать вам сказали, проблема в том, что вы и не хотели ничего делать изначально. :)
Спасибо сказали:
aleksnsk
Сообщения: 180

Re: iptables доступ к локалке

Сообщение aleksnsk »

отойду от темы, самый лучший способ осилить iptables быстрее,
это установить VirtualBOx и напихать туда 3-4 вирт.оси..и баловаться с пробросом портов, наттингом, снатом, маскарадингом и т.д.=)) фильтрацией пакетов, син-дропам и т.д.=))
Спасибо сказали:
leksstav
Сообщения: 331

Re: iptables доступ к локалке

Сообщение leksstav »

faria писал(а):
28.05.2014 13:16
leksstav писал(а):
28.05.2014 11:38
Спасибо, за советы типа http://www.opennet.ru/docs/RUS/iptables/ и http://www.google.ru/ и подобных.
Там, я уже был, в теме просил помочь с правилами кто знает и умеет, а не хаить конфиг.

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

leksstav писал(а):
28.05.2014 12:24
В общем тема закрыта, друг помог реальными правилами а не трепом.


Вот и славно. Ну это и понятно, хотели найти кого-нибудь, кто бы сделал это за вас, нашли. Кто не сделал это за вас, тот трепач.

В чем проблема вашего конфига вам сказали. Где посмотреть, как сделать вам сказали, проблема в том, что вы и не хотели ничего делать изначально. :)



Уважаемый, не Вам об этом судить.
Без обид
И закроем тему.
Спасибо сказали: