Правильное использование www-данных для безопасного добавления / редактирования / удаления
После создания стека LAMP, я понимаю, что Apache
создает www-data
пользователь. Но вы не можете войти как www-data
(причины безопасности). Вместо этого, если вы хотите сделать что-то как www-data
тогда вы должны запустить это:
su -s /bin/bash www-data
Я могу жить с этим. Но у меня есть 2 вопроса:
- Что вы делаете, когда хотите загрузить файлы через FTP? В настоящее время я должен FTP как пользователь root, а затем
chown
файлы обратноwww-data
после загрузки. Я запускаю Magento, и эта установка требует, чтобы яowner
разрешения наwrite
, В противном случае, я бы просто далwrite
доступ кgroup
, - Что вы делаете, когда хотите разрешить некорневому пользователю
su
какwww-data
? Потому что если вы запуститеsu -s /bin/bash www-data
как обычный пользователь, то они видятThis account is currently not available
,
1 ответ
я понимаю, что Apache создает пользователя www-data
Нет. Большинство систем управления пакетами создают пользователя при развертывании программного обеспечения.
Вы не можете напрямую войти как [этот пользователь]
Да, как вы говорите, это обычно делается из соображений безопасности.
Вы должны... su -s /bin/bash www-data
Если система настроена таким образом, чтобы это разрешать - иногда даже это отключается.
Что вы делаете, когда хотите загрузить файлы через FTP?
Вы разрабатываете модель разрешений, которая позволяет соответствующим пользователям развертывать и изменять файлы и пользовательский веб-сервер для чтения этих файлов. В очень редких и контролируемых случаях вы конфигурируете местоположения вне корневого каталога документа, в который может записывать uid веб-сервера.
На каждом настроенном мной веб-сервере uid веб-сервера является наименее привилегированной учетной записью, поэтому я предоставил ему доступ для чтения через "другой" слот разрешений, например
colin@animal /var/www/html $ ls -l
total 28
-rw-rw-r-- 1 colin webdev 11321 Dec 27 2016 index.html
drwxrwsr-x 2 colin webdev 4096 Jan 10 2017 session
-rw-rw-r-- 1 colin webdev 148 Feb 18 2018 login.php
drwxrwsr-- 1 colin grafx 4096 Jan 9 2017 images
-rw-rw-r-- 1 colin grafx 8334 Jul 4 21:59 logo.png
Разрешения - это средство, которым вы делитесь доступом, а не запрещаете доступ.
разрешить некорневому пользователю su как www-данные
Я не. Это никогда не должно быть необходимым.