Очень часто, на новом месте, хочется понимать всю картину (от слова совсем), кто какие ключи, какой пользователь, какой сервер и т.д. Простите за качество, но работает, суть в следующем, скрипт запускается на сервере (python2 без зависимостей), нагло грепает /etc/passwd /etc/shadow и пользовательские authorized_keys. В stdout выдает только тех пользователей у которых присутствует пароль и/или приватный ключ (читай могут войти удалённо):Скрипт: https://gist.github.com/iHile/6a497bc519167abe8f5a1930e2fcc1ed
Копия: https://www.opennet.dev/soft/audit-system-users.pyВ Ansible интегрируется банально просто:
- name: Executing audit-system-users script...
script: "audit-system-users.py --json"
environment:
INVENTORY_HOSTNAME: "{{ inventory_hostname }}"
INVENTORY_GROUPS: "{{ group_names | join(',') }}"
ANSIBLE_DATE_TIME_ISO8601: "{{ ansible_date_time.iso8601 }}"
ANSIBLE_HOST: "{{ ansible_host }}"
INVENTORY_DESCRIPTION: "{{ inventorize_description }}"
args:
executable: "{{ ansible_python.executable }}"
register: audit_system_users_runПредложенный вывод можно скармливать в ELK и получить довольно чёткую картину происходящего.
p.s. Обратите внимание, что никаких штук вроде LDAP/FREEIPA - не нужно, утилита самодостаточно грепает активных пользвователей и выдает в stdout/json
URL: https://gist.github.com/iHile/6a497bc519167abe8f5a1930e2fcc1ed
Обсуждается: http://www.opennet.dev/tips/info/3133.shtml
А что дальше с этой информацией делать? Если у тебя 1000 хостов и каша на них? Какая задача решалась, можно поподробнее?
Ну увидел лишние учетки, сделал через ансамбль userdel, мало ли кому там какой доступ в прошлом давали, очень полезная штука, автору спасибо!
Более того - если еще и предыдущие ansible-писатели, например, поначертили кучу всего на тему развертывания, а на тему корректного удаления ничего не сделали своих развертываний ничего не сделали, и поди разбери к чему приведет простой userdel.
У автора большие проблемы с языком. И не только русским...
Простите, в школе до 8 класса учился, дальше терпеть этот бред не смог.А суть простая - в Кибане оч просто расправляться с большими объемами документов ( агрегации оч помогают ). Пару дашбордов, пару правильных фильтра - и у тебя на руках отчет, кто где, когда.
p.s. простите за могучий, тройка у меня по нему была :'\
А вот тут можно поплакать с моего Русизмаhttps://github.com/iHile/InventoriZE
(сборная роль, хосты, пакеты, юзеры )
Вот набрали Вы (регулярно) такой статистики и сразу видно, когда уязвимый пакет/юзер появился, а главное где :)
Попробуй читать книги на русском языке, помогает.