Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Помогите c iptables  (Прочитано 568 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн MetriX

  • Автор темы
  • Любитель
  • *
  • Сообщений: 63
    • Просмотр профиля
Помогите c iptables
« : 14 Декабря 2012, 09:27:42 »
Таким скриптом запускаю нат на роутере. Вроде всё правильно, а проброс порта не работает. Никак не пойму, в чем проблема

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
modprobe iptable_nat
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe virtio_net
export IPT="/sbin/iptables"
export I_OUT=eth0
export I_LAN=eth1
export NET_LAN=10.0.0.0/24
export PROXY_IP=10.0.0.1
# flush all the rules in the filter and nat tables.
$IPT           -F
$IPT -t nat    -F
$IPT -t mangle -F
# erase all chains that's not default in filter and nat table.
$IPT           -X
$IPT -t nat    -X
$IPT -t mangle -X
# Let's go
# Закрываем изначально ВСЁ:
$IPT -P INPUT   DROP
$IPT -P OUTPUT  DROP
$IPT -P FORWARD DROP

# разрешаем ping на внешнем интерфейсе
$IPT -A INPUT -p ICMP -i $I_OUT --icmp-type 8 -j ACCEPT


# ********************************************************************************* #
# разрешаем локальный траффик для loopback и внутренней сети
$IPT -A INPUT  -i lo      -j ACCEPT
$IPT -A INPUT  -i $I_LAN -j ACCEPT
$IPT -A OUTPUT -o lo      -j ACCEPT
$IPT -A OUTPUT -o $I_LAN -j ACCEPT
# ********************************************************************************* #

# Принимать все пакеты, которые инициированы из уже установленного соединения, и имеющим
# признак ESTABLISHED.
# Состояние ESTABLISHED говорит о том, что это не первый пакет в соединении.
$IPT -A INPUT             -m state --state RELATED,ESTABLISHED     -j ACCEPT
$IPT -A OUTPUT            -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
$IPT -A FORWARD -o $I_OUT -m state --state RELATED,ESTABLISHED     -j ACCEPT
$IPT -A FORWARD -o $I_LAN -m state --state RELATED,ESTABLISHED     -j ACCEPT
$IPT -A FORWARD -i $I_OUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
$IPT -A FORWARD -i $I_LAN -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
# ********************************************************************************* #


# 80 и 8080 порты на прокси.
$IPT -t nat -A PREROUTING -i $I_LAN ! -d  $NET_LAN -p tcp -m multiport --destination-port 80,8080 -j DNAT --to $PROXY_IP:800
#************************************************************************************#




#Пробросы портов
$IPT -t nat -A PREROUTING -i $I_OUT  -p tcp --destination-port 80 -j DNAT --to-destination 10.0.0.143:80
$IPT -A FORWARD    -i $I_LAN -d 10.0.0.143 -p tcp --destination-port 80 -j ACCEPT
#************************************************************************************#


# Разрешаем доступ из внутренней сети наружу
$IPT -A FORWARD -i $I_LAN -o $I_OUT -j ACCEPT


# Маскарадинг
$IPT -t nat -A POSTROUTING -o $I_OUT -s $NET_LAN    -j MASQUERADE

$IPT -L -n -t nat

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13763
    • Просмотр профиля
Re: Помогите c iptables
« Ответ #1 : 14 Декабря 2012, 11:25:47 »
Как предоставлять информацию есть определённые правила.
ifconfig -a
route -n
sudo iptables-save

Оффлайн MetriX

  • Автор темы
  • Любитель
  • *
  • Сообщений: 63
    • Просмотр профиля
Re: Помогите c iptables
« Ответ #2 : 14 Декабря 2012, 11:32:34 »
ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:25:90:25:d7:cd 
          inet addr:***.***.***.***  Bcast:***.***.***.***  Mask:255.255.255.248
          inet6 addr: ****::***:****:****:****/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:55172959 errors:3 dropped:0 overruns:0 frame:2
          TX packets:40948664 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:63931948593 (59.5 GiB)  TX bytes:7902791029 (7.3 GiB)
          Interrupt:20 Memory:fba00000-fba20000

eth1      Link encap:Ethernet  HWaddr 00:25:90:25:d7:cc 
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::225:90ff:fe25:d7cc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:48685634 errors:0 dropped:0 overruns:0 frame:0
          TX packets:66848868 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:12067996775 (11.2 GiB)  TX bytes:74785557085 (69.6 GiB)
          Interrupt:16 Memory:fb900000-fb920000

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:426288 errors:0 dropped:0 overruns:0 frame:0
          TX packets:426288 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:57122185 (54.4 MiB)  TX bytes:57122185 (54.4 MiB)



route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         ***.***.***.***    0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth1
***.***.***.***    0.0.0.0         255.255.255.248 U     0      0        0 eth0


iptables-save
# Generated by iptables-save v1.4.8 on Fri Dec 14 11:27:34 2012
*mangle
:PREROUTING ACCEPT [139:51970]
:INPUT ACCEPT [103:46782]
:FORWARD ACCEPT [34:5066]
:OUTPUT ACCEPT [127:51777]
:POSTROUTING ACCEPT [160:56812]
COMMIT
# Completed on Fri Dec 14 11:27:34 2012
# Generated by iptables-save v1.4.8 on Fri Dec 14 11:27:34 2012
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
-A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth1 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -d 10.0.0.143/32 -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o eth1 -j ACCEPT
-A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Fri Dec 14 11:27:34 2012
# Generated by iptables-save v1.4.8 on Fri Dec 14 11:27:34 2012
*nat
:PREROUTING ACCEPT [3:170]
:INPUT ACCEPT [4:204]
:OUTPUT ACCEPT [8:497]
:POSTROUTING ACCEPT [8:497]
-A PREROUTING ! -d 10.0.0.0/24 -i eth1 -p tcp -m multiport --dports 80,8080 -j DNAT --to-destination 10.0.0.1:800
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 10.0.0.143:80
-A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Fri Dec 14 11:27:34 2012


Оффлайн koshev

  • Старожил
  • *
  • Сообщений: 1709
  • חתול המדען
    • Просмотр профиля
Re: Помогите c iptables
« Ответ #3 : 14 Декабря 2012, 17:22:20 »
Код: (text) [Выделить]
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
Намёк понятен?
OpenWrt 19.07

 

Страница сгенерирована за 0.02 секунд. Запросов: 22.