포트(Port) 개념 – 서버에서 숫자가 중요한 이유

1. 같은 서버인데 왜 연결이 달라질까?

하나의 서버 컴퓨터에서 웹사이트도 운영하고, 이메일도 처리하고, 데이터베이스도 동작시킬 수 있습니다. IP 주소는 서버를 찾아가는 주소인데, 하나의 IP 주소로 어떻게 여러 서비스를 구분할 수 있을까요?

이 문제를 해결하는 것이 바로 **포트(Port)**입니다.

2. 포트란 무엇인가?

**포트(Port)**는 하나의 IP 주소를 가진 서버에서 서로 다른 서비스를 구분하기 위한 번호입니다.

가장 직관적인 비유는 아파트 호수입니다. 아파트 단지 주소(IP 주소)가 같아도 101동 201호와 101동 202호는 전혀 다른 집이듯, 같은 서버의 80번 포트와 3306번 포트는 완전히 다른 서비스를 가리킵니다.

또 다른 비유로는 회사 내선 번호가 있습니다. 회사 대표 번호(IP)는 하나지만, 영업팀(포트 80), 인사팀(포트 443), 전산팀(포트 22)처럼 내선 번호를 통해 원하는 부서에 연결할 수 있습니다.

3. 포트 번호의 범위와 구분

포트 번호는 0번부터 65535번까지, 총 65536개가 존재합니다. 이 범위는 세 구간으로 나뉩니다.

0번부터 1023번까지는 **잘 알려진 포트(Well-known ports)**로, 국제 표준으로 지정된 주요 서비스에 사용됩니다. 1024번부터 49151번까지는 **등록된 포트(Registered ports)**로, 특정 애플리케이션들이 관례적으로 사용합니다. 49152번부터 65535번까지는 **동적 포트(Dynamic ports)**로, 임시 연결이나 자유롭게 사용할 수 있는 포트입니다.

4. 반드시 알아야 할 주요 포트 번호

포트서비스설명
80HTTP암호화되지 않은 일반 웹 접속
443HTTPSSSL/TLS 암호화 보안 웹 접속
22SSH서버 원격 접속 (보안 터미널)
21FTP파일 전송
25SMTP이메일 발송
3306MySQLMySQL 데이터베이스
5432PostgreSQLPostgreSQL 데이터베이스
27017MongoDBMongoDB 데이터베이스
6379RedisRedis 캐시 서버

특히 80번과 443번은 웹 서버 운영에서 가장 중요한 포트입니다. 브라우저는 http://로 시작하는 주소에는 자동으로 80번 포트를, https://로 시작하는 주소에는 자동으로 443번 포트를 사용합니다. 그래서 우리가 URL 뒤에 포트 번호를 따로 입력하지 않아도 됩니다.

5. 포트와 IP를 함께 사용하는 방법

특정 포트에 접속할 때는 IP 주소(또는 도메인) 뒤에 콜론(:)을 붙이고 포트 번호를 입력합니다.

주소:포트 형태로 사용하며, 예를 들면 192.168.0.1:8080 또는 myblog.com:3000처럼 씁니다.

80번과 443번은 기본값이라 생략 가능합니다. myblog.com은 실제로 myblog.com:443(HTTPS 환경에서) 또는 myblog.com:80과 같은 의미입니다.

6. 개발할 때 자주 보는 포트 번호들

실제 개발 환경에서 자주 쓰이는 포트들이 있습니다.

Node.js 개발 서버는 관례적으로 3000번을 사용합니다. Spring Boot 개발 서버는 관례적으로 8080번을 사용합니다. React 개발 서버는 관례적으로 3000번, Vue는 5173번이나 8080번을 주로 사용합니다.

이처럼 표준으로 정해진 것은 아니지만, 개발자들 사이에서 관례적으로 쓰이는 포트들이 있습니다.

7. 서버 운영에서 포트가 중요한 이유

서버를 운영할 때 포트 관리는 보안과 직결됩니다.

열려 있는 포트는 외부에서 해당 서비스에 접근할 수 있는 통로입니다. 따라서 사용하지 않는 포트는 방화벽으로 닫아두는 것이 기본 보안 원칙입니다.

예를 들어 웹 서버만 운영한다면 80번과 443번, 관리를 위한 SSH 22번만 열고 나머지는 모두 차단하는 식으로 운영합니다. MySQL 3306번 포트는 같은 서버 내부에서만 접근하고 외부에서는 접근할 수 없도록 차단하는 것이 보안 관점에서 올바릅니다.

또한 SSH 기본 포트 22번은 해커들이 자동으로 공격을 시도하는 포트이므로, 다른 번호로 변경하는 것이 권장됩니다.

8. 정리 및 다음 단계

오늘 배운 핵심을 정리합니다.

  • 포트는 하나의 서버에서 여러 서비스를 구분하기 위한 번호입니다.
  • 0번~65535번까지 존재하며, 주요 서비스는 정해진 포트 번호를 사용합니다.
  • 80번(HTTP), 443번(HTTPS), 22번(SSH), 3306번(MySQL)은 반드시 기억해야 할 포트입니다.
  • 서버 보안을 위해 필요한 포트만 열고 나머지는 방화벽으로 차단합니다.

다음 글에서는 클라이언트-서버 구조가 실제로 어떻게 동작하는지 요청과 응답 흐름을 중심으로 알아보겠습니다.

댓글 남기기

광고 차단 알림

광고 클릭 제한을 초과하여 광고가 차단되었습니다.

단시간에 반복적인 광고 클릭은 시스템에 의해 감지되며, IP가 수집되어 사이트 관리자가 확인 가능합니다.