Решение PHP Notice: Use of undefined constant x — assumed ‘x’

Заметил однажды при написании PHP скрипта следующее уведомление:

PHP Notice:  Use of undefined constant uid - assumed 'uid' in /scripts/file.php on line 31
PHP Notice:  Use of undefined constant value - assumed 'value' in /scripts/file.php on line 32

Читать далее «Решение PHP Notice: Use of undefined constant x — assumed ‘x’»

IPTables правила для DNS

Допустим на сервере по умолчанию INPUT DROP и установлен DNS сервер, теперь приведу пример IPTables правил чтобы к DNS серверу могли обращайся клиенты.

Чтобы открыть порт DNS в IPTables выполним правило:

Читать далее «IPTables правила для DNS»

Скрипт отправки СМС через Goip4 шлюз для ABillS

Приведу пример PHP скрипта, которым я рассылаю СМС сообщения через GoIP4 шлюз.

Сначала выберем тарифы только с месячным начислением:

SELECT name, tp_id FROM tarif_plans;
SELECT name, tp_id FROM tarif_plans WHERE month_fee>0;

Собственно вот сам скрипт, я запускаю его из cron на отдельном сервере (где я установил GoIP4 СМС сервер):

Читать далее «Скрипт отправки СМС через Goip4 шлюз для ABillS»

Обновление BIOS P70 на HP ProLiant DL380p Gen8

На тесте выполню обновление BIOS P70 на сервере HP ProLiant DL380p Gen8.
Выполнять обновление буду через iLO4.
На момент написания статьи, на сервере был BIOS версии 03/01/2013, а с официального сайта я скачал 24/05/2019.

Читать далее «Обновление BIOS P70 на HP ProLiant DL380p Gen8»

Клавиши Home, End, Page Up и Page Down на MacBook

Приведу примеры использования некоторых клавиш в MacOS на MacBook, которых нет на клавиатуре:

PageUp — fn + стрелка вверх
PageUp (в браузере) — Пробел
PageDown — fn + стрелка вниз
PageDown (в браузере) — Shift + Пробел
Читать далее «Клавиши Home, End, Page Up и Page Down на MacBook»

Настройка WatchDog от ABillS

В биллинговой системе ABillS можно настроить проверку состояния любых запущенных программ, и настроить автоматический запуск если какая либо из них не запущена.

Например для слежением за FreeRadius необходимо выполнять команду:

/usr/abills/libexec/billd check_programs PROGRAMS="radiusd:/etc/init.d/radiusd start"

Где «radiusd» — имя программы в процессах, а «/etc/init.d/radiusd start» команды для ее запуска.

Читать далее «Настройка WatchDog от ABillS»

Настройка IP Unnumbered на Cisco

На тесте настрою IP Unnumbered на Cisco Catalyst 6509E с прошивкой 12.2(33)SXJ7, на других коммутаторах настройка аналогична.
IP Unnumbered полезен например когда нужно поделить большую сеть на несколько VLAN и при этом использовать одни и те же IP адреса, а также чтобы выдавать белые IP в любом VLAN используя один шлюз.

Подключимся к терминалу устройства через консоль, telnet или SSH.

Читать далее «Настройка IP Unnumbered на Cisco»

Установка и использование mysqltuner.pl

MySQLTuner — это Perl скрипт, который даст рекомендации по повышению производительности и стабильности MySQL сервера.

Читать далее «Установка и использование mysqltuner.pl»

Установка UNMS (Ubiquiti Network Management System)

UNMS (Ubiquiti Network Management System) — система управления устройствами EdgeMAX®, EdgeSwitch®, airMAX®, UFiber, включающая обновление программного обеспечения, создание резервных копий конфигурации, графики производительности в реальном времени, уведомления, карты расположения устройств и т.д.

На примере выполню установку UNMS в Ubuntu Server 18.04 64bit.

Сначала установим необходимые компоненты:

sudo apt-get update
sudo apt-get install curl sudo bash netcat

Скачаем во временную директорию скрипт установки с официального сайта:

curl -fsSL https://unms.com/install > /tmp/unms_inst.sh

Запустим скачанный скрипт:

sudo bash /tmp/unms_inst.sh

Если необходимо во время установки изменить web порты:

sudo bash /tmp/unms_inst.sh --http-port 8080 --https-port 8443

По умолчанию UNMS использует Let’s Encrypt при создания SSL сертификатов для вашего домена и сохраняет их в /home/unms/data/cert/live.
Если вы хотите использовать свои SSL сертификаты, то при установке например укажем (UNMS должен иметь права чтения в ssl-cert-dir):

sudo bash /tmp/unms_inst.sh --http-port 8080 --https-port 8443 --ssl-cert-dir /etc/certificates --ssl-cert fullchain.pem --ssl-cert-key privkey.pem