По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Для каждого сервера нелишним будет установка баннера, который мог бы проинформировать злоумышленника о том, какие риски он несёт в случае взлома иили просто каждому пользователю демонстрировать важную информацию о сервере после успешной авторизации. По сути, есть две сущности – баннер и MOTD. После ввода логина вы увидите баннер, и после успешной авторизации будет показан MOTD.
Настройка
Для начала отредактируем файл /etc/issue.net – например, с помощью редактора Vim:
vim /etc/issue.net
И вставим в него любой желаемый текст, например:
###############################################################
# ACCESS RESTRICTED #
# Please disconnect immediately! #
# All you actions will be recorded! #
###############################################################
Следующим шагом необходимо отредактировать конфиг-файл сревиса sshd и указать путь для баннера. Для этого сначала откроем конфиг следующей командой:
vim /etc/ssh/sshd_config
Далее необходимо найти строчку, которая относится к баннеру, и прописать путь как на скриншоте ниже:
То есть Banner /etc/issue.net. После этого сохраняем конфиг (в Vim нажимаем Esc и вводим :x!, затем Enter).
Последним шагом отредактируем файл MOTD, для этого используем команду vim /etc/motd и добавим в неё свой баннер, к примеру:
##########################################
# TEST SERVER# #
# PLEASE DISCONNECT IF YOU ARE NOT ADMIN #
##########################################
Также сохраняем файл и пробуем зайти на сервер, вы должны увидеть следующее:
Для формирования баннеров также можно использовать ASCII код, поэтому будьте креативны! :) К примеру, любую картинку можно перевести в код с помощью онлайн ASСII конвертера.
Данное улучшение официально было представлено в марте 2020 года и версия 2.0 была опубликована на GitHub.
Очень ценное приложение rdiff-backup позволяет пользователям выполнять резервное копирование каталога в другое удаленное или локальное хранилище. Одной из ключевых преимуществ приложения является его простота. Пользователи могут создавать свои первые резервные копии с помощью одной простой команды:
# rdiff-backup source-dir backup-dir
Чего не было в версии 1.2.8
Основные модификации были сделаны для инструментов разработки, включая Travis Pipeline, автоматизированное тестирование для Linux и Windows, новый Ubuntu PPA, новый Fedora COPR и новый репозиторий Pypi.org.
Эти улучшения призваны помочь пользователям легко перейти на новую версию простым и доступным способом. В соответствии с этими улучшениями, мы включили в выпуск следующую новую визуальную идентичность.
Особенности rdiff-backup
Этот выпуск направлен в основном на обновление и поддержку Python 3.5 и выше в Linux и Windows и поэтому не включает много новых функций по сравнению с предыдущей официальной версией 1.2.8. Тем не менее, он по-прежнему содержит несколько патчей, написанных на протяжении многих лет для различных дистрибутивов Linux, а также некоторые улучшения с точки зрения скорости и эффективности использования доступного места.
Rdiff-backup улучшен для обеспечения эффективного резервного копирования во всех сценариях. Вот несколько особенностей:
Дружелюбный интерфейс
Функция зеркалирования
Отмена стратегии инкрементного хранения резервных копий
Сохранение внутренней информации
Эффективное использование места
Оптимизация использования пропускной способности
Прозрачность всех типов и форматов данных
Автообнаружение файловой системы
Поддержка расширенных атрибутов и атрибутов ACL
Сохранение статистики
Поддержка Linux и Windows; также работает на BSD и macOS X
Установка rdiff-backup на Linux
Установка rdiff-backup как для существующих, так и для новых пользователей одиноков. Ниже приведены несколько команд для развертывания rdiff-backup
Чтобы установить Rdiff-Backup на Ubuntu Focal или Debian Bullseye или новее наберите следующую команду:
$ sudo apt install rdiff-backup
Чтобы установить утилиту на более старые версии Ubuntu^
$ sudo add-apt-repository ppa:rdiff-backup/rdiff-backup-backports
$ sudo apt update
$ sudo apt install rdiff-backup
Чтобы установить Rdiff-Backup на CentoOS или RHEL 7
$ sudo yum install yum-plugin-copr epel-release
$ sudo yum copr enable frankcrawford/rdiff-backup
$ sudo yum install rdiff-backup
Чтобы установить на CentoOS или RHEL 7
$ sudo yum install dnf-plugins-core epel-release
$ sudo dnf copr enable frankcrawford/rdiff-backup
$ sudo yum install rdiff-backup
Для установки на Fedora 32 и выше
$ sudo dnf install rdiff-backup
Для установки Rdiff-Backup на Debian и его производных, Raspbian и т.д. (из PyPi):
$ sudo apt install python3-pip python3-setuptools python3-pylibacl python3-pyxattr
$ sudo pip3 install rdiff-backup
Для установки Rdiff-Backup на Fedora и его производных (из PyPi):
$ sudo dnf install python3-pip python3-setuptools py3libacl python3-pyxattr
$ sudo pip3 install rdiff-backup
Наверняка кто-то из вас хоть раз в жизни получал SMS после звонка в определенную компанию.
Обычно, это просьба оценить работу операторов. Так, например, это сделано у GSM операторов. Также это может быть SMS с благодарностью за обращение от компании или же об актуальных акциях и предложениях.
Сегодня я хотел бы рассказать о том, как Вы можете реализовать подобную функцию с использованием FreePBX
Статья написана по мотивам существующей на данном ресурсе публикации "Оценка оператора после звонка"
У данного метода есть один недостаток - для его работы нужен chan_dongle и тариф с безлимитными SMS. Для тех, у кого нет пресловутого chan_dоngle, есть другой метод, который я постараюсь объяснить.
Для особо нетерпеливых прошу Вас заглянуть в контакты, возможно, я уже там появился :)
В данном методе мы не будем ломать диалплан FreePBX и использовать тяжелую артиллерию в виде MySQL. Итак, приступим.
Для начала открываем конфигурационные файлы, а именно:
/etc/asterisk/extensions_custom.conf
Вносим в него такой кусочек диалплана. В коде я дал комментарии зачем нужны некоторые части:
[send-sms]
exten => _.,1,NoOp(Start sms)
exten => _.,n,DIAL(SIP/${EXTEN},,trg) ;опция g позволяет "проваливаться вниз". ВНИМАНИЕ агент должен использовать вашу технологию (sip или pjsip)
exten => _X.,n,GotoIf($[${DIALSTATUS}=BUSY]?busy:answered) //проверяем, был ли отвечен вызов, вот здесь мы или пропускаем клиента дальше если с ним уже говорили или нет.
exten => _X.,n(busy),Hangup()
exten => _X.,n(answered),Goto(sms,${EXTEN},1)
[sms]
exten => _X.,1,NoOp(Statrt SendSms)
exten => _X.,n,Answer()
same => n,Set(COUNT=1); установка счетчика. По идее, он тут не нужен, но сделан на всякий аварийный случай. Вдруг заклинит и клиента заспамит смс? :)
same => n,Set(RECIVER=Имя донгла в системе); если используете донгл
same => n,Set(RECIPIENT=${CALLERID(num)})
same => n,Set(TEXT="Спасибо что обратились в нашу компанию Рога и копыта"); текст смс
same => n,GotoIf($["${RECIPIENT:0:2}" != "79"]?end); это проверка на принадлежность к мобильным номерам. Уточните формат входящих CALLERID(num) на вашей АТС - с 7 или 8?
same => n,System(/usr/sbin/asterisk -rx 'dongle sms ${RECIVER} 7${RECIPIENT:1} ${TEXT}'); тут отправка с донгла.
same => n,Set(COUNT=$[${COUNT} + 1]); увеличение счетчика (который не нужен, а вдруг)
same => n,GotoIf($["${COUNT}" > "1"]?end); проверка и отправка на завершение
exten => _X.,n(end),Goto(macro-hangupcall,s,1); Конец
Обратите внимание на пометки в диалплане. В частности, Агент должен использовать вашу технологию подключения. Входящие форматы на ваши транки, 7 или 8. Если он еще не унифицирован, то рекомендую это сделать и привести в норму стандарта E164. Если входящие у вас содержат + то, вместо ${RECIPIENT:0:2} сделайте ${RECIPIENT:0:3}
На этом, настройка конфигурационного файла extensions_custom.conf закончена. Теперь открываем файл queues_post_custom.conf и вставляем туда такую строку:
member=Local/4015781@send-sms/n,0,4015781,hint:4015781@ext-local
Где 4015781 номер существующего Агента в очереди. После этого, закрываем файл, перезагружаем диалплан командой dialplan reload и тестируем.
Применять можно, например, для отправки благодарности клиенту с напоминанием времени работы или адреса компании.
Чтобы не огорчить тех, кто не использует донглы или использует GoIP или другие Gsm шлюзы, на мой взгляд, есть более "красивый" метод:
Идем в один из множества веб сервисов для SMS рассылок (названия писать не буду), регистрируемся у них и берем их готовые библиотеки для доступа к API. Я покажу на примере PHP API одной известной компании:
#!/usr/bin/php -q
<?php
#парсим данные из AGI
require(′phpagi.php′);
$agi = new AGI();
$phone = $agi->request[′agi_arg_1′];
text = $agi->request[′agi_arg_2′];
$sender = ′INFORM′;
// !!! Замените API-ключ на свой.
$apikey = ′XXXXXXXXXXXXYYYYYYYYYYYYZZZZZZZZXXXXXXXXXXXXYYYYYYYYYYYYZZZZZZZZ′;
$url = ′https://smspilot.ru/api.php′
′?send=′.urlencode( $text )
.′&to=′.urlencode( $phone )
.′&from=′.$sender
.′&apikey=′.$apikey
.′&format=json′;
$json = file_get_contents( $url );
echo $json.′′;
$j = json_decode( $json );
if ( !isset($j->error)) {
echo ′SMS успешно отправлена server_id=′.$j->send[0]->server_id;
} else {
trigger_error( $j->description_ru, E_USER_WARNING );
}
Используем AGI. И в представленном диалплане меняем одну строку, а именно:
same => n,System(/usr/sbin/asterisk -rx 'dongle sms ${RECIVER} ${TEXT}'); тут отправка с донгла.
на:
same => n,AGI(sendsms.php, 7${RECIPIENT:1}, "${TEXT}")
И на этом - все. Чем данный способ лучше? Могу точно сказать, что в подобных сервисах для компаний есть возможность в качестве отправителя зарегистрировать название организации – это явно плюс в копилку лояльности клиента :)
Это значит, что не нужен донг и SMS клиенту приходит не с безликих цифр, а от имени вашей компании в поле отправитель. Это, безусловно, повышает доверие и лояльность получателя SMS.
Надеюсь, что данный метод будет полезен и найдёт применение в ваших бизнес-процессах. Удачи!