Linux之sftp服務


Linux之sftp服務

一、sftp介紹
轉自:
[1]Linux如何開啟SFTP https://www.cnblogs.com/xuliangxing/p/7120205.html
SFTP是Secure File Transfer Protocol的縮寫,安全文件傳送協議。可以為傳輸文件提供一種安全的加密方法。
  SFTP與FTP有着幾乎一樣的語法和功能。
  SFTP為SSH的一部分,是一種傳輸檔案至Blogger伺服器的安全方式。其實在SSH軟件包中,已經包含了一個叫作SFTP(Secure File Transfer Protocol的安全文件傳輸子系統,SFTP本身沒
有單獨的守護進程,它必須使用SSHD守護進程(端口號默認是22)來完成相應的連接操作,所以從某種意義上來說,SFTP並不像一個服務器程序,而更像是一個客戶端程序。
  SFTP同樣是使用加密傳輸認證信息和傳輸的數據,所以,使用SFTP是非常安全的。但是,由於這種傳輸方式使用了加密/解密技術,所以傳輸效率比普通的FTP要低得多,如果對網絡安全性要求更高時,
可以使用SFTP代替FTP。

二、開啟關閉sftp
開始SSH服務,就會自動開啟SFTP。關閉SSH服務,也會關閉SFTP。

1. /etc/init.d/sshd start 
2. /etc/init.d/sshd stop

 

三、sftp常用命令
轉自:
[1]sftp常用命令介紹 https://blog.csdn.net/qq_24309787/article/details/80117269
[2]SFTP服務的使用 https://www.cnblogs.com/uestc-mm/p/6365947.html

1.sftp user@ip
   你要用sftp, 當然得登錄到sftp服務器啊,在linux的shell中執行上面的命令后,linux shell會提示用戶輸入密碼,我們就輸入password吧。這樣就成功建立了sftp連接。
2. help
   建立連接后,linux shell中的$編程了sftp>, 這也對。現在執行以下help, 可以看看sftp支持哪些命令。
3. pwd和lpwd
   pwd是看遠端服務器的目錄,即sftp服務器默認的當前目錄。lpwd是看linux本地目錄。
4. ls和lls
   ls是看sftp服務器下當前目錄下的東東, lls是看linux當前目錄下的東東。
5. put a.txt
   這個是把linux當前目錄下的a.txt文件上傳到sftp服務器的當前目錄下。
   put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/
   這條語句將把本地/home/fuyatao/downloads/目錄下的linuxgl.pdf文件上傳至遠程主機/var/www/fuyatao/ 目錄下。
6. get b.txt
   這個是把sftp服務器當前目錄下的b.txt文件下載到linux當前目錄下。 
   get /var/www/fuyatao/index.php /home/fuyatao/
   這條語句將從遠程主機的/var/www/fuyatao/目錄下將index.php下載到本地/home/fuyatao/目錄下。
7. !command
   這個是指在linux上執行command這個命令, 比如!ls是列舉linux當前目錄下的東東, !rm a.txt是刪除linux當前目錄下的a.txt文件。
   這個命令非常非常有用, 因為在sftp> 后輸入命令, 默認值針對sftp服務器的, 所以執行rm a.txt刪除的是sftp服務器上的a.txt文件, 而非本地的linux上的a.txt文件。
8. exit和quit
   退出。
總之,連接后,有一個help命令,足矣足矣。

 

四、sftp服務配置
轉自:
[1]Linux下sftp服務配置 https://www.cnblogs.com/huangyanqi/p/11304257.html
[2]linux如何搭建sftp服務器 https://www.cnblogs.com/reachos/p/11157329.html
sftp服務配置步驟:
(1)創建sftp用戶組

groupadd sftp

(2)創建ftp用戶

useradd -g sftp -s /sbin/nologin -M Tom
passwd Tom

(3)創建Tom家目錄並指定
         注釋:給家目錄更改屬主並授權家目錄屬主必須是root,權限可以是755或者750

mkdir /opt/data -p
usermod -d /opt/data Tom
chown root:root /opt/data
chmod 755 /opt/data

(4)創建可寫目錄

mkdir /opt/data/file -p
chown Tom:sftp /opt/data/file

(5)編輯配置文件/etc/ssh/sshd_config

注釋掉X11Forwarding yes 這句話,大概在101行
注釋掉Subsystem sftp /usr/libexec/openssh/sftp-server 這句話,大概在132行

並在文件末尾添加如下語句:
Subsystem sftp internal-sftp
Match User Tom
ChrootDirectory /opt/data
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no

systemctl restart sshd

(6)驗證

systemctl restart sshd
sftp Tom@127.0.0.1

  

五、附加
1、安裝、卸載ftp服務
[1]Linux中安裝,卸載ftp|sftp服務 http://www.jh-floor.com/fuwuqijiaocheng/Linux/489.html
sftp采用的是ssh加密隧道,安裝性方面較ftp強,而且依賴的是系統自帶的ssh服務,不像ftp還需要額外的進行安裝

安裝、卸載ftp服務:
   安裝vsftpd軟件 
      rpm -qa |grep vsftpd #檢測是否安裝了vsftpd軟件
      yum install vsftpd -y #安裝ftp服務
   啟動關閉服務:
      service vsftpd start #啟動ftp服務
      service vsftpd stop #關閉ftp服務
      service vsftpd restart #重啟ftp服務
   卸載ftp服務
      rpm -qa |grep vsftp #查看vsftpd軟件版本
      service vsftpd stop #先關閉ftp服務
      rpm -e 版本名稱 #卸載vsftpd軟件

2、java實現SFTP多文件上傳,刪除
[1]SFTP多文件上傳,刪除 https://www.cnblogs.com/future-eye/p/8194544.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM