filezillaserver源碼
① filezilla server 安全性怎麼樣
Filezilla的主要優勢在於:高安全、高性能。Filazilla的安全性是來自於其開放源代碼的。開源為何能保證安全?每一款軟體產品誕生後,都有很多人試圖發現其漏洞進行攻擊,以獲取許可權和其他利益。如果是開源軟體,攻擊者就會下載這個軟體的源代碼,從源頭上分析其內部漏洞在那裡,並且進行攻擊。開源的規模越大,下載閱讀其源代碼的人也多,這個軟體也就越普及。隨著其逐漸改進,漏洞就越來越少,最後成為了公認極其安全的軟體,這和互聯網中數萬程序員的貢獻是分不開的。這類軟體的代表就是linux平台下的Apache、PHP、MySQL、Bind、Vsftpd等大量高可靠性軟體。而不開放源代碼的閉源軟體,人們無法對其進行研究,因此,只能將他當作「黑盒」來研究,研究的過程中沒有源代碼,很難找到其錯誤。即便找到了一些錯誤,還有更多的漏洞隱藏在代碼中,但是因為代碼不公開,因此人們短期內無從發現,後期使用會暴露出很多問題。一些閉源軟體甚至保留有「後門」,以方便遠程遙控,比如Windows,比如Serv-U。而開源軟體代碼是開放的,如果開發者在里邊植入「後門」等危險代碼,就會被互聯網上廣大的程序員糾出來,因此,這里也可以看出,開源,是對安全的最好保證。
Filezilla的高性能來自於其代碼的開發平台是C/C++,自身基礎就好於其他VB/Dephi平台開發的應用程序,因此Filezilla具有可媲美IIS的性能。在千兆網路帶寬上,可輕松滿足數百用戶同時高速下載。
目前Filezilla也存在一些不足,主要缺點就是不支持配額,即本身不提供上傳、下載總文件大小配額的功能。即便如此,免費的Filezilla正越來越多的佔領原來Serv-U等軟體的市場,變得更加貼近用戶了。
安裝
安裝過程非常簡單,首先下載Filezilla Server安裝文件,然後將安裝包下載到桌面,准備安裝。
雙擊安裝程序開始安裝。點擊「I Agree」繼續。
選擇安裝方式,默認的標准即可。其中「Source Code」源代碼一般不用安裝,除非是想研究FileZilla的代碼。
選擇安裝路徑,強烈推薦安裝到非默認路徑,以增加安全系數。例如如下路徑:
選擇「安裝為服務,並隨機自動啟動」的選項。下邊的14147是管理埠,強烈推薦修改此埠,例如改成38121埠。(注意不要和常見服務如80埠沖突)。
選擇「當管理員登錄時候,啟動管理界面」的選項。
安裝進行中。
至此安裝完成,安裝程序自動啟動管理控制台,默認是連接到本機的管理埠。管理埠到底是多少,請參考前文安裝過程中填寫的具體數字是多少。建議選中「總是連接到本伺服器」的選項,即表示每次啟動管理控制台,都是管理本機的Filezilla服務。下邊有一個輸入密碼的對話框,在里邊輸入本伺服器Filezilla服務的密碼。
注意:修改埠和密碼非常重要,這是確保Filezilla安全的重點,必須修改埠,必須設置密碼!密碼建議足夠復雜!
點擊OK後,即可啟動初始化之後的管理控制台,配置完成。
三、 配置
1. 基本設置
Filezilla默認的模式是Port模式,不是Passive被動模式。為了解決防火牆後的客戶端連接問題,最好是啟用Passive模式。要啟動被動模式,首先打開管理控制台,點擊左起第三個圖標 進入系統設置。
點擊左側「Welcom message」菜單,即FTP登錄後的歡迎信息。
為了安全起見,強烈建議修改默認的歡迎信息為「Welcom to Serv-U FTP Server」,這樣Filezilla在歡迎消息中就會Serv-U字樣,以達到欺騙攻擊者的目的。注意:本步驟非常重要!
現在我們用telnet去連接一下FTP的21埠,即可看到修改過的「假」的提示信息,這樣伺服器的安全性可以得到比較明顯的提高。
接下來點擊「Passive Mode Settings」選項,進入被動模式設置。
選中啟動被動模式埠范圍的選項,輸入10000~10050埠范圍,表示被動模式將要使用這個范圍的埠。
點擊確定保存即可。接下來在防火牆上允許10000~10050埠范圍進出,或者
直接允許Filezilla server.exe主程序的互聯網訪問。
安裝的最後一步是加固許可權,找到Filezilla的配置文件,格式是xml格式,滑鼠右鍵點擊之,並選擇屬性。
加入Guest組禁止讀寫的許可權,設置為拒絕。
點擊確定後,系統會彈出提示,詢問拒絕許可權優先順序高於允許許可權,是否要繼續,點擊是通過即可。
至此初始化基本配置完成。
2. 匿名FTP配置
首先打開管理控制台,點擊左起第四個圖標 進入系統設置。
打開ftp用戶管理界面,點擊右側的 按鈕,添加新用戶。
在新增用戶的對話框中,輸入「anonymous」這個名字,即FTP的匿名用戶。
點擊確認,添加用戶完成,返回用戶管理界面。
點擊左側的「Shared folders」菜單。點擊Add按鈕,添加一個目錄。
打開瀏覽文件夾的選項,選擇要設置FTP的目錄。
點擊確定,添加用戶完成。
現在用戶FTP客戶端連接到FileZilla Server上,可以看到匿名FTP已經配置完成。
3. 標准FTP用戶配置
首先進入用戶設置界面,點擊「Add」按鈕添加新的FTP用戶。
輸入用戶名test 。
選中Password前邊的多選框,然後輸入密碼123456。
返回到用戶管理界面,點擊設置文件夾目錄,點擊Add添加目錄。
添加一個目錄到test用戶。
添加完成,再右側選中test用戶對這個目錄的許可權,然後點擊左側的OK按鈕,配置完成。
配置完成。現在可以使用客戶端來測試登錄了。
打開FTP客戶端軟體,輸入test用戶名和密碼123456,登錄到伺服器。
登錄成功後,可以看到剛才制定的FTP目錄下的文件,並具有相應的上傳、下載許可權。
4. 虛擬目錄配置
在具有多個目錄需要共享的情況下,設置虛擬目錄是比較利於管理的選擇。通常,一個FTP伺服器需要有一個「Home」主目錄,然後設置若干個虛擬目錄。
首先進入到用戶管理界面,選中Test用戶,選中當前設置的目錄。
點擊「Set as home dir」選項 ,將當前目錄設置為「home」主目錄。
點擊Add按鈕,在原有目錄之外,再添加一個別的目錄,比如選擇桌面目錄。
新的目錄已經添加到目錄清單了。此時添加「別名」,點擊「Alias」空白處。
添加Aliases別名,注意一定用「 /」符號開頭,表示是根目錄下的虛擬目錄。
添加完成。現在可以去登錄FTP,就能看到虛擬目錄了。
登錄到FTP之後,可以看到虛擬目錄出現在test用戶的目錄中。
至此虛擬目錄設置完成。
5. 加固Filezilla安全
• 安裝Filezilla到非標准目錄
• 安裝過程中設置Filezilla的管理埠監聽在127.0.0.1上的隨機埠,例如38471等奇怪的沒用的埠。
• 安裝過程中設置Filezilla的管理密碼,並設置密碼足夠復雜
• 在Filezilla目錄下的xml配置文件上,設置Guests組禁止讀取的許可權
• 修改FTP登錄後的提示信息為IIS、Serv-U等信息
• 不要開啟SSL加密、SFTP等功能,避免以後出現漏洞
經過如上一些配置,Filezilla可以做到很高的安全性。
② 哪兒有linux下的ftp server的c程序源碼
ftp server ? 可以到sourceforge或者github開源軟體倉庫上去查找下載。流行的開源軟體也可以,比如ftp filezilla server就是比較流行的。不過不一定是c代碼了,也許是c++的。
③ 通過FTP把源碼上傳到到伺服器後怎麼通過瀏覽器訪問
如果源碼是純html的話,那麼只需要把源碼放在一個網站的根目錄下,另外請提前在iis創建網站並選擇根目錄
④ windows rt能裝什麼軟體
1、Office
2013年3月微軟副總裁傑夫·特珀說微軟將於上半年推出代號為「Oslo」的Office應用,該款應用將支持Windows8、以及搭載了蘋果iOS和谷歌Android移動操作系統的智能手機和平板電腦。微軟將於11月2日在紐約舉辦Office發布會。
2、Sumatra Pdf
Sumatra Pdf是Krzysztof Kowalczyk所開發的輕量級PDF閱讀器,類型為開放軟體,開發者是Krzysztof Kowalczyk,可以後面網址下載安裝版和攜帶版,同時還提供源碼下載。
Sumatra PDF是可以後面網址下載安裝版和攜帶版,同時還提供源碼下載。 Sumatra PDF 由下列兩個函數庫組成:MuPDF - PDF函數庫,Poppler - PDF函數庫。
3、SharpDevelop
這個輕型的開發工具支持多種程序語言,包括C#、java以及VB.NET,同時還支持多種語言界面,象任何愛好者開發的工具一樣。
這個編輯器的界面風格類似於Office XP以及VS.NET,這個編輯器可以支持書寫C#, ASP.NET,ADO.NET, XML, HTML 等多種代碼
支持基於項目或者是文件的開發,可以對C#, HTML, ASP, ASP.NET, VBscript, VB.NET, XML 提供彩色語法顯示支持,同時還可以把彩色的代碼輸出為HTML格式文件。支持豐富的代碼模版以及外接插件。
4、FileZilla
FileZilla是一個免費開源的FTP軟體,分為客戶端版本和伺服器版本,具備所有的FTP軟體功能。
可控性、有條理的界面和管理多站點的簡化方式使得Filezilla客戶端版成為一個方便高效的FTP客戶端工具,而FileZilla Server則是一個小巧並且可靠的支持FTP&SFTP的FTP伺服器軟體。
5、python
Python是一種跨平台的計算機程序設計語言。 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。
最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用於獨立的、大型項目的開發。
⑤ filezilla可以修改源碼嗎
可以修改。 解壓縮它的源代碼,轉到子目錄/src/engine下,打開ftpcontrolsocket.cpp文件,這個文件就是FileZilla用來支持標准FTP指令的核心,需要改造的是它的列表模式以及對PASV反饋的分析代碼 [包括IPV6下的EPSV指令,但是暫時因為沒有IPV6,所以沒必要動它],改造它的PASV解析代碼 讓FileZilla兼容FtpAnywhere bool CFtpControlSocket::ParsePasvResponse(CRawTransferOpData* pData) { // Validate ip address wxString digit = _T("0*[0-9]{1,3}"); const wxChar* dot = _T(","); wxString exp = _T("( |//()(") + digit + dot + digit + dot + digit + dot + digit + dot + digit + dot + digit + _T(")( |//)|$)"); wxRegEx regex; regex.Compile(exp); if (!regex.Matches(m_Response)) return false; pData->host = regex.GetMatch(m_Response, 2); int i = pData->host.Find(',', true); long number; if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number)) return false; pData->port = number; //get ls byte of server socket pData->host = pData->host.Left(i); i = pData->host.Find(',', true); if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number)) return false; pData->port += 256 * number; //add ms byte of server socket pData->host = pData-> host.Left(i); pData->host.Replace(_T(","), _T(".")); if (m_pProxyBackend) { // We do not have any information about the proxy's inner workings return true; } const wxString peerIP = m_pSocket->GetPeerIP(); if (!IsRoutableAddress(pData->host, m_pSocket->GetAddressFamily()) && IsRoutableAddress(peerIP, m_pSocket->GetAddressFamily())) { if (!m_pEngine->GetOptions()->GetOptionVal(OPTION_PASVREPLYFALLBACKMODE) || pData->bTriedActive) { LogMessage(Status, _("Server sent passive reply with unroutable address. Using server address instead.")); LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str()); pData->host = peerIP; } else { LogMessage(Status, _("Server sent passive reply with unroutable address. Passive mode failed.")); LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str()); return false; } } return true; }
⑥ 如何設置filezilla server使其能上傳、下載中文文件名的文件
Filazilla是一個非常流行的開源的免費的FTP客戶端、伺服器端的項目,Filezilla的主要優勢在於:高安全、高性能。Filazilla的安全性是來自於其開放源代碼的。
Filezilla的高性能來自於其代碼的開發平台是C/C++,自身基礎就好於其他VB/Dephi平台開發的應用程序,因此Filezilla具有可媲美IIS的性能。在千兆網路帶寬上,可輕松滿足數百用戶同時高速下載。
目前Filezilla也存在一些不足,主要缺點就是不支持配額,即本身不提供上傳、下載總文件大小配額的功能。
⑦ filezilla 狀態: 不安全的伺服器,不支持 FTP over TLS.
出現這種情況的原因可能是伺服器上的防火牆阻止了FileZilla的出入,所以連接不上。
可以試試把這個軟體添加到例外,操作方法如下:
在防火牆中找到FileZilla的【Filazilla server interface.exe】和F【ilezilla server.exe】,把這兩個文件都加入到防火牆的例外就好了。
介紹一下FileZilla:
FileZilla是一個免費開源的FTP軟體,分為客戶端版本和伺服器版本,具備所有的FTP軟體功能。可控性、有條理的界面和管理多站點的簡化方式使得Filezilla客戶端版成為一個方便高效的FTP客戶端工具,而FileZilla
Server則是一個小巧並且可靠的支持FTP&SFTP的FTP伺服器軟體。
FileZilla是一種快速、可信賴的FTP客戶端以及伺服器端開放源代碼程式,具有多種特色、直接的介面。
FileZilla的使用方法
先雙擊打開軟體,點擊【站點管理】→【新建站點】,把空間提供商提供的或者你自己創建的FTP的主機名,用戶名,密碼輸入上去,點擊【連接】即可進入。
進入後左邊是本地目錄和文件列表,右邊為FTP的目錄文件列表,把FTP看作自己的U盤一樣管理即可。
FTP上,選中文件拖動到【...】的目錄可以把文件移動上一層,拖動相應的文件名為移動到相應目錄,一般主機目錄如圖所示,
db是給你傳壓縮包和下載壓縮包的,log是日誌文件存儲地方,有的主機不提供日誌,web就是你的web空間了,一般路徑為/xx/web/,其中xx代表你的用戶名。
⑧ 如何快速安裝OSSFTP工具阿里雲OSS FTP安裝圖文詳細教程
OSSFTP工具是一個特殊FTPserver,它接收普通FTP請求後,將對文件、文件夾的操作映射為對OSS的操作,從而使得您可以基於FTP協議來管理存儲在OSS上的文件。
注意生產環境請使用osssdk,OSSFTP工具主要面向個人用戶使用。
主要特性
跨平台:
無論是Windows、Linux還是Mac,無論是32位還是64位操作系統,無論是圖形界面還是命令行都可以運行。
免安裝:
解壓後可直接運行。
免設置:
無需設置即可運行。
透明化:
FTP工具是python寫的,您可以看到完整的源碼,我們稍後也會開源到Github。
主要功能
支持文件和文件夾的上傳、下載、刪除等操作。
通過Multipart方式,分片上傳大文件。
支持大部分FTP指令,可以滿足日常FTP的使用需求。
注意
1.目前在1.0版本中,考慮到安裝部署的簡便,OSSFTP工具沒有支持TLS加密。由於FTP協議是明文傳輸的,
為了防止您的密碼泄漏,建議將FTPserver和client運行在同一台機器上,通過127.0.0.1:port的方式來訪問。
2.不支持rename和move操作。
3.安裝包解壓後的路徑不要含有中文。
4.FTPserver的管理控制頁面在低版本的IE中可能打不開。
5.FTPserver支持的Python版本:Python2.6,Python2.7。
下載
由於Windows不會默認安裝Python2.7,所以安裝包中包含了Python2.7,免去您python安裝配置的麻煩,解壓即可使用。
由於Linux/Mac系統默認會安裝Python2.7或Python2.6,所以安裝包中不再包含可執行的python,只包含了相關依賴庫。
運行
首先解壓之前下載的文件,然後根據環境情況選擇不同的運行方式。
Windows:雙擊運行start.vbs即可
Linux:打開終端,運行 i.$bashstart.sh
Mac:雙擊start.command,或者在終端運行 i.$bashstart.command
上述步驟會啟動一個FTPserver,默認監聽在127.0.0.1的2048埠。同時,為了方便您對FTPserver的狀態進行管控,還會啟動一個web伺服器,監聽在127.0.0.1的8192埠。如果您的系統有圖形界面,還會自動打開控制頁面,
如下所示:
大部分情況不要任何配置,就可以運行一個FTPserver了,如果想對FTPserver進行配置,請注意需要重啟才能生效。
連接到FTPserver推薦使用FileZilla客戶端去連接FTPserver。
下載安裝後,按如下方式連接即可:
主機:127.0.0.1
登錄類型:正常
用戶:access_key_id/bucket_name
密碼:access_key_secret
注意:
用戶中,/是必須的,如用戶
tSxyiUM3NKswPMEp/test-hz-jh-002。
-access_key_id和access_key_secret的獲取
高級使用
通過控制頁面管理FTPserver
修改監聽地址
如果需要通過網路來訪問FTPserver,那麼需要修改監聽地址,因為默認的監聽地址127.0.0.1隻允許來自本地的訪問。可以修改成內網ip或公網ip。
修改監聽埠
修改FTPserver監聽的埠,建議埠大於1024,因為監聽1024以下的埠時需要管理員許可權.
修改日誌等級
設置FTPserver的日誌級別。FTPserver的日誌會輸出到data/ossftp/目錄下,可以通過控制頁面的日誌按鈕在線查看。默認的日誌界別為INFO,列印的日誌信息較少,如果需要更詳細的日誌信息,可以修改為DEBUG模式。如果希望減少日誌的輸出,可以設置級別為WARNING或ERROR等。
設置Bucketendpoints
FTPserver默認會探索bucket的所屬location信息,隨後將請求發到對應的region(如oss-cn-hangzhou.aliyuncs.com或oss-cn-beijing.aliyuncs.com),FTPserver會優先嘗試內網訪問oss。如果您設置了bucketendpoints,如設置為test-bucket-a.oss-cn-hangzhou.aliyuncs.com,那麼當訪問test-bucket-a時,就會使用oss-cn-hangzhou.aliyuncs.com域名。
注意
所有修改都需要重啟才能生效。
上述的所有修改其實都是修改的ftp根目錄下的config.json,所以您可以直接修改該文件。
直接啟動FTPserver(Linux/Mac)
可以直接啟動ossftp目錄下的ftpserver.py,免去web_server的開銷。
1.python ossftp/ftpserver.py
配置修改方式同上。
可能遇到的問題
如果連接FTPserver時,遇到以下錯誤:
有兩種可能:
輸入的access_key_id和access_key_secret有誤。
解決 :請輸入正確的信息後再重試。
所用的access_key信息為ram子賬戶的access_key,而子賬戶不具有Listbuckets許可權。
解決 :當使用子賬戶訪問時,請在控制頁面中指定bucketendpoints,即告訴FTPserver某個bucket應該用什麼endpoint來訪問。同時,子賬戶也需要一些必須的許可權,關於使用ram訪問oss時的訪問控制。
只讀訪問
OSSFTP工具需要的許可權列表為ListObjects、GetObject、HeadObject。關於如何創建一個具有隻讀訪問的ram子賬戶,請參考圖文教程如何結合ram實現文件共享。
上傳文件
如果允許ram子賬戶上傳文件,還需要PutObject。
刪除文件
如果允許ram子賬戶刪除文件,還需要DeleteObject。
如果您在Linux下運行FTPserver,然後用FileZilla連接時遇到如下錯誤:
501 can't decode path (server filesystem encoding is ANSI_X3.4-1968)
一般是因為本地的中文編碼有問題。在將要運行start.sh的終端中輸入下面的命令,然後再重新啟動即可。
1 .$ export LC_ALL=en_US.UTF-8; export LANG="en_US.UTF-8"; locale
⑨ filezilla server 怎麼設置
伺服器設置:
第1步 進行伺服器全局參數設置:點「Edit」菜單,選「Settings」
General settings(常規設置):
Listen on Port:監聽埠,其實就是FTP伺服器的連接埠。
Max.Number of users:允許最大並發連接客戶端的數量。
Number of Threads:處理線程。也就是CPU優先順序別。數值調得越大優先順序越高,一般默認即可。
timeout setting:超時設置,自上至下分別為:連接超時、傳輸空閑超時、登入超時。單位為秒。