Timur
Или не стоит пытаться делать этим юзером то, что требует повышения прав с помощью sudo
Timur
Тогда никакого become делать не надо
Timur
У юзера должны быть права на это без sudo
𝕀𝕘𝕠𝕣
передавать по ссш рута или привелигерованного пользователя не хотелось бы
Timur
Рута не надо
Timur
Просто дайте права юзеру на рестарт сервиса без sudo
Timur
И уберите все become
Timur
Будет работать тогда
𝕀𝕘𝕠𝕣
а из мат части, тот синтаксис который я написал рабочий?
Timur
Если become убрать - то да
𝕀𝕘𝕠𝕣
сейчас проверю то же самое на руте
⚓️Damir
Можно сделать
raw: sudo systemctl restart nginx
become: yes
И все должно быть ок при текущих настройках
𝕀𝕘𝕠𝕣
Stepan T.
Stepan T.
То есть костыльный
Stepan T.
Связкой FreeIPA + AWS
Stepan T.
Сколько это будет стоить по затратам времени и сил - не знаю.
Stepan T.
Нужные это рут для запуска питона?
Timur
Нет, это права на перезапуск сервисов
𝕀𝕘𝕠𝕣
Timur
Хоть питоном, хоть как
Timur
Stepan T.
Права на перезапуск сервисов ансиблом?
⚓️Damir
𝕀𝕘𝕠𝕣
проверил, с рутом прокатывает, проблема в правах
𝕀𝕘𝕠𝕣
Без sudo
проще тогда через комманд или шелл так понимаю
Timur
дал, через суду)
Ансиблу пофиг ваш sudo. Он копирует питоновскую прогу на хост под своим юзером. Потом запускает ее под ним же. Если есть вызов become, то переключается на рута для запуска. Если указан специальный юзер - переключается на него. И запускает всю директиву от этого юзера. Ансибл не делает просто sudo systemctl. Это не баш.
Timur
𝕀𝕘𝕠𝕣
𝕀𝕘𝕠𝕣
Timur
Питоновский модуль для перезапуска сервиса никакое sudo не вызывает
𝕀𝕘𝕠𝕣
Timur
Это не косяк
Timur
Это просто вы не понимаете, как работает ансибл, и хотите странного :)
Timur
Вам сказали, как можно решить проблему
𝕀𝕘𝕠𝕣
с устаноской рпм через модуль юма прокатило суду
Timur
Либо давайте соответствующие права ансибловому юзеру без sudo
Timur
Либо тому юзеру, на которого делается sudo
Stepan T.
Я буду благодарен за ссылку на объяснения как работает ансибл
Timur
А еще лучше - просто дать права ансибловому юзеру делать sudo на рута
𝕀𝕘𝕠𝕣
Timur
Тогда сделайте другого юзера с соответствующими правами и переключайтесь с помощью become на него
𝕀𝕘𝕠𝕣
Stepan T.
Погодите, ансибл работает из под пользователя, под которым подключился по ссш, с правами, соответственно, этого пользователя
Timur
𝕀𝕘𝕠𝕣
𝕀𝕘𝕠𝕣
Timur
Timur
У юзера, которым вы подключаетесь, нет нужных прав
Timur
Чтобы получить нужный доступ, нужно переключиться на соответствующего юзера с нужными правами
Stepan T.
Если пользователю дать права выполнять sudo systemctl но не дать выполнять, предположим, sudo apt, то пользователь сможет управлять службами, но не сможет ставить софт модулями ансибл?
Timur
Timur
Если у пользователя есть право сделать sudo systemctl, то он просто становится рутом на время исполнения этой команды
Stepan T.
Права на запуск тех или иных программ, я это так формулирую. По сути обе команды - это программы =)
Timur
Но это работает только для этой конкретной команды
Timur
К правам на запуск питона это не относится :)
Stepan T.
Чудесно. То есть если пользователю не давать права на запуск питона из под рута, то ансибл подключающийся к хостам с учётной записью пользователя будет работать в части модулей и программ которые ограниченны теми правилами, которые расписаны в политике sudo?
Stepan T.
Написал конечно как насрал, но эти бесконечные авторизации и права доступа требуют такой вот казёнщины
Timur
Timur
Ансибл - это не баш
𝕀𝕘𝕠𝕣
но нафига тогда асибл агитирует использовать бикам, хотя бикам тоже не сработал с этой окмандой без суду
Timur
Вы неправильно использовали become, потому что
Timur
become нужно использовать для переключения на юзера, у которого есть права на выполнение нужных действий (например, перезапуск сервиса)
Timur
А вы переключались с помощью become на своего же собственного юзера, и удивлялись, что у вас ничего не работает
⚓️Damir
Sasha
Подскажите, пожалуйста, в документации добавление нескольких ключей для пользователя выглядит так:
- name: Set up multiple authorized keys
authorized_key:
user: deploy
state: present
key: '{{ item }}'
with_file:
- public_keys/doe-jane
- public_keys/doe-john
А если есть список пользователей и каждому надо несколько ключей прописать, как тогда код выглядеть будет?
Timur
𝕀𝕘𝕠𝕣
Timur
Почему rpm у вас работает - я не знаю. Может, права у юзера есть соответствующие без sudo
Timur
Питоновский код там не увидишь :)