Война с пробросом порта продолжается!!!
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Война с пробросом порта продолжается!!!
Всем привет!!
Я уже поднимал тему про проброс портов, но опрометчиво закрыл ее, думал разобрался...
Задача стандартная: Нужно пробросить порт (для примера хотяб 3389) на машину локальной сети. Проброс нужно освоить через NAТ. Но вот каким именно запутался окончательно!!!! Такая каша в голове!
Ребят помогите распутаться плиз и выбрать что то одно.
Вобщем пробовал почти все:) :
natd - настраивал по мануалам (оч много читал по настройкам). Рыл тырнет, форумы, статьи Лиса. Не получилось... Вроде все поднимается, но по tcpdump пакеты идут в одну сторону и все (Вне зависимости правил в фаере)
ipnat - Тоже самое, не получилось и пакеты также только в одну сторону.
Ядерный nat - Получилось:) Проброс работает, но с другими правилами в фаере полный сумбур. В зависимости расположений правил (ниже или выше nat'a) не работет либо сам проброс, либо на сервисы на фре (типа ftp и т.д.) зайти нельзя!!
Конкретно для меня хотелось бы юзать natd (конфиг отдельный от фаера и правила вроде интуитивно понятные). И хотелось бы начать разбор полета с него.
P.S возможно не понимаю сам меанизм работы nat'a и фаера. Но в голове реально щас каша, а время поджимает. Можно пожалуйста по порядку начать?? и не ругайте сильно плиз нуба пока во freebsd
FreeBSD 8.2
Если нужны какие конфы, пишите буду выкладывать.
Я уже поднимал тему про проброс портов, но опрометчиво закрыл ее, думал разобрался...
Задача стандартная: Нужно пробросить порт (для примера хотяб 3389) на машину локальной сети. Проброс нужно освоить через NAТ. Но вот каким именно запутался окончательно!!!! Такая каша в голове!
Ребят помогите распутаться плиз и выбрать что то одно.
Вобщем пробовал почти все:) :
natd - настраивал по мануалам (оч много читал по настройкам). Рыл тырнет, форумы, статьи Лиса. Не получилось... Вроде все поднимается, но по tcpdump пакеты идут в одну сторону и все (Вне зависимости правил в фаере)
ipnat - Тоже самое, не получилось и пакеты также только в одну сторону.
Ядерный nat - Получилось:) Проброс работает, но с другими правилами в фаере полный сумбур. В зависимости расположений правил (ниже или выше nat'a) не работет либо сам проброс, либо на сервисы на фре (типа ftp и т.д.) зайти нельзя!!
Конкретно для меня хотелось бы юзать natd (конфиг отдельный от фаера и правила вроде интуитивно понятные). И хотелось бы начать разбор полета с него.
P.S возможно не понимаю сам меанизм работы nat'a и фаера. Но в голове реально щас каша, а время поджимает. Можно пожалуйста по порядку начать?? и не ругайте сильно плиз нуба пока во freebsd
FreeBSD 8.2
Если нужны какие конфы, пишите буду выкладывать.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
Для начала уберите из конфига фаера nat 2
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Убрал уже давноsadchok писал(а):Для начала уберите из конфига фаера nat 2

Есть смысл попробовать PF?? (надеюсь голова не взорвется)... Или все-таки допинывать то что начал?
(Честно говоря уже по ходу из крайности в крайность кидаюсь

- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
С PF не работал, потому помочь не могу.immortal писал(а): Попутный вопрос:
Есть смысл попробовать PF?? (надеюсь голова не взорвется)... Или все-таки допинывать то что начал?
(Честно говоря уже по ходу из крайности в крайность кидаюсь)
А по поводу IPFW, давайте конфиг и вывод ipfw show.
Ну и все таки есть смысл начать от простого к сложному,
Думаю вам больше подойдет пример 1.
Сделайте резервную копию своего конфига.
Возьмите конфиг из примера.(поменяв интерфейсы и адреса на свои)
Если заработало.
Постепенно добавляйте в него остальное.
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
sadchok Как я понял Вы меня толкаете на ядерный nat?? С него по порядку начнем? Кидаю тады его настройки?
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Начну с конфигов...
/etc/rc.conf:
/etc/sysctl.conf
/etc/list.ipfw:
Соединение с инетом через PPPoE:
Попытка подключиться из вне на порт 3389:
Как видно пакеты прошли через 2 правила и до внутренней сетки (re0) вообще не дошли
/etc/rc.conf:
Код: Выделить всё
## Net Settings ##
gateway_enable="YES"
hostname="proxy.domain.ru"
ifconfig_re0="inet 192.168.1.222 netmask 255.255.255.0"
ppp_enable="YES"
ppp_mode="ddial"
ppp_profile="bwc"
firewall_enable="YES"
firewall_script="/etc/list.ipfw"
firewall_logging="YES"
tcp_extensions="NO"
tcp_drop_synfin="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="YES"
Код: Выделить всё
net.inet.ip.fw.one_pass: 1
Код: Выделить всё
FwCMD="/sbin/ipfw -q "
LanOut="tun0" #Интерфейс созданный подключением PPPoE
LanIn="re0" #Интерфейс смотрящий в лок сеть
IpOut="81.18.81.18" #Внешний стат IP
IpIn="192.168.1.222" #Внутренний IP фри
NetMask="24"
NetIn="192.168.1.0"
${FwCMD} -f flush
#loopback
${FwCMD} 100 add allow all from any to any via lo0
${FwCMD} 101 add deny all from any to 127.0.0.0/8
${FwCMD} 102 add deny all from 127.0.0.0/8 to any
# ${FwCMD} 110 add check-state
## SSH
${FwCMD} 120 add allow tcp from any to any 22 setup keep-state
###############################################################################################################
########################################## Firewall_Begin #####################################################
${FwCMD} add 1040 allow ip from any to any via re0
${FwCMD} nat 1 config log if tun0 reset same_ports deny_in \
redirect_port tcp 192.168.1.102:3389 3389 \
redirect_port udp 192.168.1.20:80 80
${FwCMD} add 10130 nat 1 ip from any to any via tun0
${FwCMD} add 10150 pass tcp from any to ${IpOut} 3389 via ${LanOut}
${FwCMD} add 10140 pass tcp from any to 192.168.1.102 3389 via ${LanOut}
${FwCMD} add 10140 pass tcp from any to 192.168.1.102 3389 via ${LanIn}
Код: Выделить всё
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 1c:6f:65:85:e9:ec
inet 192.168.1.222 netmask 0xffffff00 broadcast 192.168.1.255
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=3808<VLAN_MTU,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 00:02:44:71:89:9a
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> metric 0 mtu 1500
ipfw0: flags=8801<UP,SIMPLEX,MULTICAST> metric 0 mtu 65536
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=3<RXCSUM,TXCSUM>
inet 127.0.0.1 netmask 0xff000000
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1492
options=80000<LINKSTATE>
inet 81.18.81.18 --> 2.2.2.3 netmask 0xffffffff
Opened by PID 497
Код: Выделить всё
[14:33]/home/immortal/>ipfw show
00100 0 0 allow ip from any to any via lo0
00101 0 0 deny ip from any to 127.0.0.0/8
00102 0 0 deny ip from 127.0.0.0/8 to any
00120 0 0 allow tcp from any to any dst-port 22 setup keep-state
01040 324 34964 allow ip from any to any via re0
10130 3 144 nat 1 ip from any to any via tun0
10150 0 0 allow tcp from any to 81.18.118.195 dst-port 3389 via tun0
10160 0 0 allow tcp from any to 192.168.1.102 dst-port 3389 via tun0
10170 0 0 allow tcp from any to 192.168.1.102 dst-port 3389 via re0
65535 0 0 deny ip from any to any
Код: Выделить всё
[14:19]/home/immortal/>tcpdump -i tun0 tcp port 3389
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type NULL (BSD loopback), capture size 96 bytes
14:20:12.379132 IP 81.18.115.84.2700 > 81.18.81.18.rdp: Flags [S], seq 3266011509, win 16384, options [mss 1360,nop,nop,sackOK], length 0
14:20:15.418094 IP 81.18.115.84.2700 > 81.18.81.18.rdp: Flags [S], seq 3266011509, win 16384, options [mss 1360,nop,nop,sackOK], length 0
14:20:21.432593 IP 81.18.115.84.2700 > 81.18.81.18.rdp: Flags [S], seq 3266011509, win 16384, options [mss 1360,nop,nop,sackOK], length 0
tcpdump -i tun0 tcp port 3389
Не дал результата...
- tom.cat
- старшина
- Сообщения: 446
- Зарегистрирован: 2007-11-24 20:23:49
- Откуда: Мытищи
- Контактная информация:
Re: Война с пробросом порта продолжается!!!
У меня в pf.conf выглядет это следующим образом:
Ну и rc.conf
Код: Выделить всё
ext_if="tun0" # replace with actual external interface name i.e., dc0
int_if="em1" # replace with actual internal interface name i.e., dc1
tcp_services="{ 23, 22, 2120, 8021, 49152:65535, 19114, 57400, 1413, 3389, 21 }"
server="192.168.1.10"
rdr on $ext_if proto tcp from any to ($ext_if) port 3389 -> $server port 3389
pass in on $ext_if inet proto tcp from any to $server port $tcp_services flags S/SA keep state
pass out keep state
Код: Выделить всё
ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="pppoe"
pf_enable="YES"
pf_rules="/etc/pf.conf"
pflog_enable="YES"
pflog_logfile="/var/log/pflog"
When you see pigs fly it means Windows has become open source
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Я с PF пока ваще не дружу, но в качестве примера попробую
- tom.cat
- старшина
- Сообщения: 446
- Зарегистрирован: 2007-11-24 20:23:49
- Откуда: Мытищи
- Контактная информация:
Re: Война с пробросом порта продолжается!!!
Я не полный конфиг кинул, а те строки касающиеся RDP.
When you see pigs fly it means Windows has become open source
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
я так понимаю вы пытаетесь пробросить RDP сессию через два шлюза.
причем один из них не знает о существовании второго.
Потому и не может промаршрутизировать ответный пакет.
причем один из них не знает о существовании второго.
Потому и не может промаршрутизировать ответный пакет.
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Почему через два?? через 1 свой или я чего то не догоняю...
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Вобщем как дело, есть локальная сеть, я настроил шлюз в сети с адресом локальным 192.168.1.222, вторая сетевуха смотрит в инет с адресом 81.18.81.18... На шлюзе пишу правила проброса по порту 3389
Вот и подключаюсь rdp клиентом к 81.18.81.18 и должен попадать на терминальный сервер внутри локалки.
Вот и подключаюсь rdp клиентом к 81.18.81.18 и должен попадать на терминальный сервер внутри локалки.
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
В таком случае на терминальном сервере шлюзом по умолчанию нужно прописать ваш шлюз.
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Щас попробую
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Во:) Уже лучше!!! Обмен на внутреннем интерфейсе пошел в обе стороны, но на внешнем по прежнему только в одну...sadchok писал(а):В таком случае на терминальном сервере шлюзом по умолчанию нужно прописать ваш шлюз.
-
- мл. сержант
- Сообщения: 128
- Зарегистрирован: 2008-04-14 14:49:48
- Контактная информация:
Re: Война с пробросом порта продолжается!!!
openvpn рекомендую настроить.
Сам с проборосами портов не сильно мучился, и на free и на linux всё получалось легко (после достижения определенного уровня опыта )) и набивания шишек).
Если хочешь ходить на машину по RDP, то ИМХО лучше VPN и через него уже коннектится. Тем более OpenVPN настраивается очень легко. В интернете много хаутушек, и в последнее время появились статьи с объяснением принципов работы.
Сам с проборосами портов не сильно мучился, и на free и на linux всё получалось легко (после достижения определенного уровня опыта )) и набивания шишек).
Если хочешь ходить на машину по RDP, то ИМХО лучше VPN и через него уже коннектится. Тем более OpenVPN настраивается очень легко. В интернете много хаутушек, и в последнее время появились статьи с объяснением принципов работы.
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
еще раз конфиг IPFW в студию и вывод ipfw show и tcpdump
The brain can not be found. Runs the software emulation
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
кроме RDP у него еще и http (хотя если он тоже сугубо для себя то openvpn рулит)Mobilesfinks писал(а):openvpn рекомендую настроить.
Сам с проборосами портов не сильно мучился, и на free и на linux всё получалось легко (после достижения определенного уровня опыта )) и набивания шишек).
Если хочешь ходить на машину по RDP, то ИМХО лучше VPN и через него уже коннектится. Тем более OpenVPN настраивается очень легко. В интернете много хаутушек, и в последнее время появились статьи с объяснением принципов работы.
Ну или ssh туннель.
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Все получилось!!!!!
sadchok спасибо огромное Вам за помощь!! Дело было действительно в шлюзе на клиентах к кторым идет проброс... Офигеть и из-за этой мелочи 3 недели коту под хвост!!!
Вобщем конфиги выше правильные, нужен был шлюз на клиентах.
sadchok, выражаю Вам еще раз огромную благодарность!!

Вобщем конфиги выше правильные, нужен был шлюз на клиентах.
sadchok, выражаю Вам еще раз огромную благодарность!!

- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
для RDP все таки думаю стоит VPN или SSH туннель настроить.
The brain can not be found. Runs the software emulation
-
- мл. сержант
- Сообщения: 110
- Зарегистрирован: 2011-11-10 6:11:34
Re: Война с пробросом порта продолжается!!!
Я еще до этого не добрался, но я думаю скоро эта тема появиться в этой ветке 

-
- мл. сержант
- Сообщения: 128
- Зарегистрирован: 2008-04-14 14:49:48
- Контактная информация:
Re: Война с пробросом порта продолжается!!!
Да, наверное ещё более просто будет через SSH пустить.sadchok писал(а):для RDP все таки думаю стоит VPN или SSH туннель настроить.
- sadchok
- сержант
- Сообщения: 271
- Зарегистрирован: 2011-10-13 10:40:54
- Откуда: Алтайский край
Re: Война с пробросом порта продолжается!!!
Если использовать RDP клиента (типа remmina) который сам умеет поднимать ssh туннель то и настраивать нечего.
The brain can not be found. Runs the software emulation