개발학습기

포트(Port)

afkorigin 2024. 12. 29. 16:03

전체목록

프로토콜

SSH

 

 

  • 포트란?

포트는 네트워크 통신에서 데이터를 송수신하기 위해 사용하는 논리적인 경로이다.

주로 컴퓨터와 인터넷에서 특정 프로그램이나 서비스가 데이터를 주고 받기위해 사용하는

문 또는 통로로 비유할 수 있다.

포트는 IP 주소와 결합되어 네트워크 상에서 데이터를 정확히 어디로 보낼지 지정한다.

 

 

  • 포트의 기본개념

IP 주소: 네트워크 상의 특정 장치를 식별하는 주소

 

포트 번호: 네트워크 상에서 실행중인 특정 애플리케이션이나 서비스를 식별하는 번호

 

포트번호는 네트워크 계층 중 전송 계층의 프로토콜인 TCP와 UDP에서 주로 사용된다.

 

 

  • 포트 번호의 구조

포트 번호는 0부터 65535까지의 범위를 가진다. 이 번호는 16비트 숫자로 구성되어 있다.

 

0~1023(Well-Known Ports)

잘 알려진 표준 서비스들이 사용하는 포트이다.

80번: HTTP(웹서비스)

443번: HTTPS(보안 웹 서비스)

22번: SSH(원격 접속)

25번: SMTP(이메일 송신)

 

1024~49151(Registered Ports)

특정 애플리케이션이나 서비스가 등록하여 사용하는 포트

3306번: MySQL 데이터베이스

5432번: PostagreSQL 데이터베이스

 

49152~65535(Dynamic/Private Ports)

일시적으로 할당되는 포트

주로 클라이언트 애플리케이션에서 사용된다.

 

 

  • 포트의 작동원리

1. 클라이언트와 서버 간 통신

클라이언트는 서버의 IP주소와 포트 번호를 사용하여 요청을 보낸다.

 

서버는 해당 포트 번호를 통해 요청을 처리하고 필요한 응답을 보낸다.

 

2. 포트 매핑

서버가 여러 서비스를 제공한다면 각 서비스는 고유한 포트 번호를 가진다.

웹 서버는 80번 포트

데이터 베이스 서버는 3306번 포트

 

3. 방화벽과 포트

네트워크 보안을 위해 방화벽에서 특정 포트를 차단하거나 허용할 수 있다.

예: 보안 정책에 따라 80번 포트는 허용하지만, 23번(Telnet)포트는 차단.

 

 

  • 포트 스캐닝

 

포트 스캐닝은 네트워크 보안에서 중요한 개념으로 특정 시스템에서 열려 있는

포트를 확인하는 과정이다.

 

목적

네트워크 취약점 적검

악의적인 공격을 위해 사용하는 경우도 있다.

 

스캔 방법

nmap 같은 도구를 사용하여 특정IP에서 열려있는 포트를 탐색

 

  • 포트와 프로토콜의 관계

포트 번호는 특정 프로토콜과 연결되어 있다.

TCP 포트: 신뢰성 있는 데이터 전송에 사용

예: 웹 브라우저에서의 HTTP/HTTPS 요청

 

UDP 포트: 신뢰성보다 속도가 중요한 경우 사용

예: 동영상 스트리밍, VoIP(음성 통화)

 

 

  • 포트 사용 확인하기

현재 열려 있는 포트와 연결 상태 확인

netstat -an

 

 

특정 포트가 사용중인지 확인

netstat -an | find "포트번호"

 

 

 

  • 정리

포트는 비슷한 역할을 가진 IP와 엔드포인트와 비교해보면 이해하기 쉽다.

 

IP는 어떤특정 컴퓨터 포트는 그 컴퓨터의 특정 서비스 엔드포인트는 그서비스의 구체적인 기능

 

포트와 엔드포인트 모두 요청을 특정 대상으로 전달하는 역할을 하지만 포트는

네트워크 수준에서 서버에 접근하도록 하고 엔드 포인트는 애플리케이션 내부에서 세부기능 요청을

전달한다.

'개발학습기' 카테고리의 다른 글

세션(Session)  (0) 2024.12.29
FTP(File Transfer Protocol)  (0) 2024.12.29
SFTP(Secure File Transfer Protocol)  (0) 2024.12.28
SCP(Secure Copy Protocol)  (0) 2024.12.28
SSH Server  (1) 2024.12.28