Перенаправление внешних портов к локальному IP

У меня есть сервер человечности 13.10 и зарегистрированное доменное имя. У меня есть веб-сервер на моих 192.168.24.1 машинах и FTP-сервер на моих 192.168.24.2.

Используя iptables я хочу:

1) люди, которые пишут: http://mydomainname.com, который будет перенаправлен к 192.168.24.1

2) люди, которые хотят использовать моего ftp (filezilla или что-то приписывающее mydomainname), чтобы быть перенаправленными к 192.168.24.2

Заранее спасибо за Ваши ответы!

1
задан 15 May 2014 в 08:35

1 ответ

Я не могу дать точный ответ, потому что я не знаю Вашу топологию

Случай 1.

__________________
|                |
|   PC           |-------|
|  192.168.24.1  |       |     _____________
------------------       |_____|           |  __________
                         |     | ip_tables |  |        |
                         |     | PC        |--| router |--- internet
__________________       |     |           |  |        |
|                |       |     -------------  ----------
|   PC           |-------|
| 192.168.24.2   |
------------------

В этой топологии Вам нужен iptables

Случай 2.

__________________
|                |
|   PC           |-------|
|  192.168.24.1  |       |
------------------       |  __________
                         |  |        |
                         |--| router |
__________________       |  |        |
|                |       |  ----------
|   PC           |-------|
| 192.168.24.2   |
------------------

Вам не нужен iptables. Необходимо сделать перенаправление портов на маршрутизаторе.

  • порт 80 для http-> 24.1
  • порт 443 для https-> 24.1
  • порт 20 является передачей данных FTP-> 24.2
  • порт 21 управление FTP-> 24.2

Также Вы должны иметь, закрепляют общедоступный IP-адрес на интерфейсе глобальной сети Вашего маршрутизатора. Затем необходимо сделать запись DNS. DNS resolv логическое имя иначе mydomainname.com к IP-адресу и IP-адресу к логическим именам.

192.168.x.x диапазон является частным диапазоном IP-адреса, я не могу быть маршрутизатором через Интернет.

Поток трафика:

  • Я ввожу mydomainname.com в браузере на моем ПК
  • ПК просит, чтобы DNS разрешил mydomainname.com к IP
  • Когда ПК имеет IP, отправляет http/https запрос к данному IP
  • ответ веб-сервера и отправляет трафик в запрашивающую сторону

План IP-адреса:

PC [private ip} -> router with private address on LAN and public ip on WAN. Router do NAT -> internet [only public ip address

Редактирование 2

Парование будет работать, если Ваш сервер сделает туземный для 24,2 через 24,1

Первое, что нужно сделать, действительно включают передачу IP. Это сделано любой при помощи

 echo "1" > /proc/sys/net/ipv4/ip_forward

или

sysctl net.ipv4.ip_forward=1

Затем мы добавим правило, говорящее для передачи трафика на порте 21 к IP 192.168.24.2 на порте 21

iptables -t nat -A PREROUTING -p tcp --dport 21 -j DNAT --to-destination 192.168.24.2:21

Затем мы добавим правило, говорящее для передачи трафика на порте 20 к IP 192.168.24.2 на порте 20

iptables -t nat -A PREROUTING -p tcp --dport 20 -j DNAT --to-destination 192.168.24.2:20

и наконец, мы просим, чтобы IPtables подменил

iptables -t nat -A POSTROUTING -j MASQUERADE
1
ответ дан 11 November 2019 в 12:45

Другие вопросы по тегам:

Похожие вопросы: