2024-04-24 分類: 網(wǎng)站建設(shè)
在本文中,您將學(xué)習(xí)如何在 Ubuntu VPS上設(shè)置 FTP 服務(wù)器。我們將使用vsftpd服務(wù)器,它被廣泛認(rèn)為是類 UNIX 系統(tǒng)中最快和最安全的 FTP 服務(wù)器。
什么是 FTP?FTP,或文件傳輸協(xié)議,是一種使用 TCP/IP 協(xié)議通過 Internet 連接在計算機之間共享文件的方法。它還利用客戶端-服務(wù)器框架和SSL/TLS 安全性來確保安全可靠的數(shù)據(jù)傳輸。
這有點類似于HTTP(超文本傳輸??協(xié)議)或SMTP(簡單郵件傳輸協(xié)議)。不同之處在于,F(xiàn)TP 負(fù)責(zé)通過 Internet 傳輸文件,而 HTTP 和 SMTP 分別處理網(wǎng)頁和電子郵件的傳輸。在開始之前,請記住我們將指導(dǎo)您在Ubuntu?18.04 上配置 FTP 服務(wù)器。因此,您需要確保您的 VPS 正在該特定操作系統(tǒng)上運行。
如何在 Ubuntu 上設(shè)置 FTP 服務(wù)器本教程要求您知道如何通過 SSH 連接到服務(wù)器。如果您擁有Hostinger 的 VPS,登錄詳細(xì)信息可在hPanel 的服務(wù)器選項卡中找到。
步驟 1 – 安裝 vsftpd 首先,在繼續(xù)安裝vsftpd之前,我們必須獲取軟件包更新?。首先,運行以下命令: sudo apt-get 更新等待所有過程完成,您將在更新完成后立即看到確認(rèn)信息。 完成后,使用以下命令 安裝vsftpd守護進程: sudo apt-get 安裝 vsftpd
系統(tǒng)將提示您一條確認(rèn)消息,要求您鍵入Y并按Enter鍵以繼續(xù)安裝。 安裝完成后,您應(yīng)該備份原始文件,以便您可以從空白配置文件開始: sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.original
現(xiàn)在我們準(zhǔn)備好配置防火墻了。 第 2 步 – 允許來自防火墻的 FTP 流量 為了允許 Ubuntu FTP 服務(wù)器通過互聯(lián)網(wǎng)進行通信,它需要通過防火墻。但首先,讓我們看看防火墻是否已經(jīng)在您的機器上啟用。只需運行此命令即可驗證狀態(tài): sudo ufw 狀態(tài)
如果您看到以下消息:
ufw:找不到命令這意味著沒有安裝防火墻。您可以通過鍵入以下內(nèi)容來安裝和啟用它:
sudo apt-get 安裝 ufwsudo ufw 啟用 如果它已經(jīng)處于活動狀態(tài),您仍然需要確保允許 FTP 流量。為此,請一一執(zhí)行以下命令: sudo ufw 允許 OpenSSHsudo ufw 允許 20/tcpsudo ufw 允許 21/tcpsudo ufw 允許 990/tcpsudo ufw 允許 40000:50000/tcp這一系列命令會打開幾個端口:
如果您仍然希望通過 SSH 訪問您的服務(wù)器,則需要OpenSSH 。有時,此選項默認(rèn)啟用。 端口20和21用于 FTP 流量。 端口40000:50000將保留用于最終將在配置文件中設(shè)置的被動端口范圍。 啟用 TLS 時將使用端口990 。 現(xiàn)在讓我們再看看狀態(tài): sudo ufw 狀態(tài)輸出應(yīng)如下所示:
狀態(tài):活躍采取行動從--------------OpenSSH 允許任何地方990/tcp 允許任何地方20/tcp 允許任何地方21/tcp 允許任何地方40000:50000/tcp 允許任何地方OpenSSH (v6) 允許任何地方 (v6)20/tcp (v6) 允許任何地方 (v6)21/tcp (v6) 允許任何地方 (v6)990/tcp (v6) 允許任何地方 (v6)40000:50000/tcp (v6) 允許任何地方 (v6) 第 3 步 – 創(chuàng)建用戶目錄 設(shè)置防火墻后,我們必須創(chuàng)建要使用 FTP 訪問的用戶。這是怎么做的: 須藤添加用戶托管請記住根據(jù)您自己的喜好更改用戶名。 然后,輸入用戶密碼并填寫所有必需的詳細(xì)信息。
理想情況下,出于安全目的,F(xiàn)TP 應(yīng)限制在一個特定的目錄中。這就是vsftpd使用chroot jails的原因,它默認(rèn)將本地用戶限制在他們的主目錄中。然后,使用以下方法設(shè)置所有權(quán):
sudo chown nobody:nogroup /home/hostinger/ftp最后,刪除寫權(quán)限:
sudo chmod aw /home/hostinger/ftp現(xiàn)在,使用以下命令來驗證權(quán)限:
sudo ls -la /home/hostinger/ftp輸出應(yīng)類似于:
共 8 個dr-xr-xr-x 2 nobody nogroup 4096 Oct 8 11:32 。drwxr-xr-x 3 hostinger hostinger 4096 Oct 8 11:32 .. 接下來,我們將創(chuàng)建文件存放目錄并分配所有權(quán): sudo mkdir /home/hostinger/ftp/文件sudo chown hostinger:hostinger /home/hostinger/ftp/文件最后,在目錄中添加一個測試文件,稍后我們測試所有內(nèi)容時將使用該文件:
echo "vsftpd 示例文件" | sudo tee /home/hostinger/ftp/files/sample.txt 第 4 步 – 配置 vsftpd下一步是配置 vsftpd 和我們的 FTP 訪問。在此示例中,我們將允許單個用戶使用本地 shell 帳戶進行連接。為此所需的兩個關(guān)鍵配置已在配置 (?vsftpd.conf?) 文件中設(shè)置。
首先,使用 nano 命令打開vsftpd配置文件。 須藤納米 /etc/vsftpd.conf驗證內(nèi)容是否具有與此類似的設(shè)置:
. . . # 允許匿名 FTP?(默認(rèn)情況下禁用)。anonymous_enable=NO # # 取消注釋以允許本地用戶登錄。local_enable=YES。. .在同一個文件中,我們將刪除#(取消注釋)并確保啟用write_enable。
. . . 寫啟用=是。. . 您還需要取消注釋chroot以確保 FTP 用戶僅訪問允許目錄中的文件。也將NO值更改為YES 。請記住,有兩行是這樣的,您必須取消對它們的注釋。 . . . chroot_local_user=YES 。. . 您還應(yīng)該將一些新值添加到文件底部。第一個是local_root 目錄路徑中的user_sub_token。它將允許配置與當(dāng)前用戶或隨后添加的任何其他用戶一起使用: user_sub_token=$USER local_root=/home/$USER/ftp 為確保有大量連接可用,我們將限制配置文件的端口數(shù): pasv_min_port=40000 pasv_max_port=50000 在本教程中,我們打算根據(jù)具體情況允許訪問。因此,我們將配置設(shè)置為僅向您已明確添加到列表中的用戶授予訪問權(quán)限: userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO當(dāng)您將userlist_deny 標(biāo)志設(shè)置為NO時,只允許指定的用戶訪問。完成后,依次單擊CTRL+X和Y進行保存,然后按 Enter確認(rèn)文件更改。 最后,我們將創(chuàng)建一個用戶列表并將用戶添加到文件中: 回聲“主機” | sudo tee -a /etc/vsftpd.userlist
通過運行以下命令驗證用戶確實處于活動狀態(tài):
cat /etc/vsftpd.userlist輸出應(yīng)為“hostinger”,如以下屏幕截圖所示: 使用以下命令重新啟動守護程序以加載配置更改: sudo systemctl 重新啟動 vsftpd 第 5 步 – 使 FTP 安全 默認(rèn)情況下,F(xiàn)TP 不加密數(shù)據(jù),因此我們將使用SSL/TLS證書來保護數(shù)據(jù)傳輸。第一步是我們需要為 Ubuntu FTP 服務(wù)器創(chuàng)建 SSL 證書。 sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
–days標(biāo)志使證書有效期為一年,我們在同一命令中包含了一個2048 位RSA私鑰。 出現(xiàn)提示后,在提供的字段中輸入相應(yīng)的個人詳細(xì)信息。 完成創(chuàng)建證書后,再次打開配置文件: 須藤納米 /etc/vsftpd.conf
文件末尾應(yīng)包含以rsa開頭的兩行。
# rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem# rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key現(xiàn)在,我們將配置文件指向我們剛剛創(chuàng)建的證書。在前面幾行的正下方添加以下目錄:
rsa_cert_file=/etc/ssl/private/vsftpd.pemrsa_private_key_file=/etc/ssl/private/vsftpd.pem 接下來,我們將啟用 SSL 并確保只有擁有有效 SSL 的客戶才能聯(lián)系我們。只需輸入這一行: ssl_enable=YES然后,添加以下行以禁止通過 SSL 的任何匿名連接:
allow_anon_ssl=否force_local_data_ssl=YESforce_local_logins_ssl=YES使用以下命令將服務(wù)器配置為使用 TLS:
ssl_tlsv1=是ssl_sslv2=否ssl_sslv3=否 現(xiàn)在我們將更改兩個選項。首先,禁用SSL 重用以防止 FTP 客戶端崩潰。其次,我們將使用高度加密的密碼套件,確保密鑰長度等于或大于 128 位。 require_ssl_reuse=否ssl_ciphers=高按CTRL+X后跟Y再次保存文件,然后按Enter。 讓我們再次 重啟vsftpd以應(yīng)用新配置: sudo systemctl 重新啟動 vsftpd
做得好!您現(xiàn)在已經(jīng)在 Ubuntu VPS 上配置了 FTP 服務(wù)器以使用 SSL/TLS 協(xié)議。
第 6 步 – 測試與 FileZilla 的連接如今,大多數(shù) FTP 客戶端都支持 TLS 加密配置。這是測試您的 Ubuntu FTP 服務(wù)器是否正常工作的好方法。為了測試連接,我們將使用FileZilla FTP 客戶端。
首先,啟動FileZilla并單擊站點管理器圖標(biāo)。然后,在提示窗口中單擊新建站點按鈕以輸入 Ubuntu FTP 服務(wù)器詳細(xì)信息。就這樣!現(xiàn)在,您可以執(zhí)行從計算機到 Ubuntu FTP 服務(wù)器的各種文件傳輸,反之亦然。
結(jié)論擁有 Ubuntu FTP 服務(wù)器可以讓您輕松地在 Ubuntu VPS/服務(wù)器和計算機之間共享文件。得益于 SSL/TLS 安全性和 TCP/IP 協(xié)議,它是一種安全可靠的數(shù)據(jù)傳輸方法。
網(wǎng)頁題目:什么是FTP?在Ubuntu上設(shè)置FTP服務(wù)器的步驟是什么?
文章位置:http://jinyejixie.com/news15/325115.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、企業(yè)建站、App開發(fā)、服務(wù)器托管、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容