Технические вопросы
Установка IRC-сервера UnrealIRCd
- Установка UnrealIRCd на VDS под управлением операционной системы FreeBSD
- Установка UnrealIRCd на VDS под управлением операционной системы Debian Linux
В инструкции по установке приведен необходимый минимум действий, которые надо выполнить при его установке и настройке.
Установка UnrealIRCd на VDS под управлением операционной системы FreeBSD
Производилась установка на сервер с темплейтом ISPmanager (Стабильное ПО), однако темплейт в данном случае не принципиален и особого значения не имеет.Инсталляция будет производиться из системы портов, предварительно установите c-ares - an asynchronous resolver library:
# cd /usr/ports/dns/c-ares
# make install clean
После чего можно приступить к установке UnrealIRCd:
# cd /usr/ports/irc/unreal/
# make install clean
Поставьте галочки на стадии configure:
[X] HUB Configure as a hub (otherwise configure as a leaf)
[X] ZIPLINKS Enable ziplinks support
[X] SSL Support SSL connecions
После того как инсталляция пройдет успешно следует настроить сервер, конфигурация находится в файле /usr/local/etc/Unreal/unrealircd.conf
Раскоментируйте, убрав символы комментария //, следующие строки
//loadmodule "/usr/local/lib/Unreal/commands.so";
//loadmodule "/usr/local/lib/Unreal/cloak.so";
Затем в файле конфигурации /usr/local/etc/Unreal/unrealircd.conf найдите опции:
{
name "irc.foonet.com";
info "FooNet Server";
numeric 1;
};
Пропишите вместо их имя вашего сервера.
После этого следует отредактировать строки, в которых прописывается имя, ник и email администратора сервера:
admin {
"Bob Smith";
"bob";
Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ;
};
Также надо исправить в файле конфигурации строку:
kline-address "set.this.email";
Измените set.this.email на корректный адрес вида Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript
Дальше находятся опции сокрытия хоста подключившихся пользователей:
cloak-keys {
"aoAr1HnR6gl3sJ7hVz4Zb7x4YwpW";
"and another one";
"and another one";
};
Пропишите там свои строки (случайной длинны, латинские буквы и цифры 5-20 символов), чтобы получились записи вида:
cloak-keys {
"BNk547Vjj548bgd6b43bxxXdhyd";
"fG43Jd65kxx843xx4z461xYdoOxg";
"MJJ7GJfgv7CFkp7288oXkKxqQec";
};
Затем следует добавить оператора сервера, для этого следует отредактировать:
oper bobsmith # Ник оператора
{
class clients; #Из какого класса
from {
userhost Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ; #Какой ident и хост у оператора (можно заменить на *@*
};
password "passwd"; # Пароль
flags
{
netadmin; # Полномочия, которыми обладает оператор
global;
};
};
Также следует установить пароли на перезапуск и выключение сервера:
drpass {
restart "restart-password"; # Пароль на перезапуск
die "shutdown-password"; # Пароль на остановку сервера.
};
После чего необходимо создать SSL-сертификат:
# cd /usr/local/etc/Unreal
# openssl req -newkey rsa:1024 -nodes -keyout server.key.pem -out server.cert.pem -x509 -days 3650 -subj "/C=XX/ST=XX/L=XX/O=XX/OU=XX/CN=имя(hostname).вашего.сервера/emailAddress="ваш@email.адрес
В команде укажите корректное имя вашего сервера и email-адрес
Добавьте сервер в автозапуск, добавив строку unrealircd_enable="YES" в файл /etc/rc.conf:
Запустите UnrealIRCd:
# /usr/local/etc/rc.d/unrealircd start
Если запуск прошел успешно, то подключитесь каким либо irc-клиентом (порт по умолчанию 6667) и проверьте работу.
На этом начальная установка UnrealIRCd завершена.
Если возникнут проблемы с запуском сервера, то смотрите лог-файл /var/log/ircd/ircd.log
Установка UnrealIRCd на VDS под управлением операционной системы Debian Linux
Установка производилась на сервер с темплейтом debian-4.0-mimimalВ этом темплейте отсутствует компилятор gcc, установите его:
# apt-get update
# apt-get install gcc
Установите пакет libc6-dev, утилиту make
# apt-get install libc6-dev
# apt-get install make
Также потребуется установить пакет openssl:
# apt-get install openssl
# apt-get install libssl-dev
Создайте пользователя с правами которого будет работать UnrealIRCd:
# adduser ircd
Зайдите с его правами в систему, все дальнейшие действия следует производить под пользователем ircd
Скачайте UnrealIRCd с официального сайта:
$ wget http://unrealircd.pimpmylinux.org/Unreal3.2.7.tar.gz
И распакуйте его:
$ tar xzvf Unreal3.2.7.tar.gz
Создайте директории в которые вы поставите UnrealIRCd:
$ mkdir -p /home/ircd/unreal/bin
$ mkdir /home/ircd/unreal/conf
Выполните конфигурацию и настройку, для этого зайдите в каталог в который вы распаковали исходники и запустите скрипт Confg:
$ cd Unreal3.2.7/
$ ./Config
Теперь следует ответить на вопросы, которые задает скрипт, где ответ явно не указан, там просто нажимайте клавишу Enter.
Оставьте по умолчанию (просто нажимайте enter):
Do you want to enable the server anti-spoof protection?
[No] ->
Директория, где будет находиться конфигурация:
What directory are all the server configuration files in?
[/home/ircd/Unreal3.2.7] -> /home/ircd/unreal/conf
Директория и имя где находится будет исполнимый файл:
What is the path to the ircd binary including the name of the binary?
[/home/ircd/Unreal3.2.7/src/ircd] -> /home/ircd/unreal/bin/ircd
Оставьте по умолчанию:
Would you like to compile as a hub or as a leaf?
Type Hub to select hub and Leaf to select leaf.
[Hub] ->
Имя вашего сервера (по умолчанию совпадает с hostname):
What is the hostname of the server running your IRCd?
[myircserver.ru] ->
What should the default permissions for your configuration files be? (Set this to 0 to disable)
It is strongly recommended that you use 0600 to prevent unwanted reading of the file
[0600] ->
Включите поддержку SSL:
Do you want to support SSL (Secure Sockets Layer) connections?
[No] -> y
If you know the path to OpenSSL on your system, enter it here. If not
leave this blank
[] ->
Do you want to enable IPv6 support?
[No] ->
Включите поддержку ziplinks:
Do you want to enable ziplinks support?
[No] -> y
Дальше все опции по умолчанию:
If you know the path to zlib on your system, enter it here. If not
leave this blank
[] ->
Do you want to enable remote includes?
[No] ->
Do you want to enable prefixes for chanadmin and chanowner?
This will give +a the & prefix and ~ for +q (just like +o is @)
Supported by the major clients (mIRC, xchat, epic, eggdrop, Klient,
PJIRC, irssi, CGI:IRC, etc.)
This feature should be enabled/disabled network-wide.
[Yes] ->
What listen() backlog value do you wish to use? Some older servers
have problems with more than 5, others work fine with many more.
[5] ->
How far back do you want to keep the nickname history?
[2000] ->
What is the maximum sendq length you wish to have?
[3000000] ->
How many buffer pools would you like?
This number will be multiplied by MAXSENDQLENGTH.
[18] ->
How many file descriptors (or sockets) can the IRCd use?
[1024] ->
Would you like any more parameters to configure?
Write them here:
[]->
Выдастся список опций которые передаются скрипту configure:
./configure --with-showlistmodes --enable-hub --enable-ssl --enable-ziplinks --enable-prefixaq --with-listen=5 --with-dpath=/home/ircd/unreal/conf --with-spath=/home/ircd/unreal/bin/ircd --with-nick-history=2000 --with-sendq=3000000 --with-bufferpool=18 --with-hostname=ls-test-linux.firstvds.ru --with-permissions=0600 --with-fd-setsize=1024 --enable-dynamic-linking
И начнется конфигурирование. После того, как оно пройдет успешно, выполните команду:
$ make install
после чего произойдет сборка и установка UnrealIRCd
Теперь осталось его настроить, копируем файлы конфигурации:
$ cd /home/ircd/unreal/conf
$ cp doc/example.conf unrealircd.conf
Также следует создать сертификаты для работы SSL:
$ cd /home/ircd/unreal/conf
$ openssl req -newkey rsa:1024 -nodes -keyout server.key.pem -out server.cert.pem -x509 -days 3650 -subj "/C=XX/ST=XX/L=XX/O=XX/OU=XX/CN=имя(hostname).вашего.сервера/emailAddress="ваш@email.адрес
В команде укажите корректное имя вашего сервера и email-адрес
Отредактируйте unrealircd.conf аналогично настройке сервера для системы FreeBSD
Укажите пути:
loadmodule "/home/ircd/unreal/conf/modules/commands.so";
loadmodule "/home/ircd/unreal/conf/modules/cloak.so";
Пропишите в unrealircd.conf ваши настройки, такие как имя сервера, оператора сервера.
Также закомментируйте в конфигурационном файле персональный "совет дня" и "правила" для пользователей, чьи хосты заканчиваются на .fr:
/*
* tld {
* mask *@*.fr;
* motd "ircd.motd.fr";
* rules "ircd.rules.fr";
* };
*/
Либо исправьте аналогично для *@*.ru, или создайте файлы ircd.motd.fr и ircd.motd.fr в директории /home/ircd/unreal/conf - существуют различные варианты.
Запустите сервер:
$ /home/ircd/unreal/bin/ircd
При проблемах с запуском проверьте лог-файл /home/ircd/unreal/conf/ircd.log
Сервер работает, проверьте его работу, подключившись к нему при помощи irc-клиента
Добавьте сервер UnrealIRCd в автозапуск, для этого используйте crontab пользователя ircd, просто под ним выполните команду crontab -e
Запустится редактор nano, внизу экрана будут подсказки меню, пропишите строку с заданием, которое будет выполняться при перезагрузке сервера:
@reboot /home/ircd/unreal/bin/ircd
И выйдите из него нажав ctrl+x и подтвердив сохранение файла. Написав crontab -l можно убедиться в том, что задание было установлено.
На этом установка и начальная настройка UnrealIRCd закончена.
Установка серверов TeamSpeak и Ventrilo
- Установка TeamSpeak на VDS под управлением системы FreeBSD
- Установка Ventrilo на VDS под управлением FreeBSD
- Установка TeamSpeak на VDS под управлением Linux Debian
- Установка Ventrilo на VDS под управлением Linux Debian
Руководство по установке серверов голосового общения TeamSpeak и Ventrilo на Виртуальный Выделенный сервер (VDS) для операционных систем FreeBSD и Linux Debian
Серверы голосового общения TeamSpeak и Ventrilo представляют собой приложения, которые позволяют общаться голосом в сети. Основное их отличие от голосовых программ типа интернет-телефона - практически неограниченное количество абонентов разговаривающих одновременно, то есть чем-то похоже на рацию с несколькими каналами. Тем самым, использование серверов TeamSpeak и Ventrilo позволяет координировать различные действия пользователей, например, командную игру в сетевой компьютерной игре. Рассмотрим подробно установку этого программного обеспечения.Установка TeamSpeak на VDS под управлением системы FreeBSD
Мы выбрали установку на VDS на темплейте ISPmanager, однако темплейт не имеет значения.Инсталляция будет производиться из системы портов, выполните следующие команды на сервере
# cd /usr/ports/audio/teamspeak_server
# make install clean
Добавите teamspeak автозагрузку прописав в файл /etc/rc.conf строку:
teamspeak_enable="YES"
и запустить, выполнив команду:
/usr/local/etc/rc.d/teamspeak-server start
Если все в порядке, то у вас будет возможен доступ в его административный интерфейс по протоколу http, порт 14534 - http://ip-адрес_вашего_vds:14534/
Затем надо перейти в каталог /usr/local/lib/teamspeak_server и просмотреть содержимое файла server.log
В нем содержатся следующие строки:
18-12-07 05:27:27,WARNING,Info,SERVER, admin account info: username: admin password: ocggl5
18-12-07 05:27:27,WARNING,Info,SERVER, superadmin account info: username: superadmin password: r959rg
В нашем случае это логины и пароли на сервер (они создаются автоматически и при вашей инсталляции пароли на сервер будут другими)
Далее можно зайти в вебинтерфейс http://ip-адрес_вашего_vds:14534 и создать пользователей в пункте меню User manager, запретить анонимные логины и сделать другие нужные вам настройки
Для общения через сеть вам потребуется установить клиентскую программу на компьютер. Скачайте его последнюю версию для вашей системы с официального сайта TeamSpeak и выполните ее установку
После инсталляции просто указываете в его настройках ip-адрес или доменное имя сервера, ваш ник, логин и пароль, клиент подключается и готов к работе.
Установка Ventrilo на VDS под управлением FreeBSD
Сервер Ventrilo не имеет графического интерфейса, и не так распространен, как TeamSpeak, поэтому его инсталляцию мы рекомендуем опытным пользователямУстановка производится стандартным способом для системы FreeBSD - из системы портов. Установка таким способом позволяет автоматически установить необходимые зависимости и создать скрипт автоматического запуска приложения.
На сервере, на котором производилась инсталляция, был предустановлен темплейт программного обеспечения "Современное ПО" (Soft2006)
Порт автоматически не скачивает файл дистрибутива (так как существует необходимость принятия лицензионного соглашения на сайте), поэтому зайдите по адресу http://www.ventrilo.com/dlprod.php?id=105 и скачайте файл ventrilo_srv-3.0.2-FreeBSD-i386.tar.gz
Загруженный файл необходимо поместить в каталог /usr/ports/distfiles/ на сервере
Перейдите в каталог порта и выполните установку:
# cd /usr/ports/audio/ventrilo-server
# make install clean
Добавьте с ventrilo в автозапуск - пропишите в /etc/rc.conf строку
ventrilo_enable="YES"
Отредактируйте конфигурационный файл /usr/local/etc/ventrilo_srv.ini
Auth=1 (чтобы включить авторизацию пользователей, если она вам нужна)
AdminPassword=пароль администратора
Password=пользовательский пароль
Пропишите в эти поля пароль администратора сервера и пароль пользователя.
Запустите сервер
# /usr/local/etc/rc.d/ventrilo-server start
Теперь можно поставить клиента для вашей операционной системы, скачав его с официального сайта для вашей операционной системы.
В настройках прописываете ваше имя (ник), адрес сервера, пароль для подключения. После успешного подключения все действия по администрированию голосового сервера можно осуществлять из клиента.
Установка TeamSpeak на VDS под управлением Linux Debian
Использовался виртуальный сервер с темплейтом debian-4.0-i386-minimal, однако принципиального значения темплейт не имеет.Пакет teamspeak-server присутствует только в unstable репозитории, потому для простоты инсталляции скачать с сайта разработчиков бинарный файл и запустить его (т.к. при установке из него через apt-get из unstable репозитория потребуется обновить большое количество библиотек)
Скачиваем с официального сайта, приняв лицензию, версию TeamSpeak сервера для системы Linux (на текущий момент это 2.0.23.19).
Сервер при запуске не даст запускать себя с правами пользователя root, поэтому создадим пользователя teamspeak командой adduser
Затем скопируем файл TeamSpeak на сервер в домашнюю директорию пользователя (в нашем случае это /home/teamspeak
В темплейте debian-4.0-i386-minimal отсутствует bzip2, без него распаковать архив не удастся, установим его
# apt-get install bzip2
Затем (все дальнейшие действия следует выполнять как пользователь teamspeak), распакуем архив:
$ tar xjvf ts2_server_rc2_202319.tar.bz2
И запустим сервер
$ cd tss2_rc2
$ ./teamspeak2-server_startscript start
Пароли пользователя и администратора находим в файле server.log
Пропишем teamspeak в автозапуск при перезагрузке с правами пользователя (самый простой способ это использовать задачу в планировщике cron на перезагрузку сервера)
$ crontab -e
@reboot cd /home/teamspeak/tss2_rc2/ && /home/teamspeak/tss2_rc2/teamspeak2-server_startscript start
Далее также можно зайти в веб-интерфейс http://ip-адрес_вашего_vds:14534 и настроить сервер, скачать клиента к себе на компьютер и подключиться.
Установка Ventrilo на VDS под управлением Linux Debian
Производится практически аналогично установке на FreeBSD. В нашем случае также использовался виртуальный выделенный сервер с темплейтом debian-4.0-i386-minimalДля установки скачайте версию для Linux Ventrilo Server Linux i386 - 32bit с официального сайта, скопируете его на сервер по протоколу ftp или scp и затем просто распаковываете в какой-либо каталог, например:
# tar xvzf ventrilo_srv-3.0.2-Linux-i386.tar.gz -C /usr/local/
Отредактируйте конфигурационный файл сервера:
/usr/local/ventsrv/ventrilo_srv.ini
И пропишите Ventrilo в автозагрузку, можно прописать в файл /etc/rc.local команды
cd /usr/local/ventsrv/
/usr/local/ventsrv/ventrilo_srv &
Инсталляция завершена. Установите программу-клиент на компьютер и приступайте к работе.
Методы защиты электронной почты от спама
- Какие существуют методы борьбы со спамом?
- Как подключить и настроить GreyListing?
- Как настроить DNSBL (DNS Black List)?
Какие существуют методы борьбы со спамом?
Существуют два основных метода защиты почтового сервера от спама: защита от поступления спама на этапе получения почтовым сервером и «отделение спама» от остальной почты уже после получения почтовым сервером.Среди первого метода наиболее популярны такие способы как использование DNS Black List (DNSBL), greylisting и различные timeouts при отправке почты; использование различных технических средств, таких как проверка существования пользователя на отправляющей стороне (callback), проверка «правильности» отправляющего сервера такими методами как наличие записи в реверсной зоне DNS, легальности имени при установке SMTP-сессии (helo), проверка SPF записи (для работы этого в DNS записи о хосте используется соответствующая запись о легальных серверах отправителей).
Среди методики анализа содержимого письма наиболее популярны такие методы как проверка по различным алгоритмам, таким как поиск особых ключевых слов рекламного характера или на основе теоремы Бейеса. Алгоритм на основе теоремы Бейеса содержит в себе элементы теории вероятности, изначально обучается пользователем на письма которые по его мнению являются спамом и в дальнейшем отделяет по характерным признакам сообщения в которых содержится спам.
Итак, рассмотрим более подробно данные методы фильтрации электронной почты.
Черные списки. В черные списки заносятся IP-адреса, с которых производится рассылка спама. Широко используются такие списки, как списки «открытых релеев» и «открытых proxy» и различные списки динамических адресов которые выделяются провайдерами для конечных пользователей. Благодаря простоте реализации использование этих black-листов производится через службу DNS.
Серые списки или грейлистинг. Принцип действия серых списков (Greylisting) основан на тактике рассылки спама. Как правило, спам рассылается в очень короткое время в большом количестве с какого-либо сервера. Работа серого списка заключается в намеренной задержке получения писем на некоторое время. При этом адрес и время пересылки заносится в базу данных серого списка. Если удалённый компьютер является настоящим почтовым сервером, то он должен сохранить письмо в очереди и повторять пересылку в течение пяти дней. Спам-боты, как правило, писем в очереди не сохраняют, поэтому спустя непродолжительное время, прекращают попытки переслать письмо. Экспериментальным путём установлено, что в среднем время рассылки спама составляет чуть больше часа. При повторной пересылке письма с этого же адреса, если с момента первой попытки прошло необходимое количество времени письмо принимается и адрес заносится в локальный белый список на достаточно длительный срок.
Первые два метода позволяют отсеивать около 90% спама еще на этапе доставки в почтовый ящик. Уже доставленную почту можно разметить средствами анализа содержимого письма, например, используя программу spamassassin. Данный продукт позволяет на основе особых алгоритмов добавлять в заголовки письма соответствующие строки, а пользователь, на основе почтовых фильтров в почтовом клиенте, может отфильтровать почту в нужные папки почтовой программы.
Разумеется существуют и другие способы защиты от спама, наиболее действенными, к сожалению на данный момент являются превентивные меры, такие как не доставлять свой реальный E-mail на сайтах, форумах и досках объявлений, используя для подобных нужд временные адреса, которые в последствии можно удалить, в случае необходимости публикация e-mail на сайте вместо текста использовать графическое изображение и тому подобные меры.
Рассмотрим установку и настройку данных средств на VDS более подробно, панель ISPManager поддерживает управления 2 типами блокировки – это GreyListing и Black-листы.
Как подключить и настроить GreyListing?
Порт milter-greylist уже входит в темплейты ISPManager и Soft2006, для его подключения необходимо выполнить следущие действия.Редактируем файл /etc/rc.conf. Для добавления milter-greylist в автозапуск при загрузке VDS, дописывая в него следующую строку:
miltergreylist_enable="YES"
Запускаем milter-greylist:
/usr/local/etc/rc.d/milter-greylist.sh start
После чего изменяем конфигурацию sendmail, редактируя для этого файл /etc/mail/yourhostname.mc, где yourhostname – это имя вашего VDS. Если данный файл отсутствует у вас на VDS, то необходимо выполнить следующие команды:
# cd /etc/mail
# make
в файле прописываете (ниже всего текста который там содержится) следующие строки:
INPUT_MAIL_FILTER(`greylist', `S=local:/var/milter-greylist/milter-greylist.sock')
define(`confMILTER_MACROS_CONNECT', `j, {if_addr}')
define(`confMILTER_MACROS_HELO', `{verify}, {cert_subject}')
define(`confMILTER_MACROS_ENVFROM', `i, {auth_authen}')
define(`confMILTER_MACROS_ENVRCPT', `{greylist}')
define(`confINPUT_MAIL_FILTERS', `greylist')
После чего пересобираете конфигурацию почтового сервера и перезапускаете его, выполнив следующие команды:
# cd /etc/mail
# make
# make install
# make restart
Проверяете работу, просмотрев /var/log/maillog, должны появляться такие строки при отправке почты снаружи на адреса, которые расположены на VDS.
Mar 11 23:49:45 host sm-mta[79692]: l2BFmwMk079692: Milter: to=user, reject=451 4.7.1 Greylisting in action, please come back in 00:03:00
Панель ISPManager поддерживает работу с редактированием белого списка для Greylist, туда вы можете занести адреса, почта с которых не будет ни при каких условиях подвергаться грейлистингу, после включения greylisting в пункте меню Защита от спама появляется пункт Greylisting. Если сразу после установки Greylisting этого пункта у вас нет, то значит необходимо перезапустить ISPManager, выполнив команду killall ispmgr.
В этом пункте можно задавать IP-адрес (подсеть IP-адресов), доменное имя или e-mail с которых будет приниматься почта без проверки.
Для полного отключения проверки на Greylisting для какого-либо адреса или домена получателя (например, вы не хотите чтобы на ваш адрес почта подвергалась данной проверке), следует зайти в меню Доменные имена или Почтовые ящики и в свойствах домена или почтового ящика снять галочку Включить greylisting
Одним из недостарков Greylisting является возможность возникновения задержки доставки почты от 15 минут и более, в зависимости от настроек сервера отправителя.
Как настроить DNSBL (DNS Black List)?
Панель ISPManager поддерживает работу с серверами «черных списков» (адресов с которых рассылается спам). Для их подключения необходимо выполнить следующие действияВ Защита от спама в пункте Блокировка dnsbl > Списки блокировки dnsbl нажимаете кнопку добавить новый список блокировки dnsbl. В строке Список блокировки указываете доменное имя списка блокировки, с этого сервера будет запрашиваться информация о налчие того или иного почтового сервера в черном списке.
Сообщение об отказе – данное сообщение будет отсылаться в ответ на каждое заблокированное письмо.
Пример: прописываете список блокировки bl.spamcop.net и сообщение об отказе Blocked spam by bl.spamcop.net
Помимо этого списка рекомендуется использовать другие блэклисты, такие так dnsbl.njabl.org или dnsbl.sorbs.net.
Одним из недостатков использования DNSBL является возможность попадания в этот список вполне легальных почтовых серверов, таких как сервера какого либо Интернет-провайдера, или сервер какой-либо компании из-за того, что они, по сути, не являясь спамером передали через себя спам разосланный каким-либо компьютером внутри своей сети.
Сравнение режимов работы интерпретатора PHP-скриптов
Панель управления ISPmanager поддерживает следующие режимы работы интерпретатора PHP:
Достоинства
Самая высокая скорость работы скриптов, по сравнению с другими методами.
Простота работы, сервер сам обрабатывает скрипты.
Общий конфигурационный файл для всех скриптов (php.ini).
Возможность задания переменных конфигурации PHP в конфигурационном файле web-сервера или средствами файла .htaccess
Недостатки
Все скрипты запускаются с правами с которым работает web-сервер, тем самым если есть необходимость записи в какую либо директорию – права доступа необходимо дать на нее всем.
В случае запуска сторонних приложений скриптами (например, почтовая рассылка), нет возможности идентифицировать пользователя который запустил процесс.
Излишняя нагрузка на web-сервер, apache занятый обработкой скриптов может медленно отдавать другие статические данные.
Ошибки в скриптах могут привести к неработоспособности всего web-сервера
Достоинства
Все скрипты выполняются с правами пользователя – владельца www-домена.
Возможность индивидуальной настройки PHP для каждого пользователя.
Меньший расход оперативной памяти по сравнению с модулем apache
Ошибки в скриптах не приводят к падению веб-сервера в отличие от режима PHP как модуль apache
Недостатки
Проблемы с авторизацией средствами PHP (средствами команды Header) по причине того, что не передаются некоторые переменные сервера php-скрипту.
Достоинства
За счет кэширования некоторых промежуточных данных скрипт не интерпретируется каждый раз при выполнении и достигается более высокая скорость по сравнению с PHP как CGI.
Недостатки
Лишний процесс пользователя (php-cgi) находится в памяти после первого обращения к процессу.
- PHP как модуль Apache
- PHP как CGI
- PHP как FastCGI
- Изменение режима работы PHP в ISPmanager
PHP как модуль Apache
В данном случае для работы PHP используется модуль веб-сервера apache mod_phpДостоинства
Самая высокая скорость работы скриптов, по сравнению с другими методами.
Простота работы, сервер сам обрабатывает скрипты.
Общий конфигурационный файл для всех скриптов (php.ini).
Возможность задания переменных конфигурации PHP в конфигурационном файле web-сервера или средствами файла .htaccess
Недостатки
Все скрипты запускаются с правами с которым работает web-сервер, тем самым если есть необходимость записи в какую либо директорию – права доступа необходимо дать на нее всем.
В случае запуска сторонних приложений скриптами (например, почтовая рассылка), нет возможности идентифицировать пользователя который запустил процесс.
Излишняя нагрузка на web-сервер, apache занятый обработкой скриптов может медленно отдавать другие статические данные.
Ошибки в скриптах могут привести к неработоспособности всего web-сервера
PHP как CGI
В случае работы PHP как CGI используется запуск PHP-скрипта через его передачу на выполнение непосредственно интерпретатору PHP.Достоинства
Все скрипты выполняются с правами пользователя – владельца www-домена.
Возможность индивидуальной настройки PHP для каждого пользователя.
Меньший расход оперативной памяти по сравнению с модулем apache
Ошибки в скриптах не приводят к падению веб-сервера в отличие от режима PHP как модуль apache
Недостатки
Проблемы с авторизацией средствами PHP (средствами команды Header) по причине того, что не передаются некоторые переменные сервера php-скрипту.
PHP как FastCGI
При этом используется модуль Apache mod_fastcgi, скрипты передаются его средствами на вход интерпретатора PHP.Достоинства
За счет кэширования некоторых промежуточных данных скрипт не интерпретируется каждый раз при выполнении и достигается более высокая скорость по сравнению с PHP как CGI.
Недостатки
Лишний процесс пользователя (php-cgi) находится в памяти после первого обращения к процессу.
