Какие правила Iptables нужны для пересылки подключения к удаленному рабочему столу Windows?

17296
apelliciari

У меня такая ситуация:

сетевая маска. 255.255.255.0

  • маршрутизатор / шлюз: сервер Ubuntu (только командная строка, без графического интерфейса пользователя) с внутренним IP-адресом локальной сети 192.168.0.2 и динамическим днс на внешнем IP-адресе

  • ПК с Windows на 192.168.0.1 с поддержкой RDP (подключение к удаленному рабочему столу) на 3389

Я хочу переслать сервис RDP на внешний адрес: как я могу это сделать?

Какие правила iptables мне нужно подключить к моему ПК с Windows из внешнего мира?

2
В. Какой порт использует удаленный рабочий стол? Все идет через порт 3389? О. Порт 3389 - единственный порт, который вам нужно открыть. Сначала Windows попытается выполнить потоковую передачу звука по протоколу пользовательских дейтаграмм (UDP). Если для UDP нет доступных портов, звук будет передаваться через виртуальный канал в протоколе удаленного рабочего стола, который использует порт 3389. brandstaetter 14 лет назад 0
3389, как я уже писал ранее. Да, мне нужно только 3389 UDP, но я не знаю, как "построить" правила iptables для этой пересылки ... Мне нужен подсказка, погуглил ее, но я не нашел четкого объяснения :( apelliciari 14 лет назад 0

5 ответов на вопрос

1
pbr

Так что просто дать вам это правило, вероятно, будет недостаточно. И вот почему: я не уверен, что (а) он будет работать правильно (не проверял его) и (б) если он работает, он будет делать больше, чем работать - он, вероятно, будет пересылать пакеты RDP на ЛЮБЫЕ машины в вашей сети. Дилемма состоит в том, как получить правильный IP-адрес для аргумента -d nnn.nnn.nnn.nnn / nnn. Так что ... покупатель остерегается; если 0/0 работает, он, вероятно, будет работать на ВСЕХ машинах за вашим маршрутизатором.

В любом случае, здесь вы идете:

iptables -A FORWARD -p tcp -s 0/0 -d 0/0 --destination-port 3389 -j ACCEPT 

Вот хорошее чтение по iptables: http://oceanpark.com/notes/firewall_example.html

С уважением,
-pbr

Также вам может потребоваться повторить строку с «-p udp» вместо «-p tcp» pbr 14 лет назад 0
1
shf301

Вам необходимо создать правило назначения NAT (DNAT), чтобы сопоставить RDP (3389) IP-адреса вашего интернет-соединения с IP-адресом вашей внутренней системы. Что-то вроде этого:

iptables -t nat -A PREROUTING -i $EXTIF -p tcp --dport 3389 -j DNAT --to 192.168.0.1:3389 

Замените $ EXTIF на ваш внешний сетевой адаптер (eth0, etc1, ...). Вы можете прочитать это для получения дополнительной информации (или, если я что-то не так в этом примере, я не проверял это)

0
mike

просто перенесите foward 3389 tcp и udp на компьютер, на котором включен удаленный рабочий стол. Затем выясните свой внешний IP-адрес, перейдя на веб-сайт быстрого тестирования. После этого все, что вам нужно для доступа к рабочему столу, - это ввести свой внешний или глобальный IP-адрес в терминал удаленного рабочего стола. пользовательский пароль. сделанный.

Для порта Foward 3389 вам необходимо ввести свой маршрутизатор и добавить это правило. нет таблицы маршрутизации, которую нужно добавить. просто это правило.

Мне нужно это приемлемое правило! я не знаю правильный синтаксис для пересылки 3389 TCP и UDP на этот компьютер с сервера apelliciari 14 лет назад 0
используя http://www.yolinux.com/TUTORIALS/LinuxTutorialIptablesNetworkGateway.html, вы можете изучить основы и запустить модель для своей системы. не использовать стандартный маршрутизатор и использовать Linux-сервер - это здорово, но вам нужно знать настройки, прежде чем я смогу дать вам синтаксис, но этот сайт должен прояснить настройку iptables и ipchains для переадресации портов mike 14 лет назад 0
0
zdm

Вот правило, которое вам нужно:

iptables -t filter -A rdp -p tcp --dport 3389 -m состояние - состояние NEW -j ПРИНЯТЬ -m комментарий --комментарий "rdp"

0
Rob Gibson

Я бы также предложил использовать случайный номер порта извне ... это безопасность по неясности, но если у вас открыт порт 3389 на внешней стороне вашего домашнего маршрутизатора, злоумышленник легко это увидит и попытается злоумышленниками проникнуть внутрь к вашей системе.

Любой порт выше 1024 будет работать.