
Рекурсивный chmod только для папок или только для файлов в Linux
Небольшая шпаргалка, на случай если нужно выполнить какие либо действия только с папками или только с файлами в каталоге и его подкаталогах.
Небольшая шпаргалка, на случай если нужно выполнить какие либо действия только с папками или только с файлами в каталоге и его подкаталогах.
В работе имеется связка Asterisk 16.3.0 + FreePBX 14.0.11 и два SIP-провайдера. Задался вопросом как модифицировать/изменить номер телефона (CallerID) при входящем звонке, устанавливая префикс 8 в любом случае. Мне нужно это для удобства обратного набора, на поступивший внешний звонок.
В моем случае один SIP-провайдер отдает номер телефона с префиксом 7, прим. 7800-800-80-80 (7XXXXXXXXXX), а другой вообще без префикса, прим. 800-800-80-80.
Чтобы исправить это, нам необходимо немного модифицировать dialplan, внеся в файл конфигурации /etc/asterisk/extensions_custom.conf
следующий код:
[from-pstn-custom] exten => _X.,1,ExecIF($[${VALID_EXTEN(fix-cid,${CALLERID(num)})}]?Gosub(fix-cid,${CALLERID(num)},1)) [fix-cid] ; Входящий номер с кодом 7 exten => _7XXXXXXXXXX,1,Set(CALLERID(num)=8${CALLERID(num):1}) exten => _7XXXXXXXXXX,n,Return() ; Входящий номер без кода страны exten => _XXXXXXXXXX,1,Set(CALLERID(num)=8${CALLERID(num)}) exten => _XXXXXXXXXX,n,Return()
SSH (Secure Shell) — это сетевой протокол для удалённого управления операционной системой с помощью командной строки и передачи данных в зашифрованном виде.
Частенько сталкиваюсь с необходимостью конвертирования сертификата .crt, .ca-bundle в формат PFX. И каждый раз пытаюсь вспомнить как это сделать в Linux посредством OPENSSL.
Используя утилиту SMSTOOLS3
(развернутую по этой статье) для отправки/приема SMS сообщений, я столкнулся со сложностью отправки SMS сообщений с разных подключенных GSM модемов.
Однажды при попытке посмотреть какие «Виртуальные хосты» сейчас активны на Веб-сервере apache, я получил следующие ошибки в выводе:
В очередной раз после миграции VM Debian Linux с одного хоста VMware на другой, при загрузке системы наблюдал множественные ошибки.
Задался недавно вопросом, как можно из консоли Linux, подключится к удаленной машине с ОС Windows на борту и выполнить на ней какую либо команду (прим. «ipconfig») или запустить за ранее написанный скрипт (*.bat, *.ps1).
В поисках решения организации SMS шлюза, посредством GSM-модема (прим. Huawei E1550), наткнулся на пакет «smstools», который прекрасно справляется со своими обязанностями (отправка\получение SMS).
Появилась интересная задача, которая заключается в том что нужно подключить GSM-модем USB HUAWEI E1550 к Asterisk 13 работающий на Debian 8 Jessie. Настроить возможность принимать/отправлять SMS, принимать/звонить с номера находящегося в GSM-модеме.
Рассмотрим как выполнить установку из исходников Asterisk 16 на Debian 9 Stretch.
Перед началом установки обновляем систему до актуального состояния:
apt-get update && apt-get upgrade -y
Устанавливаем необходимые зависимости:
apt-get install linux-headers-amd64 gcc make autoconf libtool libical-dev pkg-config default-libmysqlclient-dev -y
Скачиваем исходники (dahdi, libpri, libstrp, asterisk) и распаковываем их:
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz wget https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz tar -zxvf dahdi-linux-complete-current.tar.gz tar -zxvf libpri-current.tar.gz tar -zxvf v2.2.0.tar.gz tar -zxvf asterisk-16-current.tar.gz
В качестве памятки опишу как управлять конференц-комнатами XMPP-сервера ejabberd через консоль ejabberdctl.
Продолжаю свое знакомство с XMPP-сервером, на базе ejabberd и реализацию задачи по организации достойного корпоративного мессенджера.
Появилась потребность в корпоративном Jabber-сервере (XMPP). Для реализации задачи выбрал ejabberd
, по заявлениям разработчика он легкий, быстрый и надежный как скала.
Понадобилось загрузится в безопасном режиме на Windows 10, но сделать это оказалось не тривиальной задачей. В Windows XP и Windows 7 можно было нажать клавишу F8 при запуске, чтобы получить доступ к опции загрузки в безопасном режиме. Но в Windows 10 не получится просто нажать F8, когда ваш компьютер загружается, чтобы увидеть расширенные параметры запуска, такие как безопасный режим и т.д.
Механика загрузки в безопасном режиме изменилась в Windows 10. Рассмотрим различные способы загрузки в безопасном режиме в Windows 10.
Если Windows может запускаться в обычном режиме, то можно получить доступ к безопасному режиму загрузки из опций конфигурации системы. Запускаем утилиту конфигурации системы, нажав Win + R, при запуске введите msconfig и нажмите клавишу ввода.
В окне «Конфигурация системы», щелкните вкладку загрузки и выберите безопасную загрузку:
При написании скрипта на PHP, понадобилось использовать PDO подключение к MSSQL Server.
Решается все довольно просто, установкой драйвера PDO_DBLIB, который реализует доступ к базам данных Microsoft SQL Server с использованием библиотеки FreeTDS.
При переходе на использование Debian 9, обнаружил что имена сетевых интерфейсов имеют странный вид, вместо привычных eth0
.. я вижу ens32
.
Довольно часто приходится разворачивать серверные системы на базе ОС семейства Debian и одним из основных и первоначальных пунктов в настройке системы, является настройка ее сетевой части.
Продолжаем рассматривать способы защиты веб-сервера, от потенциальных угроз. На этот раз рассмотрим такой инструмент как Fail2ban.
Принцип работы Fail2ban, заключается в анализе лог-файлов и реагировании на определенные события которые определены в настройках Fail2ban.
Рассмотрим как установить Fail2ban и настроить на защиту веб-сервера (Apache), развернутом на Debian 9 Stretch.
Устанавливаем пакет fail2ban:
apt-get install fail2ban -y
Конфигурационный файл настройки правил /etc/fail2ban/jail.conf
, разработчики не рекомендуют изменять, поэтому создадим его локальную копию, из которого будут в приоритете считываться правила:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Используя в работе голый Asterisk, рано или поздно становится недостаточно стандартных инструментов, для решения нужных задач. В этом случае нам поможет интерфейс AGI, который позволяет Asterisk взаимодействовать со сторонними приложениями, к примеру с приложением написанным на PHP.
Рассмотрим как настроить взаимодействие Asterisk с классом phpagi, посредством интерфейса AGI (Asterisk Gateway Interface).
[stextbox id=’info’]Все ниже действия будут производится на Debian 8 Jessie, Asterisk 13 и версией PHP — 5.6. Хочу обратить внимание что ниже описанное так же будет применимо к FreePBX[/stextbox]
Для подключения класса phpagi, в конфигурационный файл (/etc/asterisk/manager.conf), добавляем параметры подключения его (прим. astphp):