SCROLL

Посты с тэгом: debian

Рассмотрим как подключить Asterisk 13 к MySQL посредством ODBC (Open Database Connectivity) для ведения записей CDR (Call Detail Records) и CEL (Channel Event Logging).

 

До версии Asterisk 13, для хранения CDR и CEL в MySQL использовал драйвер cdr_mysql.so и cel_mysql.so. Начиная с Asterisk 13 эти модули Deprecated (Устарели) и не рекомендованы к использованию. Разработчики рекомендуют использовать технологию ODBC.

 

Исходные данные:

  • Debian 8 Jessie
  • Asterisk 13 (13.22.0) — развернутый по данной статье
  • MySQL (5.5.60)

В процессе развертывании GLPI 9.2.2, столкнулся с сообщением:

Run "composer install --no-dev" in the glpi tree.
To install composer please refer to https://getcomposer.org/

[stextbox id=’info’]Composer — это популярный инструмент управления зависимостями для PHP, который служит для облегчения установки и обновления зависимостей проекта. Он будет проверять, какие другие пакеты зависят от конкретного проекта и установить их для вас, используя соответствующие версии в соответствии с требованиями проекта.[/stextbox]

 

Рассмотрим как установить Composer на Debian 8 Jessie

 

Перед началом установки обновляем систему до актуального состояния:

apt-get update && sudo apt-get upgrade -y

 

Устанавливаем необходимые зависимости:

apt-get install curl php5-cli git

Разберем как интегрировать MediaWiki с Active Directory.

 

Исходные данные:

  • Развернутая система MediaWiki 1.30.0 (по этой статье) (mediawiki) на Debian 8 Jessie
  • Домен контроллер Windows Server 2012 R2 (JAKONDA.LOCAL)

 

Для интеграции MediaWiki с Active Directory, необходимо создать пользователя с помощью которого будет осуществляться чтение LDAP, для авторизации всех остальных пользователей системы MediaWiki.

 

Создание пользователя в Active Directory

Создаем служебного пользователя (прим. admin.mediawiki), снимаем галочку «Требовать смены пароля при следующем входе в систему», выставляем галочки «Запретить смену пароля пользователем», «Срок действия пароля не ограничен».

MediaWiki – это написанная в PHP платформа для разработки вики-сайтов. Рассмотрим установку ее на Debian 8 Jessie/Ubuntu Server 14.04 LTS.

 

[stextbox id=’warning’]В системе уже установлен стек LAMP (Linux, Apache, MySQL, PHP), инструкция как установить LAMP. Все действия будут производится под пользователем root.[/stextbox]

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

apt-get update && sudo apt-get upgrade -y

 

Устанавливаем необходимые зависимости:

apt-get install php5-apcu php5-intl php5-gd php5-cli -y

 

Установка MediaWiki

Скачиваем актуальную версию MediaWiki , распаковываем скачанный архив и перемещаем в каталог веб-сервера:

SSO (Single Sing-on) – позволяет пользователям вошедшим в систему не вводить пароль при авторизации на доменных сетевых ресурсах. Этот же механизм можно запросто прикрепить к Apache, что бы позволить доменным пользователям проходить аутентификацию, например на внутреннем сайте компании, не вводя имя пользователя и пароль.

 

Исходные данные:

  • Контроллер домена (DC1) на Windows Server 2012 R2, домен JAKONDA.LOCAL
  • Веб-сервер (webserver) (Apache 2.4.10) на Debian 10 Buster.

 

[stextbox id=’info’]ИНФОРМАЦИЯ. Данная статья так же применительная будет ко всем debian-like системам.[/stextbox]

 

Подготовка системы

# Обновляем информацию о репозиториях и обновляем установленные пакеты:

apt-get update && apt-get upgrade -y

 

Указываем FQDN (Fully Qualified Domain Name) имя системы, в файле /etc/hostname:

webserver.jakonda.local

Файл /etc/hosts приводим к виду таким образом, чтобы в нём была запись с полным доменным именем компьютера и с коротким именем, ссылающаяся на один из внутренних IP хоста:

127.0.0.1 localhost 
127.0.1.1 webserver.jakonda.local webserver

 

Настраиваем синхронизацию времени с контроллером домена, выполняем установку NTP, выполняем синхронизацию времени с контроллером домена:

apt-get install ntp ntpdate

ntpdate dc1.jakonda.local

[stextbox id=’info’]Более подробно о синхронизации времени на Debian можно почитать в этой статье[/stextbox]

Ioncube Loader это PHP модуль, который предназначен для декодирования файлов, защищенных с помощью IonCube Encoder.

 

Рассмотрим как подключить модуль Ioncube Loader к PHP 7.2 версий в Debian 8 Jessie

 

Установка модуля Ioncube Loader

Скачиваем модуль, распаковываем его и копируем в каталог с остальными модулями PHP:

wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xzf ioncube_loaders_lin_x86-64.tar.gz
cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20170718/ioncube_loader.so

[stextbox id=’info’]Посмотреть расположение каталога с модулями PHP, можно командой:
php -i | grep extension_dir[/stextbox]

Рассмотрим установку PHP 7.2 в Debian 8 Jessie/Ubuntu Server 14.04. Последние версии PHP, имеются в репозитории (PPA) от Ondřej Surý.

[stextbox id=’info’]ИНФОРМАЦИЯ. Ниже описанные действия так же применимы к Debian 9 Stretch[/stextbox]

 

Добавление PPA в Debian 8, 9

apt-get install apt-transport-https software-properties-common lsb-release ca-certificates -y
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
apt-get update

 

Добавление PPA в Ubuntu 14.04

add-apt-repository ppa:ondrej/php
apt-get update

 

Установка PHP 7.2

Установка базовых пакетов для работы с PHP 7.2:

apt-get install php7.2 php7.2-common php7.2-cli

 

Список всех пакетов для работы с PHP 7.2:

php7.2-bcmath - Bcmath module for PHP
php7.2-bz2 - bzip2 module for PHP
php7.2-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.2-cli - command-line interpreter for the PHP scripting language
php7.2-common - documentation, examples and common module for PHP
php7.2-curl - CURL module for PHP
php7.2-dba - DBA module for PHP
php7.2-dev - Files for PHP7.2 module development
php7.2-enchant - Enchant module for PHP
php7.2-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.2-gd - GD module for PHP
php7.2-gmp - GMP module for PHP
php7.2-imap - IMAP module for PHP
php7.2-interbase - Interbase module for PHP
php7.2-intl - Internationalisation module for PHP
php7.2-json - JSON module for PHP
php7.2-ldap - LDAP module for PHP
php7.2-mbstring - MBSTRING module for PHP
php7.2-mysql - MySQL module for PHP
php7.2-odbc - ODBC module for PHP
php7.2-opcache - Zend OpCache module for PHP
php7.2-pgsql - PostgreSQL module for PHP
php7.2-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.2-pspell - pspell module for PHP
php7.2-readline - readline module for PHP
php7.2-recode - recode module for PHP
php7.2-snmp - SNMP module for PHP
php7.2-soap - SOAP module for PHP
php7.2-sodium - libsodium module for PHP
php7.2-sqlite3 - SQLite3 module for PHP
php7.2-sybase - Sybase module for PHP
php7.2-tidy - tidy module for PHP
php7.2-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.2-xmlrpc - XMLRPC-EPI module for PHP
php7.2-xsl - XSL module for PHP (dummy)
php7.2-zip - Zip module for PHP

Разберем как делать резервную копию системы контроля заявок OTRS. Разработчики системы, позаботились за ранее о резервировании и восстановление данных системы, создав специальные  скрипты.

 

Скрипты резервирования (backup.pl) и восстановления (restore.pl) находятся в /opt/otrs/scripts (каталог OTRS может отличатся, в зависимости куда он у вас установлен).

 

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

Синтаксис использования скриптов (backup.pl):

backup.pl -d /data_backup_dir/ [-c gzip|bzip2] [-r 30] [-t fullbackup|nofullbackup|dbonly]

 

Для создания полной резервной копии выполните команду:

./backup.pl -d /backup/
Backup /backup//2010-09-07_14-28/Config.tar.gz ... done
Backup /backup//2010-09-07_14-28/Application.tar.gz ... done
Dump MySQL rdbms ... done
Compress SQL-file... done

Разберем как установить открытую систему обработки заявок OTRS 6.0.5 (Open-source Ticket Request System) на Debian 8 Jessie/Ubuntu 14.04 Trusty Tahr.

 

[stextbox id=’warning’]В системе уже установлен стек LAMP (Linux, Apache, MySQL, PHP), инструкция как установить LAMP. Все действия будут производится под пользователем root.[/stextbox]

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

apt-get update && sudo apt-get upgrade -y

Устанавливаем необходимые зависимости:

apt-get install -y libapache2-mod-perl2 libdbd-mysql-perl libtimedate-perl libnet-dns-perl libnet-ldap-perl libio-socket-ssl-perl libpdf-api2-perl libsoap-lite-perl libtext-csv-xs-perl libjson-xs-perl libapache-dbi-perl libxml-libxml-perl libxml-libxslt-perl libyaml-perl libarchive-zip-perl libcrypt-eksblowfish-perl libencode-hanextra-perl libmail-imapclient-perl libtemplate-perl libdatetime-perl libdbd-odbc-perl libdbd-pg-perl libauthen-ntlm-perl -y

Рассмотрим установку стека LAMP (Linux, Apache, MySQL, PHP) на Debian 8 Jessie.

 

Подготовка системы

Обновляем систему до актуального состояния:

apt-get update && sudo apt-get upgrade -y

 

Установка Apache

Устанавливаем веб-сервер Apache, выполняем команду:

apt-get install apache2-mpm-prefork

 

Для проверки, в браузере открываем http://192.168.1.2 (адрес моей системы), и на экране отобразится стандартная страница Apache.

Рассмотрим установку VMware Tools из командной строки Debian/Ubuntu Linux.

 

Монтируем образ компакт-диска VMware Tools, в виртуальную машину. Создаем каталог для монтирования CD-ROM, монтируем CD-ROM в каталог:

sudo mkdir /mnt/cdrom
sudo mount /dev/cdrom /mnt/cdrom

 

Распаковываем дистрибутив VMware Tools

tar xzvf /mnt/cdrom/VMwareTools-x.x.x-xxxx.tar.gz -C /tmp/

[stextbox id=’warning’]Примечание: x.x.x-xxxx — это версия дистрибутива VMware Tools, версия может отличатся в зависимости от вашей версии продукта VMware.[/stextbox]

Инструкция как развернуть Redmine 3.4.3, Subversion (с поддержкой WebDAV) на Debian 8 Jessie. На основе этих инструкций будет рассмотрена интеграция Redmine с SVN.

 

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

 

[stextbox id=’info’]Приведенная ниже инструкция основывается на том что используется система Debian 8 Jessie и установлены Redmine 3.4.3 и Subversion 1.8.10 + WebDAV. [/stextbox]

 

Устанавливаем необходимые зависимости:

sudo apt-get install libapache-dbi-perl libapache2-mod-perl2 libdbd-mysql-perl libdigest-sha-perl -y

 

Для авторизации в SVN по учётными записям Redmine, создаем символическую ссылку на скрипт Redmine.pm:

sudo ln -s /opt/redmine/extra/svn/Redmine.pm /usr/lib/x86_64-linux-gnu/perl5/5.20/Apache/Redmine.pm

Разберем как установить Subversion 1.9.7 из исходников на Debian 8 Jessie.

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

sudo apt-get update && sudo apt-get upgrade -y

Добавляем системного пользователя (subversion), который будет владельцем репозитория и от него будет запускаться демон (SVN):

sudo adduser subversion --system --shell /sbin/nologin --group --disabled-password --home /var/svn

Назначаем права доступа к папке для размещения репозиториев (SVN):

sudo chown -R subversion:subversion /var/svn
sudo chmod -R 770 /var/svn

Устанавливаем необходимые зависимости:

sudo apt-get install gcc build-essential libaprutil1 libaprutil1-dev zlib1g zlib1g-dev libserf-1-1 libserf-dev -y

Работая с Linux системами, иногда возникает необходимость запрета обновления какого либо пакета.

 

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

 

Рассмотрим несколько способов, реализации запрета на обновления пакета, в ОС Debian 8 Jessie.

 

Запрет используя dpkg

Для запрета на обновления пакета, выполняем команду:

sudo echo 'имя_пакета hold' | sudo dpkg --set-selections

 

Для разрешения на обновления пакета, выполняем команду:

sudo echo 'имя_пакета install' | sudo dpkg --set-selections

 

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

sudo dpkg --get-selections | grep 'имя_пакета'

Данная статья будет мне памяткой, как добавлять пользователей, изменять, удалять пользователей в консольном режиме Debian 8 Jessie.

 

Добавление пользователя

Пользователь создается командой useradd:

sudo useradd username

 

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

-m (--create-home) Создать домашний каталог. По-умолчанию домашний каталог не создается.
-M (--no-create-home) Не создавать домашний каталог.
-d (--home-dir HOME_DIR) Указать расположение домашнего каталога.
-N (--no-user-group) Не создавать группу с таким же именем, как имя пользователя.
-g (--gid GROUP) Название или ID первичной группы пользователя.
-G (--groups GROUPS) Указать список дополнительных групп для пользователя.
-p (--password PASSWORD) Задание пароль пользователя.
-s (--shell SHELL) Указание оболочки пользователя (прим. /bin/bash). По-умолчанию /bin/sh.
-c (--comment COMMENT) Добавить комментарий к пользователю.

 

Изменение пользователя

Изменить пользователя можно командой usermod (прим. добавление пользователя в группу):

sudo usermod -a -G www-data jakonda

 

Изменить пароль пользователю можно при помощи утилиты passwd:

sudo passwd jakonda

Разберем как делать резервные копии имеющихся Subversion (SVN) репозиториев в Linux среде. Все ниже описанное производилось на Debian 8 Jessie.

 

Резервное копирование репозитория

Создаем резервную копию указанного репозитория:

sudo svnadmin dump /path/to/repository > svnexport.dump

 

Создаем резервную копию указанного репозитория и сжимаем его:

sudo svnadmin dump /path/to/repository | gzip > svnexport.dump.gz

 

Резервное копирование все репозиториев (bash скриптом)

Для того чтобы автоматизировать процесс резервирования всех имеющихся репозиториев, создадим скрипт, который будет выполнять эту задачу. Скрипт с коментариями, разобратся в нем не составит труда:

#!/bin/bash
# 06/01/2018 Jakonda (http://jakondo.ru)

# Резервное копирование репозиториев (SVN)

PATH_REPO="/var/svn/"
LOCAL_DIR="/srv/backups/svn"

EXPIRATION_DAYS=28
DATE=$(date +"%y_%m_%d")

# Создаем каталог для размещения бекапов, если он не создан
if ! [ -d $LOCAL_DIR ]; then
mkdir $LOCAL_DIR
fi

# Создаем каталог с текущей датой
mkdir -p $LOCAL_DIR/$DATE

# Создание дампа всех репозиториев
cd $PATH_REPO
for REPO in *; do
 test -d "$REPO" && /usr/bin/svnadmin dump $REPO | gzip > $LOCAL_DIR/$DATE/$REPO.dump.gz
done

# Удаление старых резервных копий
find $LOCAL_DIR* -mtime +${EXPIRATION_DAYS} -exec rm {} \;
# Удаление пустых каталогов
find $LOCAL_DIR* -type d -empty -exec rmdir {} \;

 

Разберем как установить систему мониторинга Zabbix 3.5 на Debian 8 Jessie/Ubuntu Server 14.04 LTS.

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

sudo apt-get update && sudo apt-get upgrade -y

 

Устанавливаем LAMP (Linux-Apache-MySQL-PHP), как установить LAMP-стек, можно посмотреть в этой статье

 

Установка Zabbix

Скачиваем и устанавливаем пакет, который добавит необходимый для установки Zabbix репозиторий, обновляем данные:

wget https://repo.zabbix.com/zabbix/3.5/debian/pool/main/z/zabbix-release/zabbix-release_3.5-1+jessie_all.deb

sudo dpkg -i zabbix-release_3.5-1+jessie_all.deb

sudo apt-get update

Разберем как развернуть систему управления версиями Subversion (SVN) на Ubuntu 14.04 Trusty Tahr. Так же данная инструкция работает на Debian 8 Jessie. Рассмотрим базовые параметры управления SVN (Создание, удалении репозиториев), разграничение прав пользователей SVN.

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

sudo apt-get update && sudo apt-get upgrade -y

 

Добавляем системного пользователя (subversion), который будет владельцем репозитория и от него будет запускаться демон (SVN):

sudo adduser subversion --system --shell /sbin/nologin --group --disabled-password --home /var/svn

 

Назначаем права доступа к папке для размещения репозиториев (SVN):

sudo chown -R subversion:subversion /var/svn
sudo chmod -R 775 /var/svn

Разберем как развернуть мощный и в тоже время бесплатный почтовый сервер Zimbra Collaboration 8.6. Zimbra может соперничать с Microsoft Exchange своим функционалом, в который входит необходимый набор инструментов для работы в корпоративной среде. Zimbra имеет удобный и понятный Web интерфейс, поддерживающий работу мобильных устройств, что не мало важно для сотрудников находящихся вне офиса.

 

Исходные данные для развертывания Zimbra:

  • Домен jakondo.ru (на этом доменном имени будет ходить почта)
  • Локальная сеть 10.5.5.0/24
  • Домен контроллер на базе Windows Server 2012R2 (AD DS, DNS) DC1, jakonda.local10.5.5.5 (Установленный по данной статье)
  • Установленная система Ubuntu 14.04 Trusty Tahr (10.5.5.10, Hostname — mail)

Задача:

  • Настроить DNS на домен контроллере DC1, для работы почтового сервера Zimbra.
  • Выполнить предварительную настройку системы Ubuntu 14.04 Trusty Tahr перед установкой Zimbra.
  • Установить почтовый сервер Zimbra Collaboration 8.6.
  • Добавление почтового домена jakondo.ru в развернутый почтовый сервер.
  • Проверить работу почты.

Logical Volume Manager (LVM) — это очень мощная система управления томами с данными для Linux. Она позволяет создавать поверх физических разделов (или даже неразбитых винчестеров) логические тома, которые в самой системе будут видны как обычные блочные устройства с данными (т.е. как обычные разделы).

Основные преимущества LVM в том, что во-первых одну группу логических томов можно создавать поверх любого количества физических разделов, а во-вторых размер логических томов можно легко менять прямо во время работы. Кроме того, LVM поддерживает механизм снапшотов, копирование разделов «на лету» и зеркалирование, подобное RAID-1.

 

Разберем как пользоваться LVM в Ubuntu Server 14.04.

 

[stextbox id=’black’]Тестовый стенд — ОС Ubuntu Server 14.04 LTS, 2х HDD — 450Gb[/stextbox]

 

Подготовка системы

Перед началом установки обновляем систему до актуального состояния:

sudo apt-get update && sudo apt-get upgrade -y

Устанавливаем поддержку LVM в системе:

sudo apt-get install lvm2

 

Инициализация жестких дисков

Для того чтобы начать работу с LVM, необходимо жесткие диски сделать понятными для LVM, перевести их в LVM — 8E Linux LMV.

 

Вывод имеющихся жестких дисков в системе:

sudo fdisk -l