如何使用 SSH 從 aws 伺服器下載檔案?

如何使用 SSH 從 aws 伺服器下載檔案?

環境:遠端:AWS - RHEL 7.2 本機:Ubuntu 16.04

我直接使用 .pem 檔案透過 SSH 連接到 AWS 盒子進行身份驗證,大致如下:

ssh -i /home/<user>/<path>/<serverkey>.pem ec2-user@ec2-<awsserver>.us-west-2.compute.amazonaws.com

我想做的只是下載一個不屬於 root 用戶、而是由另一個用戶擁有的文件,因此通常的 scp 魔法無法輕易發揮作用。

有什麼建議麼?

答案1

就我個人而言,我會調查為什麼sftpscp不起作用。

技術上你可以這樣做:

ssh -t user@host 'cat /path/to/file' > out.file

這可能不是產生一個相同的文件,但可能足以滿足您的需求。

例如,我的測試案例傳輸產生了一個帶有 CRLF (dos) 行終止符的文件,而原始文件有 LF (unix) - 老實說,我不知道為什麼。文件的其餘部分是相同的。也沒有測試二進位。

測試是從 Linux 到 FreeBSD 進行的。

答案2

 ssh — OpenSSH SSH client (remote login program)
 scp — secure copy (remote file copy program)
 sftp — secure file transfer program

使用 scp 或 sftp。用法範例;

scp [email protected]:/home/ec2-user/.bashrc download-bashrc.txt

所有三個都與 ssh 守護程序一起使用。

ps,要取得其他使用者的文件,請確保您的使用者俱有該文件的讀取權限(chmod/chown,或將檔案複製到您使用者的家中)。

相關內容