← 아티클 목록

포트 번호 종류 — 80·443·22 등 잘 알려진 포트 정리

2028-11-13#networking#포트#프로토콜

같은 서버 IP 하나로 웹도 열고 SSH도 접속합니다. 어떻게 한 주소에서 여러 서비스가 섞이지 않을까요? 답은 포트 번호입니다. IP가 건물 주소라면 포트는 호실 번호로, 들어온 패킷을 어느 서비스에 넘길지 가립니다.

포트는 세 구간으로 나뉜다

포트는 0~65535까지 있고, 용도에 따라 세 구간으로 나뉩니다. 서비스가 듣는(listen) 포트는 보통 정해진 well-known 영역을 씁니다.

범위이름용도
0~1023well-known표준 서비스(HTTP·SSH 등), root 권한 필요
1024~49151registered등록된 앱(MySQL 3306 등)
49152~65535dynamic클라이언트 임시 포트

클라이언트가 웹서버 443에 접속할 때, 자기 쪽은 dynamic 영역에서 임시 포트를 하나 빌려 씁니다. 그래서 "어디로 보낼지"는 well-known, "어디서 왔는지"는 dynamic인 경우가 많습니다.

외워둘 대표 포트

자주 만나는 well-known 포트는 외워두면 트러블슈팅이 빨라집니다.

포트서비스프로토콜
22SSHTCP
53DNSUDP/TCP
80HTTPTCP
443HTTPSTCP
3306MySQLTCP
6379RedisTCP

443이 안 열렸는데 사이트가 안 뜬다면 방화벽이나 웹서버를 의심하고, 22가 막혔으면 SSH 접속이 안 되는 식으로 포트만 봐도 원인이 좁혀집니다.

직접 확인하기

지금 서버가 어떤 포트를 듣고 있는지 ss로 봅니다.

로컬 터미널
ss -tlnp     # TCP 리슨 포트 + 프로세스
OUTPUT
State   Local Address:Port   Process
LISTEN  0.0.0.0:22           sshd
LISTEN  0.0.0.0:443          nginx
LISTEN  127.0.0.1:3306       mysqld

22는 sshd, 443은 nginx가 듣고 있습니다. 3306127.0.0.1에만 묶인 점도 중요합니다. 외부가 아니라 같은 서버 안에서만 접근 가능하다는 뜻입니다. 특정 포트만 보려면 ss -tlnp | grep 443처럼 거르면 됩니다.

요점 정리

  • 포트는 한 IP에서 여러 서비스를 가르는 호실 번호다.
  • 01023 well-known, 102449151 registered, 그 위는 dynamic(임시).
  • 22(SSH)·80(HTTP)·443(HTTPS)·53(DNS)은 외워둘 것.
  • ss -tlnp로 어떤 프로세스가 어느 포트를 듣는지 확인한다.

포트·소켓·방화벽을 직접 열고 막아보며 익히는 실습은 네트워크 트랙에서 회원가입 없이 무료로 할 수 있습니다.