Как я могу настроить Apache для использования порта 1 и других портов ниже 80?

Ответ был достаточно прост. В пути был брандмауэр. Университет я - в блоках TCP/80, не будучи явно разрешенным через. Я переместил порт прослушивания во что-то выше TCP/10,000 (который они не блокируют), и он работал.

6
13.05.2016, 09:25
3 ответа

Я буду использовать Firefox в качестве примера, потому что его открытый исходный код и легкий поиск информации для, но это применимо (вероятно, с немного отличающимися списками портов) и к другим браузерам тоже.

В августе 2001 года CERT выпустил заметку об уязвимости о том, как веб-браузер может быть использован для отправки почти произвольных данных на TCP-порты, выбранные злоумышленником, по любому произвольному IP-адресу. Это может быть использовано, например, для отправки электронных писем, которые, кажется, приходят от пользователя, запущенного веб-браузером. Для того, чтобы смягчить это, Mozilla (как и многие другие производители) заблокировал Firefox от доступа к определенным портам .

Два порта, 79 и 1, которые вы пробовали, случайно оказались в списке блокировки. Источник содержит полный список заблокированных портов . Вы можете (в вашем браузере) переопределить этот список, используя предпочтения network.security.ports.banned.override и network.security.ports.banned. Это не очень полезно в Интернете в целом, так как вы должны убедить каждого , кто может зайти на ваш сайт, зайти на about:config и изменить их.

(Примечание: Текущие версии Firefox выдадут сообщение об ошибке, объясняющее, что если вы попытаетесь перейти на сайт на заблокированном порту)

В общем, нет никаких причин использовать дополнительные HTTP-порты, по крайней мере, внешние. Если необходимо, отдайте предпочтение традиционным дополнительным портам, таким как 8080, 8000 и т.д., которые гораздо реже блокируются, или, по крайней мере, портам, находящимся за пределами диапазона системных портов, назначенных IANA (0-1023). Для получения более подробной информации обратитесь к реестру портов IANA .

24
27.01.2020, 20:20

apache перезагружается просто отлично, но в сети он не работает.

Порт 80 - это порт HTTP по умолчанию для браузеров и серверов. Это означает, что для доступа к серверу, работающему на нестандартном порту, из браузера необходимо включить этот порт в адрес, например:

http://localhost:79/rest/of/url

Без :79 после имени хоста браузер будет пытаться получить доступ к порту 80 и ничего не получит, так как apache использует что-то другое.

6
27.01.2020, 20:20

Вы можете запустить любую службу на любом порту (modulo privileges). То, что HTTP находится на 80 порту - чистая конвенция, нет никаких технических причин для этого. Поэтому да, вы можете запустить HTTP на порту 1 (если только он не используется другой программой). Если это не сработало, то либо вы все равно должны исправить конфигурацию сервера (проверьте, что говорит netstat -ntl), либо, как указал goldilocks, вы просто не знали, что для HTTP на любом порту с номером, отличным от 80, вам нужно сообщить браузеру и номер порта.

1
27.01.2020, 20:20

Теги

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