Разрешения для/var/www/html
У меня есть виртуальный сервер CentOS с GoDaddy, и у меня возникают проблемы с настройкой разрешений для /var/www/html
.
Пользователям не разрешено входить в систему как root
или даже добавлять себя в группу root
, поэтому в этом углу я нарисовал себя:
-
Я сменил владельца с помощью следующей команды (я использовал группу user: httpd.conf
):
chown -R apache:apache /var/www/html
-
Я добавил своего пользователя в группу apache
:
usermod -a -G apache myuser
-
Я изменил разрешения:
chmod 777 /var/www/html -R
Это единственный способ предоставить моей учетной записи SFTP возможность создавать, изменять и удалять файлы в /var/www/html
. 777! (Учетная запись SFTP использует те же учетные данные, что и учетная запись ssh, что означает, что для всех целей и задач они одинаковы, верно?)
Я, очевидно, новичок в администрировании сервера Linux, но это кажется нелепо неуверенным. Есть ли лучший способ сделать все это?
Примечание. Веб-сайт, который я планирую включить здесь, позволит загружать файлы, задания cron и т.д., поэтому я предполагаю, что это также усложнит необходимые разрешения. Это правильно?
Обновление Использование 775 не работает; Я могу загружать/перезаписывать файлы, но когда я просто пытаюсь их удалить, FileZilla дает мне эту ошибку:
rm/var/www/html/index.php: разрешение отклонено
Я понятия не имею, почему, но переход на 777 "исправляет" это.
Ответы
Ответ 1
Вам просто нужно 775
для /var/www/html
, пока вы входите в систему как myuser. 7
восьмеричный в середине (для "group" acl) гарантирует, что у группы есть разрешение на чтение/запись/выполнение. Пока вы принадлежите к группе, которой принадлежат файлы, "myuser" должен иметь возможность писать им. Возможно, вам придется предоставить групповые разрешения для всех файлов корня documentemnt:
chmod -R g+w /var/www/html
Ответ 2
Я только что был в аналогичной позиции относительно установки 777 разрешений в каталоге хостинга веб-сайта apache. После небольшого переделания кажется, что изменение группового права собственности на папку на группу "apache" позволило получить доступ к папке на основе группы пользователей.
1) убедитесь, что групповое право собственности на папку установлено на группу apache, используемую/генерирующую для использования. (проверьте/etc/groups, my - www-data на Ubuntu)
2) установите права доступа к папке на 774, чтобы остановить "всех" от наличия доступа к изменениям, но разрешить требуемые права владельца и группы.
3) добавьте свою учетную запись в группу, у которой есть разрешение на папку (мой был www-data).
Ответ 3
Войдите в систему как пользователь root:
sudo su
password:
тогда иди и делай что хочешь делать в var/www