Porty komputera
Transkrypt
Porty komputera
Porty komputera Często podczas konfiguracji różnych usług sieciowych i firewali potrzebujemy numerów portów na jakich działają różne usługi sieciowe. Administracja rozległymi sieciami komputerowymi wymaga zazwyczaj blokowania niektórych portów np. dla połączeń p2p czy chociażby dopisania kilku reguł iptables, które by zliczały ilość połączeń na wybranych portach dla poszczególnych użytkowników sieci i w razie dużej ich ilości tam gdzie nie powinno ich być wysyłać informacje do klienta, że ma wirusy. Poniżej przedstawiam zestaw najpopularniejszych usług i portów na których działają w linuksie. 20 FTP - dane 119 NNTP 21 FTP 137 NetBios - serwer nazw 22 SSH 143 IMAP 23 Telnet 161 SNMP 25 SMTP 162 SNMP - komunikaty Trap 53 DNS 179 BGP 70 Gopher 443 HTTPS 80 HTTP 995 POP3S (POP3 z użyciem SSL) 109 POP2 8080 Serwer proxy (SQUID) 110 POP3 Zadaniem protokołów warstwy transportowej jest rozdzielenie nadchodzących informacji z warstwy Internetu i dostarczenie ich do odpowiednich procesów pracujących w warstwie aplikacji. Identyfikacja przynależności danej transmisji do konkretnego procesu odbywa się na podstawie numeru portu. Numer portu jest liczbą 16-bitową związaną z procesem komunikującym się w sieci. Proces chcąc transmitować lub odbierać dane poprzez IP rezerwuje sobie taką liczbę i w ten sposób uzyskuje dostęp do sieci. Każda transmisja w sieci Internet jest identyfikowana za pomocą kilku liczb. Po pierwsze jest to adres IP komputera wysyłającego dane, czyli np.: 212.51.219.50 oraz numer portu na tym komputerze z którego nadaje proces transmitujący. Może to być np.: 23. W tym momencie mamy już liczby identyfikujące transmisję z jednej strony: 212.51.219.50.23. Połączenie numeru IP komputera i portu na którym odbywa się komunikacja nazywamy gniazdem (socket). Podobnie komputer odbierający dane ma swój numer IP: 212.51.219.4 oraz port, na którym procesu nim skojarzony odbiera dane np.: 6000. l w tym momencie mamy już dwa gniazda jednoznacznie definiujące w danej chwili tę transmisję w całym Internecie, można to zapisać w ten sposób: 212.51.219.50.23 : 212.51.219.4.6000 Istnieje kilka zasad przyznawania numerów portów w systemach sieciowych. Jak już napisałem, numer portu jest liczbą 16-bitową, czyli może przyjmować wartości od 0 do 65535. Jednak zakres od 0 do 1024 jest zarezerwowany dla tzw. dobrze znanych portów (well-known-ports). Numery te są publikowane przez organizacje IANA (Internet Assigned Numbers Authority) i identyfikują standardowe aplikacje nazywane dobrze znanymi usługami (well-known-services). Numer portu Aplikacja 20 (dane) 21 (sterowanie) FTP (File Transfer Protocol) 22 SSH (Secure Shell Login) 23 TELNET (Network Terminal Protocol) 25 SMTP (Simple Mail Transfer Protocol) 53 DNS (Domain Name System) 69 TFTP (Trivial File Transfer Protocol) 79 FINGER 80 HTTP (Hyper Text Transfer Protocol) 109 POP (Post Office Protocol) 119 NNTP (Network News Transfer Protocol) 143 IMAP (Internet Message Access Protocol) 161 SNMP (Simple Network Management Protocol) 3600 CONVERS (Conversation)