Весной-летом я толкал речи на тему как Vulnerability Management поменялся в 2022 году. Пришла зима, скоро уже новый год, есть повод порефлексировать и скорректировать видение.
Что сканировать?
1) Оценка "стабильности" IT-вендоров похоже оказалась не особо востребованной и в итоге свелась к переходу на отечественное. Тут и позиция регуляторов направляет, и нежелание зарубежных вендоров подставляться лишний раз под вторичные санкции. Пока выглядит так, что новые IT и ИБ решения будут в основном российские (пусть даже они будут функционально хуже).
2) С другой стороны массового выпиливания продуктов Microsoft пока не наблюдается. MS пока не нагнетают. Позиция регуляторов достаточно умеренная и сводится к требованию контроля обновлений. Видима зависимость настолько велика, что требовать чего-то другого не реалистично.
3) Массового отказа от мейнстримных Linux дистрибутивов тоже не наблюдается. Пока не было громких кейсов с активным участием западных вендоров Linux дистрибутивов. Миграция c Ubuntu/Debian/CentOS Stream/Alma/Rocky на российские дистрибы связана с техническими сложностями и значительными финансовыми затратами. В целом, в ширнармассах пока не ощущается понимание зачем это нужно (за исключением случаев когда это прямое указание регулятора).
Чем сканировать?
Какого-то значимого изменения ландшафта на рынке VM-решений пока не видится.
1) Кто-то продолжает использовать западные решения с помощью разного рода ухищрений.
2) Кто-то активнее переходит на продукты традиционных отечественных VM вендоров (Positive Technologies, Алтэкс-Софт, Эшелон, Газинформсервис).
3) Есть некоторая активность от нового игрока Vulns.io.
4) Есть развитие у периметровых сервисов Metascan и ScanFactory.
5) Интересно развитие VM как доп. функциональности у Kaspersky: если все равно антивирус заменять, удобно получить в результате и агент детектирующий уязвимости. Win-win в духе Microsoft Defender for Endpoint. Выглядит как перспективная тема для агентного сканирования.
6) Достаточно много больших российских компаний приняли решение пилить свои VM решения, т.к. доступные коммерческие дороги и/или чем-то не устраивают. Есть вероятность появления таких решений на рынке.
@avleonovrus #Microsoft #Linux #Ubuntu #Debian #CentOS #Alma #Rocky #PositiveTechnologies #AltxSoft #Echelon #Gazis #Vulnsio #Metascan #ScanFactory #Kaspersky
Что сканировать?
1) Оценка "стабильности" IT-вендоров похоже оказалась не особо востребованной и в итоге свелась к переходу на отечественное. Тут и позиция регуляторов направляет, и нежелание зарубежных вендоров подставляться лишний раз под вторичные санкции. Пока выглядит так, что новые IT и ИБ решения будут в основном российские (пусть даже они будут функционально хуже).
2) С другой стороны массового выпиливания продуктов Microsoft пока не наблюдается. MS пока не нагнетают. Позиция регуляторов достаточно умеренная и сводится к требованию контроля обновлений. Видима зависимость настолько велика, что требовать чего-то другого не реалистично.
3) Массового отказа от мейнстримных Linux дистрибутивов тоже не наблюдается. Пока не было громких кейсов с активным участием западных вендоров Linux дистрибутивов. Миграция c Ubuntu/Debian/CentOS Stream/Alma/Rocky на российские дистрибы связана с техническими сложностями и значительными финансовыми затратами. В целом, в ширнармассах пока не ощущается понимание зачем это нужно (за исключением случаев когда это прямое указание регулятора).
Чем сканировать?
Какого-то значимого изменения ландшафта на рынке VM-решений пока не видится.
1) Кто-то продолжает использовать западные решения с помощью разного рода ухищрений.
2) Кто-то активнее переходит на продукты традиционных отечественных VM вендоров (Positive Technologies, Алтэкс-Софт, Эшелон, Газинформсервис).
3) Есть некоторая активность от нового игрока Vulns.io.
4) Есть развитие у периметровых сервисов Metascan и ScanFactory.
5) Интересно развитие VM как доп. функциональности у Kaspersky: если все равно антивирус заменять, удобно получить в результате и агент детектирующий уязвимости. Win-win в духе Microsoft Defender for Endpoint. Выглядит как перспективная тема для агентного сканирования.
6) Достаточно много больших российских компаний приняли решение пилить свои VM решения, т.к. доступные коммерческие дороги и/или чем-то не устраивают. Есть вероятность появления таких решений на рынке.
@avleonovrus #Microsoft #Linux #Ubuntu #Debian #CentOS #Alma #Rocky #PositiveTechnologies #AltxSoft #Echelon #Gazis #Vulnsio #Metascan #ScanFactory #Kaspersky
Какие требования к вендорам отечественных Linux дистрибутивов можно было бы предъявить для упрощения Управления Уязвимостями? Если б я был регулятор. 🙂
1) Обновления безопасности должны быть. Критичная общелинуксовая уязвимость, должна быть пофикшена и в отечественном дистрибе. Или должно быть опубликовано обоснование, почему она неэксплуатируема.
2) Бюллетени безопасности должны быть. Клиенты должны как-то узнавать какую версию пакета нужно поставить, чтобы избавиться от критичной уязвимости.
3) Бюллетени безопасности должны быть публично доступны. Cпорный момент. Зависит от отношения к "security through obscurity". По мне закрытие доступ к бюллетеням усложняет жизнь исследователям, а злоумышленники все равно их получат через любого клиента.
4) Бюллетени безопасности должны быть доступны в машиночитаемом виде. Желательно в формате OVAL, раз уж он так распространен (RHEL, Suse, Ubuntu, Debian и даже отечественный RedOS)
@avleonovrus #OVAL #linux #bulletins #RHEL #Suse #Ubuntu #Debian #RedOS
1) Обновления безопасности должны быть. Критичная общелинуксовая уязвимость, должна быть пофикшена и в отечественном дистрибе. Или должно быть опубликовано обоснование, почему она неэксплуатируема.
2) Бюллетени безопасности должны быть. Клиенты должны как-то узнавать какую версию пакета нужно поставить, чтобы избавиться от критичной уязвимости.
3) Бюллетени безопасности должны быть публично доступны. Cпорный момент. Зависит от отношения к "security through obscurity". По мне закрытие доступ к бюллетеням усложняет жизнь исследователям, а злоумышленники все равно их получат через любого клиента.
4) Бюллетени безопасности должны быть доступны в машиночитаемом виде. Желательно в формате OVAL, раз уж он так распространен (RHEL, Suse, Ubuntu, Debian и даже отечественный RedOS)
@avleonovrus #OVAL #linux #bulletins #RHEL #Suse #Ubuntu #Debian #RedOS
К слову о том, чем я ещё занимался на праздниках. Поковырял официальный Debian OVAL контент и сделал про это эпизод. Из неочевидного:
1. Дефинишены заводятся не по бюллетеням, я по CVE+пакет
2. Нет ссылок на DSA и DLA бюллетени (upd. Хе, тут я погорячился, на самом деле для некоторых дефинишенов DSA идентификаторы есть, я плохо смотрел)
3. Фактически никак не учитывается архитектура при детекте
В общем, занимательно, но к авторам этого контента есть вопросики. 🙂
@avleonovrus #OVAL #Debian #SCAP
1. Дефинишены заводятся не по бюллетеням, я по CVE+пакет
2. Нет ссылок на DSA и DLA бюллетени (upd. Хе, тут я погорячился, на самом деле для некоторых дефинишенов DSA идентификаторы есть, я плохо смотрел)
3. Фактически никак не учитывается архитектура при детекте
В общем, занимательно, но к авторам этого контента есть вопросики. 🙂
@avleonovrus #OVAL #Debian #SCAP
Про январский Linux Patch Wednesday. Основная сложность в распределении CVE-шек по месяцам для LPW это поймать момент, когда CVE-шку первый раз запатчили. Обычно первыми это делают Debian. Но вот беда - в Debian OVAL зачастую отсутствует дата, когда именно это произошло (дата публикации дефинишена). 😑
Продемонстрирую на примере. Генерю я вчера Linux Patch Wednesday отчёт за январь и вижу там UnRAR Arbitrary File Overwrite (CVE-2022-30333). Почему уязвимость 2022 года всплыла сейчас, в начале 2024? Потому, что её запатчили в Ubuntu на днях, 8 января. Причём фиксили не саму утилиту UnRAR, а стороннюю либу ClamAV для антивирусной проверки архивов. А раньше эту CVE не фиксил никто что ли? Ну, фиксили. Вот есть сообщение в листе рассылке Debian от 17 августа 2023. Тоже поздно, совсем не 2022 год, но всё-таки несколько раньше. Но в OVAL-контенте Debian этой даты, 17 августа 2023, не было. И поэтому попала CVE-шка из 2022 года в 2024, т.к. самая ранняя (и единственная) дата, которая была в OVAL-контентах Linux вендоров для этой уязвимости это была дата запоздалого фикса в Ubuntu. 🤷♂️
В общем, OVAL хорошо и универсально, но, к сожалению, не панацея. Удивительно, но там тоже бардак, на который всем пофигу. 😏
Пришлось вчера спешно научиться парсить архивы листа рассылки с бюллетенями безопасности Debian. В итоге список уязвимостей стал поадекватнее. В частности, CVE-2022-30333 ушла в LPW для сентября 2023. Аналогично можно и работу с другими листами рассылки построить, например с Suse.
С Suse, кстати, забавно. У них есть OVAL контент, но он отдаётся только по FTP и нереально медленно, как на dial-up модеме. Причём, не только для России режут скорость (как можно было бы предположить). Вовсе нет, проблема общая.
Отчёт Vulristics выпустил:
🗒 Январский LPW
С детектами можно (и нужно) ещё поиграться, но в целом выглядит норм. 🙂
81 уязвимость.
🔻 Из них самая критичная это RCE в модуле Perl Spreadsheet::ParseExcel (CVE-2023-7101). Эта уязвимость используется вживую и есть в CISA KEV.
Из того, для чего ещё есть ссылки на эксплоиты (ссылки из NVD - требуется верификация):
🔸 Denial of Service - Asterisk (CVE-2023-49786)
🔸 Security Feature Bypass - Python (CVE-2023-27043)
🔸 Memory Corruption - Linux Kernel (CVE-2023-6606)
🔸 Memory Corruption - libde265 (CVE-2023-49465, CVE-2023-49467, CVE-2023-49468) - реализация видео-кодека h.265
🔸 Security Feature Bypass - twisted (CVE-2023-46137)
🔸 Memory Corruption - sqlite (CVE-2023-7104)
🔸 Denial of Service - w3m (CVE-2023-4255)
🔸 Incorrect Calculation - QEMU (CVE-2023-42467)
🔸 Memory Corruption - QEMU (CVE-2023-40360)
🔸 Memory Corruption - cJSON (CVE-2023-50471) - парсер JSON на C
🔸 Browser tab titles were being leaked - Mozilla Firefox (CVE-2023-6872)
🔸 Security Feature Bypass - sqlite (CVE-2022-46908)
@avleonovrus #Vulristics #LinuxPatchWednesday #Linux #Debian #Suse #Perl #OVAL #RAR #ClamAV
Продемонстрирую на примере. Генерю я вчера Linux Patch Wednesday отчёт за январь и вижу там UnRAR Arbitrary File Overwrite (CVE-2022-30333). Почему уязвимость 2022 года всплыла сейчас, в начале 2024? Потому, что её запатчили в Ubuntu на днях, 8 января. Причём фиксили не саму утилиту UnRAR, а стороннюю либу ClamAV для антивирусной проверки архивов. А раньше эту CVE не фиксил никто что ли? Ну, фиксили. Вот есть сообщение в листе рассылке Debian от 17 августа 2023. Тоже поздно, совсем не 2022 год, но всё-таки несколько раньше. Но в OVAL-контенте Debian этой даты, 17 августа 2023, не было. И поэтому попала CVE-шка из 2022 года в 2024, т.к. самая ранняя (и единственная) дата, которая была в OVAL-контентах Linux вендоров для этой уязвимости это была дата запоздалого фикса в Ubuntu. 🤷♂️
В общем, OVAL хорошо и универсально, но, к сожалению, не панацея. Удивительно, но там тоже бардак, на который всем пофигу. 😏
Пришлось вчера спешно научиться парсить архивы листа рассылки с бюллетенями безопасности Debian. В итоге список уязвимостей стал поадекватнее. В частности, CVE-2022-30333 ушла в LPW для сентября 2023. Аналогично можно и работу с другими листами рассылки построить, например с Suse.
С Suse, кстати, забавно. У них есть OVAL контент, но он отдаётся только по FTP и нереально медленно, как на dial-up модеме. Причём, не только для России режут скорость (как можно было бы предположить). Вовсе нет, проблема общая.
Отчёт Vulristics выпустил:
🗒 Январский LPW
С детектами можно (и нужно) ещё поиграться, но в целом выглядит норм. 🙂
81 уязвимость.
🔻 Из них самая критичная это RCE в модуле Perl Spreadsheet::ParseExcel (CVE-2023-7101). Эта уязвимость используется вживую и есть в CISA KEV.
Из того, для чего ещё есть ссылки на эксплоиты (ссылки из NVD - требуется верификация):
🔸 Denial of Service - Asterisk (CVE-2023-49786)
🔸 Security Feature Bypass - Python (CVE-2023-27043)
🔸 Memory Corruption - Linux Kernel (CVE-2023-6606)
🔸 Memory Corruption - libde265 (CVE-2023-49465, CVE-2023-49467, CVE-2023-49468) - реализация видео-кодека h.265
🔸 Security Feature Bypass - twisted (CVE-2023-46137)
🔸 Memory Corruption - sqlite (CVE-2023-7104)
🔸 Denial of Service - w3m (CVE-2023-4255)
🔸 Incorrect Calculation - QEMU (CVE-2023-42467)
🔸 Memory Corruption - QEMU (CVE-2023-40360)
🔸 Memory Corruption - cJSON (CVE-2023-50471) - парсер JSON на C
🔸 Browser tab titles were being leaked - Mozilla Firefox (CVE-2023-6872)
🔸 Security Feature Bypass - sqlite (CVE-2022-46908)
@avleonovrus #Vulristics #LinuxPatchWednesday #Linux #Debian #Suse #Perl #OVAL #RAR #ClamAV
После продолжительного перерыва выпустил англоязычную видяшку и блогопост. Разбираю там то, что произошло за последние 3 месяца. В первую очередь в плане улучшений Vulristics. Во вторую - смотрю какие были интересные уязвимости в Microsoft Patch Tuesday, Linux Patch Wednesday и из остальных. Ну и подвожу итоги 2023, а также намечаю направления работы на 2024.
Из занимательного:
🔻 Подсветил 7 уязвимостей из Microsoft Patch Tuesday, для которых за последние 3 месяца появились PoC-и/эксплоиты. Как правило это совсем не те уязвимости, на которые указывали VM-вендоры в своих обзорах. 😏
🔻 В Linux Patch Wednesday за последние 3 месяца было 90 уязвимостей с PoC-ами/эксплоитами (и это не считая тех, про которые известно, что они в активной эксплуатации). 🙈
Постараюсь по англоязычным блогопостам с видяшками вернуться в ежемесячный режим. 😇 Формат хоть и муторный, но полезный.
———
November 2023 – January 2024: New Vulristics Features, 3 Months of Microsoft Patch Tuesdays and Linux Patch Wednesdays, Year 2023 in Review
Hello everyone! It has been 3 months since the last episode. I spent most of this time improving my Vulristics project. So in this episode, let’s take a look at what’s been done.
Also, let’s take a look at the Microsoft Patch Tuesdays vulnerabilities, Linux Patch Wednesdays vulnerabilities and some other interesting vulnerabilities that have been released or updated in the last 3 months. Finally, I’d like to end this episode with a reflection on how my 2023 went and what I’d like to do in 2024.
New Vulristics Features
00:32 Vulristics JSON input and output
02:37 CPE-based vulnerable product names detection
04:16 CWE-based vulnerability type detection
3 Months of Vulnerabilities
07:03 Linux Patch Wednesday
11:22 Microsoft Patch Tuesdays
13:59 Other Vulnerabilities
16:14 About the results of 2023
18:45 What about 2024?
📘 Blogpost
🎞 VKVideo
@avleonovrus #Vulristics #PatchTuesday #LinuxPatchWednesday #SecurityNews #Video #Vulnerability #VulnerabilityManagement #ActiveMQ #ApacheStruts #ArbitraryFileWriting #AtlassianConfluence #AttackerKB #Chromium #CPE #CVE #CWE #Debian #DWM #Excel #exploit #Gitlab #html #HVCI #HyperV #IncorrectCalculation #json #Linux #Microsoft #music #NVD #OVAL #PathTraversal #Perl #PoC #Roundcube #Safari #SharePoint #SmartScreen #SQLite #Struts2 #SUSE #TheDFIRReport #UnRAR #VisualStudio #VMmap #WordPress
Из занимательного:
🔻 Подсветил 7 уязвимостей из Microsoft Patch Tuesday, для которых за последние 3 месяца появились PoC-и/эксплоиты. Как правило это совсем не те уязвимости, на которые указывали VM-вендоры в своих обзорах. 😏
🔻 В Linux Patch Wednesday за последние 3 месяца было 90 уязвимостей с PoC-ами/эксплоитами (и это не считая тех, про которые известно, что они в активной эксплуатации). 🙈
Постараюсь по англоязычным блогопостам с видяшками вернуться в ежемесячный режим. 😇 Формат хоть и муторный, но полезный.
———
November 2023 – January 2024: New Vulristics Features, 3 Months of Microsoft Patch Tuesdays and Linux Patch Wednesdays, Year 2023 in Review
Hello everyone! It has been 3 months since the last episode. I spent most of this time improving my Vulristics project. So in this episode, let’s take a look at what’s been done.
Also, let’s take a look at the Microsoft Patch Tuesdays vulnerabilities, Linux Patch Wednesdays vulnerabilities and some other interesting vulnerabilities that have been released or updated in the last 3 months. Finally, I’d like to end this episode with a reflection on how my 2023 went and what I’d like to do in 2024.
New Vulristics Features
00:32 Vulristics JSON input and output
02:37 CPE-based vulnerable product names detection
04:16 CWE-based vulnerability type detection
3 Months of Vulnerabilities
07:03 Linux Patch Wednesday
11:22 Microsoft Patch Tuesdays
13:59 Other Vulnerabilities
16:14 About the results of 2023
18:45 What about 2024?
📘 Blogpost
🎞 VKVideo
@avleonovrus #Vulristics #PatchTuesday #LinuxPatchWednesday #SecurityNews #Video #Vulnerability #VulnerabilityManagement #ActiveMQ #ApacheStruts #ArbitraryFileWriting #AtlassianConfluence #AttackerKB #Chromium #CPE #CVE #CWE #Debian #DWM #Excel #exploit #Gitlab #html #HVCI #HyperV #IncorrectCalculation #json #Linux #Microsoft #music #NVD #OVAL #PathTraversal #Perl #PoC #Roundcube #Safari #SharePoint #SmartScreen #SQLite #Struts2 #SUSE #TheDFIRReport #UnRAR #VisualStudio #VMmap #WordPress
YouTube
November 2023 – January 2024: New Vulristics Features, 3 Months of MSPT and LPW, Year 2023 in Review
Hello everyone! It has been 3 months since the last episode. I spent most of this time improving my Vulristics project. So in this episode, let’s take a look at what’s been done.
Also, let’s take a look at the Microsoft Patch Tuesdays vulnerabilities, Linux…
Also, let’s take a look at the Microsoft Patch Tuesdays vulnerabilities, Linux…
Продолжаю рассказ про уязвимости БДУ без ссылок на CVE идентификаторы разбором конкретных кейсов.
🔹 Почему так много уязвимостей Astra Linux? Upd 0704. В основном это результат собственного ресёрча.
🔹 Для EMIAS OS уязвимости Linux Kernel, но даже без ссылки на бюллетень. Откуда именно уязвимость непонятно.
🔹 Откуда уязвимости Windows? Их Microsoft выпускали не как CVE-шки, а как ADVisories. Потом для них могут добавлять CVE, которые не пробрасываются в БДУ. 🤷♂️
🔹 Для уязвимостей Debian Linux аналогично. Они заводятся по бюллетеням DSA без ссылки на CVE на момент публикации. Затем ссылка добавляется, но в БДУ она не пробрасывается. 🤷♂️
🔹 Почему много уязвимостей Open Source продуктов? Потому что они заводятся по эксплойтам, в описании которых нет ссылки на CVE.
🔹 Некоторые виндоры не любят заводить CVE идентификаторы. Например, SAP часто выпускают только непубличные SAP Notes.
@avleonovrus #Vulristics #БДУ #ФСТЭК #FSTEC #BDU #tb2024 #event #Astra #Microsoft #Debian #SAP #OpenSource #Zabbix
🔹 Почему так много уязвимостей Astra Linux? Upd 0704. В основном это результат собственного ресёрча.
🔹 Для EMIAS OS уязвимости Linux Kernel, но даже без ссылки на бюллетень. Откуда именно уязвимость непонятно.
🔹 Откуда уязвимости Windows? Их Microsoft выпускали не как CVE-шки, а как ADVisories. Потом для них могут добавлять CVE, которые не пробрасываются в БДУ. 🤷♂️
🔹 Для уязвимостей Debian Linux аналогично. Они заводятся по бюллетеням DSA без ссылки на CVE на момент публикации. Затем ссылка добавляется, но в БДУ она не пробрасывается. 🤷♂️
🔹 Почему много уязвимостей Open Source продуктов? Потому что они заводятся по эксплойтам, в описании которых нет ссылки на CVE.
🔹 Некоторые виндоры не любят заводить CVE идентификаторы. Например, SAP часто выпускают только непубличные SAP Notes.
@avleonovrus #Vulristics #БДУ #ФСТЭК #FSTEC #BDU #tb2024 #event #Astra #Microsoft #Debian #SAP #OpenSource #Zabbix
Хакатон MaxPatrol VM, часть 1: Linux стенд и Ansible. Как и обещал, делюсь впечатлениями от хакатона. Первым заданием у меня была автоматизации установки софта из TAR-архива на Debian 12 с помощью Ansible. Раньше я с Ansible толком не работал, поэтому появился повод немного разобраться.
Ansible - система управления конфигурациями, написанная на Python. Главное отличие Ansible от аналогов - не нужна установка агента или клиента на управляемые хосты. Обычно используется для управления Linux-хостами, но Windows также поддерживается. Взаимодействие происходит по модели push: сам Ansible запускается на "центральном" управляющем хосте, ходит на управляемые хосты и что-то делает. На управляемом хосте должен быть установлен Python версии 2.4 и выше, соединение выполняется по SSH или WinRM.
Управляющим хостом для Ansible будет мой десктоп на Ubuntu 23.10, а управляемым хостом будет виртуалка в VirtualBox.
Я завёл виртуалку в VirtualBox с Debian 12, добавил интерфейс Host-only adapter, чтобы можно было подключаться к ней по SSH. Я проверил, что подключение работает с помощью:
Для работы Ansible должна быть настроена аутентификация по ключам. Я сгенерировал ключ с помощью:
Затем я закинул его на target-host:
После этого команда
На десктоп с Ubuntu 23.10 я поставил Ansible при помощи утилиты pipx
Обновлять можно с помощью:
Проверить версию ansible можно с помощью:
Далее описываю управляемый хост (виртуалку) в yaml файле:
Валидирую файл hosts.yaml:
Проверяю соединение:
Всё работает, связь есть. Теперь можно попробовать выполнить какие-то команды на хосте с помощью Ansible. Делаю тестовый плейбук для вывода hostname и версии дистрибутива:
Запускаю его:
Работает! В следующей части рассмотрим как описать в плейбуке установку софта из TAR-архива.
@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTVMHackathon #Ansible #VirtualBox #Debian #Ubuntu #Linux
Ansible - система управления конфигурациями, написанная на Python. Главное отличие Ansible от аналогов - не нужна установка агента или клиента на управляемые хосты. Обычно используется для управления Linux-хостами, но Windows также поддерживается. Взаимодействие происходит по модели push: сам Ansible запускается на "центральном" управляющем хосте, ходит на управляемые хосты и что-то делает. На управляемом хосте должен быть установлен Python версии 2.4 и выше, соединение выполняется по SSH или WinRM.
Управляющим хостом для Ansible будет мой десктоп на Ubuntu 23.10, а управляемым хостом будет виртуалка в VirtualBox.
Я завёл виртуалку в VirtualBox с Debian 12, добавил интерфейс Host-only adapter, чтобы можно было подключаться к ней по SSH. Я проверил, что подключение работает с помощью:
$ ssh vmuser@192.168.56.104
Для работы Ansible должна быть настроена аутентификация по ключам. Я сгенерировал ключ с помощью:
$ ssh-keygen -t ed25519 -C "alexander@avleonov.com"
Затем я закинул его на target-host:
$ ssh-copy-id vmuser@192.168.56.104
После этого команда
ssh vmuser@192.168.56.104
уже не требовала пароль. На десктоп с Ubuntu 23.10 я поставил Ansible при помощи утилиты pipx
$ sudo apt-get install pipx
$ pipx install --include-deps ansible
Обновлять можно с помощью:
$ pipx upgrade --include-injected ansible
Проверить версию ansible можно с помощью:
$ ansible --version
ansible [core 2.16.7]
...
Далее описываю управляемый хост (виртуалку) в yaml файле:
$ cat hosts.yaml
myhosts:
hosts:
debian12:
ansible_host: 192.168.56.104
Валидирую файл hosts.yaml:
$ ansible-inventory -i hosts.yaml --list
{
"_meta": {
"hostvars": {
"debian12": {
"ansible_host": "192.168.56.104"
}
}
},
"all": {
"children": [
"ungrouped",
"myhosts"
]
},
"myhosts": {
"hosts": [
"debian12"
]
}
}
Проверяю соединение:
$ ansible myhosts -m ping -i hosts.yaml -u vmuser
debian12 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3"
},
"changed": false,
"ping": "pong"
}
Всё работает, связь есть. Теперь можно попробовать выполнить какие-то команды на хосте с помощью Ansible. Делаю тестовый плейбук для вывода hostname и версии дистрибутива:
- name: Print Hostname and OS Version
hosts: all
tasks:
- name: Get Hostname
command: hostname
register: hostname_output
- name: Get OS Version
ansible.builtin.shell: lsb_release -a | grep "Description:" | awk -F"\t" '{print $2}'
register: os_version_output
- name: Display Outputs
debug:
msg: "Hostname is {{ hostname_output.stdout }} and OS Version is {{ os_version_output.stdout }}"
Запускаю его:
$ ansible-playbook -i hosts.yaml -u 'vmuser' playbook.yaml
...
TASK [Display Outputs] *********************************************************
ok: [debian12] => {
"msg": "Hostname is debian and OS Version is Debian GNU/Linux 12 (bookworm)"
}
Работает! В следующей части рассмотрим как описать в плейбуке установку софта из TAR-архива.
@avleonovrus #PositiveTechnologies #MaxPatrolVM #PTVMHackathon #Ansible #VirtualBox #Debian #Ubuntu #Linux