GNU/Linux >> Znalost Linux >  >> Linux

Ansible:sudo bez hesla

Není možné, že jde o konfiguraci vašeho serveru. Ujistěte se, že je sudo povoleno pro uživatele, který ansible používá bez hesla.

  1. Chcete-li to provést, přihlaste se k serveru
  2. Otevřete soubor sudoers pomocí sudo visudo
  3. Ujistěte se, že máte řádek podobný tomuto:centos ALL=(ALL) NOPASSWD:ALL
  4. Nahraďte centos s vaším uživatelem
  5. Uložte soubor

Můžete to zkusit ze samotného serveru spuštěním:

sudo -u [yourusername] sudo echo "success"

Pokud to funguje, mělo by to fungovat i z ansible.


Ve výchozím nastavení ansible spouští sudo s příznaky:-H -S -n stát se rootem. Kde --non-interactive by byl odpovídající dlouhý tvar pro volbu -n . Zdá se, že tato volba způsobí, že sudo vrátí chybovou zprávu, aniž by se pokusilo nechat ověřovací moduly, aby udělaly svou věc.

Podařilo se mi obejít chybu hesla vytvořením ~/.ansible.cfg obsahující řádky, jak je uvedeno níže, pro nejrelevantnější verzi ansible.

ansible 2.4

[defaults]
sudo_flags = --set-home --stdin

ansible 2.9

[sudo_become_plugin]
flags = -H -S

To stačilo alespoň na to, aby pam_ssh_agent_auth.so mohl běžet a ověřit mě.

Před verzí 2.8 funguje výše uvedený příklad, novější než 2.8 vyžaduje druhý příklad. Dokumentaci pro konfiguraci nového stylu lze nalézt v uživatelské příručce Ansible.


Linux
  1. Ssh – Potřebujete Tty ke spuštění sudo, pokud mohu sudo bez hesla?

  2. Jak předat heslo do su/sudo/ssh bez přepsání TTY?

  3. Nainstalovat emacs bez sudo?

  1. Spusťte ifconfig bez sudo

  2. Je nejisté mít ansible uživatele se sudo bez hesla?

  3. Jak vzdáleně spustit příkaz ssh a příkaz sudo bez hesla

  1. Jak spustit konkrétní program jako root bez výzvy k zadání hesla?

  2. Povolit uživateli používat sudo bez hesla?

  3. Příkaz Sudo po dlouhém spánku Volejte bez opětovného vyzvání hesla Sudo?