Один из читателей посоветовал обратить внимание на любопытный проект, который позволяет организовать централизованную аутентификацию и авторизацию на сетевые устройства. Речь идёт о TacacsGUI. Я ранее о нём не слышал, но идея показалась интересной. Решил разобраться, что это такое и как работает. Сразу скажу о самом главном - поддержки Mikrotik нет 😪
И так, TacacsGUI поддерживает устройства следующих вендоров:
- Cisco
- Huawei
- Extreme Networks
- Juniper
- H3C
- Brocade
Вы заводите устройство в систему. Настраиваете на нём авторизацию и аутентификацию через Tacacs. А дальше в GUI через браузер управляете группами доступа, политиками, юзерами и т.д. У вас будут все логи доступа, отчёты подключениям, api для интеграции.
Продукт чётко заточен под сетевые устройства. Я немного посмотрел как он устанавливается и настраивается. Ничего особо сложного нет, так что это может быть актуально даже для небольшого количества устройств и одного, двух админов. В разделе с загрузкой можно скачать готовый образ системы, где собрано всё необходимое для работы. Достаточно только запустить установщик и по месту выполнить установку со своими параметрами.
TacacsGUI бесплатен, открыты исходники. Автор некто Aleksey Mochalin, как я понял, русскоязычный человек. Компания зарабатывает на платной установке, настройке, техподдержке. А так же на версии с HA (High Availability).
Нашёл много информации на тему использования TacacsGUI в тестовых лабах на базе GNS3, EVE-NG или PNETLab. Я так понимаю, что он упрощает работу с большими тестовыми сетями.
Demo - https://demo.tacacsgui.com:4443/dashboard
Сайт - https://tacacsgui.com/
Исходники - https://github.com/tacacsgui/tacacsgui
Документация - https://old.tacgui.com/documentation/
Ссылка на старый сайт, там документация полная, хоть и устаревшая. На новом сайте многих разделов документации просто нет и не совсем понятно, как заводить устройства в систему. В старой доке это есть.
#network #управление
И так, TacacsGUI поддерживает устройства следующих вендоров:
- Cisco
- Huawei
- Extreme Networks
- Juniper
- H3C
- Brocade
Вы заводите устройство в систему. Настраиваете на нём авторизацию и аутентификацию через Tacacs. А дальше в GUI через браузер управляете группами доступа, политиками, юзерами и т.д. У вас будут все логи доступа, отчёты подключениям, api для интеграции.
Продукт чётко заточен под сетевые устройства. Я немного посмотрел как он устанавливается и настраивается. Ничего особо сложного нет, так что это может быть актуально даже для небольшого количества устройств и одного, двух админов. В разделе с загрузкой можно скачать готовый образ системы, где собрано всё необходимое для работы. Достаточно только запустить установщик и по месту выполнить установку со своими параметрами.
TacacsGUI бесплатен, открыты исходники. Автор некто Aleksey Mochalin, как я понял, русскоязычный человек. Компания зарабатывает на платной установке, настройке, техподдержке. А так же на версии с HA (High Availability).
Нашёл много информации на тему использования TacacsGUI в тестовых лабах на базе GNS3, EVE-NG или PNETLab. Я так понимаю, что он упрощает работу с большими тестовыми сетями.
Demo - https://demo.tacacsgui.com:4443/dashboard
Сайт - https://tacacsgui.com/
Исходники - https://github.com/tacacsgui/tacacsgui
Документация - https://old.tacgui.com/documentation/
Ссылка на старый сайт, там документация полная, хоть и устаревшая. На новом сайте многих разделов документации просто нет и не совсем понятно, как заводить устройства в систему. В старой доке это есть.
#network #управление
Существует удобная и простая программа под Windows для инвентаризации IT устройств - Lansweeper. Программа старая и довольно известная. Я видел её в некоторых компаниях. Бесплатная версия позволяет добавить в систему до 100 устройств.
Lansweeper автоматически сканирует сеть и находит устройства, а также интегрируется с AD. Это позволяет автоматически собрать всю информацию о компьютерах и пользователях. Где какой софт стоит, какие лицензии применены, куда пользователь последний раз логинился и т.д. Есть куча готовых отчётов, чтобы быстро что-то найти. Например, вывести все компьютеры, где есть локальные учётные записи и показать их. Можно поискать MAC адреса, посмотреть журналы безопасности и т.д. Штука довольно функциональная.
Устанавливается и работает программа под Windows. Управление через web интерфейс, так что будет установлен IIS. В качестве СУБД использует либо существующий MSSQL Server, либо поставит бесплатный SQL Server Express. Установка и настройка не представляет каких-то сложностей.
Есть поддержка Linux машин. Ходит на них по SSH и собирает данные. Помимо безагентного сбора данных, также существует LsAgent, который можно развернуть на компьютерах и собирать данные с его помощью.
Программа подойдёт для небольших сетей, чтобы хватило ограничений бесплатной версии. Хотя я знаю, что её используют в том числе и крякнутую, особенно те, кто всё ещё завис в прошлом десятилетии. Интерфейс программы как раз напоминает те времена. Сейчас я бы не рекомендовал такую практику, особенно когда есть бесплатные аналоги, хоть их и настраивать подольше придётся.
Сайт - https://www.lansweeper.com
Скачать без регистрации - https://www.lansweeper.com/update-lansweeper/ (для загрузки указать любой email)
#управление #ITSM
Lansweeper автоматически сканирует сеть и находит устройства, а также интегрируется с AD. Это позволяет автоматически собрать всю информацию о компьютерах и пользователях. Где какой софт стоит, какие лицензии применены, куда пользователь последний раз логинился и т.д. Есть куча готовых отчётов, чтобы быстро что-то найти. Например, вывести все компьютеры, где есть локальные учётные записи и показать их. Можно поискать MAC адреса, посмотреть журналы безопасности и т.д. Штука довольно функциональная.
Устанавливается и работает программа под Windows. Управление через web интерфейс, так что будет установлен IIS. В качестве СУБД использует либо существующий MSSQL Server, либо поставит бесплатный SQL Server Express. Установка и настройка не представляет каких-то сложностей.
Есть поддержка Linux машин. Ходит на них по SSH и собирает данные. Помимо безагентного сбора данных, также существует LsAgent, который можно развернуть на компьютерах и собирать данные с его помощью.
Программа подойдёт для небольших сетей, чтобы хватило ограничений бесплатной версии. Хотя я знаю, что её используют в том числе и крякнутую, особенно те, кто всё ещё завис в прошлом десятилетии. Интерфейс программы как раз напоминает те времена. Сейчас я бы не рекомендовал такую практику, особенно когда есть бесплатные аналоги, хоть их и настраивать подольше придётся.
Сайт - https://www.lansweeper.com
Скачать без регистрации - https://www.lansweeper.com/update-lansweeper/ (для загрузки указать любой email)
#управление #ITSM
Давно слышал про бесплатную и открытую configuration and management database (CMDB) i-doit (не idiot, как хочется прочитать с первого взгляда 😁). Это база данных для хранения всей инфорvации об IT. Есть open source версия и платная. Основное отличие - в бесплатной можно только руками всё вводить и нет управления пользователями и ролями.
Если вас устраивает ручной ввод всех данных, то на продукт имеет смысл обратить внимание. Лично мне понравилось, как там всё организовано. Да и сам интерфейс хорошо выглядит. Он привлёк в первую очередь. Выглядит как-будто не очень современно, но при этом им удобно пользоваться. На экран умещается много полезной информации. Пространство используется эффективно, в отличие от многих современных веб приложений, которые, пытаясь угодить в том числе и мобильным пользователям, делают крупные объекты на экране и из-за этого умещается меньше полезной информации.
📌 I-doit умеет хранить и организовывать любую информацию, имеющую отношение к IT:
◽ оборудование, в том числе сервера, стойки, облачные ресурсы;
◽ общую информацию, документацию, контакты;
◽ программное обеспечение, лицензии, службы;
◽ сетевую информацию, в том числе с помощью встроенной системы управления IP адресами;
◽ географическое расположение объектов и группировку на основе этого.
Всё это удобно организовано. Проверить можно в Demo. Я там все разделы просмотрел, оценил. Полезной особенностью I-doit является встроенная интеграция с helpdesk системой Zammad. Она тоже open source, так что можно получить функциональную бесплатную связку из двух продуктов. В итоге i-doit будет показывать все тикеты, связанные с объектом, а в Zammad можно будет выбирать объект во время заведения тикета. Как это выглядит на практике можно посмотреть в документации к Zammad.
Если кто-то использует I-doit, дайте обратную связь по ней. Мне показалась эта система очень удобной и информативной. Работает на базе стандартного веб сервера php + mysql.
Сайт - https://www.i-doit.org
Исходники - https://sourceforge.net/projects/i-doit/files/i-doit
Demo - https://demo.i-doit.org
#управление #ITSM
Если вас устраивает ручной ввод всех данных, то на продукт имеет смысл обратить внимание. Лично мне понравилось, как там всё организовано. Да и сам интерфейс хорошо выглядит. Он привлёк в первую очередь. Выглядит как-будто не очень современно, но при этом им удобно пользоваться. На экран умещается много полезной информации. Пространство используется эффективно, в отличие от многих современных веб приложений, которые, пытаясь угодить в том числе и мобильным пользователям, делают крупные объекты на экране и из-за этого умещается меньше полезной информации.
📌 I-doit умеет хранить и организовывать любую информацию, имеющую отношение к IT:
◽ оборудование, в том числе сервера, стойки, облачные ресурсы;
◽ общую информацию, документацию, контакты;
◽ программное обеспечение, лицензии, службы;
◽ сетевую информацию, в том числе с помощью встроенной системы управления IP адресами;
◽ географическое расположение объектов и группировку на основе этого.
Всё это удобно организовано. Проверить можно в Demo. Я там все разделы просмотрел, оценил. Полезной особенностью I-doit является встроенная интеграция с helpdesk системой Zammad. Она тоже open source, так что можно получить функциональную бесплатную связку из двух продуктов. В итоге i-doit будет показывать все тикеты, связанные с объектом, а в Zammad можно будет выбирать объект во время заведения тикета. Как это выглядит на практике можно посмотреть в документации к Zammad.
Если кто-то использует I-doit, дайте обратную связь по ней. Мне показалась эта система очень удобной и информативной. Работает на базе стандартного веб сервера php + mysql.
Сайт - https://www.i-doit.org
Исходники - https://sourceforge.net/projects/i-doit/files/i-doit
Demo - https://demo.i-doit.org
#управление #ITSM
Расскажу вам про отличную бесплатную Open Source систему контроля доступа к сервисам и системам - Teleport. Она очень функциональная, кроссплатформенная, немного навороченная. Попробую кратко рассказать принцип работы.
Допустим, у вас есть какой-то веб сервис и полноценный сервер в закрытой сети. Вы не хотите открывать к ним доступ извне. Вам нужно точечно выдавать права к этим ресурсам различным пользователям. Есть вариант организовать это с помощью VPN, но это решение сетевого уровня. В то время как Teleport обеспечивает доступ на уровне сервисов.
Вы разворачиваете какой-то сервер в интернете, привязываете к нему DNS имя. Устанавливаете туда сервер Teleport. Добавляете все свои внутренние ресурсы, к которым хотите настроить доступ. Добавляете пользователей и назначаете им права доступа. Далее на целевых серверах ставите Teleport и связываете его с сервером и ресурсами, которые туда добавили.
Теперь централизованно можете управлять доступом к своим внутренним ресурсам. При этом ведётся лог подключений. В качестве ресурсов могут выступать: ssh подключения к серверам, доступ к kubernetes, к базам данных, к десктопным системам (в т.ч. windows по rdp), к отдельным приложениям (gitlab, grafana и т.д.).
Доступ к серверу Teleport и ресурсам осуществляется через браузер. Можно включить двухфакторную аутентификацию. Доступ к SSH может осуществляться как через web, так и с помощью локального приложения со своим cli. Выглядит это примерно так:
Я систему не разворачивал и не использовал. Изучил сайт, документацию, видео. На вид выглядит очень круто. Можно закрыть вопросы как подключений администраторов для управления всего и всем, так и пользователей к своим компьютерам и терминальным серверам. Компания, которая разработала и поддерживает Teleport, зарабатывает на поддержке и облачной версии. За счёт этого Community версия выглядит очень неплохо. Каких-то ограничений я не нашёл.
Аналог этой системы я описывал ранее - Trasa. Teleport показался более функциональным, удобным, с хорошей документацией.
Сайт - https://goteleport.com/
Исходники - https://github.com/gravitational/teleport
Обзор - https://www.youtube.com/watch?v=6ynLlAUipNE
#remote #управление #devops
Допустим, у вас есть какой-то веб сервис и полноценный сервер в закрытой сети. Вы не хотите открывать к ним доступ извне. Вам нужно точечно выдавать права к этим ресурсам различным пользователям. Есть вариант организовать это с помощью VPN, но это решение сетевого уровня. В то время как Teleport обеспечивает доступ на уровне сервисов.
Вы разворачиваете какой-то сервер в интернете, привязываете к нему DNS имя. Устанавливаете туда сервер Teleport. Добавляете все свои внутренние ресурсы, к которым хотите настроить доступ. Добавляете пользователей и назначаете им права доступа. Далее на целевых серверах ставите Teleport и связываете его с сервером и ресурсами, которые туда добавили.
Теперь централизованно можете управлять доступом к своим внутренним ресурсам. При этом ведётся лог подключений. В качестве ресурсов могут выступать: ssh подключения к серверам, доступ к kubernetes, к базам данных, к десктопным системам (в т.ч. windows по rdp), к отдельным приложениям (gitlab, grafana и т.д.).
Доступ к серверу Teleport и ресурсам осуществляется через браузер. Можно включить двухфакторную аутентификацию. Доступ к SSH может осуществляться как через web, так и с помощью локального приложения со своим cli. Выглядит это примерно так:
# tsh login --proxy=tp.site.com --user=sysadmin
Я систему не разворачивал и не использовал. Изучил сайт, документацию, видео. На вид выглядит очень круто. Можно закрыть вопросы как подключений администраторов для управления всего и всем, так и пользователей к своим компьютерам и терминальным серверам. Компания, которая разработала и поддерживает Teleport, зарабатывает на поддержке и облачной версии. За счёт этого Community версия выглядит очень неплохо. Каких-то ограничений я не нашёл.
Аналог этой системы я описывал ранее - Trasa. Teleport показался более функциональным, удобным, с хорошей документацией.
Сайт - https://goteleport.com/
Исходники - https://github.com/gravitational/teleport
Обзор - https://www.youtube.com/watch?v=6ynLlAUipNE
#remote #управление #devops
Один подписчик поделился информацией о программе для учёта компьютерного оборудования в компании - Hardware Inspector. Я с удивлением вспомнил, что эту программу хорошо знаю, потому что покупал её и активно использовал, но давно. Решил написать по ней заметку.
Hardware Inspector из далёкого прошлого, но до сих пор активно развивается, судя по новостям с обновлениями. Выглядит очень старомодно и, возможно, отталкивающе в наше время. Тем не менее, она реально очень функциональна и способна эффективно решать поставленные задачи.
❓ Как использовал эту программу я? У меня была идея качественно разобрать и упорядочить всю подконтрольную мне технику, её управление, выдачу и перемещения. Не поленился и вручную завёл всю номенклатуру оборудования и расходников в эту программу. Создал структуру компании, людей, все рабочие месте и всю технику.
Hardware Inspector умеет автоматически заполнять информацию о железе и установленном ПО на рабочих местах с помощью интеграции с AIDA32 или ASTRA. Я Аиду использовал. Сама интеграция очень простая. AIDA с нужными ключами запускается на компе с помощью GPO при Logon, генерирует текстовый отчёт, записывает его в файл. Hardware Inspector читает этот файл.
Помимо учёта оборудования и ПО, программа умеет печатать различные бумажки по форме при выполнении каких-то действий. Например, меняется у пользователя компьютер, печатается бумажка о перемещении, подписывается у пользователя. То же самое при выдаче, списании, приобретении оборудования. Используются стандартные формы, которые закреплены то ли в бухучёте, либо где-то ещё. Точно не знаю, из какой области подобная бюрократия. Какие-то формы я немного переделывал под себя или добавлял новые. Там свой конструктор под это дело.
Конкретно мне было очень удобно с этой программой. Я всегда знал, где что хранится, кому что выдано и когда. Если старый монитор лежал на складе, я всегда знал откуда он и почему туда попал. Перед бухгалтерией всё было прикрыто и вообще был порядок в бумагах и делах.
С внедрением программы придётся потрудиться и потратить какое-то время. С кондачка тут хорошего результата не будет.
📌 Особенности Hardware Inspector:
▪ Локальное приложение под Windows (на Linux работает через Wine), веб версии нет.
▪ База хранится в файле, его можно положить на сетевой диск и открывать из разных мест.
▪ Лицензирование идёт по количеству объектов в базе.
▪ Есть интеграция рабочих мест с AD, так что при желании можно всё автоматически развернуть и потом уже редактировать то, что получилось. Это быстрее, чем заводить с нуля.
❗️ Программа не бесплатная, но стоит не дорого. С покупкой и обоснованием не было каких-то проблем. Можно оплачивать каждый год по подписке или сразу купить бессрочную версию.
Сайт - https://www.hwinspector.com
Реестр ПО - https://reestr.digital.gov.ru/reestr/303504/
#управление #ITSM #отечественное
Hardware Inspector из далёкого прошлого, но до сих пор активно развивается, судя по новостям с обновлениями. Выглядит очень старомодно и, возможно, отталкивающе в наше время. Тем не менее, она реально очень функциональна и способна эффективно решать поставленные задачи.
❓ Как использовал эту программу я? У меня была идея качественно разобрать и упорядочить всю подконтрольную мне технику, её управление, выдачу и перемещения. Не поленился и вручную завёл всю номенклатуру оборудования и расходников в эту программу. Создал структуру компании, людей, все рабочие месте и всю технику.
Hardware Inspector умеет автоматически заполнять информацию о железе и установленном ПО на рабочих местах с помощью интеграции с AIDA32 или ASTRA. Я Аиду использовал. Сама интеграция очень простая. AIDA с нужными ключами запускается на компе с помощью GPO при Logon, генерирует текстовый отчёт, записывает его в файл. Hardware Inspector читает этот файл.
Помимо учёта оборудования и ПО, программа умеет печатать различные бумажки по форме при выполнении каких-то действий. Например, меняется у пользователя компьютер, печатается бумажка о перемещении, подписывается у пользователя. То же самое при выдаче, списании, приобретении оборудования. Используются стандартные формы, которые закреплены то ли в бухучёте, либо где-то ещё. Точно не знаю, из какой области подобная бюрократия. Какие-то формы я немного переделывал под себя или добавлял новые. Там свой конструктор под это дело.
Конкретно мне было очень удобно с этой программой. Я всегда знал, где что хранится, кому что выдано и когда. Если старый монитор лежал на складе, я всегда знал откуда он и почему туда попал. Перед бухгалтерией всё было прикрыто и вообще был порядок в бумагах и делах.
С внедрением программы придётся потрудиться и потратить какое-то время. С кондачка тут хорошего результата не будет.
📌 Особенности Hardware Inspector:
▪ Локальное приложение под Windows (на Linux работает через Wine), веб версии нет.
▪ База хранится в файле, его можно положить на сетевой диск и открывать из разных мест.
▪ Лицензирование идёт по количеству объектов в базе.
▪ Есть интеграция рабочих мест с AD, так что при желании можно всё автоматически развернуть и потом уже редактировать то, что получилось. Это быстрее, чем заводить с нуля.
❗️ Программа не бесплатная, но стоит не дорого. С покупкой и обоснованием не было каких-то проблем. Можно оплачивать каждый год по подписке или сразу купить бессрочную версию.
Сайт - https://www.hwinspector.com
Реестр ПО - https://reestr.digital.gov.ru/reestr/303504/
#управление #ITSM #отечественное
GestioIP - бесплатный open source продукт для управления IP адресации сетей и автоматического обнаружения сетевых устройств. Его можно отнести к IPAM (IPv4/IPv6 Address Management). Для сбора информации о сетевых устройствах используются протоколы ICMP и SNMP.
Программа представляет из себя обычное веб приложение, написанное на Perl. Для запуска требуется веб сервер, например Apache, и база данных Mysql. Поддерживаются все популярные Linux дистрибутивы. Для быстрой установки есть bash скрипт. Он ставит все необходимые пакеты, копирует конфиги, создаёт службу. Для быстрого запускать можно запустить всё в докер. Есть готовый контейнер или docker-compose для запуска всех сопутствующих служб разом.
📌 Основные возможности GestioIP:
◽ Всё управление через веб интерфейс.
◽ Интеграция с DNS и DHCP.
◽ Автообнаружение сетей, хостов, VLAN.
◽ Калькулятор подсетей, отображение свободных адресов и сегментов сети.
◽ Экспорт и импорт информации, в том числе в xls таблицы.
Как я уже сказал, GestioIP бесплатный продукт с открытым исходным кодом. Развивается за счёт платных модулей (API, управление конфигурациями) и технической поддержки.
Из особенностей GestioIP можно отметить интеграцию с OCS Inventory NG (бесплатное ПО для инвентаризации сети). С помощью Apache mod_auth можно настроить авторизацию в веб интерфейс через AD или другой LDAP.
Продукт довольно простой, в веб интерфейсе ничего лишнего. Заточен именно под управление IP адресами. Вот аналоги со схожим функционалом:
▪ phpIPAM (программа исключительно для IPAM)
▪ NetBox (IPAM не основной функционал)
Думал, что напишу больше список похожего ПО, но когда стал разбираться, понял, что для управления именно IP адресов особо и не знаю больше ничего.
⇨ Сайт / Исходники / Docker Hub / Docker Compose
#IPAM #управление #ITSM
Программа представляет из себя обычное веб приложение, написанное на Perl. Для запуска требуется веб сервер, например Apache, и база данных Mysql. Поддерживаются все популярные Linux дистрибутивы. Для быстрой установки есть bash скрипт. Он ставит все необходимые пакеты, копирует конфиги, создаёт службу. Для быстрого запускать можно запустить всё в докер. Есть готовый контейнер или docker-compose для запуска всех сопутствующих служб разом.
📌 Основные возможности GestioIP:
◽ Всё управление через веб интерфейс.
◽ Интеграция с DNS и DHCP.
◽ Автообнаружение сетей, хостов, VLAN.
◽ Калькулятор подсетей, отображение свободных адресов и сегментов сети.
◽ Экспорт и импорт информации, в том числе в xls таблицы.
Как я уже сказал, GestioIP бесплатный продукт с открытым исходным кодом. Развивается за счёт платных модулей (API, управление конфигурациями) и технической поддержки.
Из особенностей GestioIP можно отметить интеграцию с OCS Inventory NG (бесплатное ПО для инвентаризации сети). С помощью Apache mod_auth можно настроить авторизацию в веб интерфейс через AD или другой LDAP.
Продукт довольно простой, в веб интерфейсе ничего лишнего. Заточен именно под управление IP адресами. Вот аналоги со схожим функционалом:
▪ phpIPAM (программа исключительно для IPAM)
▪ NetBox (IPAM не основной функционал)
Думал, что напишу больше список похожего ПО, но когда стал разбираться, понял, что для управления именно IP адресов особо и не знаю больше ничего.
⇨ Сайт / Исходники / Docker Hub / Docker Compose
#IPAM #управление #ITSM
Делюсь с вами малоизвестной, но полезной и функциональной находкой. Речь пойдёт про систему централизованного хранения и управления ключами для подключения по SSH к хостам - ssham. Я настроил её и разобрался, как с ней работать. Несмотря на то, что про ssham нет ни одного упоминания в интернете, кроме репозитория программы, она достойна внимания.
Идея ssham следующая. Вы устанавливаете её на любой Linux хост. Потом с её помощью через веб интерфейс управляете настройками подключения к другим хостам.
Для этого вы заходите в веб интерфейс ssham, добавляете туда хосты, пользователей, генерируете ключи. Для всего этого поддерживаются группы. А потом связываете ключи с пользователями, создаёте правила, кому на какой хост можно подключаться с помощью того или иногда ключа. Когда всё настроите, запускаете синхронизацию и ssham сам разложит по хостам нужные сертификаты, для которых настроено разрешение на подключение. Ключи можно как добавлять, так и отзывать/удалять.
Вы получаете централизованную систему хранения и управления доступами для SSH ключей. Теперь рассказываю, как её запустить. Документация очень скудная, мне пришлось довольно долго во всём самому разбираться. Поставить можно как напрямую на сервере, так и запустить в Docker. Для простоты описания, запустим всё в Docker.
Копируем репозитоий:
Делаем копию файла с параметрами окружения:
Заходим в .env и комментируем строку:
Пока я этого не сделал, у меня не работала синхронизация ключей по хостам. Несколько часов потратил, пока разобрался.
Далее собираем и запускаем образы:
Устанавливаем в контейнер app зависимости:
Инициализируем БД и добавляем туда demo данные:
Дальше идём в веб интерфейс по ip адресу и логинимся под superadmin / superadmin.
Логика работы с ssham следующая. Создаём SSH Key groups, добавляем SSH key и помещаем его в эту группу. Далее создаём Host group, добавляем Host и помещаем его в эту группу. В завершении создаём Rule, где указываем, что созданная SSH Key group имеет доступ к Host group. Или не имеет. Доступ можно как разрешить, так и запретить.
После того, как всё сделали, в Settings смотрим Public key сервера. Его нужно один раз самостоятельно распространить на управляемые хосты, добавив в ./ssh/authorized_keys. После этого идём в консоль сервера, где запущены контейнеры и выполняем синхронизацию:
После этого на управляемых хостах ключи будут добавлены в authorized_keys. Теперь можно забрать приватные ключи из веб интерфейса и раздать пользователям.
⇨ Исходники
#ssh #devops #управление
Идея ssham следующая. Вы устанавливаете её на любой Linux хост. Потом с её помощью через веб интерфейс управляете настройками подключения к другим хостам.
Для этого вы заходите в веб интерфейс ssham, добавляете туда хосты, пользователей, генерируете ключи. Для всего этого поддерживаются группы. А потом связываете ключи с пользователями, создаёте правила, кому на какой хост можно подключаться с помощью того или иногда ключа. Когда всё настроите, запускаете синхронизацию и ssham сам разложит по хостам нужные сертификаты, для которых настроено разрешение на подключение. Ключи можно как добавлять, так и отзывать/удалять.
Вы получаете централизованную систему хранения и управления доступами для SSH ключей. Теперь рассказываю, как её запустить. Документация очень скудная, мне пришлось довольно долго во всём самому разбираться. Поставить можно как напрямую на сервере, так и запустить в Docker. Для простоты описания, запустим всё в Docker.
Копируем репозитоий:
# git clone https://github.com/pacoorozco/ssham.git ssham
# cd ssham
Делаем копию файла с параметрами окружения:
# cp .env.example .env
Заходим в .env и комментируем строку:
#QUEUE_CONNECTION=database
Пока я этого не сделал, у меня не работала синхронизация ключей по хостам. Несколько часов потратил, пока разобрался.
Далее собираем и запускаем образы:
# export DOCKER_SSHAM_UID="$(id -u)"
# docker-compose build
# docker-compose up -d
Устанавливаем в контейнер app зависимости:
# docker-compose exec app composer install
Инициализируем БД и добавляем туда demo данные:
# docker-compose exec app php artisan key:generate
# docker-compose exec app php artisan migrate:fresh --seed
Дальше идём в веб интерфейс по ip адресу и логинимся под superadmin / superadmin.
Логика работы с ssham следующая. Создаём SSH Key groups, добавляем SSH key и помещаем его в эту группу. Далее создаём Host group, добавляем Host и помещаем его в эту группу. В завершении создаём Rule, где указываем, что созданная SSH Key group имеет доступ к Host group. Или не имеет. Доступ можно как разрешить, так и запретить.
После того, как всё сделали, в Settings смотрим Public key сервера. Его нужно один раз самостоятельно распространить на управляемые хосты, добавив в ./ssh/authorized_keys. После этого идём в консоль сервера, где запущены контейнеры и выполняем синхронизацию:
# docker-compose exec app php artisan ssham:send
После этого на управляемых хостах ключи будут добавлены в authorized_keys. Теперь можно забрать приватные ключи из веб интерфейса и раздать пользователям.
⇨ Исходники
#ssh #devops #управление
Хочу вам напомнить про отличный продукт для совместной работы над проектами - YouTrack. Это образец качественного, удобного, продуманного программного обеспечения. Если не ошибаюсь, то использую YouTrack уже около 7-ми лет. С тех пор, как первый раз его увидел, неизменно выбираю для совместной работы. Его ещё называют баг-трекер, но мне кажется, он уже давно вырос в более масштабный продукт.
Основное, чем привлёк YouTrack - полнофункциональная версия для 10-ти пользователей. Причём поставить её можно как у себя, так и пользоваться совершенно бесплатно облачной версией. Последнее встречается не часто. Обычно версию для разворачивания у себя делают бесплатной, а вот SaaS уже только за деньги.
Чтобы вы сразу поняли на что похож YouTrack, приведу несколько аналогов - Jira (YouTrack мне видится в разы лучше), Wrike, Redmine, YouGile, Zendesk, условно и Битрикс24 сюда можно добавить, но он больше на бизнес завязан, а YouTrack на IT, поддержку и разработку.
Как я использую YouTrack? Сразу приведу пару примеров. Небольшой IT отдел из нескольких человек. В YouTrack заводятся все задачи (не заявки пользователей, это не для них), всё максимально подробно в них описывается, разбивается на проекты (поддержка, закупка, модернизация и т.д.). В итоге копится база знаний, плюс всегда готов список задач, которые выполняются. При желании даётся доступ руководству, чтобы не было вопросов на тему того, чем вы вообще занимаетесь. Я сначала работал в youtrack как человек, которому ставят задачи, потом сам стал использовать для управления подчинёнными. Удобно работать в обоих ролях. Причём я сам оценил удобство трекера, когда выполнял и описывал решение задач. Сам потом пользовался информацией.
Второй вариант - совместная работа с разработчиками. Смысл тот же самый. Делим на проекты, пишем и решаем задачи, максимально всё описываем, чтобы можно было использовать потом как базу знаний. Задачам назначаем приоритеты, ставим срок выполнения и т.д. В общем, как во всех подобных программах.
Мне YouTrack нравится за удобство, скорость работы и внешний вид. Возможностей у него очень много и по началу трудно всё настроить и понять логику работы. Но я осилил в своё время, так что ничего невозможного. В SaaS версии с этим попроще, многое настроено за вас. Отдельно отмечу качество софта. Он легко разворачивается (работает на Java) на любой платформе, будь то Linux или Windows. Без проблем обновляется на новые версии. Отлично работает встроенный бэкап. Не надо особо заморачиваться с ним. Создаётся единый архив, который потом скармливается чистой установке. У меня ни разу не было проблемы с тем, чтобы бэкап не развернулся. Даже в SaaS версии можно сделать бэкап и потом развернуть его у себя на сервере. Делал так собственноручно, когда проект закрывался, но хотелось сохранить всю документацию по нему. Сделал бэкап и развернул его у себя на сервере.
Не буду рассказывать про установку своего сервера. Для того, чтобы посмотреть на YouTrack проще всего зарегистрироваться в облаке. А если понравится и будет необходимость, развернуть у себя. В документации всё описано.
Отдельно отмечу, что в YouTrack хорошая русификация. Можно смело использовать русский язык. Разработчики возможно русскоязычные, но это не точно, компания JetBrains международная, хоть и основана русскими в 2000-м году.
⇨ Сайт / Полномасштабный обзор (2 часа)
#управление_проектами
Основное, чем привлёк YouTrack - полнофункциональная версия для 10-ти пользователей. Причём поставить её можно как у себя, так и пользоваться совершенно бесплатно облачной версией. Последнее встречается не часто. Обычно версию для разворачивания у себя делают бесплатной, а вот SaaS уже только за деньги.
Чтобы вы сразу поняли на что похож YouTrack, приведу несколько аналогов - Jira (YouTrack мне видится в разы лучше), Wrike, Redmine, YouGile, Zendesk, условно и Битрикс24 сюда можно добавить, но он больше на бизнес завязан, а YouTrack на IT, поддержку и разработку.
Как я использую YouTrack? Сразу приведу пару примеров. Небольшой IT отдел из нескольких человек. В YouTrack заводятся все задачи (не заявки пользователей, это не для них), всё максимально подробно в них описывается, разбивается на проекты (поддержка, закупка, модернизация и т.д.). В итоге копится база знаний, плюс всегда готов список задач, которые выполняются. При желании даётся доступ руководству, чтобы не было вопросов на тему того, чем вы вообще занимаетесь. Я сначала работал в youtrack как человек, которому ставят задачи, потом сам стал использовать для управления подчинёнными. Удобно работать в обоих ролях. Причём я сам оценил удобство трекера, когда выполнял и описывал решение задач. Сам потом пользовался информацией.
Второй вариант - совместная работа с разработчиками. Смысл тот же самый. Делим на проекты, пишем и решаем задачи, максимально всё описываем, чтобы можно было использовать потом как базу знаний. Задачам назначаем приоритеты, ставим срок выполнения и т.д. В общем, как во всех подобных программах.
Мне YouTrack нравится за удобство, скорость работы и внешний вид. Возможностей у него очень много и по началу трудно всё настроить и понять логику работы. Но я осилил в своё время, так что ничего невозможного. В SaaS версии с этим попроще, многое настроено за вас. Отдельно отмечу качество софта. Он легко разворачивается (работает на Java) на любой платформе, будь то Linux или Windows. Без проблем обновляется на новые версии. Отлично работает встроенный бэкап. Не надо особо заморачиваться с ним. Создаётся единый архив, который потом скармливается чистой установке. У меня ни разу не было проблемы с тем, чтобы бэкап не развернулся. Даже в SaaS версии можно сделать бэкап и потом развернуть его у себя на сервере. Делал так собственноручно, когда проект закрывался, но хотелось сохранить всю документацию по нему. Сделал бэкап и развернул его у себя на сервере.
Не буду рассказывать про установку своего сервера. Для того, чтобы посмотреть на YouTrack проще всего зарегистрироваться в облаке. А если понравится и будет необходимость, развернуть у себя. В документации всё описано.
Отдельно отмечу, что в YouTrack хорошая русификация. Можно смело использовать русский язык. Разработчики возможно русскоязычные, но это не точно, компания JetBrains международная, хоть и основана русскими в 2000-м году.
⇨ Сайт / Полномасштабный обзор (2 часа)
#управление_проектами
Познакомился с бесплатной системой управления бизнес процессами ELMA Community Edition. Хочу поделиться своими впечатлениями от неё. Подобный класс софта сейчас популярен и нужен практически любой компании. При этом не так просто его выбрать, сравнить, внедрить. Требуется потратить значительное количество времени, прежде чем станет понятно, подходит вам тот или иной продукт.
Я лично работал со многими подобными программами - 1С Документооборот, Битрикс24, Wrike, YouGile, Onlyoffice Workspace. ELMA CE полностью бесплатна без каких-либо условий и ограничений. По сути это реклама остальных продуктов компании с более широким функционалом. А там есть из чего выбирать. Компании ЭЛМА давно на рынке систем управления бизнес-процессами.
ELMA CE представляет из себя приложение под Windows. Работает на базе стека IIS, Asp, .Net Framework, БД PostgreSQL или MS SQL. Устанавливается через типовой установщик Windows. Каких-то сложностей с этим процессом нет. Единственное, лучше все компоненты, кроме PostgreSQL самостоятельно установить заранее. Ресурсов много не надо. Я запустил на виртуалке с 2 ядрами и 4 Гб памяти.
Работа с системой осуществляется через браузер, то есть это обычное веб приложение. Внешний вид пользовательского интерфейса простой, понятный, лаконичный. Мне понравился. С помощью бесплатной версии можно получить следующий функционал:
◽ настройка и использование бизнес процессов, которые можно создавать в наглядном редакторе;
◽ управление проектами, контрагентами;
◽ календарь, события, задачи, то есть личный или командный органайзер;
◽ база знаний, в программе раздел называется "справочник";
◽ хранилище документов, общий доступ к ним, связывание с бизнес-процессами.
В общем и целом функционал для бесплатной версии более чем. Редактор процессов немного напомнил аналогичный в 1С документооборот. Возможности редактора большие. Это не просто система с каким-то последовательными действиями и стрелочками. Бизнес-процесс можно описать довольно сложно, с разными шагами, реакциями на те или иные действия, с отправкой уведомлений, с матрицей ответственности, подпроцессами и т.д. С пол тычка в системе не разобраться, придётся погружаться.
Могу точно сказать, что ELMA CE понравилась намного больше, чем тот же бесплатный Битрикс24, весьма популярный в народе. Часто с ним сталкиваюсь. Функционала по управлению процессами, подобно ELMA CE в других бесплатных системах не встречал. Тут может быть внешний вид не такой удобный и современный, как в Onlyoffice Workspace или Wrike, но возможностей по настройке процессов в них вообще нет.
В целом, система неплохая. Рассмотреть точно стоит, если подбираете что-то подобное. К тому же сделать это очень просто. Никаких проблем с установкой и запуском в работу нет. Софт российский, есть в реестре ПО.
⇨ Сайт / Реестр ПО / Подробный Обзор / Полное описание возможностей
#управление_проектами #crm #отечественное
Я лично работал со многими подобными программами - 1С Документооборот, Битрикс24, Wrike, YouGile, Onlyoffice Workspace. ELMA CE полностью бесплатна без каких-либо условий и ограничений. По сути это реклама остальных продуктов компании с более широким функционалом. А там есть из чего выбирать. Компании ЭЛМА давно на рынке систем управления бизнес-процессами.
ELMA CE представляет из себя приложение под Windows. Работает на базе стека IIS, Asp, .Net Framework, БД PostgreSQL или MS SQL. Устанавливается через типовой установщик Windows. Каких-то сложностей с этим процессом нет. Единственное, лучше все компоненты, кроме PostgreSQL самостоятельно установить заранее. Ресурсов много не надо. Я запустил на виртуалке с 2 ядрами и 4 Гб памяти.
Работа с системой осуществляется через браузер, то есть это обычное веб приложение. Внешний вид пользовательского интерфейса простой, понятный, лаконичный. Мне понравился. С помощью бесплатной версии можно получить следующий функционал:
◽ настройка и использование бизнес процессов, которые можно создавать в наглядном редакторе;
◽ управление проектами, контрагентами;
◽ календарь, события, задачи, то есть личный или командный органайзер;
◽ база знаний, в программе раздел называется "справочник";
◽ хранилище документов, общий доступ к ним, связывание с бизнес-процессами.
В общем и целом функционал для бесплатной версии более чем. Редактор процессов немного напомнил аналогичный в 1С документооборот. Возможности редактора большие. Это не просто система с каким-то последовательными действиями и стрелочками. Бизнес-процесс можно описать довольно сложно, с разными шагами, реакциями на те или иные действия, с отправкой уведомлений, с матрицей ответственности, подпроцессами и т.д. С пол тычка в системе не разобраться, придётся погружаться.
Могу точно сказать, что ELMA CE понравилась намного больше, чем тот же бесплатный Битрикс24, весьма популярный в народе. Часто с ним сталкиваюсь. Функционала по управлению процессами, подобно ELMA CE в других бесплатных системах не встречал. Тут может быть внешний вид не такой удобный и современный, как в Onlyoffice Workspace или Wrike, но возможностей по настройке процессов в них вообще нет.
В целом, система неплохая. Рассмотреть точно стоит, если подбираете что-то подобное. К тому же сделать это очень просто. Никаких проблем с установкой и запуском в работу нет. Софт российский, есть в реестре ПО.
⇨ Сайт / Реестр ПО / Подробный Обзор / Полное описание возможностей
#управление_проектами #crm #отечественное
Хочу вас познакомить с необычным продуктом, который не будет подходить для массового использования. Но в каких-то нестандартных задачах он может оказаться настоящей находкой, так как позволяет как конструктор собрать то, что нужно именно вам. Речь пойдёт про open source CMDB систему DataGerry.
Чтобы сразу было понятно, о чём пойдёт речь, поясню, что это аналог таких продуктов, как i-doit, iTop, Ralph и т. д. Основное отличие от перечисленных бесплатных продуктов в том, что в DataGerry нет вообще никаких преднастроек. По своей сути это конструктор, который позволяет на базе CMDB (Configuration Management Database) собрать готовую систему под конкретную задачу.
В DataGerry вы сможете сами создавать категории, в них разные типы данных со своей структурой и параметрами, а на основании типов данных добавлять объекты. Это не готовая программа по учёту техники в офисе, серверов в стойках, лицензий ПО и т. д. Вы можете в ней хранить всё, что угодно. Описать структуру какого-то своего склада, своей системы управления.
У DataGerry есть встроенный API, с помощью которого можно настраивать интеграции с внешними системами. Аутентификация по API происходит с помощью токенов, доступ к системе через web настраивается либо с помощью локальных пользователей и групп, либо через интеграцию с LDAP.
Помимо API DataGerry умеет взаимодействовать с внешними системами через встроенные ExternalSystems. Это готовые экспортёры данных. Их можно писать самому в виде плагинов, либо использовать что-то из готового. Например, есть экспортёры inventory для Ansible, DNS записей для веб панели Cpanel, объектов в CVS файлы, объектов в MySQL базы и т.д. Список можно в документации посмотреть. Отдельно отмечу встроенную возможность экспорта хостов в бесплатную систему мониторинга OpenNMS.
Попробовать DataGerry очень просто. Есть готовый docker-compose.yml. Достаточно его запустить и идти в веб интерфейс на стандартный 80-й или 443-й порт. Учётка - admin / admin. При первом входе вам предложат пройти небольшое обучение, чтобы понять, как тут создавать объекты.
⇨ Сайт / Исходники
#управление #ITSM
Чтобы сразу было понятно, о чём пойдёт речь, поясню, что это аналог таких продуктов, как i-doit, iTop, Ralph и т. д. Основное отличие от перечисленных бесплатных продуктов в том, что в DataGerry нет вообще никаких преднастроек. По своей сути это конструктор, который позволяет на базе CMDB (Configuration Management Database) собрать готовую систему под конкретную задачу.
В DataGerry вы сможете сами создавать категории, в них разные типы данных со своей структурой и параметрами, а на основании типов данных добавлять объекты. Это не готовая программа по учёту техники в офисе, серверов в стойках, лицензий ПО и т. д. Вы можете в ней хранить всё, что угодно. Описать структуру какого-то своего склада, своей системы управления.
У DataGerry есть встроенный API, с помощью которого можно настраивать интеграции с внешними системами. Аутентификация по API происходит с помощью токенов, доступ к системе через web настраивается либо с помощью локальных пользователей и групп, либо через интеграцию с LDAP.
Помимо API DataGerry умеет взаимодействовать с внешними системами через встроенные ExternalSystems. Это готовые экспортёры данных. Их можно писать самому в виде плагинов, либо использовать что-то из готового. Например, есть экспортёры inventory для Ansible, DNS записей для веб панели Cpanel, объектов в CVS файлы, объектов в MySQL базы и т.д. Список можно в документации посмотреть. Отдельно отмечу встроенную возможность экспорта хостов в бесплатную систему мониторинга OpenNMS.
Попробовать DataGerry очень просто. Есть готовый docker-compose.yml. Достаточно его запустить и идти в веб интерфейс на стандартный 80-й или 443-й порт. Учётка - admin / admin. При первом входе вам предложат пройти небольшое обучение, чтобы понять, как тут создавать объекты.
⇨ Сайт / Исходники
#управление #ITSM
Сегодня расскажу вам про современный функциональный инструмент для управления парком рабочих станций и серверов с разными ОС. Речь пойдёт про Fleetdm. В рунете вообще не нашёл не то что информации по настройке, но даже упоминаний. Во всём разбирался сам на основе документации. Установил себе сервер и два управляемых хоста: Windows и Linux.
Fleetdm — это open source клиент-серверное приложение. Устанавливаете сервер, на управляемые хосты агенты. Поддерживаются системы: Windows, Linux, Macos. Раскатка агентов максимально простая — заранее готовится преднастроенный установщик. Далее он устанавливается на хост и тот появляется в панели управления.
С помощью Fleetdm можно управлять настройками хостов и проверять всё установленное ПО на наличие уязвимостей. Для выборки используется известный open source язык запросов osquery, который разработан специально для этих целей. С его помощью можно делать всевозможные выборки и к ним применять какие-то действия или политики. Вот простой пример, как это работает. Допустим, вы хотите найти все хосты и учётные записи, где установлена оболочка bash. Запрос выглядит так:
Для Windows запросы схожи. К примеру, найдём всех, у кого разрешён SMB1 на клиенте:
Описание запросов хорошо документировано. Писать их с помощью подсказок не сложно.
Бесплатная версия Fleetdm не предполагает встроенных средств для автоматизации выставления настроек или обновления уязвимого ПО. Вы можете создавать политики, которые будут в режиме реального времени проверять хосты. И если находят расхождения в политиках или уязвимое ПО, уведомляют об этом. С помощью API и вебхуков вы можете сами решать проблемы, например с помощью Ansible. Либо автоматически создавать задачи в Jira и Zendesk. В бесплатной версии настроены эти интеграции.
Теперь постараюсь кратко рассказать, как это всё быстро развернуть в тестовой среде, чтобы получилось быстро. В продуктив лучше поставить руками, есть подробная инструкция. Для работы сервера обязательно нужен TLS сертификат. Желательно валидный. С этим я провозился дольше всего, так как настраивал всё в локалке с использованием самоподписанного сертификата. Подготовим его:
Теперь берём минимально необходимый набор софта (Mysql+Redis) и запускаем Fleetdm через docker-compose (возьмите свежую 2-ю версию):
Дожидаемся запуска, идём на fleet.example.com:8080, создаём учётку. На всех управляемых хостах имя fleet.example.com должно резолвиться в IP адрес. Это важно.
Теперь качаем fleetctl последней версии под Linux. Это утилита, которая генерирует установщик для хостов. Распаковываем и создаём установщики под deb и windows. Используем тот же сертификат сервера, secret смотрим в веб интерфейсе, в разделе hosts.
Передаём установщики на целевые хосты. Я запустил http сервер и скачал пакеты:
После установки пакетов на целевые хосты, через пару минут они появятся в веб интерфейсе. Дальше с ними можно работать.
Программа мне понравилась, достойна полноценной статьи. Может напишу. Бесплатную, мультисистемную, с похожей функциональностью не припоминаю.
⇨ Сайт / Исходники
#управление #security #devops
Fleetdm — это open source клиент-серверное приложение. Устанавливаете сервер, на управляемые хосты агенты. Поддерживаются системы: Windows, Linux, Macos. Раскатка агентов максимально простая — заранее готовится преднастроенный установщик. Далее он устанавливается на хост и тот появляется в панели управления.
С помощью Fleetdm можно управлять настройками хостов и проверять всё установленное ПО на наличие уязвимостей. Для выборки используется известный open source язык запросов osquery, который разработан специально для этих целей. С его помощью можно делать всевозможные выборки и к ним применять какие-то действия или политики. Вот простой пример, как это работает. Допустим, вы хотите найти все хосты и учётные записи, где установлена оболочка bash. Запрос выглядит так:
SELECT * FROM users WHERE shell='/bin/bash';
Для Windows запросы схожи. К примеру, найдём всех, у кого разрешён SMB1 на клиенте:
SELECT 1 FROM windows_optional_features \
WHERE name = 'SMB1Protocol-Client' AND state != 1;
Описание запросов хорошо документировано. Писать их с помощью подсказок не сложно.
Бесплатная версия Fleetdm не предполагает встроенных средств для автоматизации выставления настроек или обновления уязвимого ПО. Вы можете создавать политики, которые будут в режиме реального времени проверять хосты. И если находят расхождения в политиках или уязвимое ПО, уведомляют об этом. С помощью API и вебхуков вы можете сами решать проблемы, например с помощью Ansible. Либо автоматически создавать задачи в Jira и Zendesk. В бесплатной версии настроены эти интеграции.
Теперь постараюсь кратко рассказать, как это всё быстро развернуть в тестовой среде, чтобы получилось быстро. В продуктив лучше поставить руками, есть подробная инструкция. Для работы сервера обязательно нужен TLS сертификат. Желательно валидный. С этим я провозился дольше всего, так как настраивал всё в локалке с использованием самоподписанного сертификата. Подготовим его:
# mkdir fleet
# openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes \
-keyout fleet/server.key -out fleet/server.cert -subj "/CN=fleet.example.com" \
-addext "subjectAltName=DNS:fleet.example.com"
# chown -R 100:101 fleet/
Теперь берём минимально необходимый набор софта (Mysql+Redis) и запускаем Fleetdm через docker-compose (возьмите свежую 2-ю версию):
# docker-compose up
Дожидаемся запуска, идём на fleet.example.com:8080, создаём учётку. На всех управляемых хостах имя fleet.example.com должно резолвиться в IP адрес. Это важно.
Теперь качаем fleetctl последней версии под Linux. Это утилита, которая генерирует установщик для хостов. Распаковываем и создаём установщики под deb и windows. Используем тот же сертификат сервера, secret смотрим в веб интерфейсе, в разделе hosts.
# wget https://github.com/fleetdm/fleet/releases/download/fleet-v4.32.0/fleetctl_v4.32.0_linux.tar.gz
# tar xzvf fleetctl_v4.32.0_linux.tar.gz
# cd fleetctl_v4.32.0_linux
# ./fleetctl package --type=msi --fleet-url=https://fleet.example.com:8080 \
--enroll-secret=jlBXb1LUMo4/0Pn1cHXnVKqziMo87CgN --fleet-certificate=server.cert
# ./fleetctl package --type=deb --fleet-url=https://fleet.example.com:8080 \
--enroll-secret=jlBXb1LUMo4/0Pn1cHXnVKqziMo87CgN --fleet-certificate=server.cert
Передаём установщики на целевые хосты. Я запустил http сервер и скачал пакеты:
# python3 -m http.server 8181
После установки пакетов на целевые хосты, через пару минут они появятся в веб интерфейсе. Дальше с ними можно работать.
Программа мне понравилась, достойна полноценной статьи. Может напишу. Бесплатную, мультисистемную, с похожей функциональностью не припоминаю.
⇨ Сайт / Исходники
#управление #security #devops
Почти год назад я вам рассказывал про бесплатную open source систему контроля доступа к сервисам и системам — Teleport. У неё недавно вышло несколько крупных обновлений 13-й версии, так что я решил посмотреть на неё повнимательнее и проверить в работе.
Кратко расскажу, в чём суть этой системы. Это условно точка входа в вашу инфраструктуру. Работает в виде службы, веб сервиса и клиентов. Вы ставите Teleport на управляющий сервер, создаёте там пользователей, подключаете другие системы и сервисы. Используя двухфакторную аутентификацию с помощью OTP authenticator пользователь логинится в систему. Это может быть либо браузер, либо консольный клиент. Далее пользователь прямо через браузер может подключиться к SSH разрешённого сервера, либо с помощью специального консольного SSH клиента. Все сессии логируются и записываются. Помимо SSH поддерживаются и другие виды подключений.
Кратко покажу, как это всё развернуть и запустить в работу. Для начала устанавливаем Teleport на Linux сервер:
Создаём самоподписанные сертификаты для домена teleport.local, так как в примере я использую сервер в локальной сети. Можно взять бесплатные сертификаты от Let's Encrypt.
На выходе получите два файла privkey.pem и fullchain.pem. Используем их для создания файла конфигурации:
Запускаем службу:
Все клиенты должны иметь DNS запись teleport.local, чтобы обращаться к серверу Teleport только по доменному имени. Откройте в браузере страницу https://teleport.local. Если увидите окно аутентификации, значит сервис запустился. Идём обратно в консоль сервера и добавляем туда администратора системы с именем teleport-admin, разрешая ему использовать пользователя root для своих подключений. Если подключаетесь не под root, укажите своего пользователя, или перечислите их через запятую.
В ответ получите ссылку вида https://teleport.local/web/invite/296a7fab9182d7525a6f3f456ed3b074. Пройдите по ней. Тут нам понадобится любой OTP аутентификатор со сканером QR кода. Я стандартно взял Google Authenticator, но можно использовать любой другой. Сканируем QR код смартфоном и вводим код в поле регистрации. Пользователь teleport-admin добавлен.
Теперь можно зайти в веб интерфейс и подключиться по SSH к управляющему серверу, который по умолчанию уже добавлен. В разделе Management ⇨ Session Recordings будут записи сессий. Записывается всё, в том числе работа в MC.
Расскажу, как использовать консольный клиент для подключений по SSH. Он есть под все системы. Показываю пример с Linux. Ставим клиента:
Проходим аутентификацию на сервере Teleport:
Тут опять понадобится аутентификатор от гугла и одноразовый код. После успешной аутентификации, можно подключаться по SSH к серверу teleport.local:
Список доступных серверов для вашей учётной записи можно посмотреть вот так:
Информацию об аутентификации и время её жизни так:
Таким образом можно организовать безопасный и контролируемый доступ к закрытой инфраструктуре без VPN и пробросов портов. Но лучше Teleport тоже скрыть от посторонних глаз.
⇨ Сайт / Исходники
#security #управление #devops
Кратко расскажу, в чём суть этой системы. Это условно точка входа в вашу инфраструктуру. Работает в виде службы, веб сервиса и клиентов. Вы ставите Teleport на управляющий сервер, создаёте там пользователей, подключаете другие системы и сервисы. Используя двухфакторную аутентификацию с помощью OTP authenticator пользователь логинится в систему. Это может быть либо браузер, либо консольный клиент. Далее пользователь прямо через браузер может подключиться к SSH разрешённого сервера, либо с помощью специального консольного SSH клиента. Все сессии логируются и записываются. Помимо SSH поддерживаются и другие виды подключений.
Кратко покажу, как это всё развернуть и запустить в работу. Для начала устанавливаем Teleport на Linux сервер:
# curl https://goteleport.com/static/install.sh | bash -s 13.3.2
Создаём самоподписанные сертификаты для домена teleport.local, так как в примере я использую сервер в локальной сети. Можно взять бесплатные сертификаты от Let's Encrypt.
# cd /var/lib/teleport
# openssl req -x509 -newkey rsa:4096 -keyout privkey.pem \
-out fullchain.pem -sha256 -days 3650 -nodes \
-subj "/C=RU/ST=Russia/L=Moscow/O=Homelab/OU=ITdep/CN=*.teleport.local"
На выходе получите два файла privkey.pem и fullchain.pem. Используем их для создания файла конфигурации:
# teleport configure -o file \
--cluster-name=teleport.local \
--public-addr=teleport.local:443 \
--cert-file=/var/lib/teleport/fullchain.pem \
--key-file=/var/lib/teleport/privkey.pem
Запускаем службу:
# systemctl start teleport
Все клиенты должны иметь DNS запись teleport.local, чтобы обращаться к серверу Teleport только по доменному имени. Откройте в браузере страницу https://teleport.local. Если увидите окно аутентификации, значит сервис запустился. Идём обратно в консоль сервера и добавляем туда администратора системы с именем teleport-admin, разрешая ему использовать пользователя root для своих подключений. Если подключаетесь не под root, укажите своего пользователя, или перечислите их через запятую.
# tctl users add teleport-admin --roles=editor,access --logins=root
В ответ получите ссылку вида https://teleport.local/web/invite/296a7fab9182d7525a6f3f456ed3b074. Пройдите по ней. Тут нам понадобится любой OTP аутентификатор со сканером QR кода. Я стандартно взял Google Authenticator, но можно использовать любой другой. Сканируем QR код смартфоном и вводим код в поле регистрации. Пользователь teleport-admin добавлен.
Теперь можно зайти в веб интерфейс и подключиться по SSH к управляющему серверу, который по умолчанию уже добавлен. В разделе Management ⇨ Session Recordings будут записи сессий. Записывается всё, в том числе работа в MC.
Расскажу, как использовать консольный клиент для подключений по SSH. Он есть под все системы. Показываю пример с Linux. Ставим клиента:
# curl -O https://cdn.teleport.dev/teleport-v13.3.2-linux-amd64-bin.tar.gz
# tar -xzf teleport-v13.3.2-linux-amd64-bin.tar.gz
# cd teleport
# ./install
Проходим аутентификацию на сервере Teleport:
# tsh login --proxy=teleport.local --user=teleport-admin --insecure
Тут опять понадобится аутентификатор от гугла и одноразовый код. После успешной аутентификации, можно подключаться по SSH к серверу teleport.local:
# tsh ssh teleport.local
Список доступных серверов для вашей учётной записи можно посмотреть вот так:
# tsh ls
Информацию об аутентификации и время её жизни так:
# tsh status
Таким образом можно организовать безопасный и контролируемый доступ к закрытой инфраструктуре без VPN и пробросов портов. Но лучше Teleport тоже скрыть от посторонних глаз.
⇨ Сайт / Исходники
#security #управление #devops
Недавно рассказывал про open source систему контроля доступа к сервисам и системам Teleport. На днях как по заказу вышел подробный ролик с описанием его установки за проксируемым сервером Traefik. Это, кстати, фича последних версий. Раньше Teleport не удавалось разместить за прокси.
⇨ Installing Teleport + Traefik (Letsencrypt TLS certs)
Видео наглядное и подробное. Автор на наших глазах разворачивает всё хозяйство в Docker и настраивает. В качестве примера Application настраивает доступ к серверу Proxmox. Всё как мы любим. Не хватает только Mikrotik. Доступ через web, при желании, к нему настраивается по аналогии. Мне очень интересно узнать, записывает ли Teleport сессии к Application так же как к серверам по SSH. На своём стенде забыл это проверить.
Если не понимаете на слух английский, включите субтитры или синхронный перевод от Яндекса. Я с ним слушал, всё понятно. Качество перевода приемлемое. Я бы даже сказал хорошее, если бы он "teleport" не переводил как "телепортация".
#security #управление #devops
⇨ Installing Teleport + Traefik (Letsencrypt TLS certs)
Видео наглядное и подробное. Автор на наших глазах разворачивает всё хозяйство в Docker и настраивает. В качестве примера Application настраивает доступ к серверу Proxmox. Всё как мы любим. Не хватает только Mikrotik. Доступ через web, при желании, к нему настраивается по аналогии. Мне очень интересно узнать, записывает ли Teleport сессии к Application так же как к серверам по SSH. На своём стенде забыл это проверить.
Если не понимаете на слух английский, включите субтитры или синхронный перевод от Яндекса. Я с ним слушал, всё понятно. Качество перевода приемлемое. Я бы даже сказал хорошее, если бы он "teleport" не переводил как "телепортация".
#security #управление #devops
YouTube
Installing Teleport + Traefik (Letsencrypt TLS certs)
In this video, I'll show you how to install Traefik and Teleport in a few easy steps! I'll walk you through setting up the Docker projects, creating a custom network, adding an API token, configuring the cert resolver, and more. Plus, I'll show you how to…
Знакомы ли вам такие современные понятия как Agile, Kanban, Scrum? Если совсем не знакомы, то у вас есть отличный шанс погрузиться в эту замечательную прогрессивную и развитую среду современной разработки и управления проектами с помощью бесплатного инструмента Taiga. Впрочем, если знакомы, то шанс тоже есть. Это open source проект для поднятия собственного self-hosted движка по управлению проектами. Условно можно назвать его современным аналогом Redmine или Youtrack. Условно, потому что по возможностям они сильно различаются, но в целом направлены на решение схожих задач.
Название Taiga меня сначала сбило с толку. Я думал, это что-то с корнями из России, Сибири, тайги. Но нет, это продукт испанской компании Kaleidos Ventures. Попробовать её можно разными способами: установить себе self-hosted версию или воспользоваться бесплатным тарифным планом облачной версии. Я покажу, как Тайгу установить у себя. Под капотом там следующий стек технологий:
◽Python - бэк, JavaScript - фронт.
◽СУБД PostgreSQL
◽RabbitMQ
Можно считать, что стандартный набор.
Ставить будем Docker версию из репозитория разработчиков:
В файле
Создаём пользователя. После этого идём по адресу сервера на порт 9000 и логинимся под созданной учёткой. Это вариант тестовой установки. Если будете ставить в прод, то в этой статье даны все необходимые рекомендации по настройке, в том числе по размещению за nginx proxy, использованию https, отправки почты и т.д.
Система прикольная. Выглядит современно, работает шустро. Есть youtube канал, где можно посмотреть, как она вживую выглядит. Раньше вроде бы было какое-то неофициальное приложение для смартфона на Android, но сейчас оно заброшено. Как я понял, интерфейс и так нормально адаптирован под смартфоны, так что большой нужды в приложении нет.
Немного почитал отзывы и статьи о Taiga. В основном положительные. Её называют бесплатной альтернативой Trello или Jira. Проект существует давно. Как минимум с 2014 года есть упоминания.
#управление_проектами
Название Taiga меня сначала сбило с толку. Я думал, это что-то с корнями из России, Сибири, тайги. Но нет, это продукт испанской компании Kaleidos Ventures. Попробовать её можно разными способами: установить себе self-hosted версию или воспользоваться бесплатным тарифным планом облачной версии. Я покажу, как Тайгу установить у себя. Под капотом там следующий стек технологий:
◽Python - бэк, JavaScript - фронт.
◽СУБД PostgreSQL
◽RabbitMQ
Можно считать, что стандартный набор.
Ставить будем Docker версию из репозитория разработчиков:
# git clone https://github.com/kaleidos-ventures/taiga-docker
# cd taiga-docker/
# git checkout stable
В файле
.env
в переменной TAIGA_DOMAIN замените localhost на IP адрес сервера, если запускаете не на своей машине.# ./launch-all.sh
# ./taiga-manage.sh createsuperuser
Создаём пользователя. После этого идём по адресу сервера на порт 9000 и логинимся под созданной учёткой. Это вариант тестовой установки. Если будете ставить в прод, то в этой статье даны все необходимые рекомендации по настройке, в том числе по размещению за nginx proxy, использованию https, отправки почты и т.д.
Система прикольная. Выглядит современно, работает шустро. Есть youtube канал, где можно посмотреть, как она вживую выглядит. Раньше вроде бы было какое-то неофициальное приложение для смартфона на Android, но сейчас оно заброшено. Как я понял, интерфейс и так нормально адаптирован под смартфоны, так что большой нужды в приложении нет.
Немного почитал отзывы и статьи о Taiga. В основном положительные. Её называют бесплатной альтернативой Trello или Jira. Проект существует давно. Как минимум с 2014 года есть упоминания.
#управление_проектами
В заметке к системе управления проектам Taiga в комментариях порекомендовали продукт Plane.so. Я посмотрел, он у меня давно уже в todo листе стоит, ещё с лета. Решил развернуть его и попробовать.
Plane — open-source аналог Jira. Бэкенд написан на Python, фронт на JavaScript. Данные хранит в PostgreSQL, файлы в локальном Minio, кэш в Redis, веб сервер использует Nginx. В общем, стандартный современный стек. Всё это упаковано в Docker, так что установка в несколько простых действий:
И можно идти в веб интерфейс. Настройки можно поменять в
Система выглядит очень приятной, шустрой, удобной. Мне понравился интерфейс. Возможности там стандартные для такого рода продуктов. Создаёте проекты и ведёте их. Фиксируете проблемы, отслеживаете исправление, создаёте Kanban доски и т.д. Попробовать можно в бесплатном тарифном плане в облаке.
Монетизируется вся эта штука облачным сервисом и расширенной версией self-hosted установки. Так что это не поделка энтузиастов, а продукт коммерческой компании. Судя по звездам на гитхабе, Plane весьма популярна. Я так сходу в голове всё не припомню, что знаю, но навскидку мне понравилось Plane больше, чем всё, что я видел раньше. Но сразу уточню, что конкретно я никогда не работал с навороченными и большими установками, поэтому мне чем проще и лаконичнее интерфейс, тем лучше. Тот же YouTrack очень навороченный. Его употеешь настраивать, прежде чем запустишь. Он мне нравится, но функциональность там избыточная для небольших команд.
⇨ Сайт / Исходники
#управление_проектами
Plane — open-source аналог Jira. Бэкенд написан на Python, фронт на JavaScript. Данные хранит в PostgreSQL, файлы в локальном Minio, кэш в Redis, веб сервер использует Nginx. В общем, стандартный современный стек. Всё это упаковано в Docker, так что установка в несколько простых действий:
# git clone --depth 1 -b master https://github.com/makeplane/plane.git
# cd plane
# ./setup.sh
# docker compose -f docker-compose-hub.yml up
И можно идти в веб интерфейс. Настройки можно поменять в
.env
файлах перед запуском. По умолчанию учётка будет captain@plane.so / password123. Система выглядит очень приятной, шустрой, удобной. Мне понравился интерфейс. Возможности там стандартные для такого рода продуктов. Создаёте проекты и ведёте их. Фиксируете проблемы, отслеживаете исправление, создаёте Kanban доски и т.д. Попробовать можно в бесплатном тарифном плане в облаке.
Монетизируется вся эта штука облачным сервисом и расширенной версией self-hosted установки. Так что это не поделка энтузиастов, а продукт коммерческой компании. Судя по звездам на гитхабе, Plane весьма популярна. Я так сходу в голове всё не припомню, что знаю, но навскидку мне понравилось Plane больше, чем всё, что я видел раньше. Но сразу уточню, что конкретно я никогда не работал с навороченными и большими установками, поэтому мне чем проще и лаконичнее интерфейс, тем лучше. Тот же YouTrack очень навороченный. Его употеешь настраивать, прежде чем запустишь. Он мне нравится, но функциональность там избыточная для небольших команд.
⇨ Сайт / Исходники
#управление_проектами