Shell
sudo -i 在 ssh 中使用密碼
我想寫一個腳本來連接伺服器,這將增加權限。現在我使用帶有 的腳本
expect
,但我想改變它。這是我嘗試實現這一目標的一種方式:ssh host -t 'echo "passowrd" | sudo -S echo; sudo -i'
密碼是否保存在伺服器的命令歷史記錄中?我找不到這些命令的任何記錄:
ssh host -t 'ls;echo $SHELL;history;bash -l'
此命令顯示 ls 命令和“/bin/bash”的結果。
使用 sudoers(visudo 或將配置放入 /etc/sudoers.d)為使用者提供無需密碼即可執行給定命令的權限似乎是更好的方法。
如果您不使用互動式方式(僅遠端執行而不是登錄),則不會在 bash 歷史記錄中創建條目。要訪問 bash 的歷史,您需要使用以下範例:
ssh host "cat .bash_history"
但是您不會從遠端執行中找到任何條目。