簡單介紹FTP FTPS SFTP

2021-08-21 22:14:11 字數 1827 閱讀 4388

1.ascii傳輸方式

假定使用者正在拷貝的檔案包含的簡單ascii碼文字,如果在遠端機器上執行的不是unix,當檔案傳輸時ftp通常會自動地調整檔案的內容以便於把檔案解釋成另外那台計算機儲存文字檔案的格式。 

但是常常有這樣的情況,使用者正在傳輸的檔案包含的不是文字檔案,它們可能是程式,資料庫,字處理檔案或者壓縮檔案。在拷貝任何非文字檔案之前,用binary 命令告訴ftp逐字拷貝。

2.二進位制傳輸模式

在二進位制傳輸中,儲存檔案的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的檔案是沒意義的。例如,macintosh以二進位制方式傳送可執行檔案到windows系統,在對方系統上,此檔案不能執行。

如在ascii方式下傳輸二進位制檔案,即使不需要也仍會轉譯。這會損壞資料。(ascii方式一般假設每一字元的第一有效位無意義,因為ascii字元組合不使用它。如果傳輸二進位制檔案,所有的位都是重要的。)

1.port模式

ftp 客戶端首先和伺服器的tcp 21埠建立連線,用來傳送命令,客戶端需要接收資料的時候在這個通道上傳送port命令。port命令包含了客戶端用什麼埠接收資料。在傳送資料的時候,伺服器端通過自己的tcp 20埠連線至客戶端的指定埠傳送資料。ftp server必須和客戶端建立乙個新的連線用來傳送資料。

2.passive模式

建立控制通道和standard模式類似,但建立連線後傳送pasv命令。伺服器收到pasv命令後,開啟乙個臨時埠(埠號大於1023小於65535)並且通知客戶端在這個埠上傳送資料的請求,客戶端連線ftp伺服器此埠,然後ftp伺服器將通過這個埠傳送資料。

很多防火牆在設定的時候都是不允許接受外部發起的連線的,所以許多位於防火牆後或內網的ftp伺服器不支援pasv模式,因為客戶端無法穿過防火牆開啟ftp伺服器的高階埠;而許多內網的客戶端不能用port模式登陸ftp伺服器,因為從伺服器的tcp 20無法和內部網路的客戶端建立乙個新的連線,造成無法工作。

ssl/tls協議在傳輸層(tcp/ip)之上、但是在應用層之下工作的。因此,它可以很容易在諸如http,telnet,pop3,imap4,smtp和ftp等應用層協議上實現。ssl安全擴充套件至少有兩種不同的初始化方法:顯式安全和隱式安全。 

顯示安全:為了建立ssl連線,顯式安全要求ftp客戶端在和ftp伺服器建立連線後傳送乙個特定的命令給ftp伺服器。客戶端使用伺服器的預設埠。 

隱式安全: 當ftp客戶端連線到ftp伺服器時,隱式安全將會自動和ssl連線一起開始執行。在隱式安全中伺服器定義了乙個特定的埠(tcp990)讓客戶端來和其建立安全連線。

sftp是secure file transfer protocol的縮寫,安全檔案傳送協議。可以為傳輸檔案提供一種安全的加密方法。sftp 與 ftp 有著幾乎一樣的語法和功能。sftp 為 ssh的一部分,是一種傳輸檔案至 blogger 伺服器的安全方式。其實在ssh軟體包中,已經包含了乙個叫作sftp(secure file transfer protocol)的安全檔案傳輸子系統,sftp本身沒有單獨的守護程序,它必須使用sshd守護程序(埠號預設是22)來完成相應的連線操作,所以從某種意義上來說,sftp並不像乙個伺服器程式,而更像是乙個客戶端程式。sftp同樣是使用加密傳輸認證資訊和傳輸的資料,所以,使用sftp是非常安全的。但是,由於這種傳輸方式使用了加密/解密技術,所以傳輸效率比普通的ftp要低得多,如果您對網路安全性要求更高時,可以使用sftp代替ftp。

xgboost簡單介紹 xgboost介紹

xgboost是華盛頓大學博士陳天奇創造的乙個梯度提公升 gradient boosting 的開源框架。至今可以算是各種資料比賽中的大殺器,被大家廣泛地運用。接下來,就簡單介紹一下xgboost和普通的gbdt相比,有什麼不同。何為gradient boosting,gbdt請看我上篇文章 1.梯...

mysql的簡單介紹 mysql的簡單介紹

mysql的簡單介紹 資料庫的內部鏈結 1 連線管理器 使用者或應用程式連線 2 分析器 3 快取區4 優化器 優化器執行的結果交由儲存引擎,再轉向物理層 表空間 myisam每個表有三個檔案 frm 表結構 myd 表資料 myi 表索引 innodb 所有表空間再乙個檔案 資料庫失敗的原因 1 ...

CMM 簡單介紹

什麼是cmm?cmm capability maturity model 軟體能力成熟度模型 國際公認的評估軟體過程成熟度的行業標準 由美國卡內基梅隆大學的軟體工程研究所 sei software engineering institute 受美國國防部委託研究制定並在美國,隨後在全世界推廣實施的一...