FTP Server程序庫方案探究

      網友投稿 1015 2022-05-29

      【引言】

      FTP(文件傳輸協議),顧名思義就是兩臺計算機之間的文件傳輸協議,本地計算機和遠程服務器。FTP服務器是一種運行在Web服務器上的網絡服務器,在服務器端使用FTP協議來管理文件傳輸、連接和用戶。

      【Apache FtpServer】

      【授權與概述】

      Apache FtpServer是一個100%純Java的FTP服務器。它被設計成一個基于當前可用的開放協議的、完整的、可移植的FTP服務器引擎。FtpServer可以作為一個Windows服務或Unix/Linux守護進程獨立運行,也可以嵌入到Java應用程序中。

      使用GPL授權模式。

      其功能列表如下:

      l??100%純Java,免費,免費,開源的FTP服務器

      l??多平臺支持,多線程設計,。

      l??用戶虛擬目錄,寫權限,空閑超時,支持上傳/下載帶寬限制。

      l??支持匿名登錄。

      l??上傳和下載文件均可斷點續傳。

      l??同時處理ASCII和二進制數據傳輸。

      l??支持IP限制,支持禁止IP。

      l??數據庫和文件可用于存儲用戶數據。

      l??所有的FTP消息都可以自定義。

      l??隱式/顯式SSL/TLS支持。

      l??支持MDTM -?你的用戶可以改變文件的日期時間戳。

      l??"MODE Z "支持更快的數據上傳/下載。

      l??可輕松添加自定義用戶管理器、IP限制器、記錄器。

      l??可以添加用戶事件通知(Ftplet)。

      【安全性】

      https://nvd.nist.gov/view/vuln/search-results?query=FtpServer&search_type=all&cves=on

      有59個漏洞。

      【使用分布狀況】

      https://www.shodan.io/search?query=FtpServer

      搜索到5500個用戶。

      【工程網站】

      https://mina.apache.org/ftpserver-project/

      【最新發布】

      最新版本:1.1.1

      發布時間:2017年5月15日

      【編程語言】

      Java

      現在我們來看看有哪些FTP Server的替代方案,本文我們會討論三個可替代方案,在最后我們會小結一下。

      【1?縮略語】

      GPL:?The GNU General Public License (GNU?GPL?or?GPL)??通用公共許可證

      CVE:Common Vulnerabilities and Exposures常見的漏洞和風險

      LGPL: GNU Lesser General Public License (LGPL) version 3?:較小的一般公共許可證版本3

      【2?ProFTPd】

      2.1授權與概述

      ProFTPd有很多的插件,是以Apache的配置架構為模型,也使用了GPL的授權。

      ProFTPd是一個模塊化的FTP服務器,已經有很長一段時間了。大型的控制面板(cPanel、DirectAdmin)都支持ProFTPd,而且已經支持多年。

      ProFTPd的配置相當簡單,在Google上快速搜索一下就能看到很多配置文件的例子。

      ProFTPd可用于各種系統架構和操作系統。

      2.2安全性

      在所有的可替代方案中,ProFTPd的CVE(常見的漏洞和風險)漏洞最多,有54個。這么高的數字,很可能是ProFTPd的廣泛使用,使它成為黑客的目標。

      下面是ProFTPd安全性相關問題列表:

      https://nvd.nist.gov/view/vuln/search-results?query=proftpd&search_type=all&cves=on

      2.3使用分布狀況

      共搜到一百萬以上的使用結果。

      https://www.shodan.io/search?query=ProFTPd+

      2.4工程網站

      http://www.proftpd.org/

      2.5最新發布

      最新版本:1.3.7rc3

      發布時間:2020年2月18日

      2.6編程語言

      C語言

      2.7主要亮點

      l??每個目錄配置中的".ftpaccess "類似于Apache的".htaccess"。

      l??匿名FTP支持

      l??配置單個或多個虛擬FTP服務器或匿名FTP服務

      l??支持基于Linux文件系統權限的隱藏文件和目錄。

      l??日志管理

      l??支持IPv6

      l??過期賬戶選項

      l??在獨立模式下,作為可配置的非特權用戶運行。

      【3?PureFTPd】

      3.1授權與概述

      PureFTPd的口號是「安全第一」。PureFTPd使用BSD授權,可在多種操作系統上使用(但不包括Windows)。

      PureFTPd的配置很簡單,有一個免配置文件選項。雖然PureFTPd不像ProFTPd那樣被廣泛使用,但PureFTPd在線上也有許多配置范例。

      3.2安全性

      PureFTPd的?"安全第一?"口號讓它在安全方面中處于領先的位置,安全漏洞最少。

      搜到有8個漏洞:

      https://nvd.nist.gov/view/vuln/search-results?query=pure-ftpd&search_type=all&cves=on

      3.3使用分布狀況

      共搜到124條使用結果。

      https://www.shodan.io/search?query=PureFTPd&language=en#

      3.4工程網站

      https://www.pureftpd.org/project/pure-ftpd/

      3.5最新發布

      最新版本:1.0.49

      發布時間:2020年4月3日

      3.6編程語言

      C語言

      【4?vsftpd】

      4.1授權與概述

      vsftpd是另一個GPL授權的FTP服務器,它的字面意思是?"非常安全的FTP守護進程"。它是一款以安全為前提的輕量級FTP服務器。

      它的輕量級特性使它能夠非常有效地擴展,許多大型站點(ftp.redhat.com、ftp.debian.org、ftp.freebsd.org)目前都使用vsftpd作為他們的首選FTP服務器。

      4.2安全性

      vsftpd在CVE中列出的漏洞數目比ProFTPd少,但比PureFTPd多。這可能是因為它的名字暗示了它是一個安全的FTP服務,也可能是因為它在大型網站中的使用非常廣泛,所以它比其他的服務更受關注。

      搜到有16個漏洞:

      https://nvd.nist.gov/view/vuln/search-results?query=vsftpd&search_type=all&cves=on

      4.3使用分布狀況

      共搜到68萬以上的使用結果。

      https://www.shodan.io/search?query=vsFTPd

      4.4工程網站

      https://security.appspot.com/vsftpd.html

      4.5最新發布

      最新版本:3.0.3

      發布時間:2015年

      4.6編程語言

      C語言

      4.7??主要亮點

      l?虛擬IP配置

      l?用戶創建、管理、刪除、虛擬用戶

      l?每個用戶的配置

      l?帶寬節流

      l?每源IP配置

      l?每個來源-IP限制設置

      l?支持IPv6

      l?SSL:支持

      【5 uFTP】

      5.1授權與概述

      uFTP是一個開源的、輕量級的、可移植的FTP服務器。它主要是為基于Unix/Linux (POSIX)的服務器編寫的。

      它是在MIT授權下發布的,但它包含了OpenSSL項目開發的OpenSSL工具包的軟件,所以我們也要查看OpenSSL授權。

      5.2安全性

      https://nvd.nist.gov/view/vuln/search-results?query=uftp&search_type=all&cves=on

      共發現10個安全問題。

      5.3使用分布狀況

      https://www.shodan.io/search?query=uftp

      共有18個使用記錄。

      5.4工程網站

      https://www.uftpserver.com/

      5.5最新發布

      最新版本:NA

      發布時間:2019年3月26日

      5.6編程語言

      C語言

      5.7主要亮點

      l??易于安裝

      l??易于配置

      l??便攜式二進制應用程序

      l??開放源碼許可的MIT許可

      l??輕量級C語言軟件

      l??只有一個配置文件

      l??不需要特殊技能來設置

      l??官方維基上有詳細的記錄

      l??該代碼和軟件可用于商業應用。

      l??可移植的C語言源碼

      l??適用于Unix/Linux和POSIX操作系統。

      【6 glFTPd】

      6.1授權與概述

      glFTPd?是一個開放源碼的免費FTP服服器,適用于?Unix/Linux?作業系統。這款免費軟體的第一次公開發行可以追溯到1998年初,glFTPd是GreyLine FTP的縮寫(GreyLine FTP的原創者)。它可以在FreeBSD、OpenBSD等Unix系統和Ubuntu服務器等Linux發行版中順利運行。

      glFTP支持許多FTP/站點命令,并且在chroot環境下運行,這使得它相對安全。

      6.2安全性

      https://nvd.nist.gov/view/vuln/search-results?query=glftpd&search_type=all&cves=on

      共發現6個安全問題。

      6.3使用分布狀況

      https://www.shodan.io/search?query=glFTPd

      共有230個使用記錄。

      6.4工程網站

      https://glftpd.io/

      6.5最新發布

      最新版本:2.10a

      發布時間:2019年12月30日

      6.6編程語言

      C語言

      6.7主要亮點

      l??在chroot模式下運行

      l??虛擬用戶管理

      l??全局或每個用戶的帶寬節流

      l??加密:通過TLS/SSL

      l??上傳/下載率控制

      l??用戶管理:創建、更新、刪除

      l??使用情況監測和計算

      l??支持IPv6

      l??用戶可以有一個IP掩碼

      l??下載(DL)和上傳(UL)使用量統計

      l??支持cookies

      l??支持ECDHE的密鑰交換,從而使PFS為ECC證書發揮作用。

      l??允許向用戶添加IPv6掩碼

      l??顯示磁盤空間、使用量、空閑空間、使用過的空間

      l??在文件列表中隱藏真實用戶名和組名

      l??支持?"dirlog "緩存

      l??支持XCWD/XMKD/XRMD/XPWD/XCUP FTP命令

      l??支持SSCN命令作為SSL FXL的另一種方法。

      【7 FileZilla】

      7.1授權與概述

      FileZilla是一個開源的免費FTP客戶端和服務器,它可以作為FTP客戶端在多個平臺上運行,也可以作為FTP服務器在Windows上運行。FileZilla已經有多年的歷史了,它與許多商業付費軟件競爭。

      FileZilla服務器是Windows的FTP服務器應用程序,它不支持其他平臺,但支持Windows 7, 8, 8, 8.1和10,包括32位和64位。FileZilla服務器和客戶端是在GPL v2.0下發布的。

      2.2安全性

      https://nvd.nist.gov/view/vuln/search-results?query=FileZilla&search_type=all&cves=on

      共發現17個安全問題。

      7.3使用分布狀況

      共有48萬多個使用記錄。

      7.4工程網站

      https://filezilla-project.org/

      7.5最新發布

      最新版本:3.47.2.1

      發布時間:2020年03月11日

      7.6編程語言

      C++語言

      7.7主要亮點

      l??僅適用于Windows系統。

      l??支持32位,和64位。

      l??易于最終用戶安裝和使用

      l??用于家庭服務器和小公司的個人使用。

      l??多協議支持

      l??通過簡單的用戶界面進行簡單的安裝

      l??設置管理器

      l??定制端口

      l??用戶經理

      l??速度限制

      l??支持被動模式和易于使用的管理器

      l??支持通過TLS/SSL的FTP

      l??IP過濾器和管理器

      l??每個用戶的連接限制

      l??共享文件夾管理器

      l??支持文件傳輸壓縮

      l??文件夾/目錄權限設置選項

      l??線程限制控制

      l??連接、無傳輸和登錄的超時設置

      l??支持網絡上的另一臺機器上的遠程文件夾共享。

      l??匿名用戶登錄支持。

      【小結】

      現在做一下總結,Apache FtpServer庫使用的是Java語言,我在搜索的過程中發現了幾個使用Java的開源Ftp Server,比如ColoradoFTP, DrFTPD, Java FTP Server。但是他們都比較老舊了,因此就沒有列出來。

      因此:

      如果是部署FTP服務器的話,我們的選項很多,可以從上面的列表中選擇合適的項目軟件。

      如果是Java代碼開發集成的話,目前沒有找到直接的替代品。可以通過Fork Apache FTPServer的方式自研。

      【更多文章】

      FTP Server程序庫方案探究

      Jet Ding文章歸類索引表

      FTP Java 通用安全 漏洞掃描服務

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:面試必備:nginx知識梳理(收藏版)
      下一篇:常用Linux命令大全(100%收藏食用??)
      相關文章
      91麻豆精品国产自产在线观看亚洲| 国产99久久亚洲综合精品| 在线91精品亚洲网站精品成人| 亚洲一区二区免费视频| 中文字幕亚洲色图| 亚洲国产精品久久久久婷婷软件 | 国产亚洲一区二区三区在线不卡| 成a人片亚洲日本久久| 精品亚洲福利一区二区| 国产精品亚洲色图| 大胆亚洲人体视频| 亚洲人成无码久久电影网站| 风间由美在线亚洲一区| www亚洲精品少妇裸乳一区二区| 国产精品无码亚洲精品2021| 亚洲欧美在线x视频| 亚洲成A人片77777国产| 亚洲综合国产精品第一页| 亚洲中文字幕伊人久久无码| 亚洲人成人77777网站| 亚洲成AV人片在| 亚洲国产人成网站在线电影动漫 | 亚洲阿v天堂在线| 亚洲AV永久无码精品成人| 久久久无码精品亚洲日韩按摩 | 亚洲一级片内射网站在线观看| 亚洲综合色自拍一区| 亚洲成A人片在线观看无码不卡| 亚洲国产精品无码久久一区二区| 久久久综合亚洲色一区二区三区| 亚洲人成网站影音先锋播放| 久久久久亚洲AV无码网站| 亚洲国产精品综合一区在线| 亚洲人成电影网站久久| 亚洲精品9999久久久久无码| 国产精品成人亚洲| 亚洲香蕉网久久综合影视| 亚洲午夜精品久久久久久人妖| 亚洲毛片一级带毛片基地| 亚洲精品国产国语| 小说区亚洲自拍另类|