[lftp] LFTP指令指南|mirror鏡像 – lftp Command Guide

LFTP連線 | 基本操作 | 連線設定 | FTPS| SFTP

Intro

lftp在這年頭還是有機會用到,像被綁架的主機環境僅提供FTP Access。

至於為何使用lftp? 使用過ftp就知道...連folder控制都成問題。

文件:LFTP - the manual page


lftp連線

lftp [-d] [-e cmd] [-p port] [-u user[,pass]] [site]

For example:

lftp www.yourdomain.com -u username,password

也可以先連線至site後再使用login:

lftp www.yourdomain.com
login <user> [<pass>]

基本操作(本地端與遠端) - local & remote directory

ls, !ls

ls
!ls

pwd, lpwd

前綴l為Local端

pwd
lpwd

cd, lcd

前綴l為Local端

cd
lcd

檔案傳輸

put 上傳

put local-filename

pget 下載

pget remote-filename

Mirror 鏡像

針對目前Local端與Remote端Directory做操作:

下載:

mirror

上傳-R:

mirror -R

Exclude

參數說明:

-x RX,   --exclude=RX              exclude matching files
-X GP,   --exclude-glob=GP         exclude matching files
-n, --only-newer                   Only new matching files

略過指定目錄:

mirror --exclude logs/ --exclude reports/

略過符合Pattern檔案:

mirror --exclude-glob *.cvs

連線設定 - SET

指令可以放到~/.lftprc,或直接在命令列追加執行:

lftp www.yourdomain.com -u username,password -e "set ftp:ssl-allow no;"

lftp Certificate verification error

set ftp:ssl-allow no;

How to avoid lftp Certificate verification error?

頻寬限制 - limit-rate

set net:connection-limit 1
set net:limit-rate 0:512000

(bytes per second) 100K means 102400.


FTPS連線

在LFTP使用FTPS建議使用open ftps://指令連線:

open ftps://hostname.ftp
login <username>

ftps://預設port為990

如需設定調整部分(如略過SSL驗證):進入lftp指令後,設定以下script並連入主機:

set ftps:initial-prot "";
set ftp:ssl-force true;
set ftp:ssl-protect-data true;
set ssl:verify-certificate false;
open ftps://hostname.ftp
login <username>

憑證認證問題如: Fatal error: Certificate verification: unable to get local issuer certificate

-e Script用法:

lftp -e "set ssl:verify-certificate false; open ftps://host.name; login username password"

SFTP連線 (應用於含密碼指令登入)

SFTP因為安全性不支援密碼參數,所以使用LFTP來連線SFTP,可以應用在連線指令含密碼情境上:

lftp -e "open sftp://host.name:22; login username password"

Leave a Reply

Your email address will not be published. Required fields are marked *