LinuxForum.Fans
Тема

прошу помощи со скриптом iptables для шлюза

Автор: Me_Shock 182 сообщений 27883 просмотров
#310197

Мне не понятно, почему на gw5 дефолтный шлюз на gw.my-company.ru? У вас на gw5 это имя прописано в hosts с адресом 192.168.0.210?

#310202
urfin написал:
Мне не понятно, почему на gw5 дефолтный шлюз на gw.my-company.ru? У вас на gw5 это имя прописано в hosts с адресом 192.168.0.210?

Потому что как я понял GW5 настраиваетса как шлюз, к ниму конектатса клиенты из сети 192.168.1.0. Для того чтобы его настроить он должен быть для этой сети шлюзом. Потому на нём и стои дефолтом шлюз gw.my-company.ru.

#310203
kisil написал:
[quote=urfin]Мне не понятно, почему на gw5 дефолтный шлюз на gw.my-company.ru? У вас на gw5 это имя прописано в hosts с адресом 192.168.0.210?

Потому что как я понял GW5 настраиваетса как шлюз, к ниму конектатса клиенты из сети 192.168.1.0. Для того чтобы его настроить он должен быть для этой сети шлюзом. Потому на нём и стои дефолтом шлюз gw.my-company.ru.[/quote]То, что физически gw.my-company.ru по адресу 192.168.0.210 является шлюзом для gw5 это понятно. Вот по какому адресу gw5 распознает имя gw.my-company.ru? По локальному или по глобальному?

#310204

"kisil⇓" написал:
На шлюзе Gw5 интернет есть. Так?
да
"kisil⇓" написал:
На нём ещё есть сквид? Значит сквид раздаёт инет.
Есть сквид3, раздает. (но пинги в глоб не ходят! но интернет есть, но пингов нет!!! клиентом локалки зайти на ya.ru могу а а пинги на него же висят)
"kisil⇓" написал:
И нужно чтобы кроме интернета клиенты из сети 192.168.1.0 ходили в 192.168.0.0?
думаю нет, там им делать нечего, важно чтобы на gw5 порты RDP пробросились в LAN и 192.168.1.0 заменится на белый от провайдера когда шлюз поставлю по-назначению.
"kisil⇓" написал:
Нужно также чтобы клиенти из 192.168.1.0 конектились к своему шлюзу gw5 по отдельных портах.
да. есть разрешенный список: аська, банк-клиент, ftp и еще много там..
"kisil⇓" написал:
Покажыте ещё раз ваш конфиг iptables.
Да он в состоянии Все -t в -F и все все ACCEPT.
"kisil⇓" написал:
И ещё форвардинг пакетов включён на gw5
Да поставил сегодня в "1", перезагружал маршруты стирал / прописывал. нет пингов и все тут!(
#310205

"urfin⇓" написал:
Вот по какому адресу gw5 распознает имя gw.my-company.ru? По локальному или по глобальному?
видимо по локальному. при попытке сделать ping gw.my-company.ru - ответ приходит с 192.168.0.210
#310208

"Enzo_brn⇓" написал:
Да поставил сегодня в "1", перезагружал маршруты стирал / прописывал. нет пингов и все тут!(
То есть при полном погашенном iptables нет пингов совсем? А с машины gw5 все сетки пингуются? может попробовать на машине gw.my-company.ru
text
route add 192.168.1.0

прописать? За точность команды не ручаюсь, посмотрите в man.

#310210

"urfin⇓" написал:
То есть при полном погашенном iptables нет пингов совсем?
сижу в консоли GW5 пингую dns, шлюз компании, все интернеты, свою LAN, клиентов своей LAN. а вот клиенты моей LAN видят только друг-друга, адрес сетевухи 192.168.1.1 и адрес моей сетевухи WAN: 192.168.0.254. причем только по ip.
"urfin⇓" написал:
А с машины gw5 все сетки пингуются?
да. и по именам тоже.
"urfin⇓" написал:
может попробовать на машине gw.my-company.ru
раньше пинги были, без этого маршрута, да и доступа нет. Большие дяди не пускают туда.. Буду завтра hosts и resolv.conf ковырять мож там что стряслось..
#310214

Так попробуйте на gw5 такой конфиг фаервола

text
#!/bin/bash
# ******************************************************************
#
TRUSTED_HOSTS="80.247.XX.XXX,109.202.X.XXX,192.168.0.65"        # 1.imex 2.avantel 3.debug
MY_NETWORK="192.168.1.0/24"     # My NetWork (eth1)
THIS_GW_IP="192.168.0.254"      # this GateWay IP
DEFAULT_GW="192.168.0.210"      # default gateway
EXT_PORTS="22,80,3389"          # accessible WAN port
INT_PORTS="1,80,3128"             # accessible LAN ports
IPT="/sbin/iptables"            # iptables location
EXT_IF="eth0"                   # external WAN interface
INT_IF="eth1"                   # internal LAN interface
#
# *****************************************************************
$IPT -F                         # CLEAR ALL RULES
#
$IPT -P INPUT   DROP
$IPT -P OUTPUT  ACCEPT            # SET POLICY TO DROP ALL
$IPT -P FORWARD DROP
#
#lo
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
# Accepts ALL established inbound connections
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#
# Accepts ALL outbound traffic
$IPT -A OUTPUT -j ACCEPT
#
# ALLOW LOCAL CONNECT FOR TO ALLOWED INTERNAL PORTS
$IPT -A INPUT -i $INT_IF -p tcp -m multiport --dport $INT_PORTS -s $MY_NETWORK -j ACCEPT
#
# AllOW PING
$IPT -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#
#NAT for global GW
$IPT -t nat -A POSTROUTING -o $EXT_IF -j SNAT --to-source $THIS_GW_IP

#ACCEPT forward $IPT -A FORWARD -s 192.168.1.0/24 -o eth0 -j ACCEPT

Тока не правте ничего. Тогда попробуйте пингануть тот же ya.ru

#310216
"Enzo_brn⇓" написал:
важно чтобы на gw5 порты RDP пробросились в LAN и 192.168.1.0

Как я понимаю для етого, в теперешней ситуации нужна будет пробросит порт RDP на глобальном шлюзе. Чтобы из интернета можно было заходить.

#310217

"kisil⇓" написал:
Тока не правте ничего. Тогда попробуйте пингануть тот же ya.ru
понял. Только завтра(( продолжу :)
#310218

Обновил конфиг забыл об обратной петле. *JOKINGLY*
Лады.

#310219

"Enzo_brn⇓" написал:
а вот клиенты моей LAN видят только друг-друга, адрес сетевухи 192.168.1.1 и адрес моей сетевухи WAN: 192.168.0.254.
Такое может быть только при отключенном форвардинге. Если включено net.ipv4.ip_forward = 1, то тогда совершенно ничего не понятно, если только большие дяди не закрыли доступ для сети 192.168.1.0/24 наглухо. Дайте вывод команды
text
sysctl -a|grep forward
#310220

"kisil⇓" написал:
в теперешней ситуации нужна будет пробросит порт RDP на глобальном шлюзе.
в точку, только мне это ниЗЗЗяя! Приму на веру что оно сработает а протестю уже на месте.)
#310222

"urfin⇓" написал:
Дайте вывод команды
СПС) Понял. Сейчас нет технической возможности, шлюз на работе. Зафтра отпишу)
#310223

Понятно. То етот шлюз на месте должен получить реальний айпи?
Тогда проброс портов нужно будет на нём делать.

#310224

"kisil⇓" написал:
То етот шлюз на месте должен получить реальний айпи?
именно, он получит кабелем от провайдера прямо по своей сетевой плате! :D Да почему потом, изменю в скрипте в переменой $THIS_GW_IP циферки ну и в interfaces да и все!))
#310226

Ну да. *YES* ;D

#310403

"urfin⇓" написал:
sysctl -a|grep forward
Показать
text
root@gw5:/# sysctl -a|grep forward
error: permission denied on key 'net.ipv4.route.flush'
net.ipv4.conf.all.forwarding = 1
net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.default.forwarding = 1
net.ipv4.conf.default.mc_forwarding = 0
net.ipv4.conf.lo.forwarding = 1
net.ipv4.conf.lo.mc_forwarding = 0
net.ipv4.conf.eth0.forwarding = 1
net.ipv4.conf.eth0.mc_forwarding = 0
net.ipv4.conf.eth1.forwarding = 1
net.ipv4.conf.eth1.mc_forwarding = 0
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 0
net.ipv6.conf.all.mc_forwarding = 0
net.ipv6.conf.default.forwarding = 0
error: permission denied on key 'net.ipv6.route.flush'
net.ipv6.conf.default.mc_forwarding = 0
net.ipv6.conf.lo.forwarding = 0
net.ipv6.conf.lo.mc_forwarding = 0
net.ipv6.conf.eth0.forwarding = 0
net.ipv6.conf.eth0.mc_forwarding = 0
net.ipv6.conf.eth1.forwarding = 0
net.ipv6.conf.eth1.mc_forwarding = 0

после ребута net.ipv4.ip_forward все равно становится в 0.
#310404

Вобщем, решил я снести ось.
нестелект-аптом нашел самый быстрый реп, скачал: этот: http://cdimage.debian.org/debian-cd/6.0.7/amd64/bt-cd/debian-6.0.7-amd64-netinst.iso.torrent записал на флеш unetbootin-ом. щас буду ставить. Думаю тему можно считать себя исчерпавшей ибо поиск глюков и багов не укладывается в настройку файрвола. Чуть позже выложу финальный iptables.gw.ruules с комментами. Всем спасибо)))))

#310406

Да не обязательно ребутить сервак. Можно просто прописать в настройках файрвола echo 1 > /proc/sys/net/ipv4/ip_forward и всё. Уже переустановили ОС??? Может не надо - эту инсталяцыю доведём до ума.

Войдите или зарегистрируйтесь, чтобы ответить.