ServerAdmin.ru
26.5K subscribers
183 photos
24 videos
7 files
2.46K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Одной из существенных проблем гипервизора HyperV является невозможность пробросить USB устройство в виртуальную машину.

Есть решение этой проблемы — open source проект usbipd-win. С его помощью можно пробросить USB устройство, подключенное к машине под управлением Windows в любую другую по сети, либо в локальный Linux, работающий по WSL2 (инструкция от microsoft).

На базе проекта usbip существует много различных продуктов. Конкретно usbipd-win это только сервер под Windows. Я начал с него, потому что он максимально просто устанавливается и настраивается. Можно через winget поставить:
> winget install usbipd
Либо скачать msi пакет из репы. Далее смотрим список подключенных устройств и публикуем одно из них:
> usbipd list
> usbipd bind --busid=4-3

Опубликованный с помощью этого сервера ключ можно подключить к Linux или Windows машине. Под Linux достаточно установить соответствующие пакеты с утилитой и модулем ядра. Для Debian вот эти:
# apt install usbip hwdata usbutils

После этого можно смотреть список опубликованных ключей и подключать один из них:
# usbip list --remote=10.20.1.56
# usbip attach -remote=10.20.1.56 --busid=4-3

Для подключения этих ключей в Windows, нужно установить Windows Agent. Взять его можно из другого репозитория usbip-win. Там есть инструкция по установке агента. Она немного замороченная, по сравнению с установкой сервера, но ничего особо сложного нет. Вопрос решаемый.

Точно так же можно публиковать USB устройства с Linux по сети на другие машины. Есть пакет сервера и под OpenWRT. Таким простым и бесплатным способом можно решить вопрос проброса USB ключей. Для HASP работает отлично. Заметку имеет смысл сохранить.

#windows #hyperv
​​Когда настраиваешь сбор и анализ логов, хочется сразу проверить, как это работает. Особенно, если используются какие-то выборки или реакция на конкретные события. С текстовыми логами всё просто. Достаточно любым способом добавить новую строку. С логами Windows чуть сложнее.

Для решения этой проблемы есть open source проект ntTraceControl. Он состоит из небольшого установщика, который добавляет модуль PowerShell. Достаточно скачать из репозитория и установить msi пакет и можно пользоваться.

Вот простой пример. Добавляем в журнал безопасности событие с ID 4624, указав вымышленное имя пользователя или домен:
> Import-Module ntTraceControl
> Write-SecurityEventId4624 -SubjectUserName "SERVERADMIN.RU" -SubjectDomainName "HOMELAB"

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

Напомню, что виндовые логи умеет собирать тот же Zabbix. Вот пример настройки:
Windows EventLog Monitoring With ZABBIX
https://www.youtube.com/watch?v=rOBatrWrg2Y

Или Elastic:
Настраиваем сбор логов Windows Server в ELK Stack
https://serveradmin.ru/nastraivaem-sbor-logov-windows-server-v-elk-stack/

#windows #мониторинг
​​Существует непримечательная на первый взгляд программа под Windows — Open Hardware Monitor, которая показывает типовую информацию по загрузке системы, а также информацию с датчиков железа (температура, напряжение, обороты вентиляторов и т.д.).

Эта программа попала в поле моего зрения много лет назад, когда нужно было настроить мониторинг температуры железа на сервере под Windows. В Open Hardware Monitor нашлась консольная версия, которая передаёт показания в консоль, откуда их удобно забирать в Zabbix. Я реализовал это с помощью простых bat скриптов.

На эту тему написал одну из первых статей на сайте, которая стала очень популярной и сподвигла меня на развитие идеи с сайтом. Проблема с этой программой в том, что официальная версия очень давно не обновлялась и современное железо не поддерживается.

Есть свежий форк от 22 августа 2022 года, который можно использовать для этих же целей. К сожалению, в последних версиях я не увидел консольной программы, но вместо этого основная программа умеет работать как сервис и записывать показания сенсоров в csv файл. По идее, это даже удобнее в реализации мониторинга. CSV файл без проблем парсится. Помимо этого данный форк умеет запускать веб сервер и отображать все метрики через браузер, откуда их тоже можно тем или иным образом извлекать.

Конкретно для меня эта программа потеряла актуальность, потому что очень давно не настраивал Windows сервера на голое железо. К тому же чаще всего сервер имеет BMC (Baseboard Management Controller, т.е. ilo, idrac и подобное), откуда можно забрать все необходимые метрики либо по IPMI, либо по SNMP. Но если у вас обычный самосбор или простенький сервер без BMC, то эта программа может выручить. Я её использовал на самосборах под бесплатным Hyper-V, когда обслуживал офисы.

При желании, этот инструмент можно приспособить под мониторинг пользовательских компов. Хотя лично я не вижу в этом большого смысла. Никогда не мониторил пользовательские компьютеры.

⇨ Сайт / Свежий форк / Форк консольной версии

#windows #мониторинг
​​Несколько месяцев с момента покупки нового ноута и установки на него лицензионной Windows 11 Pro я мучался и страдал (не сильно) от одной досадной ошибки. Я не мог подключиться по RDP с именем учётной записи Администратор, написанной по-русски. При этом на сервере, куда подключался, в журнале появлялась запись о том, что произошла неудачная попытка подключения из-за неверных учётных данных.

Пару раз я с наскока пытался решить эту проблему и оба раза терпел неудачу. В интернете почти нет информации по этой ошибке, а у большинства всё в порядке. Тем не менее, есть тема на oszone, где люди обсуждали эту же проблему, так что я убедился, что не один с ней. Мне не помогли советы, что указаны там. Пришлось разбираться самостоятельно.

По косвенным признаком было ясно, что проблема в современной системе защиты Windows и её компонентов: Credential Guard и Virtualization-Based security. Основная проблема в том, что простого способа отключить эти защиты нет. А степень защищённости этих защит зависит от конкретного железа. Где-то есть возможность остановить эти службы через настройки групповой политики, где-то через правку реестра, а где-то через правку раздела UEFI, так как во время загрузки настройки защиты восстанавливаются из него.

Как вы уже могли догадаться, у меня был третий вариант, поэтому никакие другие советы мне не помогли. Мой ноутбук соответствует следующим требованиям:
Поддержка системы безопасности на основе виртуализации
Безопасная загрузка
TPM 1.2 или 2.0
Блокировка UEFI
Расширения виртуализации в CPU
Благодаря этому я был очень сильно защищён и отключить Credential Guard без правки UEFI мне было нельзя.

Рассказываю, как я в итоге отключил эту злополучную защиту. Для начала показываю, как проверить её статус. Открываем консоль powershell и вводим команду: (Get-CimInstance -ClassName Win32_DeviceGuard -Namespace root\Microsoft\Windows\DeviceGuard).SecurityServicesRunning
Ответ 0 — выключена, 1 — включена. У меня она всегда была включена, что бы я ни делал в настройках или реестре. Я часа два возился с ноутом и перепробовал просто всё. Хоть систему сноси. Настолько всё это мне надоело. Причём не сказать, что прям сильно мне досаждало, несколько месяцев обходился. Раздражало то, что я не могу решить проблему.

В итоге что помогло:

1️⃣ Открываем локальные групповые политики и идём в раздел:
Конфигурация компьютера ⇨ Административные шаблоны ⇨ Система ⇨ Device Guard ⇨ Включить средство обеспечения безопасности на основе виртуализации. Ставим состояние Отключена.

2️⃣ Идём в реестр и убеждаемся, что установлены следующие параметры:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\LsaCfgFlags и
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceGuard\LsaCfgFlags. Значения должны быть 0, тип — REG_DWORD. Если параметров нет, создайте их.

3️⃣ Открываем CMD с правами администратора и правим EFI с помощью bcdedit:
> mountvol X: /s
> copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
> bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
> bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
> bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
> bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO
> bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
> mountvol X: /d

После этого перезагружаем систему. В момент загрузки перед стартом ОС у вас спросят, действительно ли вы хотите отключить Credential Guard. В течении 10-ти секунд надо нажать F3, иначе система загрузится без изменения и придётся заново править EFI.

Вот такие приключения у меня были с Windows 11. Пришлось разбираться самому. Нигде в интернете не видел, чтобы кто-то занимался правкой EFI. Скорее всего проблема именно с русской версией винды и возможностями ноута. Мне тут просто не повезло.

#windows
​​Для ОС Windows со стародавних времён существуют различные твикеры, которые могут быть как безвредными и полезными, так и вредными и бесполезными. Я вас хочу познакомить с полезной программой такого рода, которая использует только встроенные возможности самой Windows, ничего принудительно не отключает и не удаляет, типа обновлений или Windows Defender. Это проект с большой историей и хорошей репутаций. Его можно считать помощником по настройке Windows 10 и 11. Речь пойдёт о наборе скриптов Sophia-Script-for-Windows и приложении SophiApp на его основе.

Как я уже сказал, эти программы работают на базе стандартных возможностей настройки ОС Windows с помощью PowerShell. Первая ссылка этот как раз скрипт на powershell, а вторая — приложение на C#, реализующее этот же функционал. Полностью историю создания и возможности можно узнать из статьи самого автора на хабре.

📌 Основные возможности программы:

Быстрая настройка параметров конфиденциальности (телеметрия, сбор диагностических данных ОС, всевозможные настройки в браузере и т.д.)
Настройка внешнего вида проводника (значки рабочего стола, флажки элементов, поиск, тема и т.д.)
Некоторые системные настройки (очистка диска, гибернация, схема электропитания и т.д.)
Удаление UWP приложений и игр, OneDrive.
Управление планировщиком заданий (базовые задачи, которыми имеет смысл управлять пользователю)
Некоторые настройки безопасности (аудит, песочница Windows, Defender и т.д.)

В настройках нет ничего такого, чего бы вы не смогли сделать вручную, перемещаясь по многочисленным настройкам Windows. Начиная с Windows 10 настройка системы реально усложнилась. Приходится тратить много времени, чтобы вспомнить и отыскать ту или иную настройку. Тут автор попытался собрать то, что посчитал наиболее полезным в единый интерфейс. Удалить Defender или отключить обновления с помощью SophiApp не получится.

❗️Уже предвижу комментарии, что подобные программы это дилетантство, колхоз и т.д. Не надо использовать подобные штуки на работе, особенно если у вас там AD. Но при этом её удобно использовать на своей домашней, семейной машине, в тестовых лабах, у родственников, на каких-то одиночных системах. Винда реально раскидала свои настройки по куче мест. Как минимум, есть две разные панели управления, настройки Edge и проводника. Я лично по ним всем прыгаю, когда надо настроить систему. И это действительно утомляет.

Sophia-Script-for-Windows / SophiApp

#windows
​​Затрону важную и очень спорную тему готовых сборок операционных систем. Думаю, многие ими пользуются или пользовались. И я пользовался, последние года очень мало, но тем не менее. Думаю, что больше не буду. Последняя сборка была tiny11. Про неё было много негативных комментариев. Я её поставил на древний ноут, отключил обновления и отправил на дачу. Там дети мультики на нём смотрят с внешнего диска. Проблем у меня с ней нет.

Заметку пишу, вдохновлённый новостью о том, что в одну из сборок зашили троян, который заменяет адреса криптокошельков и ворует деньги. Причём автор основательно подошёл к вопросу. Сначала он нарабатывал репутацию, несколько месяцев публиковал сборки на популярных торрент трекерах. Ну а потом в очередной сборке оказался вирус, причём хитрый, зашитый в EFI-раздел. Заражёнными оказались сборки некоего BoJlIIIebnik. Подробности у Хакера можете почитать.

Я сам очень активно в разное время пользовался сборками следующих сборщиков: Zver (это легенда, не понимаю, за что его ругают, удобные сборки были), KpoJIuK, OVGorskiy, SmokieBlahBlah. Последнего использовал постоянно, начиная с Win8. Нравились его сборки сразу с офисом. Я не активировал никакие твики, настройки и т.д. Мне нужна была Windows с последними обновлениями и желательно с офисом. И всё.

Теперь уже точно не буду пользоваться сборками. Мне настолько редко всё это стало нужно, что нет никакого смысла связываться с ними. Причём не важен авторитет сборщика. Его могут взломать и зашить вирус без его ведома. А может и зашивают. Кто знает, что на самом деле в этих сборках?

Кстати, под Linux тоже куча всяких сборок. Я их никогда не использовал и не видел смысла, так как нет такой проблемы с обновлениями, которые ставятся потом пол дня. Потенциально для них актуальны те же угрозы. Когда-то очень давно ещё во время обучения запускал LiveCD Knoppix и какой-то LiveCD под Freebsd. Даже название забыл, уже не вспомню. Но это так, для тестов и изучения. В работе не пользовался.

А вы пользуетесь каким-то готовыми сборками дистрибутивов? Только честно. Так то я знаю, каждый первый говорит, что нет, но на деле кто-то же всем этим пользуется 😁 Я когда обслуживал офисы, постоянно там установленные сборки встречал.

#windows #security
​​Недавно в новостях проскочила информация о сервисе windowsupdaterestored.com. Группа энтузиастов задалась целью восстановить работу системы обновления для Windows архивных моделей: 95, NT, 98, Millennium, 2000, XP, Server 2003, Vista. Сразу поясню, что это не новые обновления для старых систем. Это всё те же обновления, что выпускала Microsoft в прошлом, а сейчас просто закрыла сайты с обновлениями для этих систем.

Пока полная поддержка только до XP, то есть работают версии Windows Update v3.1 и v4. У меня есть виртуалка с Windosw XP. Решил попробовать на ней этот сервис. Для неё нужна версия Windows Update v5, поддержка которой ещё не полная. Нужно выполнить некоторые манипуляции на самой системе. Я немного повозился, почти всё получилось, служба заработала в итоге, но обновления так и не пошли. Надо подождать, когда доделают. Хотя на сайте есть ролик, где уже всё работает. Но у меня почему-то не получилось.

Зачем всё это нужно сейчас, я не знаю. Чисто для развлечения. Новых обновлений всё равно нет. Можно найти где-нибудь образы со всеми последними обновлениями и использовать их для установки, если уж понадобится система.

А так сайт прикольный. Прям старина. Мне нравится иногда загрузить старую систему и там потыкать. XP на современном железе в виртуалке просто летает. Так непривычно нажать на ярлык Internet Explorer, и он загружается мгновенно. Быстрее, чем современный браузер на современном компьютере. Хотя я помню, как IE раньше тормозил при первом запуске и меня это жутко раздражало.

Прям даже как-то обидно за прогресс. Параметры железа растут, а отклик приложений падает. Понятно, что возможности софта тоже заметно выросли. Но хотелось бы всё равно увидеть что-то быстрое, пусть и совсем простое, без наворотов. Какой-нибудь браузер на быстром движке, чтобы просто отображать страницы, без дополнительных сервисов, интеграций, виджетов, плагинов и т.д.

#windows
​​Продолжаю тему RDP и SSH клиентов в браузере. Представляю вам аналог Apache Guacamole, только под WindowsMyrtille. Я давно про неё слышал, ещё когда делал первую заметку про Guacamole, но руки дошли попробовать только сейчас.

Я установил и настроил Myrtille у себя на Windows Server 2019. Достаточно скачать и установить небольшой (46 Мб) msi пакет. Он всё сделал сам. В процессе установки вам предложат указать сервер API и ещё какие-то параметры. Я ничего не указывал. Просто оставил эти поля пустыми. Использовал все параметры по умолчанию.

Потом перезагрузил сервер и зашёл в браузере на страницу
https://10.20.1.26/Myrtille/
Myrtille выпускает самоподписанный сертификат. Работает программа на базе IIS.

Вас встречает RDP клиент на базе технологии HTML4 или HTML5. Достаточно ввести IP адрес машины, логин, пароль. И вы подключитесь по RDP. Принцип работы такой же, как у Apache Guacamole. В целом, мне понравился этот продукт. Прежде всего простотой настройки. Guacamole пока настроишь, пуд соли съешь: куча пакетов, конфигов, параметров. А тут мышкой клац-клац и всё работает.

У Myrtille куча возможностей. Отмечу некоторые из них:
Есть возможность подготовить URL, в котором будут зашиты параметры подключения (сервер, логин, пароль и т.д.). Переходите по ссылке и сразу попадаете на нужную машину. Есть возможность сделать её одноразовой. Подключиться можно будет только один раз.
Во время вашей активной сессии можно подготовить ссылку и отправить её другому человеку, чтобы он подключился в ваш сеанс с полными правами, или только для просмотра. Ссылка также будет одноразовой.
Если установить Myrtille на гипервизор Hyper-V, есть возможность напрямую подключаться к консоли виртуальных машин.
В URL можно зашить программу, которая автоматом запустится после подключения пользователя.
Есть REST API, интеграция с Active Directory, Multi-factor аутентификация.

Сразу дам несколько подсказок тем, кто будет тестировать. Учётка по умолчанию: admin / admin. Попасть в интерфейс управления можно либо сразу по ссылке https://10.20.1.26/Myrtille/?mode=admin, либо из основного интерфейса клиента, нажав на ссылку Hosts management. Я не сразу это заметил, поэтому провозился какое-то время, пока нашёл. Параметры подключений в файле C:\Program Files (x86)\Myrtille\js\config.js. Описание параметров в документации.

По умолчанию запускается версия без возможности создания пользователей и групп, чтобы назначать им преднастроенные соединения. То есть либо они ручками подключаются, используют HTTP клиент и заполняя все параметры подключения, либо используют подготовленные заранее ссылки. По умолчанию будет доступен только один пользователь admin, которому можно добавить настроенные соединения. Чтобы это изменить, надо запустить программу в режиме Enterprise Mode. Как это сделать, описано в документации. Я так понял, что для этого нужен AD.

В целом, полезная программа. Если использовать её для себя в административных целях, то вообще никакой настройки не надо. Достаточно веб интерфейс скрыть от посторонних глаз каким-либо способом.

Полезные ссылки, некоторые тоже пришлось поискать:
Сайт / Исходники / Загрузка / Документация

#remote #windows
​​Я активно использую как в работе, так и в личных целях, Яндекс.Диск. У него очень низкая стоимость хранения данных. В Linux использую либо API для загрузки данных, либо rclone.

Для Windows использовал либо родной клиент, что не очень удобно, либо монтировал сетевой диск в Linux и там с ним работал. Не знал, что полнофункциональный rclone нормально работает в Windows, причём абсолютно так же, как в Linux. Настройка 1 в 1.

Установить можно как вручную, так и с помощью winget:
> winget install rclone
Через winget не сразу понял, куда он был установлен. Оказалось, что в директорию C:\Users\User\AppData\Local\Microsoft\WinGet\Packages\Rclone.Rclone_Microsoft.Winget.Source_8wekyb3d8bbwe\rclone-v1.63.1-windows-amd64.

Для настройки работы rclone с Яндекс диском нужно получить токен. Как это сделать, я описывал в заметке по работе с API. Единственное отличие — нужно предоставить побольше прав:
Доступ к папке приложения на Диске
Доступ к информации о Диске
Запись в любом месте на Диске
Доступ к Яндекс.Диску для приложений
А в качестве Redirect URI использовать ссылку: http://127.0.0.1:53682/

После этого запускаете в консоли команду:
> rclone config
Выбираете New remote ⇨ указываете название, например yandex ⇨ номер 48, соответствующий хранилищу Яндекс диск ⇨ client_id и client_secret оставляете пустыми ⇨ выполняете запрос токена ⇨ сохраняете конфиг.

У вас появится файл в C:\Users\User\AppData\Roaming\rclone\rclone.conf примерно следующего содержания:

[yandex]
type = yandex
client_id = 
client_secret = 
token = {"access_token":"y0_AgAAAABvmXfPAALEtgAAAAKpIA8y2bb-M0IiRFu068gJJKvzSOGoBBs","token_type":"OAuth","refresh_token":"1:p0NRuhts1VI1N7Sq:NWEoGv963fVVGSpE_k8Mftn6Pd8AKsFcte2WGqv77mKgWaoer36TX4irbubWTfCgk9_Gxh5NLBzkWA:b_dCjrHMIEMkKeH-oOFrFQ","expiry":"2024-07-30T20:45:05.4991551+03:00"}

Теперь можно через консоль загружать туда файлы:
> rclone copy C:\Users\User\Downloads\test.txt yandex:/
Положили в корень диска файл test.txt

Помимо загрузки файлов, rclone умеет монтировать внешние хранилища как локальные или сетевые диски. Для этого ему нужна программа winfsp. Поставить можно тоже через winget:
> winget install winfsp

Монтируем яндекс диск в режиме чтения:
> rclone mount yandex:/ X:
Или в режиме записи:
> rclone mount yandex:/ X: --vfs-cache-mode writes
Яндекс диск смонтирован в виде локального диска X. Подробнее о монтировании в Windows, о правах доступа и прочих нюансах можно прочитать в документации.

Если для вас всё это слишком замороченно и хочется попроще, то вот набор программ, которые реализуют то же самое. Это платные программы, с ограниченными бесплатными версиями. Они удобны и популярны, так что при желании, вы найдёте репаки платных версий, но аккуратнее с ними. Я лично давно уже опасаюсь использовать ломаный софт.

🔹Air Explorer — двухпанельный файловый менеджер, который позволяет работать с облачными сервисами как с локальными директориями. Поддерживает и Яндекс.Диск, и диск от Mail ru.

🔹Air Live Drive — программа от того же производителя, которая позволят монтировать облачные диски как локальные.

🔹RaiDrive — писал об этой программе ранее. Позволяет подключать различные облачные сервисы как локальные диски.

#windows #rclone #backup
​​Сижу вчера вечером, готовлю публикации на ближайшее время. И тут в голове непонятно почему проскакивает мысль проверить, когда заканчивается поддержка Windows Server 2012 и 2012 R2. У меня много таких серверов и когда-то давно я видел информацию, что этой осенью поддержка кончится. И вот сложились какие-то переменные вселенной, что мысль сама пришла именно накануне нужной даты. Никаких новостей и заметок по этой теме я не видел в ближайшие месяцы. Можно подумать, что совпадение, но я уверен, что нет. Но подобные "совпадения" не тема моего канала.

Я ещё где-то пару лет назад пробовал обновлять Windows Server 2012 R2 до Windows Server 2016. Процедура там простая. Вставляем установочный диск более старшей версии сервера и при загрузке с него выбираем "Обновление", а не установку. Всё прошло не очень гладко, это был одиночный сервер, но в итоге решил проблемы. А предстоит обновлять рабочие сервера с полезной нагрузкой. И больше всего я переживаю за AD.

Кто-нибудь уже проводил такие обновления? Были ли какие-то проблемы? Особенно интересует AD. Его по идее надо не обновлять, а устанавливать новые сервера, реплицировать каталог и выводить старые из работы. А это мощности надо выделать дополнительные, системы разворачивать.

За всё остальное как-то не очень переживаю, хотя тоже не знаю, что лучше сделать. Установить новые серверы и перенести туда сервисы или всё же рискнуть обновить текущие. Если переносить сервисы, то это очень много работы в неурочное время. Программные лицензии 1С наверное послетают.

У админа такая работа, как миграция, хоть увольняйся 😄 Когда вообще планируете обновляться?

Вот видео по теме:
▶️ Active Directory InPlace Upgrade from Windows Server 2012 R2 to 2016 Step by step

#windows