- Регистрация
- 20 Дек 2017
- Сообщения
- 7
В свете последних событий, легко можно пропустить момент, когда Ваш IP или домен попадёт под блокировку. Если блокировку домена еще можно предположить и предотвратить (удаление материала), то блокировку IP можно легко пропустить. Сейчас блокируются целые подсети, а в случае использования CloudFlare или DDoS-Guard, то не уследить когда Ваши соседи по IP «накосячат» и попадут в блок, проще простого.
Поэтому сейчас сделаем личного бота, который будет чекать сайт(ы) и сообщать Нам «неприятные новости», хотя как «неприятные», лучше же в первые минуты всё узнать и предпринять действия для решения, чем через неделю, когда сайт придется уже «реанимировать».
Вот и весь бот (
Поэтому сейчас сделаем личного бота, который будет чекать сайт(ы) и сообщать Нам «неприятные новости», хотя как «неприятные», лучше же в первые минуты всё узнать и предпринять действия для решения, чем через неделю, когда сайт придется уже «реанимировать».
Вот и весь бот (
index.js
):
JavaScript:
const rkn = require('check-rkn');
const Telegraf = require('telegraf');
const bot = new Telegraf('ВАШ_ТОКЕН'); // Получаете у @BotFather
const id = 'ВАШ_ID'; // Получаете у @userinfobot
const domains = 'ВАШИ_ДОМЕНЫ,ЧЕРЕЗ_ЗАПЯТУЮ'; // google.com,linkedin.com
bot.start((ctx) => {
bot.telegram.sendMessage(parseInt(id),'? Принял в работу: ' + domains);
setInterval(() => {
rkn(domains.split(','), (err, res) => {
res.forEach(r => {
if (r.block || !!(r.ips.filter(i => i.block)).length) {
bot.telegram.sendMessage(parseInt(id),
'Джонни, у нас проблемы❗️\n' +
(r.block ? '❌ ' : '?? ') + r.domain + '\n' +
((r.ips.filter(i => i.block)).map(i =>
(i.block ? '❌ ' : '?? ') + i.ip)).join('\n')
)
}
})
})
}, 1000*60*60) // Проверять в реестре каждые 60 мин
});
bot.startPolling();
- Стучимся к @BotFather, жмакаем
/newbot
и получаем токен - Стучимся к @userinfobot и узнаём свой ID Telegram
- Подключаемся по SSH и создаем папку
mkdir /home/bot
- Заходим
cd /home/bot
и исполняемnpm init -y
- Устанавливаем Telegraf и Check-RKN
npm i telegraf check-rkn --save
- Устанавливаем PM2
npm install pm2 -g && pm2 startup
- Копируйте код, вводите
nano index.js
, вставляетеShift+Insert
, сохраняетеCtrl+X
,y
,Enter
- Запускаем бота
pm2 start index.js && pm2 save
- Находите Вашего бота по названию в поиске и жмёте
START