所以這是一個想法,我只是爲了提高效率就是腳本。我想知道是否可以製作具有sudo權限但不提示密碼的自定義命令(即jello)。我寫了很多需要sudo權限的腳本,不想每次都鍵入它們。我一直在編輯sudoers文件併爲這些文件製作例外。但是如果可能的話,我會非常喜歡,所以我只需在腳本中輸入這個命令,它就可以運行而不需要輸入密碼。定製Sudo命令
Q
定製Sudo命令
2
A
回答
1
一種選擇是在sudoers文件中使用通配符(sudoers manpage)。
注意:您需要採取適當的預防措施有任何這樣的策略,因爲你一定不會知道所有你的時間 提前授權訪問的命令 - some exploits和risks。
如果風險是可以接受你,然後把這樣的事情到您的/etc/sudoers
文件將允許您添加相同形式的新命令,使這些命令的運行不用每次都輸入密碼:
me ALL= NOPASSWD: /home/me/privil_scripts/priviledged_*.sh
確保其他用戶在這個目錄下放入額外的腳本並不容易!保持這種安全的意見最受歡迎。
作爲一個快速測試:
# create a directory with some files inside
cd ~; mkdir nolook; touch nolook/f1; touch nolook/f2
>>> f1 f2
# make it so regular user can't see inside
sudo chmod -R 700 nolook; sudo chown -R root:root nolook
# test
ls nolook
>>> ls: cannot open directory nolook/: Permission denied
現在寫特權&無特權的腳本:
echo "
#!/bin/sh
sudo ls nolook
" > privil_scripts/priviledged_ls.sh
chmod +x !$
echo "
#!/bin/sh
sudo ls nolook
" > privil_scripts/plain_ls.sh
chmod +x !$
和試戴:
privil_scripts/priviledged_ls.sh
>>> f1 f2
privil_scripts/plain_ls.sh
>>> [sudo] password for me:
+0
@ user244985這是否解決了您的問題? – Bonlenfum
+0
是的,它確實,對不起,我還沒有把它標記爲答案。謝謝 – user244985
相關問題
- 1. msysGit sudo-like命令
- 2. Jsch和sudo命令
- 3. sudo命令移動文件
- 4. 與JAVA/shellscripts sudo命令
- 5. Java和sudo命令執行
- 6. Android模擬器命令sudo?
- 7. 管道命令與sudo
- 8. 用sudo運行命令
- 9. PHP Exec Sudo/Exim命令
- 10. 無sudo運行命令
- 11. 木偶清單 - 'sudo'命令?
- 12. 使用sudo運行命令並進入根(sudo -i)並運行命令
- 13. 從控制器調用與sudo的symfony控制檯命令
- 14. 定製cd命令
- 15. 在命令鏈中輸入sudo命令的密碼
- 16. Java ProcessBuilder sudo bash命令的正確命令格式是什麼?
- 17. 如何在sudo命令後執行多個命令
- 18. bash文件中sudo bash和sudo命令的區別是什麼?
- 19. 命令沒有sudo工程,但需要sudo
- 20. JSCH sudo su命令「tty」錯誤
- 21. 運行sudo命令通過ssh
- 22. 從PHP腳本運行「sudo」命令?
- 23. 從R運行sudo的系統命令?
- 24. wget | sudo在Ansible命令中失敗
- 25. PHP:運行linux命令爲sudo?
- 26. 通過CGI運行sudo命令(Python)
- 27. Arch Linux sudo:找不到命令
- 28. 刪除sudo命令的用法
- 29. 在Haskell中運行sudo命令
- 30. 從rake任務中執行sudo命令?
我不是Linuz和我不專家不知道是否有可能 - 但是你認爲你可能需要一個令牌(或者更糟的是,一個明文passwo rd)在腳本中使它成爲可能?我希望你的腳本不適合其他人使用。 – Renan
嘿,腳本只適用於我的電腦。我只是好奇這種可能性。我不想在計算機上面臨巨大的安全風險,這就是爲什麼一個特殊的命令會很好,因爲只有當我看到它時我纔會知道它。什麼是令牌?我在 – user244985
之前沒有聽說過這個詞,您可以設置特定的命令以便無密碼sudo訪問(對特定用戶組)。在'/ etc/sudoers'中,你可以使用'usr ALL = NOPASSWD:/ home/me/bin/custom_ping'這樣的命令來啓用組'usr'的成員來運行通常需要root密碼的'custom_ping'。 – Bonlenfum