Мой интернет-провайдер блокирует все порты, кроме порта 25, который является SMTP. Я пытаюсь запустить веб-сервер на своем Mac, но порт 80 заблокирован, поэтому при попытке xx.xxx.xxx.xx:25 он возвращает сообщение «не разрешено использовать ограниченный сетевой порт». Мне нужно запустить этот сервер. Как мне запустить http-сервер на порту 25. Есть идеи?
решение1
Я пытаюсь запустить веб-сервер на своем Mac, но порт 80 заблокирован, поэтому при попытке xx.xxx.xxx.xx:25 возвращается сообщение «Не разрешено использовать ограниченный сетевой порт».
К сожалению, я недостаточно знаком с продукцией Apple, чтобы дать хороший ответ о том, как обойти это ограничение (возможно, кто-то другой сможет дать лучший ответ на этот вопрос).
Однако это решение (если вы смогли заставить его работать) может быть не идеальным в любом случае. Например, интернет-провайдер, к которому я обращаюсь, разрешает SMTP только через свои серверы порта 25 (выступая в качестве ретранслятора). В этом случае на самом деле нет способа настроить какой-либо HTTP-сервер, который мог бы общаться с внешним миром на этом порту.
Мне нужно запустить этот сервер.
Туннелирование
В качестве альтернативы вашему текущему плану вы можете рассмотретьлокальныйтуннель(что требуетNode.js.) илингрокЭти сервисы потенциально могут обойти проблемы, когда интернет-провайдер блокирует определенный порт.
HTTPS
Еще одна вещь, которую нужно перепроверить, — это порт 443 (HTTPS). Провайдеры могут не трогать этот порт, так как маловероятно, что среднестатистический пользователь настроит на нем какой-либо веб-сервер, поскольку обычно требуется возиться с сертификатами HTTPS-сервера. Тем не менее, если порт действительно окажется открытым, вы можете использовать либо самоподписанные сертификаты, либо законные сертификаты от провайдера, напримерДавайте зашифруем.
В качестве преимущества, если порт 443 доступен, то можно использоватьCloudFlareдля маршрутизации запросов порта 80 (HTTP) на ваш сервер через порт 443, даже если ваш интернет-провайдер блокирует порт 80.