2011-11-04 42 views
1

我通常在20〜50次,每天登錄爲超級用戶,一次又一次地鍵入長密碼..我們可以寫一個簡單的bash腳本來自動登錄爲root用戶

我剛纔創建的簡單的bash腳本

#!/bin/bash 

sudo -s 
echo password 

./test

輸出根@本地: 密碼 當我執行它,它就像魅力......但它顯示了我在屏幕上的密碼.....

做一些有什麼其他最好的解決方案......對於這個小問題.......

我希望這不是所有的安全標準的解決方案......可以我們有任何其他解決方案不公開我的密碼.....

+0

你知道的,顯示在屏幕上你的密碼是至少你的p的不是跟隨roblems如果你有一個自動sudoes的shell腳本。希望它是你的用戶所擁有的,不是任何組的可執行文件(或可讀的)。 – Damon

+2

你可以設置sudo不需要密碼 –

回答

1

您可以配置sudo每隔幾分鐘只需要一個密碼。默認值是5分鐘。閱讀sudoers手冊頁和向下滾動到這一點:

timestamp_timeout 
       Number of minutes that can elapse before sudo will ask 
       for a passwd again. The timeout may include a 
       fractional component if minute granularity is 
       insufficient, for example 2.5. The default is 5. Set 
       this to 0 to always prompt for a password. If set to a 
       value less than 0 the user's timestamp will never 
       expire. This can be used to allow users to create or 
       delete their own timestamps via sudo -v and sudo -k 
       respectively. 
3

您可以將echo'd密碼輸入命令。嘗試是這樣的:

echo myPassword | sudo -S 

你可以看得出來這個here更多信息。

問題是,你真的想要你的密碼在shell腳本文件? (只是強調它的一個可怕的想法)

+6

絕對不要這樣做,除非你希望每個人都可以使用ps讀取root密碼 –

+0

同意,只是回答這個問題:P – SuperTron

+0

任何其他的想法來解決這個問題.... .... –

1

是否有一個原因,你不能sudo su -剛剛成爲root用戶,而不是前面加上所有的命令與sudo blah的?

1

只是改變了腳本的所有權根&組SUID位在用戶的權限

CHMOD U = RWS克+ X O + X script123

腳本將root運行對每個用戶

0

簡單的解決方法是使用鑰匙基地認證 使用ssh-copy-id命令從這個tutorial這是安全的