Настройка сервера дома с портами 21 и 80

2594
yihangho

Я уверен, что этот вопрос задавался снова и снова по всему Интернету, но мне все еще нужны некоторые советы по этому вопросу, так как я не очень знаком со всеми этими сетевыми вещами.

Я настраиваю сервер, используя Apache, работающий под Debian, а также FTP-сервис, использующий ProFTPD под той же платформой. Предполагая, что внутренний IP-адрес моего сервера 192.168.1.123 и является статическим IP-адресом. Что касается внешнего IP-адреса, то это динамический IP-адрес, поэтому я настроил домен DDNS со всеми этими средствами обновления и сказал, что www.example.com сопоставляется с моим домашним IP-адресом.

Итак, я хочу, чтобы, когда я захожу на сайт www.example.com в своем веб-браузере, он отображал веб-страницу, размещенную на моем сервере, и мог получить доступ к моему FTP с помощью ftp://www.example.com .

Мои вопросы:

1) Я правильно делаю, чтобы перенаправить порт 80 и 21 на 192.168.1.123? Если нет, как правильно поступить?

2) Если я прав, я получаю следующее сообщение после переадресации порта 80 (аналогичное сообщение я получаю при пересылке порта 21):

Since port 80 is used, the DSL Modem Router WEB server port for your remote access will be moved to 8080. 

Когда я захожу на сайт www.example.com в свой веб-браузер, он выводит меня на страницу настройки маршрутизатора. Когда я вхожу на www.example.com:8080, браузер жалуется, что не может подключиться к серверу.

Поэтому я изменил настройку сервера Apache для прослушивания порта 8080 и переадресации порта 8080. Опять же, когда я пытаюсь получить доступ к www.example.com:8080 из моей домашней сети, он жалуется, что не может подключиться к серверу. Однако, когда я захожу на сайт www.example.com:8080 из дома моего друга, он показывает содержимое веб-страницы на моем сервере.

В любом случае, моя цель состоит в том, чтобы на www.example.com (порт 80, а не с: 8080) отображалась веб-страница, размещенная на моем сервере, а ftp://www.example.com позволил мне получить доступ к моим файлам.

Если это помогает, то используемым модемным маршрутизатором является TP-Link TD-W8960N (если вы пытаетесь выполнить поиск по сайту TP-Link, это не последняя модель. Существует более новая модель с тем же именем). Служба DDNS, которую я использую, - no-ip.com.

Благодарю.

1
Похоже, прошивка TD-W8960N_V1_V3_110620 обеспечивает обратную петлю NAT. Это то, что вам нужно, чтобы попытаться получить доступ к www.example.com:8080 из вашей домашней сети. HTTP500 12 лет назад 0

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

0
Stone

Answer 1: Yes. It is the correct thing to do.

Answer 2: You should disable services running on your router's 80 and 21 ports. Not to forget to enable other methods to access your router for example SSH. Or you can move the router's webserver to another port for example 8080. Or if the router is configurable to make it only listen on the internal side and forward the outer to your machine. So... it is a wery likely thing that none of this your router supports... then you can't easily do what you want.

Addition to answer 2: You can't access your webpage from the internal network because your traffic goes to the outside world through your router because it thinks that your outer IP is in the Internet. You can manage the right working with dirty configurations on your router but you should better to add example.com with the IP 127.0.0.1 to your hosts file. So your computer will look for example.com on itself.

Я имею в виду, что я использовал другой компьютер, чтобы попытаться получить доступ к своему серверу. 127.0.0.1 это localhost, нет? yihangho 12 лет назад 0
Да, тогда вам нужно добавить IP-адрес вашего сервера в файл hosts. Stone 12 лет назад 0