포트 번호 일람
FTP・SSH・HTTP・HTTPS・MySQL・Redis 등 자주 쓰이는 TCP/UDP 포트 번호와 용도를 정리한 목록입니다. 방화벽 규칙 설정과 "연결 거부(Connection refused)" 문제 해결에 유용한 개발자용 레퍼런스이며, 실시간 검색 필터를 제공합니다.
| 포트 번호 | 프로토콜 | TCP/UDP | 범위 구분 | 용도 |
|---|---|---|---|---|
| 20 | FTP (Data) | TCP | 잘 알려진 포트 | FTP의 데이터 전송(액티브 모드)에 사용된다. 현재는 SFTP・FTPS로 대체되는 추세다. |
| 21 | FTP (Control) | TCP | 잘 알려진 포트 | FTP의 제어 연결에 사용되며, 명령과 응답을 주고받는다. |
| 22 | SSH | TCP | 잘 알려진 포트 | SSH를 통한 암호화된 원격 로그인, 그리고 SCP/SFTP를 통한 파일 전송에 사용된다. |
| 23 | Telnet | TCP | 잘 알려진 포트 | Telnet을 통한 평문 원격 로그인에 사용된다. 도청 위험이 있어 SSH로 대체할 것을 권장한다. |
| 25 | SMTP | TCP | 잘 알려진 포트 | SMTP를 통한 메일 서버 간 메일 전달(릴레이)에 사용된다. |
| 53 | DNS | TCP/UDP | 잘 알려진 포트 | DNS 이름 해석에 사용된다. 일반적인 조회는 UDP를, 존 전송이나 큰 응답은 TCP를 사용한다. |
| 67 | DHCP (Server) | UDP | 잘 알려진 포트 | DHCP 서버가 클라이언트에 IP 주소를 배포할 때 사용된다. |
| 68 | DHCP (Client) | UDP | 잘 알려진 포트 | DHCP 클라이언트가 IP 주소 할당을 요청할 때 사용된다. |
| 69 | TFTP | UDP | 잘 알려진 포트 | TFTP를 통한 인증 없는 간단한 파일 전송에 사용되며, 주로 네트워크 장비의 펌웨어 업데이트 등에 쓰인다. |
| 80 | HTTP | TCP | 잘 알려진 포트 | HTTP를 통한 암호화되지 않은 웹 페이지 전송에 사용된다. |
| 110 | POP3 | TCP | 잘 알려진 포트 | 메일 클라이언트가 POP3를 통해 메일을 수신(다운로드)할 때 사용된다. |
| 123 | NTP | UDP | 잘 알려진 포트 | NTP를 통한 컴퓨터 간 시간 동기화에 사용된다. |
| 143 | IMAP | TCP | 잘 알려진 포트 | IMAP을 통해 메일 서버에서 메일을 관리하고 여러 기기 간 동기화하는 데 사용된다. |
| 161 | SNMP | UDP | 잘 알려진 포트 | SNMP를 통한 네트워크 장비의 모니터링・상태 조회에 사용된다. |
| 162 | SNMP Trap | UDP | 잘 알려진 포트 | SNMP 트랩 수신에 사용되며, 장비가 능동적으로 보내는 알림을 받는다. |
| 194 | IRC | TCP | 잘 알려진 포트 | IRC를 통한 실시간 채팅에 사용된다. |
| 389 | LDAP | TCP | 잘 알려진 포트 | LDAP을 통한 디렉터리 서비스(사용자・조직 정보) 조회에 사용된다. |
| 443 | HTTPS | TCP | 잘 알려진 포트 | HTTPS(TLS로 암호화된 HTTP)를 통한 안전한 웹 페이지 전송에 사용된다. |
| 445 | SMB | TCP | 잘 알려진 포트 | SMB를 통한 Windows 파일 공유・프린터 공유에 사용된다. |
| 465 | SMTPS | TCP | 잘 알려진 포트 | SMTPS(TLS 기반 SMTP)를 통한 암호화된 메일 발송에 사용된다. |
| 587 | SMTP Submission | TCP | 잘 알려진 포트 | 메일 클라이언트가 메일 서버로 발신 메일을 제출(submission)할 때 사용하는 표준 포트. |
| 636 | LDAPS | TCP | 잘 알려진 포트 | LDAPS(TLS 기반 LDAP)를 통한 암호화된 디렉터리 서비스 통신에 사용된다. |
| 993 | IMAPS | TCP | 잘 알려진 포트 | IMAPS(TLS 기반 IMAP)를 통한 암호화된 메일 동기화에 사용된다. |
| 995 | POP3S | TCP | 잘 알려진 포트 | POP3S(TLS 기반 POP3)를 통한 암호화된 메일 수신에 사용된다. |
| 1433 | MSSQL | TCP | 등록된 포트 | Microsoft SQL Server 데이터베이스 연결에 사용된다. |
| 3306 | MySQL | TCP | 등록된 포트 | MySQL・MariaDB 데이터베이스 연결에 사용된다. |
| 3389 | RDP | TCP | 등록된 포트 | RDP를 통한 Windows 원격 데스크톱 연결에 사용된다. |
| 5432 | PostgreSQL | TCP | 등록된 포트 | PostgreSQL 데이터베이스 연결에 사용된다. |
| 5900 | VNC | TCP | 등록된 포트 | VNC를 통한 원격 데스크톱 화면 공유에 사용된다. |
| 6379 | Redis | TCP | 등록된 포트 | Redis 인메모리 데이터 저장소 연결에 사용된다. |
| 8080 | HTTP (Alt) | TCP | 등록된 포트 | HTTP의 대체 포트로, 프록시 서버나 개발용 웹 서버에서 자주 사용된다. |
| 8443 | HTTPS (Alt) | TCP | 등록된 포트 | HTTPS의 대체 포트로, Tomcat 등 애플리케이션 서버에서 자주 사용된다. |
| 9200 | Elasticsearch | TCP | 등록된 포트 | Elasticsearch REST API 연결에 사용된다. |
| 27017 | MongoDB | TCP | 등록된 포트 | MongoDB 데이터베이스 연결에 사용된다. |
포트 번호란? 잘 알려진 포트・등록된 포트・동적 포트의 차이
포트 번호는 하나의 컴퓨터에서 실행되는 여러 네트워크 서비스를 구분하기 위한 16비트 식별 번호(0~65535)입니다. IP 주소가 통신 상대방 컴퓨터를 특정하는 반면, 포트 번호는 그 컴퓨터 안의 어떤 애플리케이션으로 통신을 보낼지를 특정합니다. 같은 서버라도 80번은 웹 서버, 22번은 SSH 서비스가 처리하는 식으로, 포트 번호에 따라 통신이 전달되는 서비스가 달라집니다.
IANA(국제 인터넷 주소 관리기구)는 포트 번호를 세 가지 범위로 나누어 관리합니다. 0~1023번의 "잘 알려진 포트(Well-known Ports)"는 HTTP・SSH처럼 널리 쓰이는 표준 서비스 전용으로 예약되어 있고, 1024~49151번의 "등록된 포트(Registered Ports)"는 기업이나 프로젝트가 자체 프로토콜을 위해 신청해 등록할 수 있는 범위이며, 49152~65535번의 "동적(임시) 포트"는 운영체제가 클라이언트의 임시 발신 포트로 자유롭게 할당하는 범위입니다. 이 도구는 주요 포트 번호와 그 프로토콜・TCP/UDP 구분・범위 분류를 검색 필터와 함께 한눈에 볼 수 있게 정리해, 방화벽 설정이나 접속 오류 조사 시 빠르게 참고할 수 있도록 합니다.
포트 번호 목록 사용법
- 찾고 싶은 포트 번호나 서비스명을 입력한다 검색창에 포트 번호(예: 443)나 프로토콜명(예: SSH, MySQL)을 입력하면 일치하는 행만 남습니다.
- TCP/UDP로 좁혀본다 "TCP" 또는 "UDP"를 입력하면 전송 계층 종류로도 필터링할 수 있습니다. 같은 번호라도 프로토콜에 따라 용도가 다를 수 있으니 확인하세요.
- 용도 설명을 읽는다 각 행의 "용도" 열에서 해당 포트가 어떤 서비스에 쓰이는지 확인할 수 있습니다. 방화벽 규칙을 작성하기 전 근거로 활용하세요.
- 범위 분류를 확인한다 잘 알려진 포트・등록된 포트・동적 포트 중 어디에 속하는지 보고, 자체 애플리케이션에 어떤 범위의 번호를 써야 할지 판단합니다.
더 잘 활용하기 위한 팁
- 방화벽 규칙을 작성할 때는 실제로 필요한 포트만 열고 나머지는 기본적으로 차단(default deny)하는 것이 수십 년간 변하지 않은 보안의 기본 원칙입니다.
- "연결 거부(Connection refused)" 오류가 발생하면 먼저
netstat -an이나ss -tlnp등으로 해당 포트에서 서비스가 실제로 대기 중인지 확인하세요. - 80번・443번 같은 "잘 알려진 포트"(0~1023)는 대부분의 운영체제에서 바인딩하려면 관리자 권한이 필요하기 때문에, 일반 권한 애플리케이션은 8080번 같은 대체 포트를 사용하는 경우가 많습니다.
- 같은 서비스라도 평문 버전(예: 80/HTTP, 21/FTP)과 암호화 버전(예: 443/HTTPS, 990/FTPS)은 포트 번호가 다른 경우가 많으니 혼동하지 않도록 주의하세요.
- 이 목록의 포트 번호는 AWS・GCP・Azure 등 클라우드 환경의 보안 그룹 설정에도 그대로 적용할 수 있습니다.
포트 번호 목록의 활용 사례
방화벽 규칙 설정
iptables・ufw나 클라우드 보안 그룹에서 허용할 포트를 정할 때, 표준 번호와 용도를 이 목록으로 확인할 수 있습니다.
"연결 거부" 원인 조사
접속 오류가 발생했을 때 대상 포트가 본래 어떤 서비스용인지 확인해, 의도한 대상에 접속을 시도하고 있는지 판별할 수 있습니다.
보안 점검・개방 포트 점검
서버에서 열려 있는 포트를 점검할 때, 불필요한 번호가 열려 있지 않은지 이 목록과 대조해 확인할 수 있습니다.
Docker・클라우드 포트 매핑 설계
컨테이너나 클라우드 인스턴스의 포트를 공개할 때, 잘 알려진 서비스와 충돌하지 않는 번호나 8080・8443 같은 흔한 대체 포트를 고르는 데 참고할 수 있습니다.
포트 번호 용어집
- 잘 알려진 포트(Well-known Port)
- 0~1023번 범위로, HTTP・SSH처럼 널리 쓰이는 표준 서비스 전용으로 IANA가 예약해 둔 포트 번호입니다.
- TCP(전송 제어 프로토콜)
- 전달 확인과 재전송을 수행하는 신뢰성 중심 프로토콜로, 웹페이지 로딩이나 파일 전송처럼 정확한 전달이 필요한 용도에 쓰입니다.
- UDP(사용자 데이터그램 프로토콜)
- 전달 확인을 생략한 경량 프로토콜로, DNS 조회나 온라인 게임처럼 속도가 우선되는 용도에 쓰입니다.
- 포트 스캔
- 대상 컴퓨터의 어떤 포트가 열려 있는지 외부에서 하나씩 조사하는 행위로, 공격 사전 조사와 취약점 점검 양쪽에 쓰입니다.
- 방화벽
- 특정 포트나 IP 주소로 향하는 통신만 허용하고 나머지는 차단하는 네트워크 방어 장치입니다.
- 임시 포트(동적 포트)
- 클라이언트가 접속할 때마다 운영체제가 자동으로 할당하는 임시 발신 포트로, 49152~65535번 범위에서 선택됩니다.
- 소켓
- IP 주소와 포트 번호의 조합으로, 네트워크 연결의 한쪽 끝을 고유하게 식별하는 단위입니다.
자주 묻는 질문
iptables・ufw・보안 그룹 등)이 그 포트로의 통신을 차단하고 있지 않은지 확인합니다.
여담이지만 ― 포트 번호가 65535까지밖에 없는 이유
포트 번호가 0~65535 범위에 그치는 이유는 TCP/UDP 헤더에서 포트 번호 필드가 16비트(2바이트)로 정의되어 있기 때문입니다. 2의 16제곱은 65536이며, 0번을 제외한 1~65535가 실제로 사용 가능한 범위가 됩니다. 이 설계는 1980년대 초 TCP/IP가 표준화될 때 정해진 것으로, 지금까지 변경된 적이 없습니다.
IANA(국제 인터넷 주소 관리기구)는 모든 포트를 세 가지 범위로 나누어 관리합니다. 0~1023번의 "잘 알려진 포트(Well-known Ports)"는 HTTP・SSH처럼 널리 쓰이는 서비스 전용으로 예약되어 있고, 1024~49151번의 "등록된 포트(Registered Ports)"는 기업이나 프로젝트가 신청해 등록할 수 있는 범위이며, 49152~65535번의 "동적・사설 포트"는 클라이언트가 임시 발신 포트로 자유롭게 사용하는 범위입니다.
80번(HTTP)이나 443번(HTTPS)처럼 널리 알려진 포트도 처음부터 지금의 용도로 정해져 있던 것은 아닙니다. 443번이 HTTPS용으로 할당된 것은 1994년, Netscape사가 SSL(Secure Sockets Layer)을 개발하면서 IANA에 신청한 것이 계기였습니다.
포트 스캔을 통한 부정 접근을 막기 위해, 실제 운영 서버에서는 SSH의 기본 포트(22번)를 다른 번호로 변경하는 "포트 노킹" 같은 기법을 쓰기도 합니다. 다만 이는 "보안을 통한 은폐(security by obscurity)"에 불과하며, 강력한 인증이나 최신 패치 적용 같은 근본적인 대책을 대신할 수는 없다는 점에 주의해야 합니다.