Ru-Board.club
← Вернуться в раздел «UNIX»

» одно правило в iptables для нескольких ip

Автор: xbrlip
Дата сообщения: 12.01.2012 17:31
день добрый.
как сделать одно правило для нескольких ip адресов (10или30) в iptables, ip идут не по порядку

-A PREROUTING -s 10.10.41.221 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.221 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.222 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.222 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.022 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.022 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.100.3:8080
......
-A PREROUTING -s 10.10.41.2xx -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.100.3:8080
-A PREROUTING -s 10.10.41.2xx -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.100.3:8080
Автор: tankistua
Дата сообщения: 12.01.2012 18:23
кусок из айпитеблеса со старого сервера - я с линуксами особо не дружу, поэтому сам адаптируешь.

if [ -f /etc/rc.d/accept.ssh.ip ]; then
for SSH_IP in `grep -v ^# /etc/rc.d/accept.ssh.ip`; do
$IPTABLES -A INPUT -i eth0 -p tcp -s $SSH_IP --sport 1024:65535 -d $IP_LOCAL_NET --dport 22 -j ACCEPT
$IPTABLES -A INPUT -i eth0 -p tcp -s $SSH_IP --sport 513:1023 -d $IP_LOCAL_NET --dport 22 -j ACCEPT
done
else
echo "Can't find /etc/rc.d/accept.ssh.ip!"
fi
Автор: xbrlip
Дата сообщения: 12.01.2012 19:29
tankistua спасибо, попробую а как выглядит accept.ssh.ip
Автор: tankistua
Дата сообщения: 12.01.2012 20:30
айпишники по очереди - один в строке
Автор: urodliv
Дата сообщения: 12.01.2012 21:00
Вот мой вариант.

Код: \
#! /bin/bash

IPT="/sbin/iptables"
IPADDR="10.10.41.22,10.10.41.222,10.10.41.2xx,10.10.41.022"

$IPT -F -t filter
$IPT -F -t nat
$IPT -F -t mangle

$IPT -t nat -A PREROUTING -s $IPADDR-p tcp --dport 8080 -j DNAT --to 192.168.100.3:8080
Автор: xbrlip
Дата сообщения: 12.01.2012 21:41
tankistua, urodliv
спасибо, работают оба способа

только, как правильнее это реализовать у мня centos правила для iptables стартуют при загрузки из /etc/sysconfig/iptables
правила добавил в/etc/sysconfig/toproxy.sh добавляться при загрузки системы

можно реализовать чтобы они загружались не только при загрузки системы, но и после перезагрузки iptables
/sbin/service iptables restart
Автор: Alukardd
Дата сообщения: 12.01.2012 23:14
xbrlip
True way is use ipset.
Автор: tankistua
Дата сообщения: 13.01.2012 00:37
вот линукс за то и люблю, что любую задачу можно решить кучей способов. который работает - тот и правильный.

З.Ы. у меня через , не заработало под openwrt
Автор: xbrlip
Дата сообщения: 13.01.2012 07:09
Alukardd, если разрастется список воспользуюсь. спасибо

Страницы: 1

Предыдущая тема: Android и Ethernet / USB 3.0 / eSATA. Возможно ли?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.