Articles

Port FTP: Transfer plików i numery portów

Kiedy używasz protokołu transferu plików, możesz chcieć być świadomy różnych elementów z nim związanych. Jednym z nich jest port FTP. Udany transfer plików może się zdarzyć tylko wtedy, gdy odpowiednie porty są otwarte.

Podświetlany znak otwarcia.

Co to są porty?

W odniesieniu do FTP, porty są punktami końcowymi komunikacji. Porty pozwalają na połączenie i transfer danych pomiędzy komputerem a serwerem.

Aby połączyć się z konkretnym serwerem, musisz znać jego adres IP. Podczas gdy adres IP identyfikuje konkretny serwer, porty są numerami, które są używane na niższym poziomie, aby określić aplikację lub usługę na serwerze, z którą próbujesz się komunikować.

Adresy IP są unikalne w Internecie dla jednego serwera, do którego są przypisane, ale porty są stałym zakresem liczb od 0 do 65535, których używa każdy serwer.

Serwer FTP.

Jakie porty są używane w protokołach transferu plików?

Gdy usługa, która może przyjąć jakieś zdalne połączenie (jak serwer FTP), zaczyna „nasłuchiwać” na określonym porcie. Dla popularnych usług, istnieje oczekiwany, ustalony port, którego aplikacja powinna używać. Pierwsze 1024 porty są zarezerwowane dla znanych usług specjalnych. Usługi te mają przypisane standardowe porty przez Internet Assigned Numbers Authority (IANA).

Kiedy klient transferu plików nawiązuje połączenie z portem, na którym nasłuchuje usługa transferu plików, mogą one wymieniać informacje. Początkowo jest to w formie poleceń. Komendy ustalają szczegóły połączenia i operacje, które chcesz wykonać. Następnym krokiem jest przesłanie żądanych danych pliku przez to samo lub podobnie ustanowione połączenie.

Jakie porty są używane dla połączeń FTP?

Port FTP, o którym musisz wiedzieć aby nawiązać standardowe, nieszyfrowane połączenie FTP to port 21. Dla tego standardowego przypadku, to wszystko co musi wiedzieć osoba używająca klienta FTP.

Czy inne porty FTP są używane do połączeń?

Tak. Używanych jest więcej portów, z różnicami zależnymi od typu FTP. Inne porty są także używane w przypadku SFTP, który jest zupełnie innym protokołem.

FTP ma oficjalnie przypisane porty 20 i 21. Jeśli używa się „aktywnego” połączenia, oznacza to, że podczas gdy komputer kliencki żąda połączenia i wysyła polecenia najpierw na port 21, znany jako „port kontrolny”, połączenie z serwerem na port 20, „port danych”, jest również automatycznie otwierane w celu przesłania danych pliku.

Jeśli używane jest ustawienie „pasywnego” połączenia FTP, komputer kliencki również łączy się z serwerem na porcie FTP 21. Serwer odpowiada jednak losowym numerem portu, z wolnego zakresu portów, który ma zostać użyty jako port danych do przesyłania plików.

Na przykład, klient FTP otworzy kanał sterowania na porcie 21 i kanał danych na losowym wysokim porcie z zakresu 60000 – 65535.

Implicit FTPS domyślnie używa różnych portów, zaczynając od przypisanego portu FTPS 990 w celu nawiązania połączenia sterowania. Inicjuje to handshake SSL/TLS, następnie nawiązywane jest połączenie na port 989 w celu przesłania zaszyfrowanych danych pliku.

Wykres z numerami portów SFTP i FTP.

SFTP jest inny

SFTP używa innego portu. Port SFTP to 22, taki sam jak w przypadku połączenia SSH. Dodatkowo, używa tego samego portu zarówno do przesyłania wiadomości kontrolnych jak i danych.

Dlaczego SFTP jest zaimplementowany tak różnie?

Powodem tego jest fakt, że SFTP nie jest bezpośrednio związany z FTP. Jest to protokół bezpiecznego transferu przez SSH, wzorowany na sposobie działania FTP. W przypadku SFTP zarówno dane uwierzytelniające połączenie, jak i przesyłane dane są zawsze szyfrowane, a do uwierzytelnienia połączenia można użyć kluczy SSH.

Niezależnie od tego, jakiego protokołu używasz, port FTP lub inne otwarte porty zapewniają, że nawiązujesz pożądane połączenie i że twoje dane są sprawnie przesyłane między punktami końcowymi.

Szukasz hostingu FTP lub SFTP?
Znajdź więcej informacji o ExaVault i rozpocznij darmowy okres próbny już dziś!

Share via:

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *