2015-12-10 65 views
2

我使用privateKey身份驗證配置了項目。我有服務器和一個節點,我可以在其中運行所有操作,而不需要sudo。在節點上,我有用戶測試,誰可以用sudo運行命令。我正在使用此用戶從節點上的服務器運行作業。當我運行作業時,我從節點獲得響應,我需要輸入用戶測試的密碼。在rundeck中有配置,允許自動執行此過程。這裏是我的project.properties文件的外觀:Rundeck sudo-prompt-pattern

#Project Test configuration, generated 
#Tue Dec 08 10:52:45 UTC 2015 
project.name=Test 
resources.source.1.config.requireFileExists=false 
project.ssh-authentication=privateKey 
resources.source.1.config.includeServerNode=true 
resources.source.1.config.generateFileAutomatically=true 
resources.source.1.config.format=resourcexml 
resources.source.1.config.file=/home/vagrant/projects/Test/etc/resources.xml 
project.ssh-keypath=/opt/test/keys/test_prv_key 
project.description=Test project 
resources.source.1.type=file 
sudo-command-enabled=true 
sudo-password-storage-path=/home/vagrant/var/storage/content/keys/test.password 
sudo-prompt-pattern='^\[sudo\] password for .+:.*' 

的問題是,rundeck不匹配sudo命令和連接模式在三分詢問密碼後丟棄。

Upd。 沒有找到解決方案,因此給用戶sudo訪問沒有密碼(NOPASSWD在sudoers中)

+0

這個問題如何與正則表達式下面的配置? – NirMH

+0

http://rundeck.org/docs/plugins-user-guide/ssh-plugins.html#sudo-password-as-a-job-option比「sudo-password-storage」簡單得多。試試看 –

+1

sudo-password-storage沒有問題,但對密碼提示有反應 –

回答

0

我遇到了類似的問題,並試圖的我放棄了在文檔中指定的配置選項,每一個組合後使用這個技巧來代替:

echo @[email protected] | sudo -S my_command 
1

嘗試運用在「/etc/rundeck/project.properties」

project.sudo-command-enabled=true 
    project.sudo-command-pattern=^sudo$