萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

Linux SFTP 遠端連線與檔案傳輸完整指令教學

SFTP(SSH File Transfer Protocol)加密傳輸、支援公開金鑰認證,是 FTP 的安全替代方案。本文涵蓋連線參數、上傳下載、批次操作、斷點續傳技巧。

基本連線

# 指定埠口 60001
sftp -oPort=60001 user@192.168.0.254

# 使用 SSH 金鑰
sftp -i ~/.ssh/id_rsa user@host

# 直接帶入指令(非互動)
sftp -b batchfile.txt user@host

常用互動指令

指令說明
get remote.txt local.txt下載單一檔案
put local.txt remote.txt上傳單一檔案
mget *.log下載多檔(支援萬用字元)
mput *.csv上傳多檔
reget file斷點續傳下載
reput file斷點續傳上傳
lcd /local/path切換本地目錄
cd /remote/path切換遠端目錄
lls / lls -l列出本地檔案
ls / ls -l列出遠端檔案
mkdir / rmdir建立/刪除遠端目錄
chmod / chown改權限/擁有者
exit / bye / quit離開

批次檔範例 (batchfile.txt)

lcd /home/user/backup
cd /var/www/backup
mget *.tar.gz
bye

執行:sftp -b batchfile.txt user@host

進階技巧

  • SSH Config 簡化:~/.ssh/config 設定 Host myserver\n HostName 192.168.0.254\n Port 60001\n User root\n IdentityFile ~/.ssh/id_rsa,之後直接 sftp myserver。
  • 掛載為本地檔案系統:sshfs user@host:/remote/path /mnt/remote(需安裝 sshfs),操作如同本地目錄。
  • 限制使用者僅能 SFTP:/etc/ssh/sshd_config 加入 ForceCommand internal-sftp + ChrootDirectory。
copyright © 萬盛學電腦網 all rights reserved