Установка и настройка Apache2 в Linux

Apache HTTP-сервер — назван именем племён североамериканских индейцев Апачи, также является сокращением «a patchy server» — свободный веб-сервер.

Читать далее «Установка и настройка Apache2 в Linux»

Установка и настройка Zabbix Server в Linux Ubuntu

Zabbix — система мониторинга, отслеживания серверов и сетевого оборудования.

Ниже приведу пример установки Zabbix Server и Zabbix Agent из официального репозитория Ubuntu, если необходимо установить самую новую версию, то необходимо сначала установить репозитории Zabbix, например смотрите мою статью — Установка Zabbix Server 3.4 в Ubuntu 16.04

Устанавливаем сервер, веб-интерфейс и агента:

sudo apt-get install zabbix-server-mysql zabbix-frontend-php zabbix-agent traceroute fping

Если при установке не выполнялась настройка mysql параметров, то вручную создаем MySQL пользователя и полные права на базу данных:

mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'PASSWORD';
exit

Импортируем таблицы в базу данных:

cd /usr/share/zabbix-server-mysql
sudo gunzip schema.sql.gz
sudo gunzip images.sql.gz
sudo gunzip data.sql.gz
mysql -uroot -p zabbix < schema.sql
mysql -uroot -p zabbix < images.sql
mysql -uroot -p zabbix < data.sql

Конфиги находятся по адресу /etc/zabbix/

Конфиг веб-интерфейса находится по адресу:
/etc/apache2/conf-available/zabbix
Если его нет, то можно скопировать шаблон и настроить:

sudo cp /etc/zabbix/apache.conf /etc/apache2/sites-enabled/zabbix.conf

Либо сделаем символическую ссылку в директорию веб сервера на файлы zabbix:

sudo ln -s /usr/share/zabbix/ /var/www/html/

Откроем конфигурационный файл PHP например в редакторе nano (CTRL+X для выхода, y/n для сохранения или отмены изменений):

sudo nano /etc/php5/apache2/php.ini

И изменим некоторые минимальные параметры:

date.timezone = Europe/Kiev
max_execution_time 300
memory_limit 128M
post_max_size 16M
upload_max_filesize 2M
max_input_time 300

Чтобы изменения вступили в силу, необходимо перезагрузить веб сервер:

sudo /etc/init.d/apache2 restart

Открываем веб интерфейс по адресу http://SERVER/zabbix/ и следуем подсказкам для дальнейшей установки.
По умолчанию имя пользователя для входа через веб-интерфейс — admin, пароль — zabbix.
При сохранении конфигурационного файла zabbix.conf.php будет сообщение что нет прав на запись, поэтому временно их разрешим:

sudo chmod 777 /etc/zabbix

Когда конфигурационный файл сохранится вернем обратно:

sudo chmod 755 /etc/zabbix

Также укажем во втором конфигурационном файле zabbix_server.conf логин и пароль подключения к MySQL базе данных (такой же как в zabbix.conf.php):

sudo nano /etc/zabbix/zabbix_server.conf

Если в веб интерфейсе отображается сообщение что zabbix сервер не запущен, то необходимо изменить параметр START=no на START=yes в файле /etc/default/zabbix-server и выполнить команду запуска:

sudo service zabbix-server start

После установки рекомендую сменить пароль пользователю admin и отключить гостевого пользователя.

Продавец комплектов арены 7 сезона [sql]

Приведу пример sql запроса для торговца комплектами арены 7 сезона для всех классов (ID предметов выбирали модераторы):

REPLACE INTO `creature_template` (`entry`, `difficulty_entry_1`, `difficulty_entry_2`, `difficulty_entry_3`, `KillCredit1`, `KillCredit2`, `modelid1`, `modelid2`, `modelid3`, `modelid4`, `name`, `subname`, `IconName`, `gossip_menu_id`, `minlevel`, `maxlevel`, `exp`, `faction_A`, `faction_H`, `npcflag`, `scale`, `rank`, `mindmg`, `maxdmg`, `dmgschool`, `attackpower`, `dmg_multiplier`, `baseattacktime`, `rangeattacktime`, `unit_class`, `unit_flags`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `minrangedmg`, `maxrangedmg`, `rangedattackpower`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `spell5`, `spell6`, `spell7`, `spell8`, `PetSpellDataId`, `VehicleId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `Health_mod`, `Mana_mod`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `questItem5`, `questItem6`, `movementId`, `RegenHealth`, `equipment_id`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`) VALUES (200107, 0, 0, 0, 0, 0, 224, 224, 224, 224, 'Продавец А7', 'Выдача акционных вещей', '', 0, 85, 85, 1, 2007, 2007, 128, 1, 2, 999, 999, 0, 999, 1, 0, 0, 2, 4160, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, 3, 23000, 23000, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, '');

/* Устанавливаем торговца в Даларане на Площадке Краса */
INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`) VALUES
(200107, 200107, 571, 1, 1, 0, 0, 5824.9, 502.309, 657.354, 4.45535, 300, 0, 0, 11500, 23000, 0, 0, 0, 0);

DELETE FROM `npc_vendor` WHERE (`entry`=200107);
INSERT INTO `npc_vendor` (entry, item, maxcount, incrtime, ExtendedCost) VALUES
/* created by ixnfo.com */
/* а7 воин */
(200107, 40790, 0, 0, 0),
(200107, 40810, 0, 0, 0),
(200107, 40829, 0, 0, 0),
(200107, 40850, 0, 0, 0),
(200107, 40870, 0, 0, 0),
/* a7 друид (интелект) */
(200107, 41276, 0, 0, 0),
(200107, 41288, 0, 0, 0),
(200107, 41299, 0, 0, 0),
(200107, 41311, 0, 0, 0),
(200107, 41322, 0, 0, 0),
/* a7 друид (ловкость) */
(200107, 41662, 0, 0, 0),
(200107, 41668, 0, 0, 0),
(200107, 41679, 0, 0, 0),
(200107, 41716, 0, 0, 0),
(200107, 41774, 0, 0, 0),
/* a7 жрец "Одеяние неумолимого гладиатора" */
(200107, 41916, 0, 0, 0),
(200107, 41922, 0, 0, 0),
(200107, 41928, 0, 0, 0),
(200107, 41935, 0, 0, 0),
(200107, 41941, 0, 0, 0),
/* a7 жрец "Убор неумолимого гладиатора" */
(200107, 41855, 0, 0, 0),
(200107, 41860, 0, 0, 0),
(200107, 41865, 0, 0, 0),
(200107, 41870, 0, 0, 0),
(200107, 41875, 0, 0, 0),
/* a7 маг */
(200107, 41947, 0, 0, 0),
(200107, 41954, 0, 0, 0),
(200107, 41960, 0, 0, 0),
(200107, 41966, 0, 0, 0),
(200107, 41972, 0, 0, 0),
/* a7 охотник */
(200107, 41088, 0, 0, 0),
(200107, 41144, 0, 0, 0),
(200107, 41158, 0, 0, 0),
(200107, 41206, 0, 0, 0),
(200107, 41218, 0, 0, 0),
/* a7 паладин (сила) */
(200107, 40792, 0, 0, 0),
(200107, 40812, 0, 0, 0),
(200107, 40831, 0, 0, 0),
(200107, 40852, 0, 0, 0),
(200107, 40872, 0, 0, 0),
/* a7 паладин (интелект) */
(200107, 40910, 0, 0, 0),
(200107, 40928, 0, 0, 0),
(200107, 40934, 0, 0, 0),
(200107, 40940, 0, 0, 0),
(200107, 40964, 0, 0, 0),
/* a7 разбойник */
(200107, 41651, 0, 0, 0),
(200107, 41656, 0, 0, 0),
(200107, 41673, 0, 0, 0),
(200107, 41684, 0, 0, 0),
(200107, 41768, 0, 0, 0),
/* a7 рыцарь смерти */
(200107, 40791, 0, 0, 0),
(200107, 40811, 0, 0, 0),
(200107, 40830, 0, 0, 0),
(200107, 40851, 0, 0, 0),
(200107, 40871, 0, 0, 0),
/* a7 чернокнижник */
(200107, 41994, 0, 0, 0),
(200107, 41999, 0, 0, 0),
(200107, 42006, 0, 0, 0),
(200107, 42012, 0, 0, 0),
(200107, 42018, 0, 0, 0),
/* a7 шаман (ловкость) */
(200107, 41082, 0, 0, 0),
(200107, 41138, 0, 0, 0),
(200107, 41152, 0, 0, 0),
(200107, 41200, 0, 0, 0),
(200107, 41212, 0, 0, 0),
/* a7 шаман (интелект) */
(200107, 40995, 0, 0, 0),
(200107, 41008, 0, 0, 0),
(200107, 41020, 0, 0, 0),
(200107, 41034, 0, 0, 0),
(200107, 41045, 0, 0, 0),
/* а7 оружие */
(200107, 42354, 0, 0, 0),
(200107, 42483, 0, 0, 0),
(200107, 42504, 0, 0, 0),
(200107, 42515, 0, 0, 0),
(200107, 42521, 0, 0, 0),
(200107, 42527, 0, 0, 0),
(200107, 42533, 0, 0, 0),
(200107, 42539, 0, 0, 0),
(200107, 42561, 0, 0, 0),
(200107, 42566, 0, 0, 0),
(200107, 42572, 0, 0, 0),
(200107, 48402, 0, 0, 0),
(200107, 48404, 0, 0, 0),
(200107, 48406, 0, 0, 0),
(200107, 48408, 0, 0, 0),
(200107, 48410, 0, 0, 0),
(200107, 48412, 0, 0, 0),
(200107, 48414, 0, 0, 0),
(200107, 48420, 0, 0, 0),
(200107, 48422, 0, 0, 0),
(200107, 48424, 0, 0, 0),
(200107, 48426, 0, 0, 0),
(200107, 48428, 0, 0, 0),
(200107, 48432, 0, 0, 0),
(200107, 48435, 0, 0, 0),
(200107, 48438, 0, 0, 0),
(200107, 48440, 0, 0, 0),
(200107, 48442, 0, 0, 0),
(200107, 48444, 0, 0, 0),
(200107, 48507, 0, 0, 0),
(200107, 48509, 0, 0, 0),
(200107, 48511, 0, 0, 0),
(200107, 48513, 0, 0, 0),
(200107, 48515, 0, 0, 0),
(200107, 48517, 0, 0, 0),
(200107, 48519, 0, 0, 0),
(200107, 48521, 0, 0, 0),
(200107, 48523, 0, 0, 0),
(200107, 49185, 0, 0, 0),
(200107, 49187, 0, 0, 0),
(200107, 49191, 0, 0, 0);

Продавец комплектов арены 5 сезона [sql]

Как всегда небольшая работа для модераторов и всех желающих помочь — написать в столбик айди шмоток и оружия арены 5 сезона (http://ru.wowhead.com/). Одни пишут — другие проверяют. Из айди я написал sql запрос для торговца.

Результат:

REPLACE INTO `creature_template` (`entry`, `difficulty_entry_1`, `difficulty_entry_2`, `difficulty_entry_3`, `KillCredit1`, `KillCredit2`, `modelid1`, `modelid2`, `modelid3`, `modelid4`, `name`, `subname`, `IconName`, `gossip_menu_id`, `minlevel`, `maxlevel`, `exp`, `faction_A`, `faction_H`, `npcflag`, `scale`, `rank`, `mindmg`, `maxdmg`, `dmgschool`, `attackpower`, `dmg_multiplier`, `baseattacktime`, `rangeattacktime`, `unit_class`, `unit_flags`, `dynamicflags`, `family`, `trainer_type`, `trainer_spell`, `trainer_class`, `trainer_race`, `minrangedmg`, `maxrangedmg`, `rangedattackpower`, `type`, `type_flags`, `lootid`, `pickpocketloot`, `skinloot`, `resistance1`, `resistance2`, `resistance3`, `resistance4`, `resistance5`, `resistance6`, `spell1`, `spell2`, `spell3`, `spell4`, `spell5`, `spell6`, `spell7`, `spell8`, `PetSpellDataId`, `VehicleId`, `mingold`, `maxgold`, `AIName`, `MovementType`, `InhabitType`, `Health_mod`, `Mana_mod`, `RacialLeader`, `questItem1`, `questItem2`, `questItem3`, `questItem4`, `questItem5`, `questItem6`, `movementId`, `RegenHealth`, `equipment_id`, `mechanic_immune_mask`, `flags_extra`, `ScriptName`) VALUES (200105, 0, 0, 0, 0, 0, 224, 224, 224, 224, 'Продавец А5', 'Выдача акционных вещей', '', 0, 85, 85, 1, 2007, 2007, 128, 1, 2, 999, 999, 0, 999, 1, 0, 0, 2, 4160, 8, 0, 0, 0, 0, 0, 0, 0, 0, 7, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, 3, 23000, 23000, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, '');

/* Устанавливаем торговца в Даларане на Площадке Краса */
INSERT INTO `creature` (`guid`, `id`, `map`, `spawnMask`, `phaseMask`, `modelid`, `equipment_id`, `position_x`, `position_y`, `position_z`, `orientation`, `spawntimesecs`, `spawndist`, `currentwaypoint`, `curhealth`, `curmana`, `MovementType`, `npcflag`, `unit_flags`, `dynamicflags`) VALUES
(200105, 200105, 571, 1, 1, 0, 0, 5824.88, 496.22, 657.009, 1.65763, 300, 0, 0, 11500, 23000, 0, 0, 0, 0);

DELETE FROM `npc_vendor` WHERE (`entry`=200105);
INSERT INTO `npc_vendor` (entry, item, maxcount, incrtime, ExtendedCost) VALUES
/* created by ixnfo.com */
/* а5 воин "Броня злобного гладиатора" 200 lvl */
(200105, 40783, 0, 0, 0),
(200105, 40801, 0, 0, 0),
(200105, 40819, 0, 0, 0),
(200105, 40840, 0, 0, 0),
(200105, 40859, 0, 0, 0),
/* a5 друид "Снаряжение злобного гладиатора" 200 lvl */
(200105, 41659, 0, 0, 0),
(200105, 41665, 0, 0, 0),
(200105, 41676, 0, 0, 0),
(200105, 41713, 0, 0, 0),
(200105, 41771, 0, 0, 0),
/* a5 друид "Шкуры злобного гладиатора" 200 lvl */
(200105, 41279, 0, 0, 0),
(200105, 41291, 0, 0, 0),
(200105, 41302, 0, 0, 0),
(200105, 41314, 0, 0, 0),
(200105, 41325, 0, 0, 0),
/* a5 друид "Щит злобного гладиатора" 200 lvl */
(200105, 41273, 0, 0, 0),
(200105, 41284, 0, 0, 0),
(200105, 41296, 0, 0, 0),
(200105, 41308, 0, 0, 0),
(200105, 41319, 0, 0, 0),
/* a5 жрец "Одеяния злобного гладиатора" 200 lvl */
(200105, 41913, 0, 0, 0),
(200105, 41919, 0, 0, 0),
(200105, 41925, 0, 0, 0),
(200105, 41931, 0, 0, 0),
(200105, 41938, 0, 0, 0),
/* a5 жрец "Убор злобного гладиатора" 200 lvl */
(200105, 41852, 0, 0, 0),
(200105, 41857, 0, 0, 0),
(200105, 41862, 0, 0, 0),
(200105, 41867, 0, 0, 0),
(200105, 41872, 0, 0, 0),
/* a5 маг "Шелковый клобук злобного гладиатора" 200 lvl */
(200105, 41944, 0, 0, 0),
(200105, 41950, 0, 0, 0),
(200105, 41957, 0, 0, 0),
(200105, 41963, 0, 0, 0),
(200105, 41969, 0, 0, 0),
/* a5 охотник "Облачение злобного гладиатора" 200 lvl */
(200105, 41085, 0, 0, 0),
(200105, 41141, 0, 0, 0),
(200105, 41155, 0, 0, 0),
(200105, 41203, 0, 0, 0),
(200105, 41215, 0, 0, 0),
/* a5 паладин "Опора злобного гладиатора" 200 lvl */
(200105, 40782, 0, 0, 0),
(200105, 40802, 0, 0, 0),
(200105, 40821, 0, 0, 0),
(200105, 40842, 0, 0, 0),
(200105, 40861, 0, 0, 0),
/* a5 паладин "Щит злобного гладиатора" 200 lvl */
(200105, 40904, 0, 0, 0),
(200105, 40925, 0, 0, 0),
(200105, 40931, 0, 0, 0),
(200105, 40937, 0, 0, 0),
(200105, 40961, 0, 0, 0),
/* a5 разбойник "Облачение злобного гладиатора" 200 lvl */
(200105, 41648, 0, 0, 0),
(200105, 41653, 0, 0, 0),
(200105, 41670, 0, 0, 0),
(200105, 41681, 0, 0, 0),
(200105, 41765, 0, 0, 0),
/* a5 рыцарь смерти "Кощунство злобного гладиатора" 200 lvl */
(200105, 40781, 0, 0, 0),
(200105, 40803, 0, 0, 0),
(200105, 40820, 0, 0, 0),
(200105, 40841, 0, 0, 0),
(200105, 40860, 0, 0, 0),
/* a5 чернокнижник "Оскверненный покров злобного гладиатора" 200 lvl */
(200105, 41991, 0, 0, 0),
(200105, 42001, 0, 0, 0),
(200105, 42003, 0, 0, 0),
(200105, 42009, 0, 0, 0),
(200105, 42015, 0, 0, 0),
/* a5 шаман "Громовой кулак злобного гладиатора" 200 lvl */
(200105, 40989, 0, 0, 0),
(200105, 41005, 0, 0, 0),
(200105, 41017, 0, 0, 0),
(200105, 41031, 0, 0, 0),
(200105, 41042, 0, 0, 0),
/* a5 шаман "Цунами злобного гладиатора" 200 lvl */
(200105, 40988, 0, 0, 0),
(200105, 40999, 0, 0, 0),
(200105, 41011, 0, 0, 0),
(200105, 41025, 0, 0, 0),
(200105, 41036, 0, 0, 0),
/* a5 шаман "Землекрушитель злобного гладиатора" 200 lvl */
(200105, 41079, 0, 0, 0),
(200105, 41135, 0, 0, 0),
(200105, 41149, 0, 0, 0),
(200105, 41162, 0, 0, 0),
(200105, 41209, 0, 0, 0),
/* a5 оружие */
(200105, 39427, 0, 0, 0),
(200105, 39468, 0, 0, 0),
(200105, 42207, 0, 0, 0),
(200105, 42279, 0, 0, 0),
(200105, 42284, 0, 0, 0),
(200105, 42326, 0, 0, 0),
(200105, 42383, 0, 0, 0),
(200105, 44418, 0, 0, 0),
(200105, 42316, 0, 0, 0),
(200105, 42321, 0, 0, 0),
(200105, 42331, 0, 0, 0),
(200105, 42489, 0, 0, 0),
(200105, 42494, 0, 0, 0),
(200105, 42484, 0, 0, 0),
(200105, 42449, 0, 0, 0),
(200105, 42501, 0, 0, 0),
(200105, 42512, 0, 0, 0),
(200105, 42563, 0, 0, 0),
(200105, 42569, 0, 0, 0),
(200105, 40701, 0, 0, 0),
(200105, 42536, 0, 0, 0);

Таблица autobroadcast

Данная таблица содержит сообщения которые автоматически отображаются на сервере всем кто онлайн. Отображение происходит через указанный в файле конфигурации период времени.

Для включения, в конфигурационном фале мира должны быть выставлены примерно такие значения:
//включение или выключение
AutoBroadcast.On = 1
//отображение сообщений по центру экрана
AutoBroadcast.Center = 0
//период времени в миллисекундах через который выводятся сообщения (60000мс.=60с.=1м.)
AutoBroadcast.Timer = 60000

Пример запроса добавления сообщения в таблицу:

INSERT INTO `autobroadcast` VALUES ('1', 'Текст вашего сообщения');

Установка DHCP сервера в Ubuntu

DHCP (Dynamic Host Configuration Protocol) — сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети.

Приведу пример установки в Ubuntu:

sudo apt-get install dhcp3-server

Остановка/перезапуск/запуск:

sudo /etc/init.d/dhcp3-server stop/restart/start

Конфигурационный файл находится по адресу /etc/dhcp3/dhcpd.conf

Пример конфигурации:

default-lease-time 600; 
max-lease-time 7200;
subnet 192.168.0.0 netmask 255.255.255.0 {
       option routers                  192.168.0.1;  #шлюз
       option subnet-mask              255.255.255.0; #маска подсети
       option domain-name              "example.com"; 
       option domain-name-servers       192.168.0.2, 192.168.0.3; #DNS-сервера
       range 192.168.1.10 192.168.1.100; #диапазон ip адресов
}

Выдача IP по мак адресу:

host host1 {
   option host-name "host1.example.com"; 
   hardware ethernet 00:12:34:56:78:90;
   fixed-address 192.168.0.15;
}

Проверим запущен ли DHCP сервер:

sudo netstat -tulpn | grep :67

Смотрите также мои статьи:
IPTables правила для DHCP
Скрипт конфигурации DHCP
Установка и настройка isc-dhcp-server в Ubuntu

Установка и настройка SSH

SSH (англ. Secure SHell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов).

Читать далее «Установка и настройка SSH»

Обновление WordPress без FTP

Иногда при обновление плагинов, тем или движка WordPress может появляться окно запрашивающее логин, пароль, адрес FTP сервера для загрузки новых файлов, чтобы этого не происходило можно добавить строку в файл конфигурации wp-config.php:

Читать далее «Обновление WordPress без FTP»