Архив записей

UEFI и PXE на Mikrotik

Всё чаще и чаще в мне руки попадают устройства без режима совместимости с BIOS (он же CSM). Ранее я уже делал заметку относительно организации PXE загрузки по сети на Mikrotik, сегодня же я хочу рассказать о том, как сделать загрузку гибридной — не только для систем на базе BIOS, но и для UEFI без CSM. Те читатели, кто уже успел поработать с UEFI, наверняка знают о принципе загрузки по умолчанию — если заранее не создавались пункты загрузочного меню, то UEFI будет пытаться найти загрузчик по следующему пути:

/EFI/Boot/bootx64.efi

Как это работает на практике: если скачать, например, EFI-версию утилиты Memtest86+ и переименовать извлеченный из архива бинарник mt86p_800_x86_64 в bootx64.efi, а затем расположить его по вышеуказанному пути, то система на базе UEFI самостоятельно его загрузит после включения. Общий концепт, надеюсь, понятен. Теперь же давайте откроем WinBox.

ЧИТАТЬ ДАЛЕЕ


Черный список посетителей сайта на Mikrotik

Сегодня я хочу описать в некотором роде специфическую схему — которая, впрочем, может оказаться полезной для владельцев собственных интернет-ресурсов, размещенных за маршрутизатором Mikrotik. Не секрет, что практически все сайты непрерывно подвергаются сканированию с самыми нехорошими намерениями. Если открыть лог обращений, то в глаза бросятся запросы на предмет получения доступа к файлам конфигураций веб-движков, админок, личных кабинетов и прочего. Конечно, можно просто оставить доступ к значимым страницам только для определенных адресов (хоть бы и посредством .htaccess), но я предлагаю предпринять несколько более серьёзные меры. Если для простых заблудившихся посетителей достаточно показать обычную 404-ю страницу, то для всяких проходимцев нужно показать страницу не столь обычную — а какую именно я сейчас объясню.

ЧИТАТЬ ДАЛЕЕ


Работа Firewall на Mikrotik по расписанию

Небольшое дополнение к предыдущей заметке относительно порта 80 — предполагается, что на маршрутизаторе настроены пробросы портов 80 и 443 до веб-сервера. При этом, фактически, доступность интернет-ресурсов по HTTP не нужна — за исключением работы с ACME, а она происходит по определённому расписанию. Следовательно, для полноты картины можно тоже включать и отключать правило проброса порта 80 по расписанию. Открываем WinBox и переходим в раздел «System», там выбираем пункт «Scheduler» и создаём новую задачу. В теле задачи пишем следующее:

/ip firewall nat set [find comment="HTTP"] disabled=no

Как нетрудно догадаться, вместо обозначения конкретного номера правила раздела «NAT» в «Firewall» мы ищем правило с определенным комментарием, в нашем случае это слово «HTTP». Это сделано для удобства работы — при таком подходе можно «тасовать» правила как угодно, это не затронет работу задачи в планировщике. В качестве альтернативы можно оперировать правилами не «NAT», а «Filter Rules»:

/ip firewall filter set [find comment="HTTP"] disabled=no

По образу и подобию создаются задачи на отключение правил. Имейте только в виду, что лучше задавать время с запасом — даже если вы уверены, что ACME отработает быстро и без задержек, нужно учитывать возможный «люфт» времени на Mikrotik относительно веб-сервера. А вообще, конечно, за временем нужно следить, синхронизация должна отрабатывать правильно и своевременно.


Единый каталог ACME для всех сайтов на Apache

Достаточно часто в конфигурациях Apache я вижу схему, когда в httpd-vhosts.conf для одного и того же сайта делают 2 секции: одну для HTTP на порту 80 (с отдельной директивой Location для /.well-known/acme-challenge/ и редиректом на HTTPS версию сайта во всех остальных случаях) и другую для HTTPS на порту 443. Если веб-сервер обслуживает один-единственный сайт, то использование подобной схемы вполне оправдано, но если речь идёт об условной дюжине интернет ресурсов, то я предлагаю вариант получше.

ЧИТАТЬ ДАЛЕЕ


Доступ к скрытым настройкам UEFI на AMD

Широко известен тот факт, что «производителей» BIOS’ов (и UEFI) не так уж и много — American Megatrends, Award Software, Phoenix Technologies, Insyde Software. Раньше были еще Microid Research с их мощным на то время MrBIOS (одна фича четырехканального IDE чего стоит) и Systemsoft с решениями попроще, но это дела давно минувших дней. Я намеренно не акцентирую внимание на то, где в списке просто торговая марка, а где наименование самой фирмы — всё это малосущественно и никак не относится к дальнейшему повествованию. Скажу только что BIOS’ы не делаются конкретно под материнские платы (ну или крайней редко), обычно берется «заготовка» и незначительно адаптируется, при этом все «лишние» пункты меню настроек скрываются дабы минимизировать шансы пользователя что-то сломать.

Кстати, пользователи китайских материнских плат (особенно под сокеты 2011/2011v3) могли замечать, что китайцы особо не заморачиваются над сокрытием каких-либо пунктов меню из настроек, однако обратная сторона медали такова, что пользователю зачастую приходится на свой страх и риск выяснять — какие настройки вообще работают, а какие нет.

Иногда доступ к скрытым настройкам можно получить через нажатие определенной комбинации клавиш, в других случаях зачастую требуется «поработать» над файлом прошивки. Если повезёт — то модифицированный бинарник можно зашить через FPT или Afudos, но бывает так, что без программатора не обойтись. Причем, если на десктопных и серверных материнках настройки стараются не ограничивать, то в ноутбуках и моноблоках часто можно наблюдать печальную картину с минимально доступными настройками пользователю. Собственно, один из заказчиков и пришел с вопросом — а как увеличить объем видеопамяти, выделяемой из ОЗУ для встроенного видео, если в настройках UEFI этой возможности нет?

ЧИТАТЬ ДАЛЕЕ


Vulkan wrapper для inZOI

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

The game may not run due to limited graphics performance. Your graphics card does not fully support required DirectX 12 features.

Можно, конечно, поспекулировать относительно системных требований, указать на то, что Windows 10 LTSC уже давно устарела и GTX 1080 нужно заменить на что-то более современное. Но идти на поводу разработчиков мы не будем, а используем транслятор DX12-to-Vulkan — я собрал нечто вроде готового архива, содержимое которого нужно распаковать в директорию с игрой (с заменой файлов). После этого запуск должен пройти успешно, но на всякий случай для устройств GeForce в настройках «Панели управления NVIDIA» следует предварительно выставить использование цепочки буферов DXGI для Vulkan/OpenGL.

Особо стоит отметить, что речь идет только о запуске — красивая картинка и высокий FPS в сделку не входит.


Установка .NET Framework 4.8 на Win10 1507-1511

Несколько дней назад меня попросили помочь с достаточно нетривиальной задачей. Представьте — есть достаточно отдаленная от цивилизации деревня в которой требуется вести коммерческую (торговую) деятельность. Разумеется, есть ПК под управлением Windows 10 — именно на него требуется установить торговое ПО. Программа установки этого ПО требует наличия .NET Framework 4.8 — и проверяет его наличие достаточно дотошно, не опираясь только лишь на записи в реестре. Удаленный доступ к ПК через интернет есть, но канал не настолько жирный чтобы без проблем тягать гигабайты. Пока вроде ничего необычного, скачай да поставь нужный «фраймворк»? Не совсем.

ЧИТАТЬ ДАЛЕЕ