APACHE+SUEXEC+PHP
Модератор: terminus
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
То есть, проц не уходит на 100% загрузки...
Есть идеи из-за чего это может быть?
Серв не сила... 1 ГГц,398 Мб оперативы... Можете что-то посоветовать?
Есть идеи из-за чего это может быть?
Серв не сила... 1 ГГц,398 Мб оперативы... Можете что-то посоветовать?
- zingel
- beastie
- Сообщения: 6204
- Зарегистрирован: 2007-10-30 3:56:49
- Откуда: Moscow
- Контактная информация:
Re: APACHE+SUEXEC+PHP
тонко тюнить ядро:
и так далее, ключевая переменная - kern.maxproc
Код: Выделить всё
KVA_PAGES
KSTACK_MAX_PAGES
SHMMAXPGS
MAXDSIZ
Код: Выделить всё
vm.pmap.shpgperproc=2048
net.inet.tcp.syncache.hashsize=1024
net.inet.tcp.syncache.bucketlimit=100
net.inet.tcp.tcbhashsize=4096
kern.ipc.nsfbufs=10240
kern.ipc.maxsockets=204800
kern.ipc.numopensockets=32768
kern.maxfiles=32768
kern.openfiles=32768
kern.maxvnodes=80000
Z301171463546 - можно пожертвовать мне денег
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
У меня лог апача забит ошибками вида
Хотя страницы нормально открываются....
Вразумительного ответа что это и как с этим бороться так и не нашел, может кто поможет?
Код: Выделить всё
terminated by calling exit with status '0'
gid 1014) restarted (pid 62422)
) termination signaled
) terminated by calling exit with status '0'
133) termination signaled
133) terminated by calling exit with status '0'
gid 1014) restarted (pid 62703)
Вразумительного ответа что это и как с этим бороться так и не нашел, может кто поможет?
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
Привет
Подскажите пожалуста, в чём может быть проблемма? исползую скрипт всё нармально создается, всё работает. Проблема, не удалает ползователя группу , mysql базу, и не капирует доки юзера в папку backup.
Подскажите пожалуста, в чём может быть проблемма? исползую скрипт
Код: Выделить всё
create_client.sh
Код: Выделить всё
uname -v FreeBSD 6.2-RELEASE #0: Fri Jan 12 11:05:30 UTC 2007
Код: Выделить всё
#!/bin/sh -
# Скрипт для создания клиентской шары, и заведения нужного пользователя
# в системе. Написан lissyara 2006-10-02 - 2006-10-09 www.lisssyara.su
# Ограничения заводимого пользователя - сколько может занимать места,
# и сколько инод ему выделять (фактически, это - максимальное число файлов
# и директоий которые он сможет завести. Но не точно.
# Реально - может быть меньше). 0 - анлим.
user_datasize="500000" # В килобайтах в 4.11 и в Mb в 6.1, почему так -
# я не понял. будте внимательны.
user_inode="100000" # Иноды не резиновые. Оцените число командой
# `df -i` и решайте какие у вас должны быть лимиты
# Файловая система, на которую вносим ограничения
fs="/usr/local/hosting"
# Данные для MySQL
mysql_user="root"
mysql_passwd=""
# Переменные:
domain_name="$1"
user_name="$2"
# программы
cat="/bin/cat" # Перенаправление потоков ввода-вывода
awk="/usr/bin/awk" # Язык обработки шаблонов
echo="/bin/echo" # Вывод строк на экран
grep="/usr/bin/grep" # Выбор строк по шаблону
pw="/usr/sbin/pw" # Управление учётками, группами пользователей
rm="/bin/rm" # Удаление файлов и директорий
mkdir="/bin/mkdir" # Создание директорий
chown="/usr/sbin/chown" # Выставление владельца файлов и директорий
php="/usr/local/bin/php-cgi" # Бинарник PHP для использования в виде CGI
cp="/bin/cp" # Копирование файлов и директорий
mysql="/usr/local/bin/mysql" # MySQL - клиент
wc="/usr/bin/wc" # подсчёт числа строк
cut="/usr/bin/cut" # Обрезка строк
md5="/sbin/md5" # подсчёт md5 файлов, строк
jot="/usr/bin/jot" # генерация случйного числа
tail="/usr/bin/tail" # Показывает последнюю часть файла
edquota="/usr/sbin/edquota" # редактор квот
ls="/bin/ls" # Kbcnbyu диреткорий, файлов
chflags="/bin/chflags" # Утановка флагов на файл
tr="/usr/bin/tr" # Замена, удаление символов в строке
mysqldump="/usr/local/bin/mysqldump" # Содание дампов MySQL
gzip="/usr/bin/gzip" # Архиватор
rm="/bin/rm" # Удаление файлов и директорий
mv="/bin/mv" # Перемещение файлов и директорий
basename="/usr/bin/basename" # Вывод базового имени файла (из полного пути)
uname="/usr/bin/uname" # Информация о локальной машине
# Файл с настройками php
php_ini="/usr/local/etc/php.ini"
# Временный файл - для технических нужд
tmp_file="/tmp/$$.file.tmp"
# Файл с системными альясами (для почты - отлупы на письма с сайтов будут
# возвращаться на этот сервер, надо их пересылать на пользователя, у меня
# забито как info@домен_пользователя)
aliases_file="/etc/aliases" # На самом деле, во фре, это симлинк на
# файл /etc/mail/aliases.
# Директория хостинга
hosting_preffix="/usr/local/hosting/sites"
# Директория для бэкапов удалённых сайтов
backup_dir="/usr/local/hosting/backup"
# Строим префикс для работы с БД
query_preffix="${mysql} --user=${mysql_user} --password=${mysql_passwd} \
--database=mysql"
# Проверяем наличие приложений - в разных версиях FreeBSD разные пути
for application in ${cat} ${awk} ${echo} ${grep} ${pw} ${rm} ${mkdir} \
${chown} ${php} ${cp} ${mysql} ${wc} ${cut} ${md5} ${jot} ${tail} \
${edquota} ${ls} ${chflags} ${tr} ${mysqldump} ${gzip} ${rm} ${mv} \
${basename} ${uname} ${php_ini}
do
if [ ! -s ${application} ]; then
echo "Приложение \`\`${application}'' не найдено! Проверьте путь!"
exit
fi
done
# Поехали :)))
case "$3" in
create)
# Проверяем, не начинается ли имя пользователя с цифры (у `pw`, в этом случае
# будут проблемы с созданием группы пользователя. Либо руками, либо эта
# проверка. Я решил что лучше с цифры не начинать.)
${echo} "11111111111" >> ${tmp_file}
${echo} ${user_name} | ${grep} -v "^[0-9]" > ${tmp_file}
# проверяем размер файла - не равен ли нулю
if [ -s ${tmp_file} ]
then
# Ничё не делаем
${rm} ${tmp_file}
else
# Пытаются пользователя с первой цифрой всандалить.
${echo} "Имя пользователя не может начинаться с цифры!!"
${rm} ${tmp_file}
exit
fi
# Проверяем, не содержит ли имя пользователя точки:
${echo} ${user_name} | ${tr} -d "[:alnum:]" | ${grep} "\." > ${tmp_file}
if [ -s ${tmp_file} ]
then
# Пытаются пользователя с точками в имени всандалить.
${echo} "Имя пользователя не может содержать точки!!"
${rm} ${tmp_file}
exit
else
# Ничё не делаем
${rm} ${tmp_file}
fi
# Проверяем уникальность имени пользователя
${cat} /etc/passwd | ${awk} -F ":" '{print $1}' | ${grep} "^[:alnum:]" |
{
while read existing_user_name
do
if [ ${existing_user_name} = ${user_name} ]
then
# Есть такой юзер. Ругаемся, выходим
${echo} "Пользователь с именем \"${user_name}\" существует!"
# пишем временный файл, чтоб передать инфу из цикла
${echo} 1 > ${tmp_file}
exit
fi
done
}
# Проверяем наличие и содержимое временного файла.
if [ -s ${tmp_file} ]
then
if [ `cat ${tmp_file}` -eq 1 ]
then
${rm} ${tmp_file} # удаляем временный файл
exit # выходим
fi
fi
# проверяем, нету ли такого виртуалхоста в apache
if [ -s ${hosting_preffix}/../httpd_configs/${domain_name}.conf ]
then
# Уже есть такой виртуалхост
${echo} "Хост с именем \"${domain_name}\" уже есть в конфиге!"
exit
fi
# такого пользователя нет - заводим в системе
user_passwd="`${pw} useradd ${user_name} -c \"UserDomain = \
${domain_name}\" -L webuser -s /bin/csh -d ${hosting_preffix}/${user_name}`"
# Добавляем апаче в группу пользователя
${pw} groupmod ${user_name} -m www
# Создаём структуру директорий для пользователя
${mkdir} -p ${hosting_preffix}/${user_name}/log
${mkdir} -p ${hosting_preffix}/${user_name}/www
${mkdir} -p ${hosting_preffix}/${user_name}/cgi-bin
${mkdir} -p ${hosting_preffix}/${user_name}/tmp
# копируем файлы в CGI
${cp} ${php} ${hosting_preffix}/${user_name}/cgi-bin/
${cp} ${php_ini} ${hosting_preffix}/${user_name}/cgi-bin/
# Даём права на эти директории
${chown} -R ${user_name}:${user_name} ${hosting_preffix}/${user_name}
# Ставим флаги на php.ini
${chflags} sunlnk ${hosting_preffix}/${user_name}/cgi-bin/php.ini
${chflags} schg ${hosting_preffix}/${user_name}/cgi-bin/php.ini
# Добавляем пользователя в список тех, кто chroot`ится при
# заходе по FTP
${echo} ${user_name} >> /usr/local/etc/vsftpd.chroot_list
# Стругаем квоты для пользователя
${edquota} -e \
${fs}:${user_datasize}:${user_datasize}:${user_inode}:${user_inode} \
${user_name}
# Стругаем пароль для MySQL
mysql_user_passwd="`${jot} -r 1 0 9000000 | ${md5} -p | ${tail} -1 \
| ${cut} -c 1-8`"
# Заводим пользователя в MySQL
${query_preffix} --execute="CREATE DATABASE IF NOT EXISTS \`${user_name}_db\`"
${query_preffix} --execute="GRANT ALL PRIVILEGES on \`${user_name}_db\`.* to \
'${user_name}'@'localhost' IDENTIFIED BY '${mysql_user_passwd}'"
# Создаём виртуалхост в апаче
${echo} "# Этот файл создан автоматически, скриптом `basename $0`
# Virtual host added by \`$USER\`, `date +%Y-%m-%d` in `date +%H:%M:%S`
# from host = \`$REMOTEHOST\`, host IP = \``echo $SSH_CLIENT | awk '{print $1}'`\`
<VirtualHost *:80>
ScriptAlias /cgi-bin/ ${hosting_preffix}/${user_name}/cgi-bin/
ServerAdmin support@${domain_name}
User ${user_name}
Group ${user_name}
DocumentRoot ${hosting_preffix}/${user_name}/www
ServerName ${domain_name}
ServerAlias www.${domain_name}
# Директория пользователя
<Directory "${hosting_preffix}/${user_name}/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order deny,allow
Allow from all
</Directory>
DirectoryIndex index.php index.html index.htm index.shtml index.php3
AddType application/x-httpd-php .php .php3
Action application/x-httpd-php /cgi-bin/php-cgi
ErrorLog ${hosting_preffix}/${user_name}/log/error.log
CustomLog ${hosting_preffix}/${user_name}/log/access.log common
</VirtualHost>
" >> ${hosting_preffix}/../httpd_configs/${domain_name}.conf
# Создаём почтовый альяс для юзера (иначе его почта будет захламлять
# раздел /var). У меня стоит exim в простейшей (дефолтовой) конфигурации,
# т.к. мыльница для клиентов не на хостинге, а на отдельном сервере,
# и он работает с системными пользователями. Если будете делать по другому,
# перепишите этот кусок под себя.
$echo "
# Alias for user = ${user_name}, domain = ${domain_name},
# added by \`$USER\`, `date +%Y-%m-%d` in `date +%H:%M:%S`
# from host = \`$REMOTEHOST\`, host IP = \``echo $SSH_CLIENT | awk '{print $1}'`\`
${user_name}: info@${domain_name}
" >> ${aliases_file}
${echo} "Имя домена: ${domain_name}"
${echo} "Имя пользователя: ${user_name}"
${echo} "Пароль пользователя(FTP, SSH): ${user_passwd}"
${echo} "Имя базы данных: ${user_name}_db"
${echo} "Пароль пользователя (MySQL): ${mysql_user_passwd}"
${echo} "Квота пользователя: ${user_datasize}"
${echo} -n "Альяс почты (${aliases_file}) ${user_name}@`${uname} -n`"
${echo} " --> info@${domain_name}"
;;
delete)
${echo} "Вы действительно хотите удалить пользователя и домен?!"
${echo} "Наберите YES для подтверждения, или Ctrl+C для выхода..."
read confirmation
if [ $confirmation = YES ] > /dev/null 2>&1
then
# Подтверждено.
# Стругаем директорию
${mkdir} -p ${backup_dir}/${domain_name}
# снимаем флаги с директории юзера
${chflags} -R nosunlnk ${hosting_preffix}/${user_name}/*
${chflags} -R noschg ${hosting_preffix}/${user_name}/*
# Копируем содержимое
${echo} "Копируются пользовательские данные..."
${cp} -R ${hosting_preffix}/${user_name} \
${backup_dir}/${domain_name}
# Дампим БД пользователя
${echo} "Делается дамп БД пользователя...."
${mysqldump} --user=${mysql_user} --password=${mysql_passwd} \
--database ${user_name}_db | ${gzip} > \
${backup_dir}/${domain_name}/${user_name}_db.sql.gz
# Сносим всё нахрен:
# Перемещаем конфиг апача для этого домена
${mv} ${hosting_preffix}/../httpd_configs/${domain_name}.conf \
${backup_dir}/${domain_name}/
# Удаляем доки:
${echo} "Удаляются пользовательские данные..."
${rm} -Rf ${hosting_preffix}/${user_name}
# Удаляем БД
${echo} "Удаляется БД пользователя...."
${query_preffix} --execute="DROP DATABASE IF EXISTS \
\`${user_name}_db\`"
# Удаляется пользователь из MySQL
${echo} "Удаляется пользователь из MySQL..."
${query_preffix} --execute="REVOKE ALL PRIVILEGES \
ON *.* FROM '${user_name}'@'localhost'"
${query_preffix} --execute="REVOKE GRANT OPTION \
ON *.* FROM '${user_name}'@'localhost'"
${query_preffix} --execute="DELETE FROM mysql.user WHERE \
User='${user_name}' and Host='localhost'"
${echo} "Удаляется пользователь из системы..."
${pw} userdel ${user_name}
${echo} "Удаляется группа пользователя из системы..."
${pw} groupdel ${user_name}
else
# не захотел удалять :)
${echo} "Пользователь и его сайт были оставлены"
fi
;;
update)
# Обновление версии php у всех пользователей.
${ls} ${hosting_preffix}/|
{
# идёт листинг сайтов, но т.к. имя пользователя и директории
# одинаковые - значит это ещё и именя пользователей :)
while read site_user_name
do
${echo} "Идёт обновление версии php для пользователя ${site_user_name}"
# Копируем новый
${cp} ${php} ${hosting_preffix}/${site_user_name}/cgi-bin/
# Даём права на него
${chown} ${site_user_name}:${site_user_name} \
${hosting_preffix}/${site_user_name}/cgi-bin/`${basename} ${php}`
done
}
${echo} "Обновление завершено!"
;;
*)
${echo} ""
${echo} "Этот скрипт создаёт пользователя в системе, генерит ему
пароль, создаёт базу данных MySQL, генерит для неё пароль,
выставляет квоты на использование ресурсов системы - на данный
момент все новые пользователи равноправны - смотрите в login.conf
класс 'webuser'. Текущие ограничения:
Места: 500mb (правиться в этом файле)
Инод: 10000 (правиться в этом файле)
Процессов: 64 (правиться в login.conf)
Время работы процесса: 5 минут (правиться в login.conf)
Размер стека: 4mb (правиться в login.conf)
Размер блокируемой оперативки: 64mb (правиться в login.conf)
Макимальный объём оперативки: 256mb (правиться в login.conf)
Максимальный размер файла: 100mb (правиться в login.conf)
Открытых файлов на процесс: 1024 (правиться в login.conf)
Приоритет приложений: 20 (правиться в login.conf)
Внимание! На файл php.ini ставяться флаги \`schg\` и \`sunlnk\`,
не сняв их - файл не уалить и не изменить! Цель - не позволить юзеру
менять свои настройки php.
Удаление флагов:
chflags noschg php.ini
chflags nosunlnk php.ini
Установка:
chflags schg php.ini
chflags sunlnk php.ini
(Может понадобиться на случай если надо всё-таи чё-то поменять
в дефолтовом файле. Но не забывайте вернуть флаги!)
Также есть предложение придерживаться определённого именования
юзеров для их сайтов - типа если домен называется \`some.com\` то
юзер должен быть \`somecom\` - так понятней. Либо, как вариант,
завести таблицу, типа: 1- su, 2 - ru, 3 -com и т.п. и добавлять эти
цифры в конце. Кому как удобней будет. На данном сервере, под
FreeBSD 4.11, ограничение на длинну имени пользователя - 16 символов.
Если длинней - придётся обрубать с конца, или ещё как - чтобы не
совпадало с существующими.
Про удаление - перед удалением всё бэкаптся, кроме учётки пользователя.
Про обновления - имя пользователя и домен - любые. Нужно при обновлении
версии php на сервере. Обновляются все бинарники и перевыставляются права.
P.S. Не забывайте перезапускать апач после создания-удаления!"
${echo} ""
${echo} "Использование: `${basename} $0` \
{domainname username create|delete|update}" >&2
${echo} ""
exit 64
;;
esac
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
Добрый день!
Появилась сложность в настройке.
После запуска скрипта получаю примерно следующее
Имя домена: testing.su
Имя пользователя: testing
Пароль пользователя(FTP, SSH):
Имя базы данных: testing_db
Пароль пользователя (MySQL): 90583d4e
Квота пользователя: 500
Альяс почты (/etc/aliases) testing@ghost.ru --> info@testing.su
Кажется все на месте кроме одного нюанса
Полное отсутствие (Пароль пользователя(FTP, SSH):)
Может кто нибудь направить куда копать.
И второй нюанс я заметил что скрипт не удаляет данные из /etc/ftpchroot это я думаю исправлю и напишу тут когда доразберусь с мелкими проблемками.
Если кто то поможет буду рад. спасибо.
Появилась сложность в настройке.
После запуска скрипта получаю примерно следующее
Имя домена: testing.su
Имя пользователя: testing
Пароль пользователя(FTP, SSH):
Имя базы данных: testing_db
Пароль пользователя (MySQL): 90583d4e
Квота пользователя: 500
Альяс почты (/etc/aliases) testing@ghost.ru --> info@testing.su
Кажется все на месте кроме одного нюанса

Полное отсутствие (Пароль пользователя(FTP, SSH):)
Может кто нибудь направить куда копать.
И второй нюанс я заметил что скрипт не удаляет данные из /etc/ftpchroot это я думаю исправлю и напишу тут когда доразберусь с мелкими проблемками.

Если кто то поможет буду рад. спасибо.
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: APACHE+SUEXEC+PHP
отлаживать... могли параметры поменяться какие-то у приложений...
сколько лет-то уж прошло...
сколько лет-то уж прошло...
Убей их всех! Бог потом рассортирует...
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
проблему нашел просто случайно пропустил несколько пунктов статьи... Прошу прощения.
Но столкнулся с новой. Ни один пароль не подходит.
Не могу зайти ни в mysql ни по ftp.
Пароли не подходят.
Но столкнулся с новой. Ни один пароль не подходит.
Не могу зайти ни в mysql ни по ftp.
Пароли не подходят.
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: APACHE+SUEXEC+PHP
lissyara писал(а):отлаживать... могли параметры поменяться какие-то у приложений...
сколько лет-то уж прошло...
Убей их всех! Бог потом рассортирует...
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
А можно спросить.
Переменная
Она случайно не постоянно получается и не меняется ли?
Потому что если mysql_user_passwd=12345 то проблем с коннектом нет. Если я меняю все как в скрипте то тупо не могу законектиться, может выдает уже другое значение?
Я понимаю что обращаюсь на старую ветку итп просто может тут найду какие нить подсказки, сам то не прекращаю копаться.
Переменная
Код: Выделить всё
# Стругаем пароль для MySQL
mysql_user_passwd="`${jot} -r 1 0 9000000 | ${md5} -p | ${tail} -1 \
| ${cut} -c 1-8`"
Потому что если mysql_user_passwd=12345 то проблем с коннектом нет. Если я меняю все как в скрипте то тупо не могу законектиться, может
Код: Выделить всё
${echo} "Пароль пользователя (MySQL): ${mysql_user_passwd}"
Я понимаю что обращаюсь на старую ветку итп просто может тут найду какие нить подсказки, сам то не прекращаю копаться.

Последний раз редактировалось Alex Keda 2009-07-01 19:54:02, всего редактировалось 1 раз.
Причина: Товарищщи, юзайте кнопочку [code], цените чужое время...
Причина: Товарищщи, юзайте кнопочку [code], цените чужое время...
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
Наверно зря я взялся за эту статью.
Скажите какими способоми на Ваш взгляд лучше организовать хостинг?
В первую очередь инетересует организация доступа клиента к контенту.
Фтп,Сфтп какие нить может виртульные машины.
Просто интересно мнение тех, кто побольше меня смыслит.
Спасибо.
Скажите какими способоми на Ваш взгляд лучше организовать хостинг?
В первую очередь инетересует организация доступа клиента к контенту.
Фтп,Сфтп какие нить может виртульные машины.
Просто интересно мнение тех, кто побольше меня смыслит.
Спасибо.
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: APACHE+SUEXEC+PHP
значение сохраняетсяв переменную, потом используется переемнная.
==========
поставте панель какуюнить.
решения типа вышеприведённого - хороши только для себя и под себя
==========
поставте панель какуюнить.
решения типа вышеприведённого - хороши только для себя и под себя
Убей их всех! Бог потом рассортирует...
-
- проходил мимо
Re: APACHE+SUEXEC+PHP
Спасибо добрый человек.
Действительно я зачем то взялся морочить голову.
5 минутный поиск натолкнул на несколько решений. Может кому пригодиться.
3 Панели управления хостингом. ( http://dedic.ru/node/100 )
И может быть у кого нить есть рекомендации, опыт работы с какими нить панелями. Попроще и позащищенее...
Спасибо.
Действительно я зачем то взялся морочить голову.
5 минутный поиск натолкнул на несколько решений. Может кому пригодиться.
3 Панели управления хостингом. ( http://dedic.ru/node/100 )
И может быть у кого нить есть рекомендации, опыт работы с какими нить панелями. Попроще и позащищенее...
Спасибо.
-
- проходил мимо
Хостинг Панель Webmin + Virtualmin
Спасибо за помощь!.
Рекомендации поставить хостинг панель оказались весьма кстати, но информацию на этот счет я собирал неделю по крупицам, поэтому хочу хоть как то облегчить поиск тому кто решит так же как и я поставить хостинг панель.
Пробывал ставить ISPCP , ISPCONFIG , и еще парочку забыл каких. Но я остановил свой выбор на Webmin + Virtualmin .
Сталкнулся с проблемами при установке. Пробывал через порты но ничего нигде не появлялось. Вернее после установки модуль должен был появиться в разделе "Система" но он этого не делал.
Сцуко.
Помогло скачать модуль отдельно и установить через подключение модулей Webmin.
(Установка VirtualMin.
Теперь приступим к установке VirtualMin. Первым делом надо скачать VirtualMin (мы будем использовать GPL вариант):
[root@localhost]$: wget http://download.webmin.com/download/vir ... 3.51.gpl.w...
Теперь зайдем в меню управления модулями и выберем вариант установки из предварительно скачанного файла. Ждем минуту… Все! VirtualMin установлен!
Теперь перейдем в меню “Services” и выберем “Virtualmin Virtual Servers”. Вас попросят произвести автоматическое сканирование системы. Чаще всего эта проверка показывает, что квоты не включены, а в файле /etc/shells нет шелла /bin/false. Исправить это легко: надо просто добавить в файл /etc/shells строчку /bin/false, а также включить квоты (это можно сделать классически, через консоль и файл /etc/fstab, а можно использовать для этого соответствующий модуль WebMin). После этого необходимо повторить сканирование нажатием на кнопку “Re-check configuration”. На этот раз ошибок быть не должно. На этом установка VirtualMin заканчивается. Теперь у администратора появляется возможность расслабиться – интерфейс этой связки настолько прост, что с операцией добавления/удаления новых пользователей справится даже блондинка.
Кстати, я бы советовал вам полностью выключить 22 порт (ssh), так как в WebMin уже имеется встроенный командный интерфейс (хотя, если это вас не устроит, то можно отключить и его))
Иисточник http://hosting.asplinux.info/node/2
Рекомендации поставить хостинг панель оказались весьма кстати, но информацию на этот счет я собирал неделю по крупицам, поэтому хочу хоть как то облегчить поиск тому кто решит так же как и я поставить хостинг панель.
Пробывал ставить ISPCP , ISPCONFIG , и еще парочку забыл каких. Но я остановил свой выбор на Webmin + Virtualmin .
Сталкнулся с проблемами при установке. Пробывал через порты но ничего нигде не появлялось. Вернее после установки модуль должен был появиться в разделе "Система" но он этого не делал.


(Установка VirtualMin.
Теперь приступим к установке VirtualMin. Первым делом надо скачать VirtualMin (мы будем использовать GPL вариант):
[root@localhost]$: wget http://download.webmin.com/download/vir ... 3.51.gpl.w...
Теперь зайдем в меню управления модулями и выберем вариант установки из предварительно скачанного файла. Ждем минуту… Все! VirtualMin установлен!
Теперь перейдем в меню “Services” и выберем “Virtualmin Virtual Servers”. Вас попросят произвести автоматическое сканирование системы. Чаще всего эта проверка показывает, что квоты не включены, а в файле /etc/shells нет шелла /bin/false. Исправить это легко: надо просто добавить в файл /etc/shells строчку /bin/false, а также включить квоты (это можно сделать классически, через консоль и файл /etc/fstab, а можно использовать для этого соответствующий модуль WebMin). После этого необходимо повторить сканирование нажатием на кнопку “Re-check configuration”. На этот раз ошибок быть не должно. На этом установка VirtualMin заканчивается. Теперь у администратора появляется возможность расслабиться – интерфейс этой связки настолько прост, что с операцией добавления/удаления новых пользователей справится даже блондинка.
Кстати, я бы советовал вам полностью выключить 22 порт (ssh), так как в WebMin уже имеется встроенный командный интерфейс (хотя, если это вас не устроит, то можно отключить и его))
Иисточник http://hosting.asplinux.info/node/2
-
- мл. сержант
- Сообщения: 132
- Зарегистрирован: 2007-11-14 9:51:19
Re: Хостинг Панель Webmin + Virtualmin
Дурацкий совет на самом деле. Я думаю что вероятности что вебмин перестанет запускатся гораздо больше чем ssh деймон. Так что в топку советы такого рода.Shvapsss писал(а):
Кстати, я бы советовал вам полностью выключить 22 порт (ssh), так как в WebMin уже имеется встроенный командный интерфейс (хотя, если это вас не устроит, то можно отключить и его))
Иисточник http://hosting.asplinux.info/node/2
Статья действительно очень старая, и не актуальная, на данный моменд много чего появилось нового.
Например сейчас можно отказатся от CGI и FastCGI и запускать скрипты через модуль.
В итоге имеем скорость выполнения как у php_mod и возможность рулить ресурсами отдаными юзеру на уровне системы.
- UBRIUM
- мл. сержант
- Сообщения: 125
- Зарегистрирован: 2009-11-16 4:05:34
- Откуда: Ростов-на-Дону
- Контактная информация:
Re: APACHE+SUEXEC+PHP
Привет, устанавливал port php5-extensions и указал устанавливать CURL, помогите с config'oм я просто не в курсе что из опций необходимо да и не все описания в интернете есть.
Код: Выделить всё
??????????????????????????????????????????????????????????????????????
? Options for curl 7.19.7_1 ?
? ?????????????????????????????????????????????????????????????????? ?
? ? [ ] CARES Asynchronous DNS resolution via c-ares ? ?
? ? [ ] CURL_DEBUG Enable curl diagnostic output ? ?
? ? [ ] GNUTLS Use GNU TLS if OPENSSL is OFF ? ?
? ? [ ] IPV6 IPv6 support ? ?
? ? [ ] KERBEROS4 Kerberos 4 authentication ? ?
? ? [ ] LDAP LDAP support ? ?
? ? [ ] LDAPS LDAPS support (requires LDAP and SSL) ? ?
? ? [ ] LIBIDN Internationalized Domain Names via libidn ? ?
? ? [ ] LIBSSH2 SCP/SFTP support via libssh2 ? ?
? ? [ ] NTLM NTLM authentication ? ?
? ? [X] OPENSSL OpenSSL support ? ?
? ? [X] PROXY Proxy support ? ?
? ? [ ] TRACKMEMORY Enable curl memory diagnostic output ? ?
? ? ? ?
? ? ? ?
??????????????????????????????????????????????????????????????????????
? [ OK ] Cancel ?
??????????????????????????????????????????????????????????????????????
FreeBSD 9.0-RELEASE amd64
CPU: AMD Athlon 64 X2 Dual Core Processor 4400+ (2294.95 K8-class CPU)
real memory = 4294967296 (4096 MB)
da0: 7660MB <JetFlash Transcend 8GB 8.07>
ad2: 114343MB <Seagate ST3120022A 8.01>
CPU: AMD Athlon 64 X2 Dual Core Processor 4400+ (2294.95 K8-class CPU)
real memory = 4294967296 (4096 MB)
da0: 7660MB <JetFlash Transcend 8GB 8.07>
ad2: 114343MB <Seagate ST3120022A 8.01>
- server801
- ст. лейтенант
- Сообщения: 1421
- Зарегистрирован: 2008-09-27 21:15:16
- Откуда: Саратов
- Контактная информация:
Re: APACHE+SUEXEC+PHP
я больше ничего и не тыкал
- UBRIUM
- мл. сержант
- Сообщения: 125
- Зарегистрирован: 2009-11-16 4:05:34
- Откуда: Ростов-на-Дону
- Контактная информация:
Re: APACHE+SUEXEC+PHP
Хорошо, пойду той же дорогой.
FreeBSD 9.0-RELEASE amd64
CPU: AMD Athlon 64 X2 Dual Core Processor 4400+ (2294.95 K8-class CPU)
real memory = 4294967296 (4096 MB)
da0: 7660MB <JetFlash Transcend 8GB 8.07>
ad2: 114343MB <Seagate ST3120022A 8.01>
CPU: AMD Athlon 64 X2 Dual Core Processor 4400+ (2294.95 K8-class CPU)
real memory = 4294967296 (4096 MB)
da0: 7660MB <JetFlash Transcend 8GB 8.07>
ad2: 114343MB <Seagate ST3120022A 8.01>
- m4rkell
- мл. сержант
- Сообщения: 136
- Зарегистрирован: 2008-09-19 7:50:05
- Откуда: Москва
- Контактная информация:
Re: APACHE+SUEXEC+PHP
Господа, настраивал по этой статье, при установке php5-расширений выбрал GD, при выводе пхп инфо, показывает что
Но вот засада, каптча не генерится...
В логах нет ошибок никаких((( помогите плиз
Код: Выделить всё
GD Support enabled
GD Version bundled (2.0.34 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.4.4
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPEG Support enabled
libJPEG Version 8
PNG Support enabled
libPNG Version 1.4.5
WBMP Support enabled
XBM Support enabled
В логах нет ошибок никаких((( помогите плиз
Software is like a sex - its better when its free
- wien
- сержант
- Сообщения: 151
- Зарегистрирован: 2014-06-26 18:38:44
- Откуда: DafaultCity
- Контактная информация:
APACHE+SUEXEC+PHP
Извиняюсь за некропостинг, но вопрос скорее к верховному ребе.
В скрипте есть такие строчки, судя по всему в которых должен генерироваться пароль для SSH и FTP:
Но, к сожалению на выходе пустая строка. Простой вопрос как быть? Как например всандалить пароль для входа по SSH и FTP от MySQL?
Интересуюсь не просто так, а потому что не нашел команды, которой можно было бы пароль из переменной скормить, только интерактивные, как например passwd.
В скрипте есть такие строчки, судя по всему в которых должен генерироваться пароль для SSH и FTP:
Код: Выделить всё
# такого пользователя нет - заводим в системе
user_passwd="`${pw} useradd ${user_name} -c \"UserDomain = \
${domain_name}\" -L webuser -s /bin/csh -d ${hosting_preffix}/${user_name}`"
Интересуюсь не просто так, а потому что не нашел команды, которой можно было бы пароль из переменной скормить, только интерактивные, как например passwd.
-
- сержант
- Сообщения: 252
- Зарегистрирован: 2013-08-10 14:28:38
- Контактная информация:
APACHE+SUEXEC+PHP
Эта команда не генерирует никаких паролей, она добавляет пользователя в систему, и на stdout у нее пустая строка. Чтобы задать пароль через pw, используйте опцию -h:wien писал(а):Код: Выделить всё
# такого пользователя нет - заводим в системе user_passwd="`${pw} useradd ${user_name} -c \"UserDomain = \ ${domain_name}\" -L webuser -s /bin/csh -d ${hosting_preffix}/${user_name}`"
Код: Выделить всё
man pw
...
-h fd This option provides a special interface by which interac?
tive scripts can set an account password using pw. Because
the command line and environment are fundamentally insecure
mechanisms by which programs can accept information, pw
will only allow setting of account and group passwords via
a file descriptor (usually a pipe between an interactive
script and the program). sh, bash, ksh and perl all pos?
sess mechanisms by which this can be done. Alternatively,
pw will prompt for the user's password if -h 0 is given,
nominating stdin as the file descriptor on which to read
the password. Note that this password will be read only
once and is intended for use by a script rather than for
interactive use. If you wish to have new password confir?
mation along the lines of passwd(1), this must be imple?
mented as part of an interactive script that calls pw.
If a value of ‘-’ is given as the argument fd, then the
password will be set to ‘*’, rendering the account inacces?
sible via password-based login.
...
- Alex Keda
- стреляли...
- Сообщения: 35427
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
APACHE+SUEXEC+PHP
когда-то, она могла генерить пасс и выплёвывать его, насколько я помню.
--
а вообще, лучше юзайте mpm-itk
и безопасно, и быстро, и параметры интерпретатора через .htaccess можно настраивать
--
а вообще, лучше юзайте mpm-itk
и безопасно, и быстро, и параметры интерпретатора через .htaccess можно настраивать
Убей их всех! Бог потом рассортирует...
- wien
- сержант
- Сообщения: 151
- Зарегистрирован: 2014-06-26 18:38:44
- Откуда: DafaultCity
- Контактная информация:
APACHE+SUEXEC+PHP
Всех благодарю за ответы, задаю пароли пока руками (passwd username).
Вместо suexec+fastcgi?...а вообще, лучше юзайте mpm-itk...