Назад | Перейти на главную страницу

Как изменить владельца процесса в Debian?

У меня есть процесс, работающий как root (скажем, веб-сервер), и я хочу, чтобы он запускался как не root.

Есть ли способ изменить владельца процесса с root на непривилегированного пользователя?

Я работаю на машине Debian.

Спасибо!

Не существует разумного универсального способа изменить владельца запущенного процесса извне. Процессы могут изменить свои своя владение от пользователя root к другому с помощью системного вызова setuid (2). Если рассматриваемый веб-сервер - Apache, вы можете настроить пользователей, от имени которых он работает, отредактировав / etc / apache2 / envvars и перезапустив его.

поскольку веб-серверы должны прослушивать порт 80 или 443, он должен запускаться как root для привязки к этим портам. Если сама программа не поддерживает работу от имени пользователя без полномочий root, вы не можете заставить ее работать.

Альтернатива - заставить его прослушивать порт больше 1024 и перенаправлять трафик, используя iptables но это в высшей степени "хакерское".