SFTP(Secure File Transfer Protocol,安全文件傳輸協(xié)議)是一種基于可靠數(shù)據(jù)流(data stream),提供文件存取和管理的網(wǎng)絡(luò)傳輸協(xié)議,與 FTP 協(xié)議相比,SFTP 在客戶端與服務(wù)器間提供了一種更為安全的文件傳輸方式,如果你還在使用 FTP 來進(jìn)行文件傳輸,強(qiáng)烈建議切換到更為安全的 SFTP 上來。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的正鑲白網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
常用命令使用:
1.遠(yuǎn)端服務(wù)器當(dāng)前工作目錄
sftp pwd
Remote working directory: /
2.遠(yuǎn)端服務(wù)器切換目錄
sftp cd Directory
3.遠(yuǎn)端服務(wù)器建立目錄
sftp mkdir Directory
以上的命令都是用來操作遠(yuǎn)程服務(wù)器的,如果想要操作本地目錄呢?只需要在每個(gè)命令前添加 l即可
4.顯示本地操作目錄下的文件:
sftp lls
Files
5.使用 ! 可以直接運(yùn)行 Shell 中的指令.
6.從遠(yuǎn)程服務(wù)器拉取文件
sftp get remoteFile [newName] 如果不指定 newName,將使用和遠(yuǎn)程服務(wù)器相同的文件名。
7.從本地上傳文件到服務(wù)器
sftp put File
linux下sftp命令很多人都只是了解了語法卻不知道具體用法,下面由我為大家整理了linux下sftp命令的相關(guān)知識(shí),希望對(duì)大家有幫助!
linux的sftp命令
1.常用登陸方式:
格式:sftp 《user》@《host》
通過sftp連接《host》,端口為默認(rèn)的22,指定用戶《user》。
2.查看sftp支持的命令
使用help命令,查看支持的命令,如:
sftp》help
(其中命令前面有“l(fā)”表示本地執(zhí)行,其他表示在所登錄的遠(yuǎn)程主機(jī)上面執(zhí)行)
3.基本的使用
sftp主要是用來傳輸文件的,包括上傳文件(從本機(jī)到遠(yuǎn)程主機(jī)) ,下載文件(從遠(yuǎn)程主機(jī)到本機(jī))。
(1)文件下載
get [-Ppr] remote [local]
如:get test.cpp 。/Project/
將遠(yuǎn)程當(dāng)前目錄下的文件test.cpp下載到本地當(dāng)前目錄的Project文件夾中。
(2)文件上傳
put [-Ppr] local [remote]
如:put /home/liu/Software/RHEL_5.5\ x86_64.iso /home/xudong/Blog/
將本地/home/liu/Software/目錄下的ios文件傳送到遠(yuǎn)程登陸主機(jī)的/home/xudong/Blog/目錄下。
(3)其他命令
可以使用命令還是有幾個(gè)的,如ls、lls;cd、lcd;pwd、lpwd等。具體查看help輸出吧。
sftp就是secure file transfer program,它基于ssh,用它在兩個(gè)Linux系統(tǒng)間傳遞文檔非常方便。
要使用sftp傳遞文檔,首先應(yīng)該在服務(wù)器端打開ssh服務(wù),如果沒有打開,一般可以通過下面的命令打開:
# /etc/init.d/sshd start
然后就可以在客戶端通過sftp登錄服務(wù)器端進(jìn)行文檔傳遞操作,如下:
$ sftp [-oPort=port_number] username@server_ip[:file1 file2 。。。]
補(bǔ)充:Linux的sftp命令的參數(shù)說明
-o 用來向ssh傳遞參數(shù),比如-oPort=222,會(huì)告訴ssh使用連接服務(wù)器的222端口,而不是默認(rèn)的22端口。這個(gè)在遇到服務(wù)器端把ssh服務(wù)默認(rèn)的22號(hào)端口改變的情況時(shí)會(huì)有用。
后面的file1、file2代表文件名,也可以是一個(gè)目錄。在沒有指定文件時(shí)會(huì)打開一個(gè)交互界面,在交互界面下可以通過命令來傳遞文檔。
如:
$ sftp -o port = 222 user@
Linux的sftp命令的命令說明
在sftp命令的交互界面下,有很多命令可以用,比如:cd、ls、pwd、bye、chmod、chgrp、chown、df、get、help、mkdir等等。當(dāng)然這些命令都是針對(duì)服務(wù)器端的操作,其中一些命令在加l前綴的情況下可以實(shí)現(xiàn)在本地下的操作。比如,lpwd命令會(huì)打印本地當(dāng)前工作目錄(即連接sftp前的當(dāng)前工作目錄)。這些命令中有兩個(gè)是用來交換文檔的,它們是get和put命令,如下:
》 put local_path [remote_path]
》 get remote_path [lcoal_path]
put 命令會(huì)把本地文件或目錄“推”到服務(wù)器端;get命令則把服務(wù)器端文件或目錄“拉”下來。
上面就是Linux使用sftp命令傳輸文件相關(guān)介紹了,相較于ftp而已,sftp命令傳輸文件更加安全,推薦使用sftp命令傳文件。
可以按照如下方式進(jìn)行設(shè)置:
1、創(chuàng)建sftp組,groupadd?sftp,創(chuàng)建完成之后使用cat /etc/group命令組的信息。
2、創(chuàng)建一個(gè)sftp用戶mysftp并加入到創(chuàng)建的sftp組中,同時(shí)修改mysftp用戶的密碼,useradd -g sftp -s /bin/false?mysftp,passwd?mysftp 。
3、新建/data/sftp/mysftp目錄,并將它指定為mysftp組用戶的home目錄,mkdir -p /data/sftp/mysftp,usermod -d /data/sftp/mysftp mysftp。
4、編輯配置文件/etc/ssh/sshd_config,vi /etc/ssh/sshd_config,將如下這行用#符號(hào)注釋掉。
5、設(shè)置Chroot目錄權(quán)限,chown root:sftp /data/sftp/mysftp,chmod 755 /data/sftp/mys。
6、新建一個(gè)目錄供stp用戶mysftp上傳文件,這個(gè)目錄所有者為mysftp所有組為sftp,所有者有寫入權(quán)限所有組無寫入權(quán)限,mkdir?/data/sftp/mysftp/upload,chown mysftp:sftp /data/sftp/mysftp/upload,chmod 755 /data/sftp/mysftp/upload。?
7、關(guān)閉selinux并重啟sshd服務(wù),然后測(cè)試。
8、在其他服務(wù)器上進(jìn)行驗(yàn)證,sftp 用戶名@ip地址。
拓展資料
1、sftp是Secure File Transfer Protocol的縮寫,安全文件傳送協(xié)議??梢詾閭鬏斘募峁┮环N安全的網(wǎng)絡(luò)的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。SFTP 為 SSH的其中一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。
2、其實(shí)在SSH軟件包中,已經(jīng)包含了一個(gè)叫作SFTP(Secure File Transfer Protocol)的安全文件信息傳輸子系統(tǒng),SFTP本身沒有單獨(dú)的守護(hù)進(jìn)程,它必須使用sshd守護(hù)進(jìn)程(端口號(hào)默認(rèn)是22)來完成相應(yīng)的連接和答復(fù)操作,所以從某種意義上來說,SFTP并不像一個(gè)服務(wù)器程序,而更像是一個(gè)客戶端程序。