Назад |
Перейти на главную страницу
Какова цель нескольких пользователей?
При настройке веб-сервера apache на моем Linux-сервере мне сказали создать отдельного пользователя, у которого есть разрешение на использование (и чей домашний каталог) файлы в каталоге / www. Кроме того, я сделал пользователя mySQL. У обоих этих пользователей есть атрибут nologin.
Я очень плохо понимаю, что делаю здесь, и в основном провожу тестирование через http: // localhost, поэтому я работал в основном со своей учетной записью.
Я хотел бы знать следующее:
1) Вообще, зачем эти пользователи существуют?
2) Имеет ли apache, mySQL или php доступ к привилегиям этих пользователей?
3) При каких обстоятельствах я смогу получить доступ к привилегиям этих пользователей?
4) Зачем им нужен атрибут nologin?
5) Любая другая важная информация, о которой я не знал, чтобы спросить.
Спасибо.
Вкратце...
- Отдельные пользователи делают именно это - они хранят вещи отдельно, так что один пользователь не может получить доступ или изменить файлы другого пользователя, в зависимости от разрешений, которые пользователь установил для своих файлов. Многие демоны (включая Apache) запускаются под определенной учетной записью пользователя - например, Red Hat имеет тенденцию использовать пользователя «apache», тогда как Debian использует «www-data». Это означает, что с демоном обращаются как с любым другим пользователем - он не может получить доступ к файлам, которые ему не разрешены, в отличие от пользователя root.
- Apache делает это, потому что он читает файлы из файловой системы, как и любой другой пользователь. Поскольку PHP обычно запускается как модуль в Apache, он также имеет те же ограничения. Однако MySQL имеет отдельную схему аутентификации, поэтому нет подразумеваемой корреляции между локальными пользователями и пользователями базы данных.
- Если вы создаете отдельного пользователя только для своего веб-контента, вы получите доступ к этому пользователю, чтобы изменить файлы, принадлежащие этому пользователю - предположительно, ваш веб-контент.
- Под атрибутом nologin я предполагаю, что вы имеете в виду, что оболочка настроена на
/sbin/nologin
- это предотвращает интерактивный вход пользователя в систему, то есть он не может подключиться к серверу по SSH или войти в систему с консоли. - Если честно, это не то, что можно описать в нескольких строках. В Интернете есть довольно много руководств, предназначенных для начинающих - прочтите несколько и почувствуйте это!