FreeBSD+WebServ

penguen

Постоялец
Регистрация
7 Янв 2007
Сообщения
842
Реакции
107

Задача. Поставить Фрю, вэб-сервер (апачи) все плюшки к нему+фтп сервер+мускул.
Вопрос в чем
Как разграничивать владельцев сайтов? Чтоб они могли лишь зайти в свою папку и там работать (через фтп клиент). Так же и базой данных.
Т.е. я создаю на серваке еще дополн. пользователя с огранич., их нужно в особую группу включать?
Не каких панелей нету на машине.
Просто не давно столкнулся с делемой. Создал на Фри еще один акк. Разрешил соедин. удалено к бд по сети. Смотрю бд-клиентом, а там все базы доступны, так же и с фтп. Можно конектится и ходить по чужим папкам.
Это же не правильно. Вот хочу сделать по человек. Да и за быть потом, а то вечно мониторить, геморно. Благо сайты лежат друзей.
Может в джейл все завернуть или чрут? Еще раз, я особо не заморачивался раньше т.к. не было случая подобного.
Кто что подскажет. С ув. я
 

metsys

Хранитель порядка
Регистрация
27 Апр 2014
Сообщения
592
Реакции
655
Jailы пользуй, будет тебе счастье (начиная с 9ой ветки ресурсы можно ограничивать индивидуально).

А то, что видят чужие папки/базы это не пробема ос, то надо настроить правильно права доступа.
 
Последнее редактирование:

penguen

Постоялец
Регистрация
7 Янв 2007
Сообщения
842
Реакции
107
Jailы пользуй, будет тебе счастье (начиная с 9ой ветки ресурсы можно ограничивать индивидуально).

А то, что видят чужие папки/базы это не пробема ос, то надо настроить правильно права доступа.
могли б привести примеры настроек папок для фтп и базы данных?
 

metsys

Хранитель порядка
Регистрация
27 Апр 2014
Сообщения
592
Реакции
655
Папки для фтп - поставить лучше proftpd и настроить по ману, который я давал в предыдущем посте: Для просмотра ссылки Войди или Зарегистрируйся
хость и для линукса, но разницы почти нет (права на папки одинаково устроены).

Примера настроек для базы как таковых нет. Можно проверить на какие базы пользователь имеет грант т.е. доступ. Я из за своей лени пользую пхпмайадмин - так вот там после создания базы, наступаете на саму базу (пустую) и в закладке привелегии создаете нового пользователя. А потом прверяете в пользователях новосозданного владельца новой базы и к чему он имеет доступ. (тоже много описаний по майадмину). Из консоли тоже можно, но не так наглядно.
 

Stesh

Постоялец
Регистрация
3 Фев 2009
Сообщения
304
Реакции
129
Как разграничивать владельцев сайтов? Чтоб они могли лишь зайти в свою папку и там работать (через фтп клиент).
С ftp проблем особо нет, почти все поддерживает виртуальных пользователей (т.е. работает с аккаунтом от заданного настройками пользователя) со своей домашней дирой.
Больное место - это работа с php. Популярна связка apache-mpm-itk (дешево и сердито, php работает с правами пользователя) и php в cgi/fastcgi (apache или nginx, тоже работает с правами пользователя).
Что бы пользователи не лазили друг к другу, рулится правами пользователя, благополучно работая с правами 751/644 папка/файл.
Начать изыскания можно с Для просмотра ссылки Войди или Зарегистрируйся статьи, Для просмотра ссылки Войди или Зарегистрируйся, Для просмотра ссылки Войди или Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся.
 
Последнее редактирование:

mpv

Постоялец
Регистрация
30 Апр 2013
Сообщения
77
Реакции
14
если еще актуально


Код:
1. sftp, чрут в хом дир
 /etc/ssh/sshd_config
Match Group www
  X11Forwarding no
  AllowTcpForwarding no
  ChrootDirectory %h
  ForceCommand internal-sftp

2. php-fpm
[domain.ru]
user = username
group = www
listen = /tmp/php-fpm.$pool.sock

php_admin_value[open_basedir] = /www/$pool
php_admin_value[upload_tmp_dir] = /www/$pool/tmp/
php_admin_value[session.save_path] = /www/$pool/tmp/
php_admin_value[soap.wsdl_cache_dir] = /www/$pool/tmp/


3.nginx (запущен от www)
location ~ \.php$ {
 fastcgi_pass unix:/tmp/php-fpm.domain.ru.sock;


у данной схемы есть ряд недостатков, но в целом для хостинга где живут собственные проекты и проекты друзей/знакомых приемлемое решение
 
Последнее редактирование модератором:

t0rik

Местный житель
Регистрация
26 Июн 2007
Сообщения
207
Реакции
21
Поставить ISPCOnfig. Будет все в одном флаконе.
 
Сверху