01
查看系統(tǒng)信息
pdsyw@pdsyw1024:~/Desktop$ cat /etc/os-version pdsyw@pdsyw1024:~/Desktop$ uname -a
作用
確認(rèn)當(dāng)前系統(tǒng)平臺(tái)(如統(tǒng)信 UOS)和內(nèi)核架構(gòu)信息(如 ARM64),便于判斷軟件兼容性和安裝策略。

02
安裝pure-ftpd
pdsyw@pdsyw1024:~/Desktop$ sudo apt install pure-ftpd
作用
通過 APT 包管理器安裝 pure-ftpd 服務(wù)端程序,它是一個(gè)輕量、高性能、安全的 FTP 服務(wù)軟件。

03
啟用虛擬用戶支持
pdsyw@pdsyw1024:~/Desktop$ echo "yes" | sudo tee /etc/pure-ftpd/conf/ChrootEveryoneyes pdsyw@pdsyw1024:~/Desktop$ echo "/etc/pure-ftpd/pureftpd.pdb" | sudo tee /etc/pure-ftpd/conf/PureDB/etc/pure-ftpd/pureftpd.pdb
作用
ChrootEveryone=yes:限制用戶只能訪問自己的主目錄,防止跨目錄訪問,提高安全性;
PureDB:指定虛擬用戶使用的數(shù)據(jù)庫路徑,用于虛擬用戶身份驗(yàn)證。

04
創(chuàng)建系統(tǒng)用戶及上傳目錄
pdsyw@pdsyw1024:~/Desktop$ sudo useradd -m ftpuser -s /usr/sbin/nologin pdsyw@pdsyw1024:~/Desktop$ sudo mkdir -p /ftp/uploads pdsyw@pdsyw1024:~/Desktop$ sudo chown -R ftpuser:ftpuser /ftp
作用
ftpuser 是所有虛擬用戶的宿主系統(tǒng)賬號(hào),不允許登錄系統(tǒng);
/ftp/uploads 是虛擬用戶上傳文件的目標(biāo)目錄;
設(shè)置該目錄歸屬為 ftpuser,以確保文件權(quán)限和訪問安全。

05
創(chuàng)建 Pure-FTPd 虛擬用戶
pdsyw@pdsyw1024:~/Desktop$ sudo pure-pw useradd testftp -u ftpuser -d /ftp/uploadsPassword:Enter it again: pdsyw@pdsyw1024:~/Desktop$ sudo pure-pw mkdb
作用
創(chuàng)建一個(gè)名為 testftp 的虛擬 FTP 用戶,綁定到 /ftp/uploads;
虛擬用戶對(duì)應(yīng)的實(shí)際文件訪問由 ftpuser 系統(tǒng)用戶來執(zhí)行;
pure-pw mkdb 命令將虛擬用戶信息寫入數(shù)據(jù)庫文件 /etc/pure-ftpd/pureftpd.pdb。

06
啟用 TLS 加密
pdsyw@pdsyw1024:~/Desktop$ sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \ > -keyout /etc/ssl/private/pure-ftpd.pem \ > -out /etc/ssl/private/pure-ftpd.pem Generating a RSA private key ................................+++++ ........................+++++ writing new private key to '/etc/ssl/private/pure-ftpd.pem' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:ShangHai Locality Name (eg, city) []:ShangHai Organization Name (eg, company) [Internet Widgits Pty Ltd]:pdsyw Organizational Unit Name (eg, section) []:pdsyw Common Name (e.g. server FQDN or YOUR name) []:pdsyw Email Address []:pdsyw@pdsyw.cn
作用
創(chuàng)建自簽名證書用于 TLS 加密;
使 FTP 登錄和傳輸過程加密,防止明文賬號(hào)密碼泄露;
-nodes 表示不加密私鑰,方便服務(wù)自動(dòng)加載。

07
設(shè)置權(quán)限
pdsyw@pdsyw1024:~/Desktop$ sudo chmod 600 /etc/ssl/private/pure-ftpd.pem
作用
確保 TLS 私鑰文件只有 root 可讀,避免被非授權(quán)用戶訪問,從而保障通信安全。

08
生成 DH 參數(shù)
pdsyw@pdsyw1024:~/Desktop$ sudo openssl dhparam -out /etc/ssl/private/pure-ftpd-dhparams.pem 2048 pdsyw@pdsyw1024:~/Desktop$ sudo chmod 600 /etc/ssl/private/pure-ftpd-dhparams.pem
作用
DH 參數(shù)用于 TLS 會(huì)話中密鑰交換的安全性增強(qiáng),生成強(qiáng)度為 2048 位的密鑰交換參數(shù)文件。

09
關(guān)閉pure-ftpd服務(wù)
pdsyw@pdsyw1024:~/Desktop$ sudo systemctl stop pure-ftpd pdsyw@pdsyw1024:~/Desktop$ sudo systemctl disable pure-ftpd
作用
防止系統(tǒng)自帶的默認(rèn)配置干擾后續(xù)自定義配置。我們將通過 systemd 定義一個(gè)新的服務(wù)啟動(dòng)方式。

10
編輯systemd 服務(wù)
pdsyw@pdsyw1024:~/Desktop$ sudo vim /etc/systemd/system/pure-ftpd.service pdsyw@pdsyw1024:~/Desktop$ cat /etc/systemd/system/pure-ftpd.service [Unit] Description=Pure-FTPd FTP Server (with PureDB and TLS) After=network.target [Service] ExecStart=/usr/sbin/pure-ftpd \ -l puredb:/etc/pure-ftpd/pureftpd.pdb \ -j \ -E \ -Y 2 \ -8 UTF-8 \ -p 30000:30050 \ -P 10.211.55.148 Restart=on-failure [Install] WantedBy=multi-user.target
作用
定義了 Pure-FTPd 的運(yùn)行參數(shù)、認(rèn)證方式、加密策略和端口設(shè)置,讓服務(wù)更靈活、受控。

11
啟動(dòng) systemd 服務(wù)
pdsyw@pdsyw1024:~/Desktop$ sudo systemctl enable pure-ftpd.service pdsyw@pdsyw1024:~/Desktop$ sudo systemctl restart pure-ftpd.service pdsyw@pdsyw1024:~/Desktop$ sudo systemctl status pure-ftpd.service
作用
將自定義服務(wù)注冊(cè)為開機(jī)啟動(dòng),并立即啟動(dòng)該服務(wù)。status 用于確認(rèn)是否啟動(dòng)成功。

12
查看ip
pdsyw@pdsyw1024:~/Desktop$ ip a
作用
用于確認(rèn) FTP 服務(wù)器的 IP 地址,客戶端連接時(shí)需要填寫這個(gè)地址。

13
filezilla客戶端下載

14
使用filezilla客戶端登錄

15
確認(rèn)證書

16
連接成功

本教程演示了如何:
在統(tǒng)信 UOS 上部署 Pure-FTPd;
配置虛擬用戶及目錄權(quán)限;
啟用 TLS 加密保障數(shù)據(jù)安全;
使用 systemd 管理服務(wù);
通過 FileZilla 測(cè)試連接;
此文章出處【鵬大圣運(yùn)維】
關(guān)于我們
下載中心
地址:福州市晉安區(qū)福新中路89號(hào)時(shí)代國(guó)際廣場(chǎng)917-918室
閩ICP備18013712號(hào)-2