Как установить и включить soap

Чтобы установить soap в Ubuntu/Debian необходимо выполнить команду:

sudo apt-get install php-soap

В CentOS так:

sudo yum install php-soap

Поискать имя пакета если что можно так:

apt-cache search php | grep -i soap
yum search php | grep -i soap

Активировать/деактивировать модуль можно так:

sudo phpenmod soap
sudo phpdismod soap

Перезапустим Apache2 чтобы применить изменения:

sudo service apache2 restart

Посмотрим активирован ли soap:

php -i | grep -i soap

Как установить и включить mcrypt

Чтобы установить mcrypt в Ubuntu/Debian необходимо выполнить команду:

sudo apt-get install php-mcrypt

В CentOS так:

sudo yum install php-mcrypt

После этого в директории PHP появится файл mcrypt.ini подгружающий расширение mcrypt.so, в моем случае появился /etc/php/7.0/mods-available/mcrypt.ini.

Активировать/деактивировать модуль можно так:

sudo phpenmod mcrypt
sudo phpdismod mcrypt

Перезапустим Apache2 чтобы применить изменения:

sudo service apache2 restart

Посмотрим активирован ли mcrypt:

php -i | grep -i mcrypt

Настройка ircd-hybrid

Допустим мы установили ircd-hybrid как я описывал в этой статье — Установка IRC сервера — ircd-hybrid
Теперь приступим к настройке.

Отредактируем текст приветственного сообщения:

sudo nano /etc/ircd-hybrid/ircd.motd

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

sudo cp /etc/ircd-hybrid/ircd.conf /etc/ircd-hybrid/ircd_original.conf

Откроем в текстовом редакторе основной файл конфигурации, настроим параметры и закомментируем ненужные:

sudo nano /etc/ircd-hybrid/ircd.conf

В конфигурационном файле сначала идут стандартные параметры serverinfo, по желанию изменим их:

serverinfo {
        name = "hybrid8.debian.local";
        description = "test";
        network_name = "debian";
        network_desc = "This is My Network";
        hub = no;
        default_max_clients = 512;
        max_nick_length = 15;
        max_topic_length = 300;
};

Далее контакты администратора сервера, по желанию изменим их:

admin {
        name = "SYSADMIN";
        description = "Main Server Administrator";
        email = "<admin@example.com>";
};

Сетевые параметры (на каких портах будет работать ircd-hybrid, например можно изменить на один 6667):

listen {
        port = 6665 .. 6669;
};

Первый блок auth который разрешает подключаться всем с локального адреса 127.0.0.1:

auth {
        user = "*@127.0.0.1";
        spoof = "i.love.debian.org";
        class = "opers";
        flags = need_password, spoof_notice, exceed_limit, kline_exempt,
                xline_exempt, resv_exempt, no_tilde, can_flood;
};

Еще один блок auth разрешающий подключаться всем (его закомментируем или изменим под свои нужды):

auth {
        user = "*@*";
        class = "users";
        flags = need_ident;
};

Например, создадим пароль пользователю, скопируем результат команды в зашифрованном виде:

mkpasswd PASSWORD

Добавим возможность авторизации любым пользователям только с паролем и с указанной сети:

auth {
        user = "*@192.168.3.0/24";
        class = "users";
        flags = need_password;
encrypted = yes;
password = "PASSWORD_FROM_mkpasswd";
};

В блоке auth пароль будет хранится в шифрованном виде, в IRC клиенте указывается как есть.
Чтобы указать в блоке auth пароль в нешифрованном виде, нужно убрать encrypted.

В секции general отключим need_ident:

general {
...
disable_auth = yes;
...
};

Перезапустим ircd-hybrid чтобы применить изменения:

sudo /etc/init.d/ircd-hybrid restart
sudo service ircd-hybrid restart

Также можем добавить оператора:

auth {
name = "admin";
user = "admin@192.168.3.254/32";
class = "opers";
flags = need_password, spoof_notice, exceed_limit, kline_exempt;
encrypted = yes;
password = "PASSWORD_FROM_mkpasswd";
};

Блокировать IP адреса в случае необходимости можно следующим образом:

deny {
       ip = "192.168.4.4/32";
       reason = "Spam";
};

После изменений в конфигурационном файле нужно перезапустить ircd-hybrid.
В качестве клиента можно использовать например бесплатный AdiIRC.

Установка IRC сервера — ircd-hybrid

Приведу пример установки IRC сервера — ircd-hybrid.

Для установки ircd-hybrid в Ubuntu выполним команду:

sudo apt-get install ircd-hybrid

После установки ircd-hybrid будет использовать TCP порты 6665-6669.

По желанию, чтобы подключиться к IRC из терминала, можно установить например IRC клиент epic4:

sudo apt-get install epic4

И подключиться:

irc 127.0.0.1

Подключиться к каналу можно командой:

/join CHANNEL

Выйти:

/quit

Проверить запущен ли ircd-hybrid можно например так:

netstat -a | grep irc
netstat -an | grep 6667

Перезапустить ircd-hybrid можно так:

sudo /etc/init.d/ircd-hybrid restart

Если используется iptables, до нужно прописать правило:

sudo iptables -A INPUT -p tcp -m tcp -s 192.168.1.0/24 --dport 6667 -j ACCEPT

На этом установка завершена и можно переходить к настройке.
Смотрите мою статью о настройке — Настройка ircd-hybrid

Также приведу пример установки ircd-hybrid из исходников.
Скачаем ircd-hybrid с официальный сайта:

wget http://prdownloads.sourceforge.net/ircd-hybrid/ircd-hybrid-8.2.22.tgz
tar -xvf ircd-hybrid-8.2.22.tgz
cd ircd-hybrid-8.2.22

Установим необходимые компоненты:

sudo apt-get install build-essential unzip cmake

Сконфигурируем и установим ircd-hybrid:

./configure --prefix="/home/USER/ircd"
make
make install

Можно также установить Anope (для расширения функциональности):

cd /tmp/
wget https://github.com/anope/anope/archive/2.0.zip
unzip 2.0.zip
cd anope-2.0
./Config
cd build
make
make install

Установим правильного владельца:

sudo chown -R USER: ~/services ~/ircd

Устранение повторяющихся заголовков на страницах WordPress

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

После просмотра кода, заметил что их дописывает плагин Yoast SEO, отредактировал в его настройках Titles & Metas — Yoast SEO строки:

%%title%% %%page%% %%sep%% %%sitename%%

Но получилось не очень красиво, так как плагин иногда пропускал пробел после дефиса, по этому вернул как было.

Исправил ошибку закомментировав в коде активного шаблона (файл layout-head.php) строку:

// bloginfo( 'name' );

После этого название страниц отображалось правильно.

P.S. Если отключать плагин Yoast SEO, то указанную выше строку нужно будет обратно раскомментировать.
Если тема не самописная, то вероятно после появления и установки её обновления файл layout-head.php вернется к оригинальному состоянию.

Смотрите также:
Как убрать в wordpress rss ленте повторяющийся title

Решение ошибки /usr/sbin/ejabberdctl: line 428: 14615 Segmentation fault

Заметил однажды после установки EJabberd в Ubuntu Server 16.04 и добавлении пользователя от root командой:

ejabberdctl register USER localhost PASSWORD

Следующую ошибку:

/usr/sbin/ejabberdctl: line 428: 14615 Segmentation fault $EXEC_CMD «$CMD»

В лог файле /var/log/syslog сообщалось:

Sep 11 11:17:00 mail kernel: [4647543.535271] audit: type=1400 audit(1505117820.598:43): apparmor=»DENIED» operation=»file_mmap» profile=»/usr/sbin/ejabberdctl//su» name=»/bin/su» pid=14439 comm=»su» requested_mask=»m» denied_mask=»m» fsuid=0 ouid=0

Для решения ошибки открыл файл конфигурации apparmor:

nano /etc/apparmor.d/usr.sbin.ejabberdctl

Нашел строку:

/bin/su                                 r,

И изменил её, добавив m:

/bin/su                                 rm,

Перезапустил apparmor:

sudo service apparmor restart

Все, ошибка больше не появлялась.

Установка GPON платы в Huawei OLT

На тесте возьму плату H805GPFD с 16 GPON портами и установлю её в OLT Huawei SmartAX MA5683T не выключая его.
После вставки на плате индикатор RUN/ALM замигал красным и буквально через минуту зеленым.

Читать далее «Установка GPON платы в Huawei OLT»

Как зайти в BIOS на ноутбуках Lenovo

Сегодня понадобилось зайти в BIOS на ноутбуке Lenovo IdeaPad 110-15IBR (80T7), но при нажатии всех клавиш которые обычно используются для входа в BIOS ноутбук не отреагировал и продолжилась загрузка системы.

Как оказалось в BIOS этой модели ноутбука Lenovo стандартно активирована функция HotKey Mode и вместо клавиш F1-F12 срабатывают функциональные.

Поэтому чтобы зайти в BIOS необходимо нажать одновременно две клавиши Fn и F2, если HotKey Mode отключено, то просто F2.

Смотрите такжеФункциональные клавиши Fn на ноутбуке работают наоборот

Резервное копирование Redmine

Создадим скрипт (в текстовом редакторе nano Ctrl+X для выхода, y/n для сохранения или отмены изменений):

sudo nano /etc/cron.daily/redmine

Пример содержимого скрипта:

#!/bin/sh
/usr/bin/mysqldump -u root -p<password> redmine_default | gzip > /path/to/backups/redmine_db_`date +%y_%m_%d`.gz
rsync -a /var/lib/redmine/default/files /path/to/backups/files

Сделаем скрипт исполняемым:

chmod +x /etc/cron.daily/redmine

В скрипте можно также добавить команду удаления старых файлов или директории, чтобы не возникло переполнения диска, подробнее смотрите мою статью — Скрипт удаления старых файлов

Смотрите также прочие мои статьи о резервном копировании — Резервное копирование

Подключение к SSH с использованием ключей

Чтобы подключаться к SSH без ввода пароля, можно сгенерировать на локальном севере публичный и приватный ключи, публичный потом скопировать на удаленную машину, после чего пароль при подключении к ней не будет спрашиваться.

На локальной машине генерируем ключи:

sudo ssh-keygen -t rsa

Копируем публичный ключ на удаленный сервер:

sudo ssh-copy-id -i ~/.ssh/id_rsa.pub -p PORT USER@HOST

Если возникает ошибка при копировании ключа, то можно вручную скопировать строку из id_rsa.pub на удаленный сервер в файл authorized_keys.

Указанные команды нужно выполнять от того пользователя, от которого будет выполнятся подключение.
Например если от root, то нужно перед двумя командами выше выполнить команду:

sudo -i

Убрать хост можно командой:

ssh-keygen -f "/home/user/.ssh/known_hosts" -R [HOST]:22

Смотрите также:
Установка и настройка SSH