Domanda

Sto usando Ansible to Script eseguendo un determinato comando ( rosdep ) su un host remoto.Questo comando deve essere eseguito come utente regolare, non root, ma occasionalmente richiede all'utente l'utente per la loro password sudo per ottenere privilegi di root per l'installazione del software.

C'è un modo per istruire Ansible a rispondere a quei prompt della password durante l'esecuzione del comando remoto?Non voglio eseguire l'intero comando con Sudo, quindi l'opzione -K non funziona per questo scopo.

È stato utile?

Soluzione

Considera la modifica del file sudoers in modo che tali comandi specifici siano autorizzati a eseguire sudo senza tale richiesta di password.

il più semplice ma forse non il modo migliore sarebbe quello di usare:

tessa    ALL=NOPASSWD: ALL
.

Il che significa che tutti i comandi possono essere eseguiti tramite sudo senza prompt password.

Un approccio migliore sarebbe quello di capire quali comandi specifici richiedono autorizzazioni su sudo e quindi aggiungerle al file dei sudoers.

Ad esempio:

tessa    ALL=NOPASSWD:/usr/bin/whoami
.

È possibile spedire il file / modello di /etc/sudoers modificato come parte del tuo Playbook Ansible.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top