BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Не удается открыть порт
СообщениеДобавлено: Вт 31 мар, 2015 1:51 pm 
Не в сети

Зарегистрирован: Ср 22 фев, 2012 1:59 pm
Сообщения: 9
Откуда: Украина
Добрый день. Есть интернет шлюз на FreeBSD 8.2 Release со следующими конф. параметрами:
Ядро
Код:
options IPFIREWALL       
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=50
options IPFIREWALL_FORWARD 
options IPDIVERT           
options DUMMYNET           
options IPFIREWALL_DEFAULT_TO_ACCEPT
options ROUTETABLES=2


/etc/rc.conf
Код:
firewall_enable="YES"
firewall_logging="YES"
firewall_script="/etc/rc.ipfw"

tcp_drop_synfin="YES"

natd_enable="YES"
natd_interface="tun0" #optima
natd_flags="-dynamic -f /etc/natd.conf"


/etc/natd.conf
Код:
redirect_port tcp 10.100.100.3:3389 3389
redirect_port tcp 10.100.100.3:8209 8209
redirect_port tcp 10.100.100.3:8210 8210
redirect_port tcp 10.100.100.3:8211 8211
redirect_port tcp 10.100.100.3:8214 8214


/etc/rc.ipfw
Код:
#!/bin/sh
fw="/sbin/ipfw -q"
# Внутренний сетевой интерфейс
inif="em2"

# Внешний сетевой интерфейс
outif="tun0"

# Локальный IP адрес сервера
inip="10.100.100.254"

#сервер Dyalog
dyal="10.100.100.3"

# IP адрес, получаемый от провайдера
outip="xxx.xxx.xxx.xxx"

# Адресация локальной сети
innet="10.100.100.0/24"

# Адресация OpenVPN сети
ovnet="10.100.200.0/24"

# IP адрес в локальной, на который
# проброшен порт RDP
admin="10.100.100.3"

# Сброс всех правил
${fw} -f flush
${fw} -f pipe  flush
${fw} -f queue flush
${fw} -f nat   flush

# Описываем таблицы (предварительно,
# сбрасывая их, чтобы не повторялись),
# в которых задаем список хостов/сетей:
# - для доступа по SSH
${fw} -f table 0 flush
${fw} table 0 add 10.100.100.0/32

# - для доступа по FTP
${fw} -f table 1 flush
${fw} table 1 add 10.100.100.0/32

# - для доступа по RDP к той машине,
# на которую проброшен порт RDP
#${fw} -f table 2 flush
${fw} table 2 add 10.100.100.0/32

# - для доступа через прокси
${fw} -f table 3 flush
${fw} table 3 add 10.100.100.20
${fw} table 3 add 10.100.100.34

# - для ограничени скорости
${fw} -f table 4 flush
${fw} table 3 add 10.100.100.143

#труба ограничения скорости 1Mbit download 0,1Mbit upload
${fw} pipe 1 config bw 1000Kbit/s mask dst-ip 0x000000ff
${fw} pipe 2 config bw 100Kbit/s mask src-ip 0x000000ff

##### Установки для localhost'а ####
${fw} add 100 allow all from any to any via lo0
#
${fw} add 101 deny log all from any to 127.0.0.0/8
${fw} add 102 deny log all from 127.0.0.0/8 to any
#
# - запрещаем автоконфигуренную сеть
# (адрес которой, обычно присваивает машина
# сама себе, если ей не задать настройки вручную,
# и не включить в сети DHCP сервер)
${fw} add 200 deny log ip from any to 169.254.0.0/16 in via ${outif}
#
# - запрещаем частные сети на внешнем интерфейсе
${fw} add 201 deny log ip from any to 0.0.0.0/8 in via ${outif}
${fw} add 202 deny log ip from any to 192.168.0.0/16 in via ${outif}
${fw} add 203 deny log ip from any to 172.16.0.0/12 in via ${outif}
${fw} add 204 deny log ip from any to 10.0.0.0/8 in via ${outif}
#
# - запрещаем мультикаст запросы на внешнем интерфейсе
${fw} add 205 deny log ip from any to 240.0.0.0/4 in via ${outif}
#
# - запрещаем фрагментированные ICMP запросы -
# иногда выручает от некоторых видов атак
${fw} add 206 deny log icmp from any to any frag
#
# - запрещаем мультикастовые ICMP запросы на внешнем интерфейсе
${fw} add 207 deny log icmp from any to 255.255.255.255 in via ${outif}
${fw} add 208 deny log icmp from any to 255.255.255.255 out via ${outif}

#Заворачиваем на прокси
${fw} add 299 fwd 127.0.0.1,3128 tcp from "table(3)" to any 80,5190 out via ${outif}
${fw} add 300 fwd ${inip},2121 tcp from "table(3)" to any 21 out via ${outif}

##### Запускаем NAT ####
${fw} add 301 divert natd all from ${innet} to any out via ${outif}
${fw} add 302 divert natd all from any to ${outip} in via ${outif}
#
# Разрешаем первым делом все уже установленные соединения
${fw} add 401 allow tcp from any to any via ${outif} established
# Разрешаем нашему серверу устанавливать
# tcp соединения в любом направлении
${fw} add 402 allow tcp from ${inip},${outip} to any out xmit ${outif} setup
# Разрешаем трафик из локальной сети на
# внутреннем интерфейсе
${fw} add 501 allow all from ${innet} to any out via ${inif}
${fw} add 502 allow all from any to ${innet} in via ${inif}
# Разрешаем только правильные ICMP запросы
${fw} add 503 allow icmp from any to any icmptypes 0,3,8,11
# Посылаем ответ RESET на попытку получить информацию
# от сервиса идентификации
${fw} add 504 reset log tcp from any to any 113 in recv ${outif}
#
#труба ограничения скорости для ip внесенных в таблицу 4
${fw} add 551 pipe 1 ip from any to "table(4)" out
${fw} add 552 pipe 2 ip from "table(4)" to any in

##### Правила для UDP протокола ####
# - для сервера
# Разрешаем все исходящие UDP запросы с самого сервера
${fw} add 601 allow udp from ${outip} to any out via ${outif}
#
# Разрешаем входящие DNS запросы к нашему DNS серверу
${fw} add 602 allow udp from any to ${outip} 53 in via ${outif}
#
# Разрешаем ответы от DNS серверов на запросы
# от нашего хоста.
${fw} add 603 allow udp from any 53 to ${outip} in via ${outif}
#
# Разрешаем ответы от серверов времени на запросы
# от нашего хоста
${fw} add 604 allow udp from any 123 to ${outip} in via ${outif}
#
# - для локальной сети
# Разрешаем DNS запросы/ответы для всей сети
${fw} add 701 allow udp from ${innet} to any 53
${fw} add 702 allow udp from any 53 to ${innet}
#
# Разрешаем запросы/ответы к серверам времени для всей сети
${fw} add 703 allow udp from ${innet} to any 123
${fw} add 704 allow udp from any 123 to ${innet}
#
# - разрешаем "активный" FTP доступ к серверу,
# но только для хостов, внесенных в table(1)
${fw} add 1001 allow tcp from "table(1)" to ${outip} 20,21 in via ${outif} setup
#
# - разрешаем "пассивный" FTP доступ
# но только для хостов, внесенных в table(1)
${fw} add 1002 allow tcp from "table(1)" to ${outip} 49152-65535 via ${outif}
#
# - разрешаем доступ к SMTP серверу,
${fw} add 1003 allow tcp from any to ${outip} 25 in via ${outif} setup
# открываем снаружи 143 порт(если надо смотреть почту снаружи по IMAP)
${fw} add 1004 allow tcp from any to ${outip} 143 via ${outif} setup
#
# - разрешаем SSH доступ к серверу, но
# только для хостов, внесенных в table(0)
${fw} add 1006 allow tcp from "table(0)" to ${outip} 22 in via ${outif} setup
#
##### Правила для проброшенных портов ####
# Разрешаем доступ по RDP на машину 192.168.0.100,
# но только для хостов, внесенных к table(2)
${fw} add 1100 allow tcp from "table(2)" 1024-65535 to ${admin} 3389 in via ${outif}
${fw} add 1101 allow tcp from "table(2)" 1024-65535 to ${admin} 3389 out via ${inif}
${fw} add 1102 allow tcp from ${admin} 3389 to "table(2)" 1024-65535 in via ${inif}
${fw} add 1103 allow tcp from ${admin} 3389 to "table(2)" 1024-65535 out via ${outif}
#
# открыты порты 8209,8210,8211,8214 для обновления dialog
${fw} add 1300 allow tcp from any to ${dyal} 1031,8209-8211,8214 in via ${outif}
${fw} add 1301 allow tcp from any to ${dyal} 1031,8209-8211,8214 out via ${inif}
${fw} add 1302 allow tcp from ${dyal} 1031,8209-8211,8214 to any in via ${inif}
${fw} add 1303 allow tcp from ${dyal} 1031,8209-8211,8214 to any out via ${outif}

##### пропускаем в Интернет локальную сеть #####
${fw} add 2000 allow all from ${innet} to any in via ${inif}
${fw} add 2001 allow all from any to ${innet} out via ${inif}

#### OpenVPN
${fw} add 3000 allow ip from any to any via tun2
${fw} add 3002 allow tcp from any to me dst-port 21200 setup
${fw} add 3003 allow tcp from me 21200 to any

##### Последнее правило, для занесения в журнал
##### всех остальных (обычно запрещенных) пакетов.
${fw} add 65534 deny log all from any to any


Пытаюсь открыть для ip 10.100.100.29 порт 1031 наружу:
в /etc/natd.conf добавляю
Код:
redirect_port tcp 10.100.100.29:1031 1031

а в /etc/rc.ipfw добавляю строки:
Код:
pbt=10.100.100.29

${fw} add 1200 allow tcp from any to ${pbt} 1031 in via ${outif}
${fw} add 1201 allow tcp from any to ${pbt} 1031 out via ${inif}
${fw} add 1202 allow tcp from ${pbt} 1031 to any in via ${inif}
${fw} add 1203 allow tcp from ${pbt} 1031 to any out via ${outif}


Проверяю порт - telnet внешний_IP 1031 и сервисом 2ip.ru - проверка порта, порт закрыт.
Если заменить порт 1031 на 5800, то 2ip.ru показывает, что порт 5800 открыт, но telnet не проходит.
Порт 5800 выбран из-за того, что это VNC сервер. Так же пробовал правило:
Код:
${fw} add 1050 pass tcp from any to any 1031


Подскажите, что я делаю не так.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не удается открыть порт
СообщениеДобавлено: Вт 31 мар, 2015 10:47 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3150
Откуда: Мезозой Пангея
некоторые провайдеры режут исходящие порты до 1024 - на правах догадки... но судя из последнего правила - видимо догадка неверна.
вторая догадка - а вообще что-то "светится" на указанных портах для начала?
Код:
netstat -na|grep LIST

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 5.2.16-zen-my-ksm-muqss+ #6 ZEN SMP Thu Sep 19 21:20:10 EEST 2019 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не удается открыть порт
СообщениеДобавлено: Ср 01 апр, 2015 10:46 am 
Не в сети

Зарегистрирован: Ср 22 фев, 2012 1:59 pm
Сообщения: 9
Откуда: Украина
fidaj писал(а):
некоторые провайдеры режут исходящие порты до 1024 - на правах догадки... но судя из последнего правила - видимо догадка неверна.
вторая догадка - а вообще что-то "светится" на указанных портах для начала?
Код:
netstat -na|grep LIST


На самом сервере на порту 1031 ничего нет, а вот на терминале (запись в /etc/rc.ipfw: pbt=10.100.100.29), для которого нужно отрыть данный порт я не смотрел, сейчас посмотрю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Не удается открыть порт
СообщениеДобавлено: Чт 23 апр, 2015 5:51 pm 
Не в сети

Зарегистрирован: Ср 22 фев, 2012 1:59 pm
Сообщения: 9
Откуда: Украина
Все таки если кому-то будет интересно, то добавление правил было правильное и порт открылся (см. первое сообщение).Можно закрывать тему.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: AMDmi3, Bing [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика