Как выбрать номер открытого порта?

Я установил easyPHP и открыл порт на брандмауэре, чтобы другие люди могли получить доступ к моему веб-серверу. Порт по умолчанию - 8888. Но мне интересно, как выбрать номер порта? Это действительно неоднозначно или существует "предпочтительный" диапазон номеров портов?

1 ответ

Решение

Номер порта представляет собой 16-разрядное целое число без знака, поэтому оно находится в диапазоне от 0 до 65535 (хотя 0 не может использоваться для TCP; это имеет особое значение для UDP).

Вы можете использовать практически любой номер порта в диапазоне, однако есть некоторые руководящие правила:

  1. (По крайней мере, в системах на основе Unix), только root может связываться с портами ниже 1024.
  2. В идеале вам не нужен порт, обычно связанный с другой общей службой, поскольку это может вызвать проблемы с некоторыми брандмауэрами.
  3. Расширение на (2) выше - по крайней мере, в системах Linux существует файл /etc/services у которого есть список общих служб - вы можете использовать это для руководства.

"Идеальным" портом для запуска службы HTTP является порт 80, а идеальным портом для HTTPS является 443, поскольку эти порты связаны с соответствующими службами. Если это нецелесообразно (и часто это не так - некоторые маршрутизаторы слишком глупы для обработки веб-интерфейса и внешней переадресации на тот же порт), обычно выбирают "тематический" порт - порт 8080 довольно распространен, так как порт 8000

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