Дмитрий Поляшов – веб-разработчик и IT-консультант

Дмитрий Поляшов

Разработка сайтов и продвижение их в интернете, различный спектр предоставления IT-услуг, комплексное сопровождение и помощь в интеграциях

Последние записи в блоге

Уведомления о неудачных входах на MikroTik

16.07.2026
Уведомления о неудачных входах на MikroTik — Notifications about failed logins(Aliert send email) to MikroTikВ условиях роста кибератак на сетевую инфраструктуру особенно важно контролировать попытки несанкционированного доступа к пограничным маршрутизаторам. MikroTik RouterOS — одно из самых популярных решений на российском рынке, и именно оно чаще всего становится целью брутфорс-атак. Своевременное получение информации о неудачных входах позволяет быстро реагировать на инциденты. Почему именно почтовые уведомления сейчас являются оптимальным выбором?Преимущества почтовых уведомлений для российских компанийНезависимость от внешних сервисов Многие используют Telegram-ботов или Slack-вебхуки. Однако эти сервисы могут блокироваться, требовать постоянного обновления API или работать через недоступные из-за санкций зарубежные хосты. E‑mail‑серверы, особенно внутренние (Exchange, VK WorkMail, Яндекс360), всегда доступны и не зависят от геополитической ситуации.Стабильность доставки внутри РФПочтовые протоколы (SMTP) работают через стандартные порты, которые открыты в любых корпоративных сетях. Регуляторы (ФСТЭК, Минцифры) рекомендуют использовать отечественные почтовые системы, и такая схема легко вписывается в требования по импортозамещению.Простота настройки и низкий порог входаНа MikroTik достаточно указать SMTP-сервер и один адрес получателя. Не нужно регистрировать ботов, получать токены или поддерживать внешние прокси. Это снижает риск ошибок конфигурации.Офлайн-хранение и аудитПисьма автоматически сохраняются в почтовом ящике. Логи неудачных входов можно централизованно архивировать, не тратя ресурсы самого маршрутизатора. При расследовании инцидентов электронная переписка является легитимным доказательством.Полный контроль над даннымиВ отличие от облачных мессенджеров, вы сами решаете, где хранить уведомления — на своём сервере или у доверенного провайдера. Это критично для объектов КИИ, персональных данных и гостайн.Почему полезно получать информацию о попытках неудачного входаРаннее обнаружение атаки – серия неудачных логинов почти всегда предшествует взлому. Вы узнаете об этом в реальном времени и сможете заблокировать IP-адрес.Анализ векторов атак – по времени, частоте и пользователям (admin, root, user) можно понять, используется ли словарный подбор или атака направленная.Своевременная смена политик – если неудачные попытки идут с внутренних адресов, возможно, скомпрометирован ПК сотрудника. Вы успеете отозвать учётные данные.Соблюдение требований к аудиту – многие стандарты (PCI DSS, 152-ФЗ) требуют регистрации событий аутентификации. Email-уведомления становятся простейшей формой такого аудита.Психологический эффект – администратор, получающий оповещения, начинает внимательнее относиться к настройкам безопасности, быстрее обновляет прошивки и меняет пароли.Готовый скрипт для MikroTik с отправкой email-уведомлений, добавьте так же его в планировщик задач с интервалом в 3-5 минуты. Так же не забудьте настроить учётную запись почты в разделе tool > e-mail.:local Time [/system clock get time];:local Date [/system clock get date];:local EmailBodyText "";:global ParseLogAccountEndArrayID;:local IDsEventsAccount [/log find where topics ~ "critical"];:local LenArrayIDs [:len $IDsEventsAccount];:local StartArrayID [:find $IDsEventsAccount $ParseLogAccountEndArrayID];:local EndArrayID ($IDsEventsAccount -> ($LenArrayIDs-1));:if ($EndArrayID != $ParseLogAccountEndArrayID and [:tobool $ParseLogAccountEndArrayID]) do={    :local StartArray [:find $IDsEventsAccount $ParseLogAccountLastRunID];    :for KeyArray from=($StartArrayID+1) to=($LenArrayIDs-1) do={        :local IDMessage ($IDsEventsAccount ->$KeyArray);        :set EmailBodyText "$EmailBodyText\n  $[/log get number=$IDMessage time] - $[/log get number=$IDMessage message];";    }    :local Subject "RouterOS: AUTH FAILED on $DeviceName";    :local Body "$DeviceName\nTime: $Time\nDate: $Date\n\nEvents:$EmailBodyText";    /tool e-mail send to="vashemail@email.ru" subject="$Subject" body="$Body"}:set ParseLogAccountEndArrayID $EndArrayID;Eng: With cyber attacks on the network infrastructure on the rise, it is especially important to monitor unauthorized access attempts to edge routers. MikroTik RouterOS is one of the most popular solutions on the Russian market, and it is this solution that most often becomes the target of brute force attacks. Timely receipt of information about unsuccessful entries allows you to quickly respond to incidents. Why are email notifications the best choice right now?Advantages of email notifications for Russian companiesIndependence from external services Many people use Telegram bots or Slack webhooks. However, these services may be blocked, require constant API updates, or work through foreign hosts that are unavailable due to sanctions. E‑mail servers, especially internal ones (Exchange, VK WorkMail, Yandex 360), are always available and do not depend on the geopolitical situation.Stability of delivery within the Russian FederationMail protocols (SMTP) work through standard ports that are open on any corporate network. Regulators (FSTEC, Ministry of Finance) recommend using domestic postal systems, and such a scheme easily fits into the requirements for import substitution.Easy to set up and low entry thresholdOn MikroTik, it is enough to specify an SMTP server and one recipient address. You don't need to register bots, receive tokens, or maintain external proxies. This reduces the risk of configuration errors.Offline storage and auditingEmails are automatically saved in the mailbox. Logs of failed logins can be archived centrally, without wasting the resources of the router itself. When investigating incidents, electronic correspondence is legitimate evidence.Full control over the dataUnlike cloud messengers, you decide where to store notifications — on your server or with a trusted provider. This is critical for CII facilities, personal data, and state secrets.Why is it useful to receive information about failed login attemptsEarly detection of an attack – a series of failed logins almost always precedes hacking. You will find out about this in real time and will be able to block the IP address.Attack vector analysis – based on time, frequency, and users (admin, root, user), it is possible to understand whether vocabulary selection is being used or a targeted attack.Timely policy change – if unsuccessful attempts come from internal addresses, the employee's PC may be compromised. You will have time to revoke your credentials.Compliance with audit requirements – Many standards (PCI DSS, 152-FZ) require registration of authentication events. Email notifications are becoming the simplest form of such an audit.Psychological effect – the administrator who receives alerts begins to pay more attention to the security settings, updates the firmware faster and changes passwords.A ready-made script for MikroTik with sending email notifications, add it to the task scheduler with an interval of 3-5 minutes. Also, do not forget to set up an email account in the tool > e-mail section.:local Time [/system clock get time];:local Date [/system clock get date];:local EmailBodyText "";:global ParseLogAccountEndArrayID;:local IDsEventsAccount [/log find where topics ~ "critical"];:local LenArrayIDs [:len $IDsEventsAccount];:local StartArrayID [:find $IDsEventsAccount $ParseLogAccountEndArrayID];:local EndArrayID ($IDsEventsAccount -> ($LenArrayIDs-1));:if ($EndArrayID != $ParseLogAccountEndArrayID and [:tobool $ParseLogAccountEndArrayID]) do={    :local StartArray [:find $IDsEventsAccount $ParseLogAccountLastRunID];    :for KeyArray from=($StartArrayID+1) to=($LenArrayIDs-1) do={        :local IDMessage ($IDsEventsAccount ->$KeyArray);        :set EmailBodyText "$EmailBodyText\n  $[/log get number=$IDMessage time] - $[/log get number=$IDMessage message];";    }    :local Subject "RouterOS: AUTH FAILED on $DeviceName";    :local Body "$DeviceName\nTime: $Time\nDate: $Date\n\nEvents:$EmailBodyText";    /tool e-mail send to="vashemail@email.ru" subject="$Subject" body="$Body"}:set ParseLogAccountEndArrayID $EndArrayID;
Читать далее →

Mikrotik ANTI brute-force Attack

16.07.2026
Маршрутизаторы Mikrotik, работающие под управлением Router OS, широко используются благодаря своей гибкости и функциональности. Однако, как и любое другое сетевое устройство, они подвержены атакам, в том числе и brute-force атакам, направленным на подбор логинов и паролей для доступа через Winbox.Egnlish: The security of network equipment is a critical issue, especially when it comes to routers that control access to your network. Mikrotik routers running RouterOS are widely used due to their flexibility and functionality. However, like any other network device, they are susceptible to attacks, including brute-force attacks aimed at selecting logins and passwords for access through Winbox.С простыми атаками - нужно бороться и по простому.И в этом кроется фундаментальная истина кибербезопасности, которую часто упускают из виду, стремясь к сложным и дорогостоящим решениям. Представьте себе замок, окруженный множеством высоких стен, башен и хитроумных ловушек, но с забытой щелью в основании, через которую легко может проскользнуть мелкий воришка. Так и с киберзащитой: самые сложные системы могут быть скомпрометированы через самые элементарные уязвимости. English: With simple attacks, you need to fight in a simple way. And therein lies the fundamental truth of cybersecurity, which is often overlooked in the pursuit of complex and expensive solutions. Imagine a castle surrounded by many high walls, towers and clever traps, but with a forgotten crack in the base through which a petty thief can easily slip. It's the same with cyber defense: the most complex systems can be compromised through the most basic vulnerabilities.Fail2Ban Winbox (Защита MikroTik Winbox от Brute Force)Защита MikroTik от перебора пароля (BruteForce) при подключении через Winbox (IP адрес), используя MikroTik Firewall. При каждой неверной попытке ввода пароля через Winbox, MikroTik отправляет в ответ незашифрованный текст «invalid user name or password».Информация:Chain: outputProtocol: 6 (tcp)Src. Port: 8291Content: invalid user name or password   Eng: Fail2Ban Winbox (protecting MikroTik Winbox from brute force) Download MikroTik from password brute force when connecting via Winbox (IP address) using the MikroTik Firewall. Every time a new attempt is entered using Winbox, MikroTik responds to the unregistered text "invalid username or password".Information:Chain: outputProtocol: 6 (tcp)Src. Port: 8291Content: invalid username or password.    /ip firewall filter add action=jump chain=output comment="F2B Winbox: Jump to Fail2Ban-Destination-IP chain" content="invalid user name or password" jump-target=Fail2Ban-Destination-IP protocol=tcp src-port=8291/ip firewall filter add action=add-dst-to-address-list address-list=BlackList address-list-timeout=60m chain=Fail2Ban-Destination-IP comment="3 Attempt --> BruteForceList" dst-address-list=LoginFailure02/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure02 address-list-timeout=2m chain=Fail2Ban-Destination-IP comment="2 Attempt --> LoginFailure02" dst-address-list=LoginFailure01/ip firewall filter add action=add-dst-to-address-list address-list=LoginFailure01 address-list-timeout=1m chain=Fail2Ban-Destination-IP comment="1 Attempt --> LoginFailure01"Add block RAW rules:/ip firewall rawadd action=drop chain=prerouting comment=";; Block Blacklist" \``    ``src-address-list=BruteForceList
Читать далее →

Защита от DDOS-атак / SYN Flood protect MIKROTIK

16.07.2026
Защита от DDOS-атак / SYN Flood protect MIKROTIK/ip firewall filteradd chain=forward connection-state=new action=jump jump-target=block-ddosadd chain=forward connection-state=new src-address-list=ddoser dst-address-list=ddosed action=dropadd chain=block-ddos dst-limit=50,50,src-and-dst-addresses/10s action=returnadd chain=block-ddos action=add-dst-to-address-list address-list=ddosed address-list-timeout=10madd chain=block-ddos action=add-src-to-address-list address-list=ddoser address-list-timeout=10m//ip firewall filteradd action=jump chain=forward comment="SYN Flood protect" connection-state=new \in-interface="ether1" jump-target=SYN-Protect protocol=tcp \tcp-flags=synadd action=jump chain=input comment="SYN Flood protect" connection-state=new \jump-target=SYN-Protect protocol=tcp tcp-flags=synadd action=return chain=SYN-Protect limit=200,5:packetadd action=drop chain=SYN-ProtectЗащита от взлома доступа к МикротикуWinbox доступ:/ip firewall mangleadd action=jump chain=output content="invalid user name or password" jump-target=FB-WB protocol=tcp src-port=8291/ip firewall mangleadd action=add-dst-to-address-list address-list=FB-WB-BAN address-list-timeout=1d chain=FB-WB dst-address-list=FB-WB-3/ip firewall mangleadd action=add-dst-to-address-list address-list=FB-WB-3 address-list-timeout=1m chain=FB-WB dst-address-list=FB-WB-2add action=add-dst-to-address-list address-list=FB-WB-2 address-list-timeout=1m chain=FB-WB dst-address-list=FB-WB-1add action=add-dst-to-address-list address-list=FB-WB-1 address-list-timeout=1m chain=FB-WB/ip firewall rawadd action=drop chain=prerouting src-address-list=FB-WB-BANЗащита WebFig от BruteForce/ip firewall mangleadd action=jump chain=output content="403 Forbidden" jump-target=FB-WEB protocol=tcp src-port=80/ip firewall mangleadd action=add-dst-to-address-list address-list=FB-WEB-BAN address-list-timeout=1d chain=FB-WEB dst-address-list=FB-WEB-3add action=add-dst-to-address-list address-list=FB-WEB-3 address-list-timeout=1m chain=FB-WEB dst-address-list=FB-WEB-2add action=add-dst-to-address-list address-list=FB-WEB-2 address-list-timeout=1m chain=FB-WEB dst-address-list=FB-WEB-1add action=add-dst-to-address-list address-list=FB-WEB-1 address-list-timeout=1m chain=FB-WEB/ip firewall rawadd action=drop chain=prerouting src-address-list=FB-WEB-BANЗащита WebFig SSL от BruteForce/ip firewall mangleadd action=jump chain=output jump-target=FB-SSL packet-size=317 protocol=tcp src-port=443/ip firewall mangleadd action=add-dst-to-address-list address-list=FB-SSL-BAN address-list-timeout=1d chain=FB-SSL dst-address-list=FB-SSL-3add action=add-dst-to-address-list address-list=FB-SSL-3 address-list-timeout=1m chain=FB-SSL dst-address-list=FB-SSL-2add action=add-dst-to-address-list address-list=FB-SSL-2 address-list-timeout=1m chain=FB-SSL dst-address-list=FB-SSL-1add action=add-dst-to-address-list address-list=FB-SSL-1 address-list-timeout=1m chain=FB-SSL/ip firewall rawadd action=drop chain=prerouting src-address-list=FB-SSL-BAN
Читать далее →

Контейнеризация приложений: почему это важно для DevOps

13.07.2026
Что такое контейнеризацияЭто метод виртуализации на уровне ОС, позволяющий упаковать приложение со всеми зависимостями в изолированный контейнер. В отличие от виртуальных машин, контейнеры легковесны и быстро запускаются.ПреимуществаПереносимость – контейнер работает одинаково в разработке, тестировании и продакшене.Изоляция – каждый контейнер имеет свои зависимости, конфликтов нет.Масштабирование – можно быстро запустить новые экземпляры при нагрузке.Упрощение CI/CD – сборка образа и деплой становятся автоматическими.ИнструментыDocker – стандарт для создания контейнеров. Kubernetes – оркестратор для управления сотнями контейнеров. Для небольших проектов достаточно Docker Compose.Мы помогаем внедрить контейнеризацию в ваш процесс разработки, автоматизируя развёртывание и сокращая время релиза.
Читать далее →
Все записи блога →

Разработка сайтов

Я создаю сайты, которые не просто красивы, но и приносят реальную прибыль. Мой подход основан на глубоком анализе вашей аудитории и бизнес-целей. Разрабатываю лендинги, корпоративные порталы, интернет-магазины, каталоги, блоги и информационные платформы любой сложности — от одностраничного сайта до высоконагруженного сервиса с интеграцией внешних API.

Использую современные технологии: HTML5, CSS3, JavaScript (включая React и Vue), PHP (Laravel), что гарантирует быструю загрузку и адаптивность под любые устройства. Особое внимание уделяю SEO-оптимизации на этапе вёрстки, чтобы ваш сайт сразу получал преимущество в поисковых системах.

Внедрение CRM

CRM-система — это сердце современного бизнеса. Я помогаю внедрить и настроить Битрикс24, а также другие популярные CRM, чтобы вы перестали терять заявки и могли видеть полную картину работы с клиентами. Настраиваю воронки продаж, автоматизирую повторяющиеся действия, подключаю телефонию и мессенджеры.

После внедрения я обучаю вашу команду: от руководителей до менеджеров. Вы получите не просто программу, а готовую систему, которая повышает продуктивность и прозрачность. Опыт показывает, что правильно настроенная CRM увеличивает конверсию до 30%.

Разработка телеграм-ботов

Telegram-боты — это мощный инструмент для бизнеса, который работает 24/7 без перерывов и выходных. Я программирую ботов под любые задачи: от простого автоответчика до сложной системы с личным кабинетом, оплатами и интеграцией с CRM.

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

Реклама и сопровождение

Реклама без аналитики — деньги на ветер. Я запускаю и веду рекламные кампании в Яндекс.Директ, ВКонтакте, Telegram Ads и других площадках, ориентируясь на вашу целевую аудиторию.

Вы получаете понятные отчёты с показателями: количество кликов, цена лида, конверсия. Я не просто настраиваю кампанию и забываю — постоянно контролирую эффективность и вношу коррективы. В среднем мои клиенты снижают стоимость привлечения клиента на 25–40% уже в первый месяц.

Аудит вашего сайта

Даже хороший сайт со временем теряет позиции. Я провожу всесторонний технический и SEO-аудит: анализирую скорость загрузки, юзабилити, семантику, ошибки вёрстки и безопасность.

После аудита я могу самостоятельно выполнить доработки или передать инструкцию вашим разработчикам. Моя цель — не просто найти ошибки, а предложить план, который увеличит конверсию и трафик. Как правило, после внедрения рекомендаций конверсия сайта растёт на 15–30%.

Обслуживание IT-инфраструктуры

Я обеспечиваю полный цикл поддержки вашей IT-инфраструктуры: от настройки серверов и сетевого оборудования до администрирования баз данных и облачных решений. Помогаю с миграцией на новые платформы, настройкой резервного копирования и мониторингом.

Также предоставляю услуги по интеграции различных сервисов (CRM, 1С, телефония, почтовые системы) в единую экосистему. Провожу аудит безопасности, оптимизирую производительность и обеспечиваю бесперебойную работу ваших IT-систем. Работаю как с локальными серверами, так и с облачными провайдерами (Yandex Cloud, AWS, VK Cloud).

Частые вопросы

Сколько стоит сайт?+

Цена зависит от сложности. Лендинг — от 40 000 ₽, корпоративный сайт — от 90 000 ₽. Точную стоимость называю после брифинга.

Как долго вы делаете сайт?+

Лендинг — от 5 рабочих дней, многостраничный сайт — 2–5 недель в зависимости от объёма.

Работаете ли вы с Битрикс24?+

Да, это моя специализация. Настраиваю, дорабатываю, обучаю сотрудников.

Что нужно для старта?+

Оставьте заявку через форму, я свяжусь в течение суток.

Какие гарантии вы даёте?+

Я всегда заключаю договор, в котором прописаны все обязательства. Также предоставляю гарантию на работы и бесплатную поддержку в течение месяца после запуска.

Можно ли будет вносить изменения после запуска?+

Да, конечно. Я предусматриваю этап доработок после приёмки. Кроме того, вы всегда можете заказать дополнительное развитие сайта или внесение правок на постоянной основе.

Вы работаете по договору?+

Да, все проекты оформляются официальным договором, в котором фиксируются сроки, стоимость, этапы и права сторон.

Как происходит оплата?+

Обычно я работаю по предоплате 50% на старте и 50% по завершению. Для крупных проектов возможны поэтапные платежи. Подробности обсуждаем индивидуально.

Сколько времени занимает внедрение CRM?+

В среднем 2–4 недели, в зависимости от сложности и объёма данных. Я помогаю с переносом информации и обучением персонала.

Поддерживаете ли вы сайты после запуска?+

Да, я предлагаю тарифы на техническое сопровождение, обновления и доработки. Это может быть ежемесячная поддержка или разовые работы по запросу.

Напишите мне

3 + 4 = ?
Нажимая на кнопку, вы соглашаетесь с политикой конфиденциальности.
✉ dpa95@yandex.ru | 💬 ВКонтакте | ✈️ Telegram

© Дмитрий Поляшов, Екатеринбург.