The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Проброс порта"
Отправлено Xruman, 31-Мрт-09 10:18 
Здравствуйте. Имеется сервер на opensuse10.1 , нужно пробросить один порт в локалку, помогите это сделать. Вот настройки iptables которые сейчас работают

#! /bin/sh
#
# /etc/init.d/iptables
#
### BEGIN INIT INFO
# Provides: iptables
# Required-Start: $network
# X-UnitedLinux-Should-Start: $network
# Required-Stop: $network
# X-UnitedLinux-Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: Load iptables rules
# Description: Loads iptables rules
### END INIT INFO
# X-SuSE-Dep-Only

# Указываем пути
IPT="/usr/sbin/iptables"
IPT_SAVE="/usr/sbin/iptables-save"
IPT_REST="/usr/sbin/iptables-restore"

# Внешний сетевой интерфейс
INET_DEV="eth1"

# Внутренний сетевой интерфейс
LAN_DEV="eth2"

#
EXT_R_IP="xxx"
PORT1="50000"

# Открытые порты для LAN (TCP)
OPENPORTS_INT_TCP="21,25,22,80,110,27015,5190,5900,6000,58000"

# Открытые порты для LAN (UDP)
OPENPORTS_INT_UDP="53"

start_fw()
{

echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter # Активация IP Spoofing Protection
#echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Игнорирование Broadcast Request


# Модули
/sbin/modprobe ip_queue # Необходимо для работы Netams
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
#/sbin/modprobe ip_nat_irc
#/sbin/modprobe ip_conntrack_irc


## Правила iptables
##

# Определяем политики по умолчанию
$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP

# Создаем цепочки
$IPT -N input_int
$IPT -N input_ext
#$IPT -N forward_int
#$IPT -N forward_ext

# Пакеты на входе
$IPT -A INPUT -s 192.168.0.0/24 -p all -j ACCEPT

$IPT -A INPUT -i lo -j ACCEPT # Разрешаем прохождение трафика через петлевой интерфейс
$IPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #
$IPT -A INPUT -i $LAN_DEV -j input_int # Перейти к цепочке input_int если пакет из LAN
$IPT -A INPUT -i $INET_DEV -j input_ext # Перейти к цепочке input_ext если пакет из Интернета
$IPT -A INPUT -j input_ext # Перейти к цепочке input_ext если пакет не из LAN или Интернет
$IPT -A INPUT -j DROP #


# Пакеты на выходе
$IPT -A OUTPUT -p all -j QUEUE
$IPT -A OUTPUT -o lo -j ACCEPT # Разрешаем прохождение трафика через петлевой интерфейс
$IPT -A OUTPUT -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT #

# Правила input_int
$IPT -A input_int -p ALL -s ! 192.168.0.0/24 -j DROP # Принимаем пакеты только из этой подсети
$IPT -A input_int -m state --state INVALID -j DROP # Отбрасываем пакеты которые не могут быть идентифицированы
$IPT -A input_int -p icmp -s 192.168.0.1/24 -j ACCEPT # Пинг из LAN
$IPT -A input_int -p tcp -m multiport --dport $OPENPORTS_INT_TCP -j REJECT # Открытые порты TCP
$IPT -A input_int -p udp -m multiport --dport $OPENPORTS_INT_UDP -j REJECT # Открытые порты UDP
$IPT -A input_int -p ALL -j DROP #

# Правила input_ext
$IPT -A input_ext -p ALL -j REJECT
$IPT -A input_ext -m state --state INVALID -j DROP # Отбрасываем пакеты которые не могут быть идентифицированы
$IPT -A input_ext -p icmp -j ACCEPT # Принимать icmp из Интернет
$IPT -A input_ext -j DROP # Все остальное отбрасываем

# Транзитные пакеты
#$IPT -A FORWARD -p icmp -j ACCEPT # Пропускаем icmp из LAN в Интернет
$IPT -A FORWARD -p ALL -j QUEUE # Заворот пакетов в Netams

# NAT
$IPT -t nat -A PREROUTING -p tcp -d $EXT_R_IP --dport $PORT1 -j DNAT --to-destination 192.168.0.22:50000
$IPT -A FORWARD -i eth1 -d 192.168.0.22 -p tcp --dport 50000 -j ACCEPT
$IPT -t nat -A POSTROUTING -s 192.168.0.0/24 -o $INET_DEV -j MASQUERADE
}

. /etc/rc.status

rc_reset

case "$1" in
start)
echo -n "Flushing Firewall rules "
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
rc_status -v
echo -n "Clearing Firewall rules "
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
rc_status -v
$IPT -Z
echo -n "Loading Firewall rules "
start_fw
rc_status -v
touch /var/lock/subsys/iptables
;;
stop)
echo -n "Flushing Firewall rules "
$IPT -F
$IPT -t nat -F
$IPT -t mangle -F
rc_status -v
echo -n "Clearing Firewall rules "
$IPT -X
$IPT -t nat -X
$IPT -t mangle -X
rc_status -v
echo -n "Resetting built-in chains to default ACCEPT policy "
$IPT -P INPUT ACCEPT && $IPT -P OUTPUT ACCEPT && $IPT -P FORWARD ACCEPT
rc_status -v
;;
save)
echo -n "Saving current rules to $RULES: "
$IPT_SAVE -c > $RULES
rc_status -v
;;
restart|force-reload)
$0 start
rc_status
;;
status)
echo "Checking the status of the Firewall "
$IPT -L || rc_failed 3
;;
*)
echo "Usage: $0 {start|stop|save|status|restart|reload}"
exit 1
;;
esac

# Set exit status
rc_exit


Я пробовал добавить такие строки
$IPT -t nat -A PREROUTING -p tcp -d $EXT_R_IP --dport $PORT1 -j DNAT --to-destination 192.168.0.22:50000
$IPT -A FORWARD -i eth1 -d 192.168.0.22 -p tcp --dport 50000 -j ACCEPT
но наверное не правильно сделал, т.к. ничего не заработало :( помогите решить проблему

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.

На сайте действует частичное премодерирование - после публикации некоторые сообщения от анонимов могут автоматически скрываться ботом. После проверки модератором ошибочно скрытые сообщения раскрываются. Для ускорения раскрытия можно воспользоваться ссылкой "Сообщить модератору", указав в качестве причины обращения "скрыто по ошибке".



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру