царь-хостинг _MIF_ (ROOT@SECURITYLAB.CO.IL) Спецвыпуск: Хакер, номер #068, стр. 068-044-8 О значении my-medium.cnf и my-small.cnf, думаю, догадаться не сложно :). В целом, конфиг my-large.cnf нам подойдет. Оптимизировать MySQL в конфиге имеет смысл только в том случае, когда ты точно знаешь, какие запросы составляют большинство нагрузки. Так как на хостинге сайты будут разные, и работать их движки с БД будут по-разному – оставим пока дефолтные настройки. Потом, исходя из специфики сайтов, некоторые параметры можно будет подкрутить. [phpMyAdmin.] Однако управлять MySQL из консоли очень и очень неудобно. Поставим phpMyAdmin: скачаем его с сайта (или возьми свежий дистриб на диске с журнала), и – в бой: # tar zxvf phpMyAdmin-2.8.1.tar.gz # mkdir /usr/home/hosting.ru/web/pmadmin # cp -rf phpMyAdmin-2.8.1/* /usr/home/hosting.ru/web/pmadmin # chown –R hosting.ru:hosting.ru /usr/home/hosting.ru/web/pmadmin # cd /usr/home/hosting.ru/web/pmadmin Открываем файл config.inc.php и меняем там: $cfg['Servers'][$i]['auth_type'] = 'config'; на $cfg['Servers'][$i]['auth_type'] = 'http'; Идем на http://hosting.ru/pmadmin/, вводим свой логин и пароль к SQL и наслаждаемся :). [FTP.] Для FTP-сервиса, как ты помнишь, мы выбрали pure-ftpd. Собираем порт: # cd /usr/ports/ftp/pure-ftpd # make install clean В менюшке опций сборки поставь галочки на: MySQL – авторизация юзеров через БД; PRIVSEP – разделение юзерских привилегий; PERUSERLIMIT – ограничение потоков для каждого юзера; THROTTLING – ограничение канала для каждого юзера; BANNER – не обязательно :). После сборки порта в /usr/local/etc появятся дефолтные конфиги фтп-сервера. Создаем отдельную диру, переносим туда нужные конфиги, выставляем чмоды и удаляем ненужное: # cd /usr/local/etc # mkdir ftp # mv pure-ftpd.conf.sample ftp/ # mv pureftpd-mysql.conf.sample ftp/ # chown –R root:wheel ftp/ && chmod –R 0600 ftp/ # rm pure* Заходим в папку с конфигами, переименовываем их, оставляя бэкапы: # cd ftp/ # cp pure-ftpd.conf.sample pure-ftpd.conf # cp pureftpd-mysql.conf.sample pureftpd-mysql.conf Теперь необходимо настроить наш фтп-сервер. Открываем pure-ftpd.conf: Листинг файла pure-ftpd.conf # Создавать виртуальный chroot для каждого пользователя # Папка /home/<юзер> будет выглядеть как рутовая ChrootEveryone yes # Включить поддержку кривых фтп-клиентов # Не рекомендуется выставлять в yes из соображений безопасности BrokenClientsCompatibility no # Сколько юзеров может одновременно подключаться MaxClientsNumber 30 # Сколько юзеров может одновременно подключаться с одного IP MaxClientsPerIP 3 # Подробный лог VerboseLog yes # Вход только авторизированым пользователям NoAnonymous yes # Не резольвить IP адреса DontResolve yes # Конфиг сервера для MySQL MySQLConfigFile /usr/local/etc/ftp/pureftpd-mysql.conf # Выключаем PAM и стандартную авторизацию PAMAuthentication no UnixAuthentication no # Диапазон портов для passive mode PassivePortRange 30000 50000 # Минимальный User ID, который может залогиниться MinUID 1002 # Запрещаем/разрешаем FXP (по вкусу) AllowUserFXP no # Не создавать папку юзеру, если не существует |