Каких пользователей нужно создать и как их настроить на веб-сервере Centos?

Привет.

Есть VPS от DigitalOcean. На сервере 10-15 личных сайтов и парочка чужих.
Установлено: nginx (backend и обработка статики), apache (frontend), php, mysql, phpmyadmin.
Доступ к серверу есть и будет только у меня, но, возможно, придется паре человек дать ftp-доступ к директориям их сайтов.
Все сайты храню в /home/sites.

Собственно говоря, вопросы:

1) Какой ftp-сервер лучше и проще: vsftpd или proftpd? Оба пробовал и оба не смог нормально настроить (были проблемы с правами пользователей и установкой прав директорий, надеюсь вторая попытка будет успешней).

2) Какие группы и каких пользователей нужно создать для apache, nginx, mysql и ftp? Какие у какого пользователя должны быть права, к каким директориям доступ и как все это сделать?

3) Может лучше хранить все свои сайты в /home/sites/мой_пользователь, а чужие в /home/sites/username?

4) Начитавшись статей о настройке веб-серверов linux отключил root и в Putty захожу через другого пользователя, при необходимости пишу sudo перед командой. Но с такой конфигурацией не получается firezill'ой редактировать конфигурационные файлы сервера в директориях /etc и проч. Я понимаю, что можно настроить сервер под пользователем root, а затем отключить его и через sftp ничего больше не редактировать, но я сильно сомневаюсь, что настанет такой день, когда я поставлю точку в настройке сервера. Схема «зашел в консоли через второй аккаунт, написал sudo vi /etc/ssh/sshd_config, включил root, зашел через root, отредактировал конфиги, перезашел через второй аккаунт, написал sudo vi /etc/ssh/sshd_config, выключил root» для меня очень муторна. Как здесь быть? Может есть аналог консольной приписки sudo для sftp? :)
  • Вопрос задан
  • 5964 просмотра
Решения вопроса 2
paul35
@paul35
1)Использую proftpd с разграничением доступа. Из моих клиентов только один пользуется ФТП, у него никаких проблем не возникает, все права настраиваются правильно.
2)У каждого клиента своя папка в home, т.к. у меня юзается только nginx, то в нем и в php-fpm настроена работа под правами именно этого пользователя. Пока никаких проблем небыло.
3)По поводу рута, что мешает _зайти_ под непривелигиорванным и выполнить в консоли su root
4)Все эти веб-морды втопку, только консоль, чтобы админ понимал что он делает и как.

P.S. Холивара ради - я за Debian! В_лес этот центос!
Ответ написан
1) Использую pure-ftpd и vsftpd - никаких проблем с разграничением доступа. Главное - конфигурация ftp-сервера. Это тема для отдельного вопроса :)

2) Права пользователей apache, nginx и пр. можно вообще не трогать. Главное - правильно выставить права всех остальных пользователей на файлы и скрипты их сайтов. Используйте модуль suPHP для запуска скриптов от имени их владельцев www.suphp.org/DocumentationView.html?file=apache/I... . При этом потребуется php-cgi режим.

3) Да, лучше так. Например, аналогично делает cPanel.

4) Вносите все изменения через ssh редакторами vi, nano и пр. Зачем вам какой-то дополнительный софт для этого?
Другой вариант - не отключать доступ root, но в качестве авторизации использовать ключи. Не знаю, правда, поддерживает ли ваш клиент ключи.

Если не хотите самостоятельно мучиться с этим всем, поставьте себе панель управления: cPanel, ispManager и пр. Там всё настраивается легко и быстро через веб-интерфейсы.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы