Порт 80 относится к системным, традиционно привилегированным портам ниже 1024. В Linux право bind зависит от capability и настроенного порога, поэтому запрет не абсолютен.
Почему нельзя занять 80-й порт без прав? Как называется группа таких портов?
Порт 80 относится к системным, традиционно привилегированным портам ниже 1024. В Linux право bind зависит от capability и настроенного порога, поэтому запрет не абсолютен.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Порт 80 относится к системным, традиционно привилегированным портам ниже 1024. В Linux право bind зависит от capability и настроенного порога, поэтому запрет не абсолютен.
Обычно привязка к такому порту требует CAP_NET_BIND_SERVICE или соответствующих привилегий. Порог задаёт net.ipv4.ip_unprivileged_port_start в сетевом namespace; в контейнере настройки могут отличаться. Не нужно запускать всё приложение с root только ради порта: можно использовать reverse proxy или узко выданное разрешение.
Источник: docs.kernel.org.