• Как установить smbclient для PHP 7.4 на Debian 11 Bullseye.

    В рамках теста разворачивал ownCloud и при попытке установки внутренного приложения External Storage: Windows Network Drives видел ошибку:

     

    Приложение не может быть установлено, следующие зависимости не удовлетворены:

    • The library libsmbclient is not available.

     

    Ниже описание как выполнить установку libsmbclient для php7.4 в Debian 11.

     

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

    apt-get install php7.4-dev libsmbclient-dev -y

     

    С помощью PECL (репозиторий модулей для PHP) устанавливает smbclient для версии 7.4:

    pecl -d php_suffix=7.4 install smbclient

     

    В файл конфигурации /etc/php/7.4/apache2/php.ini добавляем описание включение модуля

    echo 'extension=smbclient.so' >> /etc/php/7.4/apache2/php.ini

     

    Перезапустим apache для применения изменений:

    /etc/init.d/apache2 restart

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...
  • Установка Collabora Online Development Edition на Debian 11 Bullseye

    Разберем как установить и Collabora Online Development Edition на Debian 11 Bullseye.

     

    Collabora Online — это мощный офисный пакет на базе LibreOffice для совместной работы с документами в браузере. В рамках статьи будем устанавливать Collabora Online Development Edition (CODE) версию. Я лично использую CODE в связке с Nextcloud.

     

    # Все ниже действия будет выполняться от root.

     

    Установка

    Импортируем ключ подписи и добавляем репозиторий Collabora Productivity Ltd (/etc/apt/sources.list.d/collaboraonline.sources):

    cd /usr/share/keyrings
    wget https://collaboraoffice.com/downloads/gpg/collaboraonline-release-keyring.gpg
    
    cat EOF /etc/apt/sources.list.d/collaboraonline.sources
    Types: deb
    URIs: https://www.collaboraoffice.com/repos/CollaboraOnline/CODE-debian10
    Suites: ./
    Signed-By: /usr/share/keyrings/collaboraonline-release-keyring.gpg
    EOF

     

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

    apt-get update
    apt-get install coolwsd code-brand collaboraofficebasis-ru collaboraoffice-dict-ru collaboraoffice-dict-en apache2 apache2-utils -y

     

    Настройка coolwsd

    Настройка CODE осуществляется через файл — /etc/coolwsd/coolwsd.xml, но более удобный способ настройки через пакет coolconfig. Выполним основные настройки для работы CODE.

     

    Задаем пароль администратора для доступа в web консоль CODE.

    coolconfig set-admin-password

     

    Указываем FQDN имя сервера на котором запущен coolwsd (прим. collaboraonline.example.com):

    coolconfig set server_name <fqdn name>

     

    Указываем имя хоста которому будет разрешен доступ к демону coolwsd (прим. nextcloud.example.com):

    coolconfig set storage.wopi.host <fqdn name>

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...
  • Как изменить размер раздел диска Linux

    Рассмотрим как на виртуальной машине Linux увеличить раздел диска без LVM.

     

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

    • Debian 11
    • Исходный размер /dev/sda — 20G
    • Необходимо увеличить размер /dev/sda — 25G

     

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

    В системе один диск /dev/sda размером 20G, отобразим информацию по нему:

    fdisk -l
    
    Disk /dev/sda: 20 GiB, 21474836480 bytes, 41943040 sectors
    Disk model: Virtual Disk
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: dos
    Disk identifier: 0x73000288
    
    Device Boot Start End Sectors Size Id Type
    /dev/sda1 * 2048 39942143 39940096 19G 83 Linux
    /dev/sda2 39944190 41940991 1996802 975M 5 Extended
    /dev/sda5 39944192 41940991 1996800 975M 82 Linux swap / Solaris
    df -h
    
    Filesystem Size Used Avail Use% Mounted on
    udev       944M 0     944M   0% /dev
    tmpfs      192M 500K  192M   1% /run
    /dev/sda1   19G 990M   17G   6% /
    tmpfs      960M    0  960M   0% /dev/shm
    tmpfs      5.0M    0  5.0M   0% /run/lock
    tmpfs      192M    0  192M   0% /run/user/1000

     

    Увеличение размера диска

    Увеличиваем размер жесткого диска в ВМ, в моем случае я увеличиваю до 25G. После расширения диска в ВМ, принудительно выполним рескан дисков, командой:

    echo 1 > /sys/block/sda/device/rescan

     

    Проверяем изменения. В случае если после рескана размер диска не увеличился в системе, то выполняем перезагрузку и проверяем повторно.

    fdisk -l
    
    Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors
    Disk model: Virtual Disk
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 4096 bytes
    I/O size (minimum/optimal): 4096 bytes / 4096 bytes
    Disklabel type: dos
    Disk identifier: 0x73000288
    
    Device     Boot    Start      End  Sectors  Size Id Type
    /dev/sda1  *        2048 39942143 39940096   19G 83 Linux
    /dev/sda2       39944190 41940991  1996802  975M  5 Extended
    /dev/sda5       39944192 41940991  1996800  975M 82 Linux swap / Solaris
    ВНИМАНИЕ. Рекомендуется перед последующими действиями сделать резервную копию ВМ.

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...
  • Установка из исходников OpenConnect VPN-сервера (ocserv) на Debian 11 Bullseye

    Разберем как установить из исходников актуальную (на момент написания статьи) версию VPN-сервера OpenConnect 1.2.2 на Debian 11 Bullseye.

     

    # Все ниже действия будут производится из под root.

     

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

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

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

    apt-get install build-essential make pkg-config libgnutls28-dev libev-dev libpam0g-dev liblz4-dev libseccomp-dev libreadline-dev libnl-route-3-dev libkrb5-dev libradcli-dev libpcl1-dev libcjose-dev libjansson-dev liboath-dev libprotobuf-c-dev libtalloc-dev libhttp-parser-dev libcurlpp-dev libssl-dev libmaxminddb-dev libbsd-dev libsystemd-dev libwrap0-dev libuid-wrapper libpam-wrapper libnss-wrapper libsocket-wrapper gss-ntlmssp tcpdump protobuf-c-compiler iperf3 lcov ssl-cert libpam-oath

     

    # Скачиваем и распаковываем исходники OpenConnect (на момент написания статьи последняя версия 1.2.2):

    wget -P /opt/ https://www.infradead.org/ocserv/download/ocserv-1.2.2.tar.xz
    tar -xvf /opt/ocserv-1.2.2.tar.xz -C /opt/ 
    
    cd /opt/ocserv-1.2.2
    

    # Собираем и устанавливаем — OpenConnect:

    ./configure --prefix= --enable-oidc-auth
    
    make && make install

     

    # Создаем рабочий каталог для ocserv и копируем примеры файлов конфигурации в него:

    mkdir -p /etc/ocserv/
    
    cp doc/sample.config /etc/ocserv/ocserv.conf
    cp doc/sample.passwd /etc/ocserv/
    cp doc/sample.otp /etc/ocserv/
    cp doc/profile.xml /etc/ocserv/

     

    # Создаем пользователя ocserv от которого будет работать служба:

    useradd -r -M -U -s /usr/sbin/nologin ocserv

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (1 голос(ов), в среднем: 5,00 из 5)
    Загрузка...
  • Мониторинг 1С:Предприятие 8.3 с помощью Zabbix

    Поступила просьба от 1С-ников организовать мониторинг  сервера 1С:Предприятие 8.3 с помощью Zabbix 5.0. В частности необходимо мониторить как общие показатели системы (CPU, RAM, HDD, Службы) так и параметры относящиеся непосредственно к серверу 1С — кол-во текущих сеансов, кол-во сеансов по типам подключения, блокировки СУБД.

     

    С мониторингом общих показателей системы прекрасно справляется zabbix-agent и штатный шаблон, а вот со вторым уже нужно прибегать к функциям cервера администрирования кластера серверов 1С, который состоит из двух утилит: непосредственно самого сервера — программы ras.exe и  утилиты командной строки rac.exe, которая обращаясь к запущенному прежде серверу ras позволяет выполнять различные операции с кластером серверов 1С:Предприятия.

     

    Перечитав кучу различных мануалов как мониторить кластер 1С я пришел к выводу что надо писать свое..

     

    Как итог было написано две утилиты. Первая утилита запускает ras.exe как службу Windows, а вторая это утилита которая работает с rac.exe, выполняет запросы, обрабатывает и выдает результат, который в последующем может обрабатывать zabbix-agent и передавать на сервер Zabbix.

     

    Итак скачиваем первую утилиту helper_ras_1c.exe и помещаем ее в какой-нибудь отдельный каталог (прим. C:\1c_ras).

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (5 голос(ов), в среднем: 3,80 из 5)
    Загрузка...
  • Установка FreePBX 14 с Asterisk 18 на Debian 10 Buster

    ИНФОРМАЦИЯ. Немного актуализировал статью под новую версию Debian, чтобы установка из статьи проходила в режиме copy-paste без ошибок.

    Рассмотрим как установить FreePBX 14 в связке с Asterisk 18 на Debian 10 Buster.

     

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

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

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

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

    apt-get install build-essential linux-headers-`uname -r` apt-transport-https bison flex curl sox libncurses5-dev libssl-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libicu-dev libcurl4-openssl-dev libical-dev libneon27-dev libspandsp-dev subversion libtool-bin python-dev unixodbc dirmngr sudo apache2 mariadb-server mariadb-client default-libmysqlclient-dev -y
    ВНИМАНИЕ. Обязательно перезагружаем систему и после этого продолжаем установку.

     

    Устанавливаем PHP версии 5.6 (для корректной работы FreePBX fwconsole):

    curl https://packages.sury.org/php/apt.gpg | apt-key add -
    echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/deb.sury.org.list
    apt-get update && apt-get install php5.6 php5.6-curl php5.6-cli php5.6-mysql php5.6-mbstring php5.6-gd php5.6-xml php-pear -y

    Устанавливаем NodeJS :

    curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash -
    apt-get install nodejs -y
    pear install Console_Getopt

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

    wget https://downloads.mariadb.com/Connectors/odbc/latest/mariadb-connector-odbc-3.1.9-debian-buster-amd64.tar.gz
    tar -zxvf mariadb*
    cp -v mariadb-connector-odbc-3.1.9-debian-buster-amd64/lib/mariadb/libmaodbc.so /usr/lib/x86_64-linux-gnu/odbc/
    
    ВНИМАНИЕ. На момент написание статьи версия MariaDB ODBC — 3.1.9, поэтому обращаем внимание на случай ошибок и при необходимости корректируйте версионность. Последние версии можно посмотреть на оф. сайте — https://downloads.mariadb.com/Connectors/odbc/latest/.

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (3 голос(ов), в среднем: 3,33 из 5)
    Загрузка...
  • Как настроить HTTPS для FreePBX на Debian 9 Stretch

    Рассмотрим как реализовать доступ к FreePBX GUI через HTTPS. Все действия производились на FreePBX установленный на Debian 9 Stretch (как установить можно почитать тут) и Apache.

     

    Любым удобным вам способом копируем сертификат, закрытый ключ, промежуточные + корневой сертификат в систему (как это сделать через SSH можно почитать тут). Так как сертификатом будет пользоваться веб-сервер Apache, то не забываем прописать на файлы сертификатов соответствующие права. Я выставляю такие права доступа на файлы сертификатов:

    chown root:www-data {путь к файлу}
    chmod 640 {путь к файлу}

     

    Включаем модуль SSL в Apache:

    a2enmod ssl

     

    Конфигурация виртуального хоста. Приводим дефолтный вирт. хост /etc/apache2/sites-available/000-default.conf к виду:

    <VirtualHost *:80>
            ServerAdmin webmaster@localhost
            DocumentRoot /var/www/html
    
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
    
    <VirtualHost *:443>
            ServerAdmin webmaster@localhost
            DocumentRoot /var/www/html
    
            ErrorLog ${APACHE_LOG_DIR}/error.log
            CustomLog ${APACHE_LOG_DIR}/access.log combined
    
            SSLEngine On
            SSLCertificateFile /etc/ssl/crt.crt
            SSLCertificateKeyFile /etc/ssl/key.key
            SSLCACertificateFile /etc/ssl/crt-ca.crt
    </VirtualHost>
    ВНИМАНИЕ. Обращаю внимание что в SSLCertificateFileSSLCertificateKeyFileSSLCACertificateFile указываем свой путь к файлам.

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...
  • Использование режима DND с возможностью переадресации на Asterisk 16 + FreePBX 14

    Многие пользователи просили сделать возможность переадресации вызовов на мобильный при установке DND (do not disturb) режима на рабочем телефоне. Так как DND режим не предполагает переадресации, то пришлось свою обработку для этого режима.

     

    Все ниже описанные действия производились на Asterisk 16 + FreePBX 14.

     

    В итоге добавлена возможность активации\де-активации DND режима по звонку самому себе (на всякий слушай, вдруг кому будет так удобней), возможность задание переадресации для конкретных внутренних номеров (не всем пользователям нужно такое поведение DND режима).

     

    В файл /etc/asterisk/extentions_custom.conf добавляем (постарался подробно описать что делает и как работают секции):

    [from-internal-custom]
    include => dnd-on-off
    include => dnd-transfer-check
    
    exten => _XXXX,1,GoSub(dnd-on-off,s,1,(${EXTEN}))
    exten => _XXXX,n,GoSub(dnd-transfer-check,s,1,(${EXTEN}))
    exten => _XXXX,n,Goto(from-internal-additional,${EXTEN},1)
    
    
    [dnd-on-off]
    ; --------------------------------------------------------------------------
    ; Включение\Отключение режима DND по звонку самому себе
    ;
    ; -- Инструкция:
    ; При звонке на свой внутренний номер, включается или отключается режим DND.
    ; --------------------------------------------------------------------------
    ;
    exten => s,1,NoOp(DND - Activate\Deactivate)
    exten => s,n,ExecIf($["${CALLERID(number)}" = "${ARG1}"]?Goto(app-dnd-toggle,*76,1))
    exten => s,n,Return()
    
    
    [dnd-transfer-check]
    ; --------------------------------------------------------------------------------------------
    ; Задание необходимой переадресации на мобильный телефон в DND режиме.
    ;
    ; -- Инструкция:
    ; В условии REGEX("^()" в () указываем внутренние номера для которых необходимо перенаправлять
    ; входящие на мобильные при активном режиме DND. Прим. - REGEX("^(1100|1101)"
    ; --------------------------------------------------------------------------------------------
    ;
    exten => s,1,NoOp(DND transfer call)
    exten => s,n,ExecIf($[${REGEX("^(1100)" ${ARG1})}]?GoSub(dnd-transfer-call,s,1(${ARG1})))
    exten => s,n,Return()
    
    
    [dnd-transfer-call]
    ; ------------------------------------------------------------------------------------------------
    ; Проверка на включенный режим DND и указание номера для переадресации.
    ;
    ; -- Инструкция:
    ; Под указателем "insert DND transfer rule below" добавляем строку вида:
    ; exten => s-XXXX,1,Goto(outbound-allroutes,8XXXXXXXXXX,1), где вместо s-XXXX указываем внутренний 
    ; номер абонента, а вместо 8XXXXXXXXXX номер мобильного для переадресации.
    ;
    ; Прим. - exten => s-1100,1,Goto(outbound-allroutes,8800000000,1)
    ; ------------------------------------------------------------------------------------------------
    ;
    exten => s,1,NoOp(Transfer Call on DND activate)
    exten => s,n,GotoIf($["${DB(DND/${ARG1})}" != ""]?s-${ARG1},1)
    exten => s,n,Return()
    
    ; insert DND transfer rule below
    ;exten => s-XXXX,1,Goto(outbound-allroutes,8XXXXXXXXXX,1)

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
    Загрузка...
  • Динамические конференции на Asterisk 16 + FreePBX 14

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

     

    В интернете есть несколько примеров реализации подобного рода задачи, но я решил реализовать по своему и так как мне нужно. Итак все ниже описанные действия производились на Asterisk 16 + FreePBX 14 + phpAGI.

    ИНФОРМАЦИЯ. По-умолчанию phpAGI задействован в FreePBX и дополнительных манипуляций по его настройки не требуется. Если ниже описанные действия будут применяться к голому Asterisk, то как настроить на нем phpAGI можно прочитать из этой статьи.

     

    — Техническое задание:
    • В активном разговоре нажать *7 — создание и перевод участников разговора в конференцию.
    • В конференции нажать *7 — после гудка набрать номер кого хотим пригласить в конференцию и нажимаем #.
    • Набрать внутренний номер с префиксом *7 (прим. *71100) — если конференция с набранным номером (прим. 1100) существует, то будет присоединение к ней, в противном случае будет создана новая конференция.

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (3 голос(ов), в среднем: 3,67 из 5)
    Загрузка...
  • Настройка модуля Cisco EHWIC-4G-LTE-G на работу с мобильным оператором Yota

    В порядке рабочей необходимости решили завести резервный канал связи, не зависимый от местной УК БЦ. Выбор пал на мобильного оператора Yota, ввиду предварительных замеров уровня сигнала и скорости приема\передачи он нас более чем устроил.

     

    Все ниже описанные действия производились на Cisco 2911 (c2900-universalk9-mz.SPA.155-3.M9) + EHWIC-4G-LTE-G (Sierra AirPrime MC7710).

    Сразу сделаю помарку для тех кто захочет реализовать такой же метод в рамках ограниченного бюджета. Сам по себе модуль EHWIC-4G-LTE-G стоит довольно дорого, ввиду того что на борту имеет модем Sierra AirPrime MC7710, поддерживающий РФ частоты. Но можно схитрить и не тратить большие деньги. Для этого покупаете EHWIC-4G-LTE-V на борту которого стоит модем MC7750 (заточенный на работу с мобильным оператором Verizon), затем отдельно покупаете MC7710 и просто меняете модемы в модуле. Модуль будет так же успешно работать с замененным модемом, правда и будет ругаться единожды при загрузке\перезагрузке модема на то что модуль ожидал другой модем.

     

    Итак приступим к настройке. Я рассмотрю два варианта конфигурации, это когда модем всегда активен и когда ожидает запроса (если не требуется постоянного интернет соединения по данному каналу связи).

     

    Не заходя в режим глобальной конфигурации, создаем профиль APN (Access Point Name) для оператора Yota и указываем использование модулем технологии — только lte:

    cellular 0/1/0 lte profile create 1 yota.ru
    cellular 0/1/0 lte tehnology lte
    

     

    Переходим в режим глобальной конфигурации (conf t) и создаем скрипт дозвона:

    chat-script lte "" "AT!CALL" TIMEOUT 20 "OK"

    Читать далее…

    БесполезноСлабоватоПриемлемоОтличноПревосходно (3 голос(ов), в среднем: 3,33 из 5)
    Загрузка...
© IT-блог Жаконды All Rights Reserved.
Яндекс.Метрика