Це складно зробити за допомогою дизайну, і якщо ви не маєте root доступу до своєї машини, жодне з наступних дій не працюватиме, оскільки вони потребують root для настройки змін. Однак, змінившись, користувальницькі програми матимуть доступ, не маючи root.
Є два загальних способи досягти цього, і який ви виберете, залежатиме від того, чому ви намагаєтеся обійти обмеження:
Вкажіть порт 80 на інший порт, наприклад 8080
Переконфігурувавши свою машину для передачі всього трафіку порту 80 до порту 8080 або будь-якого порту, який ви обрали, ви можете дозволити серверам простору користувачів отримувати порти привілеїв кореня в тій області, до якої їм надано доступ.
Процес простий:
Крок 1. Перегляд поточних правил брандмауера.
sudo ipfw show
Крок 2. Додайте правило переадресації портів (від 80 до 8080)
sudo ipfw add 100 fwd 127.0.0.1,8080 tcp from any to any 80 in
Якщо ви хочете видалити правила брандмауера:
sudo ipfw рум'янець
( джерело )
Це тимчасова зміна, і вона відновиться, коли ви перезавантажитеся або розминете, як зазначено в останньому рядку.
Ви можете зробити зміни постійними , або ви можете додати команду як рядок запуску до запуску сервера, що, ймовірно, безпечніше з точки зору безпеки.
Використовуйте функцію Authbind
Authbind був розроблений спеціально, щоб дозволити одній програмі отримати доступ до портів нижчого рівня, не надаючи їй повного кореневого доступу.
Є порт OS X:
https://github.com/Castaglia/MacOSX-authbind
Він все ще може бути обмежений трафіком IPv4, однак, можливо, доведеться провести додаткове розслідування, щоб виявити, чи відповідає він вашим потребам.