Exécutez le script bash en tant que sudo de Windows sans interaction

J'ai besoin d'exécuter un script bash en tant que sudo sur une machine linux à distance de TeamCity s'exécutant sur une boîte Windows. Je peux exécuter le script bien de la ligne cmd en utilisant plink, mais je suis invité à find un mot de passe. Je dois être en mesure de le faire sans avoir été invité à entrer un mot de passe pour exécuter à partir de teamcity.

Quelles sont mes options?

3 Solutions collect form web for “Exécutez le script bash en tant que sudo de Windows sans interaction”

Vous devez éditer la configuration sudo sur l'hôte que vous voulez exécuter le script. Exécutez visudo tant que root et ajoutez une ligne comme celle-ci:

USERNAME ALL=(ALL) NOPASSWD: ALL

Remplacez USERNAME par l'user avec USERNAME vous souhaitez exécuter le script. Cela devrait permettre à l'user d'utiliser sudo sans entrer le mot de passe. Vous voudrez peut-être limiter l'utilisation de sudo aux commands dont vous avez réellement besoin. Regardez dans les sudoers en utilisant visudo pour des exemples comment y parvenir.

Si les deux systèmes sont sécurisés, vous pouvez utiliser quelque chose comme ceci:

 echo 'sudo_password' | sudo -S command 

Cette option doit être utilisée avec précaution car elle utilise le mot de passe en clair et d'autres users connectés à cette machine peuvent le voir.

Une option est de permettre l'access ssh directement au count racine de la machine. Vous devez verrouiller ceci avec une key privée, et probablement protégée par mot de passe pour cette key. Ajoutez quelque chose comme le suivant à votre sshd_config:

 PermitRootLogin yes Match User root PasswordAuthentication no 

Si vous parcourez cette route, vous pouvez faire fonctionner cette key sur le script de command spécifique indépendamment de ce qui a été spécifié en ajoutant la command="" dans le file ~ root / authorized_hosts, par exemple

 command="/root/myscript" ssh-rsa AAAB3NzaC1yc2EAAAABIwAAADV4//KSz... 
  • Laissez les users regrouper "sudo -u username chown"
  • ifdown em1 Les users ne peuvent pas contrôler ce périphérique. Autoriser les users à contrôler le périphérique em1
  • Confusing e-mail related to sudo
  • Donner l'access des users non root pour démarrer le service mysqld
  • "L'user n'est pas dans le file sudoers" malgré l'appartenance de l'user à la roue de groupe
  • passer un mot de passe pour sudo su
  • Comment puis-je créer un user "su" uniquement (sans SSH ou SFTP) et limiter qui peut "su" dans ce count dans RHEL5?
  • Enregistrez toutes les commands exécutées par les administrateurs sur les servers de production
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.