Sftp搭建與配置

2021-10-24 15:21:50 字數 2656 閱讀 6794

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。

2.1檢視openssl的版本

ssh -v
###使用ssh –v命令來檢視openssh的版本,版本必須大於4.8p1,低於這個版本需要公升級。

2.2建立sftp組

groupadd

sftp

2.3建立乙個sftp使用者,使用者名為mysftp,密碼為mysftp

useradd –g sftp –s /bin/false mysftp //該使用者不能通過sshd登陸到系統

passwd mysftp

2.3sftp組的使用者的home目錄統一指定到/data/sftp下,按使用者名稱區分,這裡先新建乙個mysftp目錄,然後指定mysftp的home為/data/sftp/mysftp

mkdir -p /data/sftp/mysftp

usermod –d /data/sftp/mysftp mysftp

2.4配置sshd_config

文字編輯器開啟/etc/ssh/sshd_config

vi /etc/ssh/sshd_config
找到如下這行,用#符號注釋掉。

# subsystem      sftp    /usr/libexec/openssh/sftp-server
在檔案最後面新增如下幾行內容,然後儲存。

subsystem       sftp    internal-sftp
###配置乙個外部子系統(例如,乙個檔案傳輸守護程序)。僅用於ssh-2協議。值是乙個子系###統的名字和對應的命令列(含選項和引數)。比如"sftp /usr/libexec/openssh/sftp-server"。,###這裡配置為內部的

match group sftp
#限定只有sftp組的才能訪問

chrootdirectory /data/sftp/%u
###設定屬於使用者組sftp的使用者訪問的根資料夾

forcecommand    internal-sftp
###強制執行這裡指定的命令而忽略客戶端提供的任何命令。這個命令將使用使用者的登入###shell執行(shell -c)。這可以應用於 shell 、命令、子系統的完成,通常用於 match 塊中。###這個命令最初是在客戶端通過 ssh_original_command 環境變數來支援的。

allowtcpforwarding no
###是否允許tcp**,預設值為"yes", 禁止tcp**並不能增強安全性,除非禁止了使用者###對shell的訪問,因為使用者可以安裝他們自己的**器。

x11forwarding no
###是否允許進行 x11 **。預設值是"no",設為"yes"表示允許。如果允許x11**並且sshd(8)**的顯示區被配置為在含有萬用字元的位址(x11uselocalhost)上監聽。那麼將可能有額外的資訊被洩漏。由於使用x11**的可能帶來的風險,此指令預設值為"no"。需要注意的是,禁止x11**並不能禁止使用者**x11通訊,因為使用者可以安裝他們自己的**器。

如果啟用了 uselogin ,那麼x11**將被自動禁止。

2.5設定chroot目錄許可權

chown root:sftp /data/sftp/mysftp

chmod 755 /data/sftp/mysftp

2.6建立sftp使用者登入後可寫入的目錄

照上面設定後,在重啟sshd服務後,使用者mysftp已經可以登入。但使用chroot指定根目錄後,根應該是無法寫入的,所以要新建乙個目錄供mysftp上傳檔案。這個目錄所有者為mysftp,所有組為sftp,所有者有寫入許可權,而所有組無寫入許可權。命令如下:

mkdir /data/sftp/mysftp/upload

chown mysftp:sftp /data/sftp/mysftp/upload

chmod 755 /data/sftp/mysftp/upload

2.7重啟sshd服務

service sshd restart

Sftp搭建與配置參考

sftp是secure file transfer protocol的縮寫,安全檔案傳送協議。可以為傳輸檔案提供一種安全的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。sftp 為 ssh的一部分,是一種傳輸檔案至 blogger 伺服器的安全方式。其實在ssh軟體包中,已經包含了乙個叫...

sftp伺服器搭建

在centos 6.6環境使用系統自帶的internal sftp搭建sftp伺服器。開啟命令終端視窗,按以下步驟操作。0 檢視openssh的版本 plain view plain copy ssh v 使用ssh v 命令來檢視openssh的版本,版本必須大於4.8p1,低於的這個版本需要公升...

sftp伺服器搭建

sftp全稱 secure file transfer protocol,與ftp有著一樣的功能和語法。sftp是ssh的一部分,同樣使用22埠。本篇文章以centos系統為例,搭建乙個sftp服務,使用的賬號是 ftpuser,該賬號使用sftp客戶端軟體登入後的根目錄為 opt sftp,該賬號...