• Как отключить сетевой IPv6 интерфейс в Linux

    Периодически пытаюсь вспомнить как отключить сетевой IPv6 интерфейс в Linux, поэтому для памятки себе оставлю тут как это сделать.

    Отключать IPv6 будем через ядро системы, это наиболее правильный способ открываем на редактирование файл /etc/sysctl.conf

    # Turn off IPv6
    #
    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv6.conf.default.disable_ipv6 = 1
    net.ipv6.conf.lo.disable_ipv6 = 1
    ИНФОРМАЦИЯ: Это отключит IPv6 на всех доступных в системе сетевых интерфейсах.

    Если необходимо отключить IPv6 на отдельном взятом интерфейсе (прим. ens192), то указывает только. Если в системе несколько интерфейсов, то добавляем по аналогии строку для каждого дополнительного интерфейса.

    net.ipv6.conf.ens192.disable_ipv6 = 1

    Для вступления изменений в силу, заставим sysctl перечитать файл /etc/sysctl.conf:

    sysctl -p

    Читать далее

  • Как установить MySQL 8.0 / 5.7 на Debian 11 / Debian 10

    # Добавляем в систему репозиторий MySQL.

    wget https://dev.mysql.com/get/mysql-apt-config_0.8.18-1_all.deb
    dpkg -i mysql-apt-config_0.8.18-1_all.deb
    Установщик пакета предложит вам выбрать версию MySQL для создания репозитория. По умолчанию для конфигурации репозитория выбрана версия MySQL 8.0.

    # Обновляем индекс репозитория

    apt-get update
    apt-get install mysql-community-server -y
    Во время установки будет предложено ввести пароль от root пользователя, а так же в случае установки MySQL 8.0 будет предложено выбрать метод аутентификации. 

    # Выполняем настройку безопасности MySQL сервера.

    mysql_secure_installation

     

    В случае если в процессе обновления индексов репозитория вы увидите ошибку не доступности публичного ключа MySQL репозитория:

    Err:2 http://repo.mysql.com/apt/debian buster InRelease
      The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
    W: GPG error: http://repo.mysql.com/apt/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 467B942D3A79BD29
    E: The repository 'http://repo.mysql.com/apt/debian buster InRelease' is not signed.
    N: Updating from such a repository can't be done securely, and is therefore disabled by default.
    N: See apt-secure(8) manpage for repository creation and user configuration details.

    # Добавляем публичный ключ MySQL репозитория и обновляем локальные индексы репозитория.

    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29 apt-get update

    Читать далее

  • Подключение к Exchange Online через PowerShell на Debian 10 Buster

    # Устанавливаем powershell c репозиториев Microsoft.

    # Download the Microsoft repository GPG keys
    wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb
    
    # Register the Microsoft repository GPG keys
    sudo dpkg -i packages-microsoft-prod.deb
    
    # Update the list of products
    sudo apt-get update
    
    # Install PowerShell
    sudo apt-get install -y powershell
    
    В Debian 10 в репозиториях версия Openssl 1.1.1 и используемые SSL библиотеки этой версии при попытке подключения к Exchange Online приводят к ошибке:

    /usr/bin/pwsh: symbol lookup error: /opt/microsoft/powershell/7/libmi.so: undefined symbol: SSL_library_init

    Для решения этой проблемы установим версию Openssl 1.0.2u.

    # Скачиваем исходник пакета Openssl 1.0.2u,

    wget https://github.com/openssl/openssl/archive/OpenSSL_1_0_2u.tar.gz
    tar -zxvf OpenSSL_1_0_2u.tar.gz
    

    # Собираем и устанавливаем пакет — Openssl 1.0.2u (устанавливаем в несистемный каталог, чтобы он не перезаписать текущую версию)

    cd openssl-OpenSSL_1_0_2u
    
    ./config --prefix=/opt/openssl/1.0.2u shared
    make test
    make clean
    make install

    # Настраиваем симлинки в /opt/microsoft/powershell/7 для libssl и libcrypto, чтобы они указывали на версии 1.0.2.

    ln -sf /opt/openssl/1.0.2u/libssl.so.1.0.0 /opt/microsoft/powershell/7/libssl.so.1.0.0
    ln -sf /opt/openssl/1.0.2u/libcrypto.so.1.0.0 /opt/microsoft/powershell/7/libcrypto.so.1.0.0
    

    Читать далее

  • Установка Imapsync на Ubuntu 20.04 & Debian 10 Buster

    # Устанавливаем необходимые пакеты зависимостей.

    apt install libauthen-ntlm-perl libcgi-pm-perl libcrypt-openssl-rsa-perl libdata-uniqid-perl libencode-imaputf7-perl libfile-copy-recursive-perl libfile-tail-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-tee-perl libhtml-parser-perl libjson-webtoken-perl libmail-imapclient-perl libparse-recdescent-perl libmodule-scandeps-perl libreadonly-perl libregexp-common-perl libsys-meminfo-perl libterm-readkey-perl libtest-mockobject-perl libtest-pod-perl libunicode-string-perl liburi-perl libwww-perl libtest-nowarnings-perl libtest-deep-perl libtest-warn-perl libdist-checkconflicts-perl libpar-packer-perl libtest-fatal-perl libtest-modern-perl libtest-requires-perl libtest-mock-guard-perl libproc-processtable-perl make time cpanminus git -y
    
    apt-get install apt-file -y
    apt-file update
    

    # Скачиваем исходник пакета Imapsync.

    cd /opt/ 
    git clone https://github.com/imapsync/imapsync.git
    cd imapsync/

    # Собираем и устанавливаем пакет — Imapsync.

    make
    make testp
    make install

    # Можно проверить работоспособность установленного пакета командой.

    imapsync --testslive

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

    imapsync \
    --host1 imap.source.example.com \
    --user1 user@example.com \
    --password1 S0urcePassw0rd \
    --ssl1 \
    --host2 imap.dest.example.com \
    --user2 user@example.com \
    --password2 Dest1nat10NPassw0rd \
    --ssl2

     

    Читать далее

  • Установка и настройка SMTP-клиента MSMTP на Debian

    # Устанавливаем пакет msmtp и зависимости.

    apt-get install msmtp msmtp-mta ca-certificates -y

    # Создаем файл конфигурации

    nano /etc/msmtprc

    # Пример конфигурации msmtp на примере учетной записи Exchange Online (office365)

    # ------------------------------------------------------------------------------
    # Configuration file
    # ------------------------------------------------------------------------------
    
    # A system wide configuration is optional.
    # If it exists, it usually defines a default account.
    # This allows msmtp to be used like /usr/sbin/sendmail.
    
    # ------------------------------------------------------------------------------
    # Accounts
    # ------------------------------------------------------------------------------
    
    account exchanceonline
    host smtp.office365.com
    port 587
    from no-reply@contoso.com
    auth on
    user no-reply@contoso.com
    password secret
    syslog LOG_MAIL
    
    logfile /var/log/msmtp.log
    
    # ------------------------------------------------------------------------------
    # Configurations
    # ------------------------------------------------------------------------------
    
    # Use TLS.
    tls on
    tls_starttls on
    tls_trust_file /etc/ssl/certs/ca-certificates.crt
    
    # Set a default account
    account default : exchanceonline
    
    aliases /etc/aliases
    # ------------------------------------------------------------------------------#

     

    Пример как указываются aliases для пользователей (прим. root). Если файл /etc/aliases не существует, то создайте его.

    root: admin@contoso.com

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

    echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" | msmtp --debug -t admin@contoso.com

    Читать далее

  • Установка Greenbone Vulnerability Management (GVM) 21.04 на Debian 10 Buster

    # Устанавливаем необходимые пакеты зависимостей. Все действия ниже будут выполняться от root.

    apt-get install build-essential curl cmake pkg-config libglib2.0-dev libgpgme-dev libgnutls28-dev uuid-dev libssh-gcrypt-dev libhiredis-dev libxml2-dev libpcap-dev libnet1-dev libldap2-dev libradcli-dev libpq-dev gcc-mingw-w64 libpopt-dev libunistring-dev heimdal-dev perl-base bison libgcrypt20-dev libksba-dev nmap python-impacket libsnmp-dev libical-dev xsltproc rsync texlive-latex-extra texlive-fonts-recommended xmlstarlet zip rpm fakeroot nsis gnupg gpgsm sshpass socat snmp gnutls-bin xml-twig-tools libmicrohttpd-dev python3-lxml python3-pip python3-setuptools python3-packaging python3-wrapt python3-cffi python3-psutil python3-lxml python3-defusedxml python3-paramiko python3-redis -y
    

    # Веб интерфейс GVM написан на JavaScript и использует фреймворк React. Для поддержки JavaScript-зависимостей установим yarn.

    curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add
    echo deb https://dl.yarnpkg.com/debian/ stable main | tee /etc/apt/sources.list.d/yarn.list
    
    apt-get update
    apt-get install yarn -y
    
    yarn install
    yarn upgrade

    # Установка PostgreSQL.

    apt-get install postgresql postgresql-contrib postgresql-server-dev-11 -y

    # Настройка пользователя и базы данных PostgreSQL и настройка разрешений и расширений базы данных.

    sudo -Hiu postgres createuser gvm
    sudo -Hiu postgres createdb -O gvm gvmd
    sudo -Hiu postgres psql -c 'create role dba with superuser noinherit;' gvmd
    sudo -Hiu postgres psql -c 'grant dba to gvm;' gvmd
    sudo -Hiu postgres psql -c 'create extension "uuid-ossp";' gvmd
    sudo -Hiu postgres psql -c 'create extension "pgcrypto";' gvmd

    # Применение изменений и включение в автозагрузку службу PostgreSQL.

    systemctl restart postgresql
    systemctl enable postgresql

    # Создаем пользователя GVM от которого будет работать система.

    useradd -r -M -U -s /usr/sbin/nologin -c "GVM User" gvm

    # Скачиваем исходники пакетов входящих в состав системы GVM 21.04 и распаковываем их.

    mkdir -p /opt/gvm-source
    cd /opt/gvm-source/
    
    export GVM_VERSION=21.4.4
    export GVM_LIBS_VERSION=$GVM_VERSION
    export GVMD_VERSION=21.4.5
    export GSA_VERSION=$GVM_VERSION
    export GSAD_VERSION=$GVM_VERSION
    export OPENVAS_SMB_VERSION=21.4.0
    export OPENVAS_SCANNER_VERSION=$GVM_VERSION
    export OSPD_OPENVAS_VERSION=$GVM_VERSION
    
    curl -f -L https://github.com/greenbone/gvm-libs/archive/refs/tags/v$GVM_LIBS_VERSION.tar.gz -o gvm-libs-$GVM_LIBS_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/gvmd/archive/refs/tags/v$GVMD_VERSION.tar.gz -o gvmd-$GVMD_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/gsa/archive/refs/tags/v$GSA_VERSION.tar.gz -o gsa-$GSA_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/gsad/archive/refs/tags/v$GSAD_VERSION.tar.gz -o gsad-$GSAD_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/openvas-smb/archive/refs/tags/v$OPENVAS_SMB_VERSION.tar.gz -o openvas-smb-$OPENVAS_SMB_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/openvas-scanner/archive/refs/tags/v$OPENVAS_SCANNER_VERSION.tar.gz -o openvas-scanner-$OPENVAS_SCANNER_VERSION.tar.gz
    curl -f -L https://github.com/greenbone/ospd-openvas/archive/refs/tags/v$OSPD_OPENVAS_VERSION.tar.gz -o ospd-openvas-$OSPD_OPENVAS_VERSION.tar.gz
    
    tar -xvzf gvm-libs-$GVM_LIBS_VERSION.tar.gz && mv gvm-libs-$GVM_LIBS_VERSION gvm-libs
    tar -xvzf gvmd-$GVMD_VERSION.tar.gz && mv gvmd-$GVMD_VERSION gvmd
    tar -xvzf gsa-$GSA_VERSION.tar.gz && mv gsa-$GSA_VERSION gsa
    tar -xvzf gsad-$GSAD_VERSION.tar.gz && mv gsad-$GSAD_VERSION gsad
    tar -xvzf openvas-smb-$OPENVAS_SMB_VERSION.tar.gz && mv openvas-smb-$OPENVAS_SMB_VERSION openvas-smb
    tar -xvzf openvas-scanner-$OPENVAS_SCANNER_VERSION.tar.gz && mv openvas-scanner-$OPENVAS_SCANNER_VERSION openvas-scanner
    tar -xvzf ospd-openvas-$OSPD_OPENVAS_VERSION.tar.gz && mv ospd-openvas-$OSPD_OPENVAS_VERSION ospd-openvas
    

    Читать далее

  • Мониторинг 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).

    Скачать “1C:Enterprise Monitoring (helper_1c_ras)” helper_1c_ras-1.exe – Загружено 1097 раз – 2 MB

    Теперь в каталоге размещения утилиты helper_ras_1c.exe создаем текстовый файл — cfg.conf со следующим содержанием:

    [Parameters]
    rasPath=C:\Program Files\1cv8\8.3.17.2306\bin
    rasPort=1545
    agentName=localhost
    ctrlPort=1540
    ИНФОРМАЦИЯ: обращаю внимание что в параметре rasPath нужно указывать путь с учетом какая версия 1С у вас установлена. Остальные параметры оставляем без изменения!

    Теперь нужно установить службу.. (да да, можно было бы и написать еще утилиту которая будет устанавливать по одному клику, но мы же не ищем легкий путей).

    Читать далее

  • Ввод Debian 10 Buster в домен Windows с помощью Kerberos, Samba, Winbind

    Ниже опишу как ввести linux систему Debian 10 в домен Windows с помощью Kerberos, Samba, Winbind.

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

    • Контроллер домена (DC1) на Windows Server 2019, домен SYSOS.LOCAL
    • Linux система (datastore1) на Debian 10 Buster

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

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

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

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

    datastore1.sysos.local

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

    127.0.0.1	localhost
    127.0.1.1	datastore1.sysos.local datastore1

     

    Настройка синхронизации времени

    Если разница будет более 5 минут, то будет не возможно получить билет от Kerberos. Настраиваем синхронизацию времени с контроллером домена, выполняем установку NTP:

    apt-get install ntp ntpdate

    В файле конфигурации /etc/ntp.conf, добавляем в него информацию о вашем сервере времени (в моем случае указываю контролер домена):

    # You do need to talk to an NTP server or two (or three).
    server dc1.sysos.local

    Перезапускаем службу времени:

    /etc/init.d/ntp restart

     

    Для единовременной синхронизации можно воспользоваться командой:

    ntpdate dc1.sysos.local
    Рекомендую ознакомится подробней о синхронизации времени на Linux системах можно почитать в этой статье и выполнить его настройку.

    Читать далее

  • Установка FreePBX 14 с Asterisk 18 на Debian 10 Buster

    Рассмотрим как установить 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/.

    Читать далее

  • LicDataViewer программа для просмотра/расшифровки информации из файла программной лицензии 1С (*.lic)

    UPD 1. Выпущена версия 1.0.0.2. Добавлена возможность сохранять полученный результат в текстовый файл. Реализовано автосохранение и ручное.

    UPD 2. Выпущена версия 1.0.0.3. Исправлен косяк при ручном сохранении, теперь расширение по-умолчанию добавляется к названию файла.

    UPD 3. Выпущена версия 1.0.0.4. Немного изменена механика завершения работы. Теперь корректно программа чистит за собой файлы используемые для декодирования.

    UPD 4. Выпущена версия 1.0.0.5. Добавлены утилиты (Ring, License-tools) последних версий. Исправлены некоторые ошибки и глюки в работе утилиты, описанные в комментариях.

    ВНИМАНИЕ! Запрещается распространение программы через какие либо сторонние сайты\файлообменники без согласия автора.

    Столкнулся недавно с ситуацией, когда необходимо было разобрать имеющиеся файлы программных лицензии 1С (*.lic) и понять какие регистрационные данные и используемый ПИН-код на них.

    Эту информацию можно получить при помощи утилит Ring и License Tools поставляемых вместе с платформой 1С. Данные утилиты находятся в папке ExtDst с установленной платформой 1C.

    Данные утилиты написаны на Java и соответственно требуют установленной в системе среды Java и Java Cryptography Extension (JCE). Использование утилит Ring и License Tools возможно только из командной строки, это накладывает различного рода неудобства, если файлов программных лицензий много.

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

    Читать далее