Aktivní FTP vs pasivní FTP
FTP (File Transfer Protocol) je sada standardních síťových pravidel (protokolů), která se týkají přenosu souborů mezi dvěma hostitelskými počítači přes síť na bázi TCP/IP (síť, která používá Transmission Control Protocol/Internet Protocol k přenášet proud bajtů z jednoho počítače do druhého), jako je internet. FTP funguje na principu klient/server a patří do aplikační úrovně modelu OSI (model otevřeného propojení systémů).
FTP server, který ukládá soubory určené k přenosu, obvykle používá dva porty pro účely přenosu, jeden pro příkazy a druhý pro odesílání a přijímání dat. Požadavky z klientských počítačů jsou přijímány na portu 21 serveru, který je výhradně vyhrazen pro odesílání příkazů; proto se nazývá Command Port. Jakmile je přijata příchozí žádost, data požadovaná nebo nahraná klientským počítačem jsou přenesena přes samostatný port označovaný jako datový port. V tomto okamžiku se číslo portu použitého pro přenos dat liší v závislosti na aktivním nebo pasivním režimu připojení FTP.
Co je aktivní FTP?
Aktivní režim FTP připojení je režim, kdy příkazové připojení iniciuje klient a datové připojení iniciuje server. A protože server aktivně navazuje datové spojení s klientem, je tento režim označován jako aktivní. Klient otevře port vyšší než 1024 a přes něj se připojí k portu 21 nebo příkazovému portu Serveru. Poté Server otevře svůj port 20 a naváže datové spojení na port vyšší než 1024 Klienta. V tomto režimu musí Klient nastavit svá nastavení brány firewall tak, aby přijímala všechna příchozí připojení, která jsou přijímána na otevřeném portu.
Co je pasivní FTP?
V režimu pasivního FTP připojení se server chová zcela pasivně, protože příkazové i datové připojení iniciuje a naváže klient. V tomto režimu Server naslouchá příchozím požadavkům přes svůj port 21 (příkazový port), a když je přijat požadavek na datové připojení od Klienta (pomocí vysokého portu), Server náhodně otevře jeden ze svých High portů. Poté Klient iniciuje datové spojení mezi otevřeným portem Serveru a svým vlastním náhodně vybraným portem vyšším než 1024. V tomto režimu Klient nemusí měnit nastavení firewallu, protože vyžaduje pouze odchozí spojení a firewall neblokuje odchozí spojení. Správci serveru se však musí ujistit, že server umožňuje příchozí připojení na všech svých otevřených portech.
Jaký je rozdíl mezi aktivním FTP a pasivním FTP?
Rozdíl mezi aktivním FTP a pasivním FTP je založen na tom, kdo iniciuje datové spojení mezi serverem a klientem. Pokud je datové připojení iniciováno serverem, je připojení FTP aktivní, a pokud klient iniciuje datové připojení, připojení FTP je pasivní.
V závislosti na aktivním nebo pasivním režimu připojení se mění port použitý pro datové připojení. V aktivním FTP je datové spojení navázáno mezi portem 20 serveru a vysokým portem klienta. Na druhou stranu v pasivním FTP je datové spojení navázáno mezi High portem serveru a High portem klienta.
Při použití aktivního FTP připojení musí být nastavení firewallu klienta změněno tak, aby akceptovalo všechna příchozí připojení ke klientovi, zatímco v pasivním FTP připojení musí server povolit všechna příchozí připojení k serveru. Většina FTP serverů preferuje pasivní FTP připojení kvůli bezpečnostním problémům.