URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 83172
[ Назад ]

Исходное сообщение
"rdp через pf"

Отправлено rootaxe , 02-Дек-08 18:39 
Добрый день.

Не удается пробросить порт 3389 внутрь сети
Шлюз FreeBSD 6.3, pf

192.168.0.0/24 - локальная сеть
192.168.3.5 - внешний ифейс смотрит на адсл-роутер (настроен роутером, если напрямую втыкать - работает)
На клиенте интернет есть, шлюзом сервер 192.168.0.5

Другие порты (по крайней мере 80 23) фурычат. Со шлюза машины в лок.сети видны, телнетом можно приконектиться

ipfw/natd в таких же условиях работает

pf.conf
в данном конфиге 80 порт работает
##############################################
# MACROS
ext_if = "em1"
int_if = "em0"
ext_addr = "192.168.3.5"
int_addr = "192.168.0.5"
int_net = "192.168.0.0/24"

set optimization normal
set block-policy drop
set loginterface $ext_if
set fingerprints "/etc/pf.os"

scrub in on ! lo0 all fragment reassemble

# NAT
nat on $ext_if from 192.168.0.7 to any -> ($ext_if)
nat on $ext_if from 192.168.0.15 to any -> ($ext_if)

# RDR
rdr on $ext_if proto tcp from any to any port 8080 -> 192.168.0.7 port 80
rdr on $ext_if proto tcp from any to any port 3389 -> 192.168.0.15 port 3389

# RULES
block log all

pass quick on lo0 all

# block ip
block in quick log on $ext_if from 81.9.67.150 to any

# nmap
block in quick from any os NMAP

# spoofing
antispoof log quick for $ext_if
block drop in  quick on $ext_if from <private_nets> to any
block drop out quick on $ext_if from any to <private_nets>

pass out on $ext_if proto tcp from $ext_addr to any flags S/SA keep state
pass out on $ext_if proto udp from $ext_addr to any keep state
pass out on $ext_if proto icmp from $ext_addr to any icmp-type $icmp_types keep state

# icmp
block in inet proto icmp from $int_if:network
pass out inet proto icmp from $int_addr to any icmp-type $icmp_types keep state
pass in inet proto icmp from <users> to $int_addr icmp-type $icmp_types keep state
pass in inet proto icmp from <users> to any icmp-type $icmp_types keep state

# traceroute
pass out on $ext_if inet proto udp from any to any port 33433 >< 33626 keep state

# 80
pass proto tcp from $admin to $nas1_server_addr port 80 keep state
# rdp
pass proto tcp from $admin to 192.168.0.15 port 3389 keep state
##############################################

pfctl -ss | grep 3389
##############################################
self tcp internet:52391 -> 192.168.0.15:3389       SYN_SENT:CLOSED
self tcp 192.168.0.15:3389 <- 192.168.3.5:3389 <- internet:52391       CLOSED:SYN_SENT
##############################################

tcpdump -n -e -ttt -i pflog0
##############################################
тишина
##############################################


Спасибо


Содержание

Сообщения в этом обсуждении
"rdp через pf"
Отправлено StreSS , 03-Дек-08 14:41 
1. На внешний интерфейс фаервола пакеты приходят от адсл-роутера.
2. Если нет то настроить проброс с него на фаервол.

"rdp через pf"
Отправлено rootaxe , 03-Дек-08 16:27 
>1. На внешний интерфейс фаервола пакеты приходят от адсл-роутера.

Да, конечно. Если напрямую втыкать в фдсл-роутер - работает.
Этот же шлюз обрабатывает www, ftp, vpn, mail и тп.

У же не знаю что крутить.


"rdp через pf"
Отправлено Pahanivo , 03-Дек-08 16:42 
Это проще всего, быстрей и безопасней сделать это через ssh тунель с помощь putty


"rdp через pf"
Отправлено rootaxe , 03-Дек-08 18:27 
>Это проще всего, быстрей и безопасней сделать это через ssh тунель с
>помощь putty

Так должно работать - вот что смущает


"rdp через pf"
Отправлено StreSS , 03-Дек-08 16:46 
>>1. На внешний интерфейс фаервола пакеты приходят от адсл-роутера.
>
>Да, конечно. Если напрямую втыкать в фдсл-роутер - работает.
>Этот же шлюз обрабатывает www, ftp, vpn, mail и тп.
>
>У же не знаю что крутить.

В какую сторону обрабатывает? В ствою локалку идут пакеты или все таки только на ружу.
И кстати вижу как ты описал nat случаем не в одну сторону?
tcpdump -n -e -ttt -i pflog0 - ловишь на pflog0, а описан как внешний em1 и внутренний em0.



"rdp через pf"
Отправлено rootaxe , 03-Дек-08 18:37 
>В какую сторону обрабатывает? В ствою локалку идут пакеты или все таки
>только на ружу.
>И кстати вижу как ты описал nat случаем не в одну сторону?

С пакетами все нормально. Усе работает кроме rdp. Потому и не понятно

>
>tcpdump -n -e -ttt -i pflog0 - ловишь на pflog0, а описан
>как внешний em1 и внутренний em0.

Туда вроде оба попадают. Если запрещающее правило сделать, например на внутренний ифейс, сразу кажет

В интернете такая проблема встречалась без ответа. Никто так не делает или у всех работает

В основном использую ipfw


"rdp через pf"
Отправлено reader , 03-Дек-08 20:26 
>[оверквотинг удален]
>>tcpdump -n -e -ttt -i pflog0 - ловишь на pflog0, а описан
>>как внешний em1 и внутренний em0.
>
>Туда вроде оба попадают. Если запрещающее правило сделать, например на внутренний ифейс,
>сразу кажет
>
>В интернете такая проблема встречалась без ответа. Никто так не делает или
>у всех работает
>
>В основном использую ipfw

может на 192.168.0.15 интерфейс послушать?


"rdp через pf"
Отправлено rootaxe , 04-Дек-08 06:09 
>может на 192.168.0.15 интерфейс послушать?

На 15 соединение на 3389 разрешено. Из локальной сети и при vpn подключается

# pfctl -ss | grep 3389
self tcp 192.168.0.101:1314 -> 192.168.0.1:3389       ESTABLISHED:ESTABLISHED
self tcp 192.168.0.1:3389 <- 192.168.0.101:1314       ESTABLISHED:ESTABLISHED

Sysctl пустой

В pf.conf пишу вместо "block all log" "pass quick all". "block" в конфиге нет совсем
Рузультат тот же

# pfctl -ss | grep 3389
self tcp internet:53049 -> 192.168.0.21:3389       SYN_SENT:CLOSED
self tcp 192.168.0.21:3389 <- 192.168.3.5:3389 <- internet:53049       CLOSED:SYN_SENT
self tcp 192.168.0.21:3389 <- 192.168.3.5:3389 <- internet:53218       CLOSED:SYN_SENT


"rdp через pf"
Отправлено reader , 04-Дек-08 13:00 
>[оверквотинг удален]
>В pf.conf пишу вместо "block all log" "pass quick all". "block" в
>конфиге нет совсем
>Рузультат тот же
>
># pfctl -ss | grep 3389
>self tcp internet:53049 -> 192.168.0.21:3389       SYN_SENT:CLOSED
>self tcp 192.168.0.21:3389 <- 192.168.3.5:3389 <- internet:53049      
> CLOSED:SYN_SENT
>self tcp 192.168.0.21:3389 <- 192.168.3.5:3389 <- internet:53218      
> CLOSED:SYN_SENT

вы проверяли что до 192.168.0.15 пакеты не доходят? при ваших правилах пакет будет с обратными адресами из инета а не локалки, это на 192.168.0.15 и в частности для того кто слушает 3389, разрешено?


"rdp через pf"
Отправлено rootaxe , 05-Дек-08 18:09 
>вы проверяли что до 192.168.0.15 пакеты не доходят? при ваших правилах пакет
>будет с обратными адресами из инета а не локалки, это на
>192.168.0.15 и в частности для того кто слушает 3389, разрешено?

На самом не проверял. Но если на него направить 80 или 22 порт - ответ есть. Пробовал на разных компьютерах. При ВПН, из лок. сети все ок. Правила одинаковые для любого порта. Ставил "pass all". Запрещающие правила для теста, смотрел логи.


"rdp через pf"
Отправлено reader , 05-Дек-08 19:11 
>>вы проверяли что до 192.168.0.15 пакеты не доходят? при ваших правилах пакет
>>будет с обратными адресами из инета а не локалки, это на
>>192.168.0.15 и в частности для того кто слушает 3389, разрешено?
>
>На самом не проверял. Но если на него направить 80 или 22

так и я о чем же, скорей всего пакета отправляются, но на 192.168.0.15 их не принемают, а уж firewall на 192.168.0.15 или программулина незнаю, смотрите что происходит на 192.168.0.15

>порт - ответ есть. Пробовал на разных компьютерах. При ВПН, из
>лок. сети все ок. Правила одинаковые для любого порта. Ставил "pass
>all". Запрещающие правила для теста, смотрел логи.

на какой машине ставили это, на 192.168.0.5 или 192.168.0.15?

если 192.168.0.5 разрешено соединяться с 192.168.0.15:3389, то можно попробывать сделать nat на 192.168.0.5 на внутреннем интерфейсе для этих пакетов и посмотреть что будет, хотя это тоже не будет 100% показателем.


"rdp через pf"
Отправлено rootaxe , 15-Дек-08 06:37 
Добрый день.

В итоге с rinetd работает. Те вопрос остается открытым. Получается что работают все пробросы кроме rdp (необязательно 3389).

Спасибо за советы.


"rdp через pf"
Отправлено niksonnnn , 15-Дек-08 09:36 
>Добрый день.
>
>В итоге с rinetd работает. Те вопрос остается открытым. Получается что работают
>все пробросы кроме rdp (необязательно 3389).
>
>Спасибо за советы.

ВНИМАТЕЛЬНО нужно читать мануалы -> исправляем ошибки -> наслаждаемся работой красивого файрволла.

Всё работает, только без понимания механизмов маршрутизации нет смысла вообще начинать настраивать подобное.


"rdp через pf"
Отправлено fasdf , 20-Апр-10 20:34 
>[оверквотинг удален]
>>
>>В итоге с rinetd работает. Те вопрос остается открытым. Получается что работают
>>все пробросы кроме rdp (необязательно 3389).
>>
>>Спасибо за советы.
>
>ВНИМАТЕЛЬНО нужно читать мануалы -> исправляем ошибки -> наслаждаемся работой красивого файрволла.
>
>Всё работает, только без понимания механизмов маршрутизации нет смысла вообще начинать настраивать
>подобное.

если такой умный, объясни в чем косяк, а не просто балаболь про мануалы