伺服器之間的預定文件傳輸
我有興趣安排通過網際網路從一台伺服器複製和發送大文件到另一台伺服器。伺服器不在同一個網路上。
我不知道解決此問題的所有可用選項,但我隱約熟悉的可能對這項任務有用的幾個協議/規範是 (1) FTP 和 (2) bittorrent。
我以前使用過 Filezilla 在伺服器組之間手動發送大文件。該特定 FTP 應用程序沒有調度功能,因此不足以滿足我的調度要求。理想情況下,我想使用更多程序化(非基於 GUI)而不是專有(如付費應用程序)的東西來完成這項任務。
我已經在使用按計劃執行的 Python 腳本,這些腳本在一組伺服器上執行其他操作。伺服器執行 Windows,腳本通過Windows 任務計劃程序自動執行。如果我可以使用 Python 通過 FTP 發送文件,那對我來說尤其理想,因為我可以將 FTP 程式碼放入我已經開始工作和安排好的地方。然而,我曾短暫地嘗試過使用 Python 的“ftplib”,但無法完全理解它。所以,在我嘗試走這條路之前,我想先在這裡發帖。
我不確定我是否應該採用基於 FTP 的方法,所以我想對此提出一些建議。此外,我並不真正關心我在此任務中使用哪種程式語言,儘管我稍微更喜歡 Python,因為它似乎是一個自然的選擇,因為我正在處理伺服器端腳本。我也想就此提出建議。
由於這是我的第一篇 serverfault 文章,您可能可以想像我對上面提到的許多主題幾乎一無所知。提前致謝。
我首先要說的是,您希望避免使用 FTP 和 Bit Torrent。當許多人擁有您想要的文件並且下載可以在所有人之間分發時,Bit Torrent 是一項很棒的技術(例如快速下載 linux ISO)。我不建議將它用於簡單的站點 A 到站點 B 的轉移。
FTP 在很大程度上被認為是過時的,因為它不安全。所有資訊都以純文字形式傳輸,很容易被可能正在監聽您流量的惡意方攔截。您將希望通過安全通道完成此傳輸。
為此,您有幾個選項來加密您的傳輸。
- SSH 隧道 (scp / sftp)
- VPN
我會推薦以下
這可能是我推薦的最簡單的方法。您的另一種選擇是與遠端電腦建立 VPN 並簡單地編寫一個將文件從本地伺服器複製到遠端伺服器的單行腳本。
歡迎來到順豐。