最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

linux網(wǎng)絡(luò)服務(wù)搭建sftp指南

 更新時(shí)間:2026年06月13日 10:25:23   作者:635  
這篇文章主要介紹了linux網(wǎng)絡(luò)服務(wù)搭建sftp全過程,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

定義

SFTP(SSH File Transfer Protocol)即 SSH 文件傳輸協(xié)議。

它是一種安全的文件傳輸協(xié)議,運(yùn)行在 SSH(Secure Shell)協(xié)議之上,利用 SSH 通道來提供安全的文件傳輸服務(wù)。安全特性

加密傳輸

SFTP 對傳輸?shù)臄?shù)據(jù)進(jìn)行加密,包括文件名、文件內(nèi)容、目錄結(jié)構(gòu)等所有信息。這可以防止數(shù)據(jù)在網(wǎng)絡(luò)傳輸過程中被竊取或篡改。

例如,當(dāng)在兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)之間傳輸敏感的商業(yè)文件或者用戶隱私數(shù)據(jù)時(shí),加密機(jī)制能確保數(shù)據(jù)安全。

基于 SSH 認(rèn)證:它依賴 SSH 的認(rèn)證機(jī)制,如使用公鑰 - 私鑰對或者用戶名 / 密碼組合進(jìn)行身份驗(yàn)證。這意味著只有通過認(rèn)證的用戶才能建立 SFTP 連接并進(jìn)行文件傳輸。

例如,系統(tǒng)管理員可以通過配置 SSH 公鑰認(rèn)證,為特定用戶提供更安全的訪問方式來傳輸文件。

工作原理

SFTP 客戶端與服務(wù)器建立 SSH 連接后,通過該連接進(jìn)行文件傳輸操作。SSH 協(xié)議負(fù)責(zé)提供安全的通信通道,包括對傳輸?shù)臄?shù)據(jù)進(jìn)行加密和完整性檢查。

在這個(gè)通道基礎(chǔ)上,SFTP 協(xié)議規(guī)定了文件傳輸相關(guān)的操作,如文件的上傳(put 操作)、下載(get 操作)、目錄瀏覽、文件刪除、重命名等操作。

從技術(shù)層面講,當(dāng)客戶端發(fā)起一個(gè) SFTP 請求時(shí),SSH 服務(wù)器會(huì)創(chuàng)建一個(gè)子進(jìn)程來處理這個(gè)請求,這個(gè)子進(jìn)程專門負(fù)責(zé)與客戶端進(jìn)行 SFTP 通信,并且嚴(yán)格遵循 SFTP 協(xié)議來處理文件傳輸事務(wù)。

與 FTP 的對比

安全性:

FTP(File Transfer Protocol)是傳統(tǒng)的文件傳輸協(xié)議,它以明文形式傳輸數(shù)據(jù),包括用戶名、密碼和文件內(nèi)容等。這使得 FTP 在不安全的網(wǎng)絡(luò)環(huán)境中很容易被中間人攻擊,導(dǎo)致信息泄露。而 SFTP 通過加密解決了這個(gè)安全隱患。

例如,在一個(gè)公共無線網(wǎng)絡(luò)環(huán)境中,如果使用 FTP 傳輸銀行賬戶信息相關(guān)的文件,黑客很容易截獲這些數(shù)據(jù);但如果使用 SFTP,數(shù)據(jù)會(huì)被加密,黑客截獲的數(shù)據(jù)將是無法解讀的密文。

連接方式:

FTP 使用兩個(gè)獨(dú)立的連接,一個(gè)用于傳輸控制信息(如命令),另一個(gè)用于傳輸數(shù)據(jù)。這種方式在防火墻環(huán)境下可能會(huì)遇到問題,因?yàn)榉阑饓赡軙?huì)阻止其中一個(gè)連接。

SFTP 只使用一個(gè) SSH 連接來傳輸控制信息和數(shù)據(jù),更容易通過防火墻,減少了因防火墻設(shè)置導(dǎo)致的連接問題。

應(yīng)用場景

企業(yè)內(nèi)部文件共享和傳輸:企業(yè)內(nèi)部網(wǎng)絡(luò)中,不同部門之間需要安全地共享文件,如財(cái)務(wù)數(shù)據(jù)、設(shè)計(jì)文檔等。SFTP 提供了一個(gè)安全可靠的方式,確保數(shù)據(jù)在傳輸過程中的保密性和完整性。

服務(wù)器管理和維護(hù):系統(tǒng)管理員可以使用 SFTP 從遠(yuǎn)程服務(wù)器下載日志文件進(jìn)行故障診斷,或者上傳配置文件來更新服務(wù)器設(shè)置。例如,當(dāng)管理一個(gè)大型的數(shù)據(jù)中心,管理員可以通過 SFTP 安全地在本地和服務(wù)器之間傳輸系統(tǒng)更新文件。

配置sftp需要的環(huán)境

//創(chuàng)建一個(gè)sftp的一個(gè)認(rèn)證用戶并且設(shè)置密碼

useradd sftp -s /sbin/nologin

passwd sftp

//修改它的主目錄的擁有者和擁有組并賦予權(quán)限

chown root:sftp /home/sftp

chmod 755 /home/sftp

//創(chuàng)建一個(gè)測試用的目錄里面有幾個(gè)文件

mkdir /home/sftp/upload
#在主目錄創(chuàng)建一個(gè)目錄方便搭建完用于測試,這是我upload下的文件
boot.xfsdump      boot_1.xfsdump    command.txt       config.file       english.txt       note.shell        rsyncd.conf.bak   text.edit  

//修改一下sftp的配置文件

vim /etc/ssh/sshd_conf
#我這里是centos7

在配置之前需要把這個(gè)#Subsystem sftp /usr/libexec/openssh/sftp-server給注釋掉,在前面加一個(gè)"#"即可

#把這些配置加到#Subsystem sftp /usr/libexec/openssh/sftp-server改行下面或者文件末尾都可以

#強(qiáng)制執(zhí)行內(nèi)部sftp
Subsystem sftp internal-sftp
#限定只有sftp組的才能訪問
Match Group sftp
#是否允許進(jìn)行 X11 轉(zhuǎn)發(fā)
X11Forwarding no
#是否允許TCP轉(zhuǎn)發(fā)
AllowTcpForwarding no
#設(shè)定屬于用戶組sftp的用戶訪問的根目錄
ChrootDirectory %h
#強(qiáng)制執(zhí)行這里指定的命令而忽略客戶端提供的任何命令
ForceCommand internal-sftp
  • Match Group sftp 這一行是指定以下的子行配置是匹配 sftp 用戶組的。Match user userA,userB 則是匹配用戶。
  • ChrootDirectory /data/sftp/%u 設(shè)定屬于用戶組 sftp 的用戶訪問的根文件夾。%h 代表用戶 home 目錄,%u 代表用戶名。
  • ForceCommand internal-sftp 該行強(qiáng)制執(zhí)行內(nèi)部 sftp,并忽略任何 ~/.ssh/rc 文件中的命令。
  • AllowTcpForwarding no 是否允許 TCP 轉(zhuǎn)發(fā),默認(rèn)值為 "yes", 禁止 TCP 轉(zhuǎn)發(fā)并不能增強(qiáng)安全性,除非禁止了用戶對 shell 的訪問,因?yàn)橛脩艨梢园惭b他們自己的轉(zhuǎn)發(fā)器。
  • X11Forwarding no 是否允許進(jìn)行 X11 轉(zhuǎn)發(fā)。默認(rèn)值是 "no",設(shè)為 "yes" 表示允許。如果允許 X11 轉(zhuǎn)發(fā)并且 sshd(8)代理的顯示區(qū)被配置為在含有通配符的地址(X11UseLocalhost)上監(jiān)聽。那么將可能有額外的信息被泄漏。由于使用 X11 轉(zhuǎn)發(fā)的可能帶來的風(fēng)險(xiǎn),此指令默認(rèn)值為"no"。需要注意的是,禁止 X11 轉(zhuǎn)發(fā)并不能禁止用戶轉(zhuǎn)發(fā) X11 通信,因?yàn)橛脩艨梢园惭b他們自己的轉(zhuǎn)發(fā)器。

//接下來把sshd啟動(dòng)起來即可

systemctl start sshd

連接遠(yuǎn)程服務(wù)器

//遠(yuǎn)程連接然后輸入你剛才為用戶設(shè)置的密碼即可

基本語法:sftp [用戶@]服務(wù)器地址。例如,要以用戶user1的身份連接到服務(wù)器192.168.1.100,可以使用命令sftp user1@192.168.1.100。如果服務(wù)器允許使用 SSH 密鑰認(rèn)證,并且已經(jīng)配置好本地密鑰,可能不需要輸入密碼就能直接連接。如果使用密碼認(rèn)證,會(huì)提示輸入密碼。

端口指定:如果遠(yuǎn)程服務(wù)器的 SFTP 服務(wù)不是使用默認(rèn)的 SSH 端口(默認(rèn)是 22),可以使用-P選項(xiàng)指定端口。例如,服務(wù)器使用端口 2222 提供 SFTP 服務(wù),連接命令可以是sftp -P 2222 user2@192.168.1.200。

sftp> ls
upload  
sftp> cd upload
sftp> ls
boot.xfsdump      boot_1.xfsdump    command.txt       config.file       english.txt       note.shell        rsyncd.conf.bak   text.edit         
sftp> get note.shell /root/
Fetching /upload/note.shell to /root/note.shell
note.shell                                                                                                                                            100%  987   274.1KB/s   00:00    
sftp> lls /root
公共  模板  視頻  圖片  文檔  下載  音樂  桌面  my.sql  note.shell  passwd  rsync.passwd
sftp> get config.file /root/
Fetching /upload/config.file to /root/config.file
config.file                                                                                                                                           100%  210    48.8KB/s   00:00    
sftp> lls /root
公共  模板  視頻  圖片  文檔  下載  音樂  桌面  config.file  my.sql  note.shell  passwd  rsync.passwd
sftp> put my.sql /upload/
Uploading my.sql to /upload/my.sql
my.sql                                                                                                                                                100% 1880   909.5KB/s   00:00    
sftp> ls
boot.xfsdump      boot_1.xfsdump    command.txt       config.file       english.txt       my.sql            note.shell        rsyncd.conf.bak   text.edit         
sftp> rm my.sql 
Removing /upload/my.sql
sftp> ls
boot.xfsdump      boot_1.xfsdump    command.txt       config.file       english.txt       note.shell        rsyncd.conf.bak   text.edit         
sftp> 

基本文件傳輸操作

下載文件:

語法:get [遠(yuǎn)程文件路徑] [本地文件路徑]。

例如,要從遠(yuǎn)程服務(wù)器的/home/user3/data.txt下載文件到本地當(dāng)前目錄,可以使用命令get /home/user3/data.txt。

如果想把文件下載到本地的指定目錄,如/local/downloads,可以使用get /home/user3/data.txt /local/downloads/data.txt。 

上傳文件:

語法:put [本地文件路徑] [遠(yuǎn)程文件路徑]。

例如,要將本地的/local/files/script.sh上傳到遠(yuǎn)程服務(wù)器的/home/user4/scripts目錄下,可以使用命令put /local/files/script.sh /home/user4/scripts/script.sh。

目錄操作

列出遠(yuǎn)程目錄內(nèi)容:

  • 命令:ls。這和在本地使用ls命令類似,用于查看遠(yuǎn)程服務(wù)器當(dāng)前目錄下的文件和目錄。
  • 例如,在連接到遠(yuǎn)程服務(wù)器后,輸入ls,會(huì)顯示當(dāng)前遠(yuǎn)程目錄下的文件名和目錄名列表。如果想查看遠(yuǎn)程指定目錄的內(nèi)容,比如查看/home/user5/documents目錄下的內(nèi)容,可以使用ls /home/user5/documents。 

切換遠(yuǎn)程目錄:

  • 命令:cd。用于在遠(yuǎn)程服務(wù)器的目錄之間進(jìn)行切換。
  • 例如,要從當(dāng)前遠(yuǎn)程目錄切換到/home/user6/backups目錄,可以使用命令cd /home/user6/backups。 

創(chuàng)建遠(yuǎn)程目錄:

  • 命令:mkdir。用于在遠(yuǎn)程服務(wù)器上創(chuàng)建新的目錄。
  • 例如,要在遠(yuǎn)程服務(wù)器的/home/user7目錄下創(chuàng)建一個(gè)名為new_folder的新目錄,可以使用命令mkdir /home/user7/new_folder。
  • 其他操作 

查看當(dāng)前遠(yuǎn)程目錄位置:

  • 命令:pwd。這會(huì)顯示當(dāng)前在遠(yuǎn)程服務(wù)器上所處的目錄路徑。
  • 例如,在連接到遠(yuǎn)程服務(wù)器后,經(jīng)過一系列的目錄切換操作,使用pwd命令可以明確當(dāng)前所在的目錄位置。 

刪除遠(yuǎn)程文件或目錄:

  • 命令:rm用于刪除遠(yuǎn)程文件,rmdir用于刪除遠(yuǎn)程目錄(前提是目錄為空)。
  • 例如,要?jiǎng)h除遠(yuǎn)程服務(wù)器/home/user8/temp目錄下的文件temp_file.txt,可以使用rm /home/user8/temp/temp_file.txt。要?jiǎng)h除遠(yuǎn)程的空目錄/home/user9/empty_folder,可以使用rmdir /home/user9/empty_folder。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Linux下如何啟動(dòng)Oracle命令

    Linux下如何啟動(dòng)Oracle命令

    這篇文章主要介紹了Linux下如何啟動(dòng)Oracle命令問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Linux?Shell腳本如何獲取當(dāng)前路徑

    Linux?Shell腳本如何獲取當(dāng)前路徑

    本文介紹了在腳本中獲取當(dāng)前運(yùn)行目錄的方法,通過使用`dirname?$0`、`cd?$(dirname?$0)`和`pwd`命令,可以方便地獲取腳本的絕對路徑,文中還提供了一個(gè)測試示例,驗(yàn)證了該方法的有效性,此外,作者還提到直接使用`pwd`命令也是一種簡單有效的獲取當(dāng)前目錄的方法
    2025-11-11
  • linux系統(tǒng)下如何掛載NTFS移動(dòng)硬盤

    linux系統(tǒng)下如何掛載NTFS移動(dòng)硬盤

    用命令行掛載移動(dòng)硬盤是Linux的基本操作之一,雖然目前有些Linux系統(tǒng)能自動(dòng)加載移動(dòng)硬盤,但有些時(shí)候(比如使用Ubuntu Server或其它Linux系統(tǒng)的時(shí)候)仍然需要手動(dòng)操作,下面這篇文章主要介紹了linux系統(tǒng)下如何掛載NTFS移動(dòng)硬盤,需要的朋友可以參考借鑒。
    2017-01-01
  • 詳解linux 定時(shí)任務(wù) crontabs 安裝及使用方法

    詳解linux 定時(shí)任務(wù) crontabs 安裝及使用方法

    這篇文章主要介紹了linux 定時(shí)任務(wù) crontabs 安裝及使用方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Centos7 SSH登陸慢的問題及解決

    Centos7 SSH登陸慢的問題及解決

    文章描述了CentOS7登錄慢的問題,可能是由于反向驗(yàn)證DNS導(dǎo)致的,解決方案有兩個(gè):禁用DNS解析或停止systemd-logind服務(wù),通過修改sshd_config文件或重啟sshd進(jìn)程可以實(shí)現(xiàn)禁用DNS解析
    2026-04-04
  • Apache服務(wù)器二級域名的完美實(shí)現(xiàn)

    Apache服務(wù)器二級域名的完美實(shí)現(xiàn)

    Apache服務(wù)器二級域名的完美實(shí)現(xiàn) 首先,你的擁有一個(gè)有泛域名解析的頂級域名,例如: domain.com
    2008-10-10
  • Centos虛擬機(jī)上網(wǎng)配置IP方法

    Centos虛擬機(jī)上網(wǎng)配置IP方法

    本篇文章介紹了Centos虛擬機(jī)上網(wǎng)的ip配置問題,詳細(xì)介紹了虛擬機(jī)的網(wǎng)絡(luò)配置問題,感興趣的小伙伴們可以參考一下。
    2016-10-10
  • CentOS 7.2配置Apache服務(wù)httpd(上)

    CentOS 7.2配置Apache服務(wù)httpd(上)

    這篇文章主要為大家詳細(xì)介紹了CentOS 7.2配置Apache服務(wù) httpd上篇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Git 刪除遠(yuǎn)程服務(wù)器文件同時(shí)保留本地文件實(shí)例詳解

    Git 刪除遠(yuǎn)程服務(wù)器文件同時(shí)保留本地文件實(shí)例詳解

    這篇文章主要介紹了Git 刪除遠(yuǎn)程服務(wù)器文件同時(shí)保留本地文件實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • 阿里云 ubuntu16.04搭建IPSec服務(wù)

    阿里云 ubuntu16.04搭建IPSec服務(wù)

    IPSec是一組基于網(wǎng)絡(luò)層的,應(yīng)用密碼學(xué)的安全通信協(xié)議族,這篇文章主要介紹了阿里云 ubuntu16.04搭建IPSec服務(wù),需要的朋友可以參考下
    2019-11-11

最新評論

余姚市| 武威市| 高雄县| 师宗县| 云梦县| 庄河市| 惠东县| 龙州县| 祁阳县| 彭泽县| 靖安县| 通城县| 苍梧县| 神木县| 南陵县| 双桥区| 江安县| 韶山市| 大丰市| 政和县| 潜山县| 积石山| 万山特区| 辛集市| 娄烦县| 河西区| 辽源市| 综艺| 澄江县| 三门峡市| 延寿县| 平谷区| 汉源县| 阿瓦提县| 沾益县| 霍林郭勒市| 汉川市| 伽师县| 平山县| 临泉县| 金寨县|