![](/img/trans.png)
[英]PHP Connect over ssh with public key and switch user to execute commands
[英]Find if current user's public SSH key is authorized for SSH on remote host using PHP or Bash
我需要一個PHP腳本才能在遠程系統上執行腳本。
在遠程系統上授權當前用戶的地方,它的工作效果很好。
但是,在運行腳本之前,我想檢查本地系統上的公鑰是否在遠程系統上的authorized_keys
文件中得到了authorized_keys
。
有沒有辦法做到這一點? 我試着執行這樣的事情:
ssh -o ConnectTimeout=5 -o PubkeyAuthentication=yes -o PasswordAuthentication=no -o KbdInteractiveAuthentication=no -o BatchMode=yes -o ChallengeResponseAuthentication=no host.address.com 2>&1 | grep "Permission denied"
但只要身份驗證成功,它就會掛起控制台。
您可以使用如下命令並獲取退出代碼:
ssh -q host exit
這將與主機host
聯系並執行命令exit
。 返回代碼0表示一切正常
如果要獲取退出代碼,請在ssh
之后執行
EXIT_CODE=$?
然后檢查變量
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.