pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: Kestrel на боевом сервере — альтернатив нет?

Лучший ответ: Наружу его пускать нельзя, должен быть nginx
Вообще-то можно.
Просто могут возникнуть сложности с балансировкой нагрузки и кэшированием.
И nginx и Kestrel - веб серверы. Их даже иногда сравнивают.
Да, только  kestrel - это встраиваемый веб-сервер. Наподобие netty и jetty с жавы, или  http стека с nodejs и go.
Но nginx это на порядки более надежный и проверенный сервер, с кучей плагинов и настроек. 
Интересно, как вы так посчитали на порядки более высокую надёжность?)
Плагинов и настроек в kestrel тоже навалом, только там вся настройка происходит кодом.
Какую роль он играет и почему без него нельзя обойтись?
Если опустить вариант с IIS, то kestrel в принципе единственный доступный вариант, тк nginx просто не умеет напрямую с aspnet общаться.
CGI в дотнете нет, и слава богу
Если без kestrel, то есть ещё вариант с http.sys на винде

PS:  страница из документации про то, когда стоит использовать kestrel с nginx, а когда можно обойтись одним кестрелом:
https://docs.microsoft.com/en-us/aspnet/core/funda...
Кратко: можно не брать обратный прокси, но тогда потеряешь немного в гибкости, например нельзя будет несколько сайтов на одном порту держать.

Худший ответ: Это аналог phpfastcgi. Кстати это не единственный способ можно и другие использовать. На тех же windows лучше использовать iis
Вопрос: Достаточно ли ssl защита для прокси сервера?

Лучший ответ: С шифрованием от клиента до first-website, без шифрования между прокси и second-website.
Достаточно ли этого? - решать вам. (ну или людям ответственным за безопасность в организации)

Худший ответ: Вопрос в том от чего защищаешься?

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

Единственное место, где можно опасаться подключений по незащищенному соединению - это атаки на каналы связи. Т.е. если тебе нужно как то защитить свою информацию от атаки провайдерами (всеми кто стоит между твоим сервером и проксируемым), то лучше включи ssl или настрой vpn с шифрованием.

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

Поэтому главный вопрос, чего ты боишься, остается
Вопрос: Есть ли альтернатива подсистемы Linux для Windows, только наоборот?

Лучший ответ: Решения - чего? Для запуска виндовских программ есть Wine, а запускать виндовские утилиты или командную строку под Линуксами идиотов нет.
"Более доработанный" Wine можно купить у CodeWeavers, но не факт, что их достижения совпадут с вашими хотелками.

Худший ответ: кроме wine есть mono, запсукающее нативно .net програмулины.
wsl появился из желания микрософт откроить себе кусок пирога из линукс среды (ибо виндовс сервер даже в азуре не в ажуре :), поэтому он начал отгрызать себе указанный менеджерами кусок.
*никсам хватало своих приложений.
Вопрос: Как использовать компьютер на Win10 как второй монитор без wifi?

Лучший ответ: Есть такой софт - Spacedesk.  Ставите на один комп драйвер, на другой - клиент. По локальной сети вполне получается расширять монитор.

Худший ответ: Штатно по сети передавать именно монитор софта для windows нет, но решить проблему можно скорее всего железным способом:
* слышал но не нашел сетевые карты miracast wlan, 
* так же есть энкодеры экрана (dvi/vga video encoder), подключаются к выходу видеокарты как монитор и транслируют картинку по сети (выделенный ethernet кабель, до 200 метров)

upd:  софтварно, все будет крутиться вокруг vnc/anydesk/teamviewer или к примеру steam remote play (у них технология заточена на игры а не текст и главное умеет использовать gpu энкодер)
Вопрос: Комфортно ли будет работать с интегрированной графикой?

Лучший ответ: Разумеется.
Я у лет десять как и забыл что существует дискретная графика.

Худший ответ: Я использую AMD Ryzen 5 3400G в него интегрирован настоящий видеоакселератор Radeon Vega 11. Игры играются тоже вполне достойно. Интеловские интегрированные карты намного слабее.
Вопрос: Как передать информацию из текстового файла на сервер?

Лучший ответ: через POST-запросы

Худший ответ: через POST-запросы
Вопрос: Лишняя инструкция в дизассемблированном коде ассемблера?

Лучший ответ: Просто компиляция без оптимизации.

Худший ответ: Компилятор работает с некоторыми блоками*
блок1 - он откомпилировал
блок2 - снова откомпилировал
для него что происходит в блок1 и блок2 тёмный лес, и то что последняя инструкция из блок1 и первая из блока2 делают одно и тоже - совершенно не очевидно. Просто так совпало.
Вопрос: Как разметить SSD при установке Ubuntu 22.04?

Лучший ответ: Если вы новичек - не парьтесь, пусть установщик разметит "автоматически" (или "по умоланию").
Наберетесь опыта - сами поймете что и как размечать и монтировать.

Худший ответ: Если кратко: перед началом установки скачать на флешку линукс драйверы для вашего ноутбука или убедиться, что все нужное работает используя live-режим загрузки линукса; далее отключить физически HDD и оставить только SSD (и не забыть выбрать его загрузочным в настройках биоса), на SSD удалить все разделы, если есть и просто оставить не инициализированным, во время установки линукса выбрать автоматическую разметку диска, после установки - подключить обратно HDD. Если линукс работает и все пучком - можно спокойно удалить все виндовые разделы, а оставшиеся расширить или просто отформатировать весь диск (HDD, который). Вот тут я описал детально процесс установки нескольких ОС. Почему сначала надо поставить, а потом удалять старую ОСь? Чтобы был запасной вариант, если что-то пойдет не так.
Вопрос: Как правильно смотреть исходный код open source проектов?

Лучший ответ: Структура кода  может отличаться от проекта к проекту.

В общем случае есть папка src или lib, содержащая код приложения/библиотеки и всякие побочные ресурсы в остальных файлах (README, изображения, конфиги и т.п.).  Очень часто в файле README.md описывается процесс сборки проекта  - какие команды выполнить и т.п. - или есть ссылка на подобный документ, например, CONTRIBUTING.md. Иногда объясняется структура директорий и какие в них модули. Нужно оттуда отталкиваться. я думаю.

Худший ответ: Структура кода  может отличаться от проекта к проекту.

В общем случае есть папка src или lib, содержащая код приложения/библиотеки и всякие побочные ресурсы в остальных файлах (README, изображения, конфиги и т.п.).  Очень часто в файле README.md описывается процесс сборки проекта  - какие команды выполнить и т.п. - или есть ссылка на подобный документ, например, CONTRIBUTING.md. Иногда объясняется структура директорий и какие в них модули. Нужно оттуда отталкиваться. я думаю.
Вопрос: Как писать правильнее?

Лучший ответ: первый вариант читабелнее (в терминальных случаях является  безальтернативно верным)
но он порождает новую переменную в контексте вызова, что сказывается как на времени так и на памяти: такой кейс вам приведу

import datetime
def fun(a,b):
    return a + b
def fun2(arg1=1, arg2=2):
    return arg1 + arg2
print("вариант 1")
for j in range(10):
    start = datetime.datetime.now()
    for i in range(10000):
        a=fun(5, 6)
        fun2(arg2=a)
    end = datetime.datetime.now()
    print(end - start)
print("===================")
print("вариант 2")
for j in range(10):
    start = datetime.datetime.now()
    for i in range(10000):
        fun2(arg2=fun(5, 6))
    end = datetime.datetime.now()
    print(end - start) 
вывод:
вариант 1
0:00:00.006048
0:00:00.002219
0:00:00.001937
0:00:00.001955
0:00:00.001893
0:00:00.001886
0:00:00.001879
0:00:00.001891
0:00:00.001895
0:00:00.001887
===================
вариант 2
0:00:00.001541
0:00:00.001551
0:00:00.001551
0:00:00.001546
0:00:00.001564
0:00:00.001535
0:00:00.001537
0:00:00.001546
0:00:00.001516
0:00:00.001704

имеем в среднем раза в полтора разницу по скорости

что вам важнее в данный момент сильно зависит от конкретной задачи

Худший ответ: Если говорить о красоте кода, то первый вариант лучше.
Вопрос: Как прописать в скрипте,что бы файл самостоятельно присваивал бы себе номер при создании?

Лучший ответ: смотреть файлы с каким номерами уже есть в целевой директории и для создаваемого файла брать номер побольшеееее.

для логов все таки посоветую уйти от непонятных номеров к формату "даты_время".
когда логов накопиться до пупа (а это было, есть и будет всегда) - прочувствуешь разницу.

Худший ответ: В Linux эта команда выглядит так:
TEMP_FILE=$(mktemp /tmp/tempfile_XXXXXXXX.tmp)
echo "Text, and text, and other text!" >>${TEMP_FILE}
Вопрос: Как мне оптимизировать цикл, чтобы он работал намного быстрее?

Лучший ответ: 0. Понять, про какой именно цикл речь.
1. Замерить время выполнения частей цикла.
2. Найти часть, которая тормозит.
3. Понять, почему она тормозит.
4. Написать реализацию, которая будет тормозить меньше.
5. Проверить её в деле.

Худший ответ: Наверное ImageGrab не очень быстрый.
А что делает это приложение?
Вопрос: Два домена для локальной разработки?

Лучший ответ: nginx будет работать с headers приходящими от браузера, и без разницы где он, в докере, на хосте. Варианта три:
1. купить mylocasite.com и настроить dns
2. настроить локальный днс сервер (например тоже в докере) и там прописать эту доменную зону
3. добавить адреса в hosts машинки на которой будет запускаться браузер для отладки и локальной разработки.

Худший ответ: Тоже мне интересен этот вопрос. Я сделал так, вроде работает как надо. 
Только у меня связка vagrant+docker. В самом vagrant сервере стоит обычный не в контейнере nginx, а рядом docker, где приложения имеют свой nginx. Через обычный nginx в vagrant делаю прокси в docker-nginx. 

Порядок такой:
1. В файле hosts делаем запись. hosts не позволяет вписывать порт.
192.168.50.5 privet.ru
2. Можно прямо в конфиг default по пути /etc/nginx/sites-available/default дописать этот конфиг. Конфиг nginx для докера не трогаем
server {
        listen 80;
        server_name privet.ru;
        location / {
           proxy_pass       http://localhost:8081;
           proxy_set_header Host      $host;
           proxy_set_header X-Real-IP $remote_addr;
        }
}
3. Проверим что нет ошибок в синтаксисе и перезагружаем nginx.
sudo nginx -t
//nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
//nginx: configuration file /etc/nginx/nginx.conf test is successful
sudo systemctl restart nginx

Готово. Теперь privet.ru виден из вашего браузера под windows.
Вопрос: Какие локальные СУБД вы используете для своих проектов?

Лучший ответ: Посмотрите на LiteDB, может подойдет.

Худший ответ: Realm еще есть
Вопрос: На чём писать приложение?

Лучший ответ: Если вы не знаете ни C#, ни жаву, то советую писать приложение на котлине.
Тк котлин - это родной язык андроида.

Если очень хорошо знаете C#, то тогда можно взять Xamarin.Forms

Худший ответ: По-хорошему надо писать на фреймворке котлин/вуе/и т.д. 
Но если речь идет о проекте типа - написать и забыть, то пишем на простой Java; 
Если хочется еще легче, посоветовал бы b4a (на будущее вряд ли пригодится, зато порог вхождения очень низкий)
https://4pda.ru/forum/index.php?showtopic=253192
Вопрос: Стоит ли использовать SPA для проекта вроде каталога/доски объявлений?

Лучший ответ: Поэтому в связи с этим вопрос, все ли хорошо будет в плане SEO если использовать NextJS для этих целей?
Если использовать SSR (который вы указали в тегах) или SSG, то по идее должно быть все хорошо.
Проект сам по себе по объему планируется большой.
И какой стэк со стороны бэка в качестве API посоветовали бы?
Тот, который хорошо знают разработчики (не важно, вы, или сторонние) и точка.

Худший ответ: Если у вас обычный среднестатистический сайт/интернет магазин/CRM/etc. берите тот который знают разрабы которые будут реализовывать. Если у вас ожидается высокий RPS, то тут нужно в сторону более производительных языков смотреть. Оптимальный на текущий момент это Go/Node. И среди них есть разделение. Если у вас CIA (CPU intensive application), то Go лучше взять. Если DIA (data intensive application), берите либо ноду либо go, тут разницы нет. А так при прочих равных уже сказали - берете тот, который знает команда
Вопрос: Что должен знать linux администратор?

Лучший ответ: OSI
Как работают сети
Железки основных вендоров 
Как работает обжимка
Как заправлять картриджи
Что такое sql 
Телефония
Желательно лицензия на слаботочку 
Желательно допуск на электросети до 600 вольт
Базовые знания по пакету программ используемых в конторе. 
Умение работать перфоратором, шуруповертом и дрелью

Изрядная доля пофигизма и возможность посидеть до 12 если горит. 
Ps вязанный свитер с оленями, джинсы и борода будут в плюс

Худший ответ: "Знать линукс" это уже довольно растяжимое понятие. Или ты знаешь, как его запускают и основную работу с файлами из комстроки (ls, rm, cp вот это всё), или ты можешь настроить на нем функционал из десятка-другого связанных нетривиальными конфигами пакетов (RADIUS/sssd/xl2tpd, скажем, это то, что мне пришлось настраивать) - оба варианта это "знать линукс" в своём роде, и обычно по мене появления задач из второго списка становится понятно, что линукс-то ты как раз и не знаешь, но узнаёшь по мере их решения. 

А что касается работы сисадмином - чаще всего помимо линукса нужно знать сети (хотя бы TCP/IP стек с протоколами DHCP/DNS/ICMP), Windows AD (мало кто работает чисто на линуксах), работу с офисным пакетом, общие сведения о серверном оборудовании, принципы работы систем бэкапа, что куда можно втыкать и т.п., с таким багажом можно искать место младшего админа в конторе с парой айтишников на офис, и постараться нахвататься опыта у старших товарищей, пока они не сбежали, оставив на тебя всю инфраструктуру. Потом потребуется подтягивать прикладные знания по используемому ПО, чем его больше, тем будет интереснее и тем больший уровень сможешь занять потом. Чаще всего это гипервизоры со своими заморочками, замена оборудования, простые конфигурации железных свитчей/роутеров, прикладные проблемы с печатью, VDI/RDSH/Xen/что-там-где из разделяемых сред, возможно, работа с СХД по FC или iSCSI, локальное спец-легаси-ПО, бэкапы всех вариантов, концепции HA/DR, кластеры разных типов со своими протоколами и т.д. Для начала хватит.

PS: читай Хабр, особенно тематические статьи по технологиям, и таки учись гуглить неизвестные или нестандартные проблемы - как ни странно, но поиск помогает иной раз свести странности до понятного уровня, да и решения в чистом виде попадаются. Но заучи наизусть, что надо делать, если гугл недоступен, особенно если ты в серверной и мобила не ловит, а выйти нельзя.
Вопрос: Как организовать перезапуск сервиса при падении?

Лучший ответ: Делал такое. Скрипт "запуск программы если она не запущена powershell" гуглится на раз-два, а прикрутить логику на корректное добитие зависшего сервиса - дело двух минут.
В общем виде:
1. Проверяем, работает ли процесс;
2. Если нет, то проверяем порт;
3. Если порт не закрыт, то просто перезапускаем сервис;
4. Если порт закрыт, то добиваем остатки сервиса и перезапускаем.

Худший ответ: Делал такое. Скрипт "запуск программы если она не запущена powershell" гуглится на раз-два, а прикрутить логику на корректное добитие зависшего сервиса - дело двух минут.
В общем виде:
1. Проверяем, работает ли процесс;
2. Если нет, то проверяем порт;
3. Если порт не закрыт, то просто перезапускаем сервис;
4. Если порт закрыт, то добиваем остатки сервиса и перезапускаем.
Вопрос: Почему в БД не видно отправленные данные?

Лучший ответ: Я новичок в laravel
------------------------
Теперь проблема в том что вместо отправленных данных в phpMyAdmin в полях таблицы стоят не отправленные данные а переменные $title и $text <---вот прям вот так и написаноСюдя по всему вы новичок не только в  Laravel, но и в PHP тоже. А также и программировании в целом

['$title', '$text'] - ответ прячется тут. Для какой цели вы переменные в кавычки обернули?

Худший ответ: Прочитать документацию и не заниматься мазохизмом 

https://laravel.com/docs/8.x/eloquent#inserts
Вопрос: Как фрилансеры хостят проекты?

Лучший ответ: Проект размещается на хостинге заказчика. 
Если клиент не знает как, фрилансер консультирует и помогает зарегистрировать домен и хостинг. 
Заодно можно получить небольшой пассивный доход от реферальной программы.

Худший ответ: В чем проблема? Я плачу порядка 180 рублей в месяц, что то не слишком тяжелое размещаю у себя. 
Что то более объёмное я просто сразу обговариваю с заказчиком и регистрирую на него или даю инструкции как сделать.
Вопрос: Как сделать так, чтобы пользователь Linux мог просматривать только выбранные папки?

Лучший ответ: Такой вопрос уже был и не раз https://qna.habr.com/q/681178 Посмотрите, перейдите там по ссылкам, почитайте чем чревато. По первой же ссылке из гугла есть статья https://linuxconfig.org/jail-ssh-user-to-home-dire... с примером. Обычно решается такое через chroot.

Коротко — ограничивая пользователя домашней директорией вы также отрезаете его от всей системы и программ которые в ней есть. В *NIX программы размазаны почти по всей ФС и для их корректной работы всё это придётся дублировать и следить чтобы не хардкодились пути в конфигах. Поэтому придётся копировать глобальное окружение в диру юзера.

Много мороки и мало реальной пользы. Вместо того, чтобы пытаться загнать юзера в домашнюю диру лучше правильно расставьте права доступа к директориям и файлам за которыми хотите следить.

Худший ответ: А управление ACL, не?


Права в Linux (chown, chmod, SUID, GUID, sticky b...

Раздел статьи Управление ACL (setfacl, getfacl) в Linux
Вопрос: Не удаётся преобразовать из string в int. Но все данные это string. Почему?

Лучший ответ: Так вы почитайте, какие аргументы нужны GetString

Худший ответ: Так вы почитайте, какие аргументы нужны GetString
Вопрос: Использовать всегда mutable?

Лучший ответ: Всегда, когда это возможно, нужно использовать неизменяемые коллекции, и неизменяемые переменные/проперти(val, а не var). Это нужно для того, чтобы сделать интерфейсы и код чище. Хорошо видно, где могут изменяться те или иные данные, а где - не могут, именно для этого иерархия коллекций в котлине разделена на две части. В джаве этого нет, и приходилось делать проверки в рантайме(см Collections.unmodifiableList, например).

Худший ответ: Если вам действительно нужно менять данные, то да - используйте mutable. Иначе не используйте.
Практика показывает, что без лишней мутабельности код получается чище
Вопрос: Как объединить скрипты и сделать вывод таблицей?

Лучший ответ: вы конечно мастер путанных вопросов, но в принципе понятно чего вы добиваетесь, поэтому просто приведу маленький пример, а там уже переделаете под свои нужды
допустим у нас есть несколько файлов с результатами в виде одной строки
как пример
echo "ОК" > {biosinfo,meminfo,cpuinfo}.result
создадим три файла которые содержат значение "OK"

там же создадим скрипт results_table.sh
#!/usr/bin/env bash

FILEPATH_BIOSINFO_RESULT="biosinfo.result"
FILEPATH_MEMINFO_RESULT="meminfo.result"
FILEPATH_CPUINFO_RESULT="cpuinfo.result"

BIOSINFO_RESULT=$(cat "$FILEPATH_BIOSINFO_RESULT")
MEMINFO_RESULT=$(cat "$FILEPATH_MEMINFO_RESULT")
CPUINFO_RESULT=$(cat "$FILEPATH_CPUINFO_RESULT")

TABLE="TEST;RESULTS
BIOS ver;$BIOSINFO_RESULT
Memory;$MEMINFO_RESULT
CPU;$CPUINFO_RESULT"

echo "$TABLE" | csview -d";"
здесь мы прописываем в переменную TABLE нужную нам информацию в виде текстового CSV формата, а затем с помощью утилиты csview выводим в виде таблицы

результат работы скрипта
┌──────────┬─────────┐
│ TEST     │ RESULTS │
├──────────┼─────────┤
│ BIOS ver │ ОК      │
│ Memory   │ ОК      │
│ CPU      │ ОК      │
└──────────┴─────────┘

Худший ответ: Выглядит это как бред сивой кобылы
ты собираеш информацию из собраного списка сохраняешь ее в текстовый файл называя его баш скрптом хотя в нем только текст, пусть даже в  нем есть что-то в начале но по факту  это ничего не меняет.
При этом ты задаешь достаточно простой вопрос по башу
Давай лучше с начала 
ЧТО ты хотел сделать изначально ?
Что должно делать это художество в конце?
Вопрос: Может ли клавиатура ps/2 или тачпад на ноутбуке отключаться от того, что подключен к не заземленной розетке?

Лучший ответ: Нет. И откуда там PS/2 - это же древность

Худший ответ: Первый же отзыв

Или это ваш комментарий?
Вопрос: Как перевести многомерный массив numpy в одномерный?

Лучший ответ: A = np.arange(0, 15).reshape(5, 3)
B=A.ravel()
или так:
D=A.flatten()

Стесняюсь спросить -  а что просто открыть учебник нынче  запрещено? Или хотя-бы в Google заглянуть?

Худший ответ: Ну в принципе, не знаю, нужно ли именно чтоб при помощи numpy. Но если обычными способами, то как варянт.
mass = [
[[1,2], [4, 5]],
[[5, 6], [7, 8]]
]

def one_m(l): return [one_m(sn) if all(map(lambda x: type(x)==type([]), sn)) else sn for sn in [[x for a in l for x in a]]][0]

print(one_m(mass))
Вопрос: Как оптимизировать задачу?

Лучший ответ: Я сварщик ненастоящий, но вижу два пути: 
- Отсылать на сервер данные массивом, а не поштучно.
- Отправлять штучные запросы параллельно.

Оба решения требуют чтения доков на этот сервис или разговора с местными инженерами. Так как первый может не поддерживаться, а второй может вас забанить за спам :)

Худший ответ: Можно попробовать вынести в очередь (RabbitMQ например, обрабатывать каждого клиента отдельной задачей в очереди) и выполнять задачи несколькими воркерами, то есть параллельно. Единственное, важно что бы вас не забанил сторонний сервис и вы не положили его нагрузкой. Что бы регулировать нагрузку, нужно менять количество воркеров обрабатывающих поступающие задачи
Вопрос: Функции хелперы, что это и зачем они нужны если и без них всё работает?

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

Функции-хелперы обычно относятся к первой категории. Их традиционно пишут в отдельном файле, который подключается к коду проекта.

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

Функции-хелперы обычно относятся к первой категории. Их традиционно пишут в отдельном файле, который подключается к коду проекта.
Вопрос: Есть ли смысл нести ноутбук в ремонт по гарантии?

Лучший ответ: Несите ноут в сервисный центр (авторизованный) пока есть гарантия
После двух месяцев в ремонте(знающие поправьте, если не прав), вы в праве запросить возврат денег либо новый с аналогичной комплектацией

Худший ответ: Попробуйте установить свежие драйвера NVIDIA. Если не поможет: несите лучше в сервис.
Вопрос: Бан адресов из лога неудачных попыток авторизации?

Лучший ответ: 1. Изолированная сеть управления.
2. При попытке обратиться в одному из небезопасных портов( 20,21,22,23,25,110,465,993,3389,5160,8291 добавить по вкусу ) из любых иных сетей помещаем его в address list на определенное время( например сутки )
3. Все соединения из данного address list блокируем.

Худший ответ: По таким исходным данным могу предложить два пути:
- скрипт анализирует лог, ищет неудачные попытки входа и вносит в черный список
- почитайте про port knocking