溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下如何配置SFTP服務環(huán)境

發(fā)布時間:2021-09-26 15:34:09 來源:億速云 閱讀:151 作者:iii 欄目:系統(tǒng)運維

這篇文章主要介紹“Linux下如何配置SFTP服務環(huán)境”,在日常操作中,相信很多人在Linux下如何配置SFTP服務環(huán)境問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Linux下如何配置SFTP服務環(huán)境”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

SFTP
sftp是Secure File Transfer Protocol的縮寫,安全文件傳送協(xié)議。可以為傳輸文件提供一種安全的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。SFTP 為 SSH的一部分,是一種傳輸檔案至 Blogger 伺服器的安全方式。其實在SSH軟件包中,已經(jīng)包含了一個叫作SFTP(Secure File Transfer Protocol)的安全文件傳輸子系統(tǒng),SFTP本身沒有單獨的守護進程,它必須使用sshd守護進程(端口號默認是22)來完成相應的連接操作,所以從某種意義上來說,SFTP并不像一個服務器程序,而更像是一個客戶端程序。SFTP同樣是使用加密傳輸認證信息和傳輸?shù)臄?shù)據(jù),所以,使用SFTP是非常安全的。但是,由于這種傳輸方式使用了加密/解密技術(shù),所以傳輸效率比普通的FTP要低得多,如果您對網(wǎng)絡安全性要求更高時,可以使用SFTP代替FTP。

PS:FTP與SFTP的區(qū)別
FTP是文件傳輸協(xié)議。在網(wǎng)站上,如果你想把文件和人共享,最便捷的方式莫過于把文件上傳到FTP服務器上,其他人通過FTP客戶端程序來下載所需要的文件。
FTP進行文件傳輸需要通過端口進行。一般所需端口為:
1.控制鏈路—TCP端口21??刂破鞫?。用于發(fā)送指令給服務器以及等待服務器響應。
2.數(shù)據(jù)鏈路---TCP端口20。數(shù)據(jù)傳輸端口。用來建立數(shù)據(jù)傳輸通道的。主要用來從客戶向服務器發(fā)送一個文件、從服務器向客戶發(fā)送一個文件、從服務器向客戶發(fā)送文件或目錄列表。
 
FTP為了適應不同的網(wǎng)絡環(huán)境,支持主動連接和被動連接兩種模式。這兩種模式都主要針對數(shù)據(jù)鏈路進行的,跟控制鏈路無關(guān)。
 
FTP的安全隱患:
一、FTP服務器軟件漏洞。
二、明文口令。
三、FTP旗標。
四、通過FTP服務器進行端口掃描。
五、數(shù)據(jù)劫持。
 
FTP的安全策略:
一、使用較比安全的系統(tǒng)和FTP服務軟件。
二、使用密文傳輸用戶名和口令。
三、更改服務軟件的旗標。
四、加強協(xié)議安全性。
 
為非SSH用戶配置SFTP環(huán)境
SFTP是Secure File Transfer Protocol的縮寫,是安全文件傳送協(xié)議。可以為傳輸文件提供一種安全的加密方法。跟ftp幾乎語法功能一樣。

步驟:1 創(chuàng)建組

代碼如下:


[root@localhost ~]# groupadd  sftp_users


步驟:2 分配附屬組(sftp_users)給用戶

如果用戶在系統(tǒng)上不存在,使用以下命令創(chuàng)建( LCTT 譯注:這里給用戶指定了一個不能登錄的 shell,以防止通過 ssh 登錄):

代碼如下:


[root@localhost ~]# useradd  -G sftp_users  -s /sbin/nologin  jack
[root@localhost ~]# passwd jack

對于已經(jīng)存在的用戶,使用以下usermod命令進行修改:

代碼如下:


[root@localhost ~]# usermod –G sftp_users  -s /sbin/nologin  jack


注意:如果你想要修改用戶的默認家目錄,那么可以在useradd和usermod命令中使用‘-d’選項,并設置合適的權(quán)限。

步驟:3 現(xiàn)在編輯配置文件 “/etc/ssh/sshd_config”

代碼如下:


# vi /etc/ssh/sshd_config
#comment out the below line and add a line like below
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
# add Below lines  at the end of file
Match Group sftp_users
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp

此處:

Match Group sftp_users – 該參數(shù)指定以下的行將僅僅匹配sftp_users組中的用戶
ChrootDirectory %h – 該參數(shù)指定用戶驗證后用于chroot環(huán)境的路徑(默認的用戶家目錄)。對于用戶 Jack,該路徑就是/home/jack。
ForceCommand internal-sftp – 該參數(shù)強制執(zhí)行內(nèi)部sftp,并忽略任何~/.ssh/rc文件中的命令。
重啟ssh服務

代碼如下:


# service sshd restart


步驟:4 設置權(quán)限:

代碼如下:


[root@localhost ~]# chmod 755 /home/jack
[root@localhost ~]# chown root /home/jack
[root@localhost ~]# chgrp -R sftp_users /home/jack

如果你想要允許jack用戶上傳文件,那么創(chuàng)建一個上傳文件夾,設置權(quán)限如下:

代碼如下:


[root@localhost jack]# mkdir /home/jack/upload
[root@localhost jack]# chown jack. /home/jack upload/

步驟:5 現(xiàn)在嘗試訪問系統(tǒng)并進行測試

嘗試通過ssh訪問系統(tǒng)
Linux下如何配置SFTP服務環(huán)境

正如下圖所示,用戶jack通過SFTP登錄,而且因為chroot環(huán)境不能切換目錄。
Linux下如何配置SFTP服務環(huán)境

現(xiàn)在進行上傳和下載測試,如下圖:
Linux下如何配置SFTP服務環(huán)境

正如上圖所示,jack用戶的上傳下載功能都工作得很好。

到此,關(guān)于“Linux下如何配置SFTP服務環(huán)境”的學習就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI