簡體   English   中英

phpseclib使用sftp - ssh連接到localhost

[英]phpseclib connect to localhost using sftp - ssh

我正在使用phpseclib( https://github.com/phpseclib/phpseclib ),我遇到了一個我不知道如何解決的問題。

所以基本上我想使用PHP通過SSH連接到運行腳本的同一台服務器來執行一些SFTP事務。

我在命令行上嘗試了ssh localhost ,它使用我的SSH密鑰對登錄。

我實現了phpseclib從/向遠程服務器下載/上傳文件。 現在我正在為我編寫的代碼編寫單元測試。 但是,我無法模擬SFTP類,因為需要為每個連接啟動對象,有沒有辦法測試我編寫的函數,基本上只是一個文件下載和處理數據函數。

我猜:你的~/.ssh/id_rsa文件是與~/.ssh/authorized_keys公鑰對應的~/.ssh/authorized_keys 因此,當您嘗試使用ssh localhost登錄時,它實際上並沒有在沒有身份驗證的情況下登錄您 - 它使用公鑰登錄但您卻沒有意識到。

其他一些不太可能的可能性:

  1. 您已安裝ssh-agent並且正在使用它而未實現它。
  2. 您使用基於主機的身份驗證進行身份驗證(phpseclib不支持)

執行ssh -v localhost ,然后發布它說的內容可能會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM