Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

11장. 트래픽과 접근 제어의 이해

이 장에서 말하고자 하는 것

10장에서 우리는 다음을 배웠다.

  • 도메인은 DNS를 통해 IP로 변환된다.
  • 서버는 IP와 포트로 식별된다.
  • 사설 IP와 공인 IP는 용도가 다르다.
  • 포트는 서버 안의 서비스를 구분한다.

그렇다면 이제 질문이 생긴다.

서버는 아무나 언제든지 접근할 수 있을까?

답은 아니다.


1. 서버는 기본적으로 열려 있지 않다

보안을 생각해보자.

  • 데이터베이스가 인터넷에 그대로 공개되어 있다면?
  • 관리자 접속 포트가 모든 사람에게 열려 있다면?

매우 위험하다.

그래서 서버는 기본적으로
모든 접근을 허용하는 것이 아니라 차단하는 것이 원칙이다.

필요한 것만 열어준다.

이것이 접근 제어(Access Control)다.


2. 트래픽이란 무엇인가

네트워크에서 오가는 데이터를 트래픽(Traffic)이라고 한다.

서버 기준으로 보면
트래픽은 두 방향이 있다.

  • 들어오는 트래픽
  • 나가는 트래픽

이를 인바운드와 아웃바운드라고 부른다.


3. 인바운드와 아웃바운드

인바운드(Inbound)

외부 → 서버로 들어오는 트래픽

예:

  • 사용자가 웹사이트 접속
  • 개발자가 원격 접속

아웃바운드(Outbound)

서버 → 외부로 나가는 트래픽

예:

  • 외부 API 호출
  • 패키지 다운로드
  • 운영체제 업데이트

4. 포트를 연다는 의미

10장에서 포트를 배웠다.

  • 80 → HTTP
  • 443 → HTTPS
  • 22 → SSH
  • 3306 → MySQL

이제 중요한 질문이 있다.

“포트를 연다”는 것은 무엇을 의미할까?

그 의미는 다음과 같다.

특정 포트로 들어오는 인바운드 트래픽을 허용한다는 것

예를 들어:

  • 443번 포트 인바운드 허용 → 웹 접속 가능
  • 22번 포트 특정 IP만 허용 → 관리자만 접속 가능
  • 3306번 포트 외부 차단 → 데이터베이스 보호

포트와 접근 제어는 항상 함께 작동한다.


5. 접근 제어의 실제 예시

웹 서버의 경우

  • 인바운드 443 허용 (모든 사용자)
  • 인바운드 22는 관리자 IP만 허용
  • 아웃바운드는 외부 API 호출 가능

데이터베이스 서버의 경우

  • 인바운드 외부 전면 차단
  • 내부 서버 IP만 허용
  • 아웃바운드는 필요 시 허용

이렇게 하면
외부에서 DB에 직접 접근하는 위험을 막을 수 있다.


6. 왜 기본은 차단인가

보안의 기본 원칙은 다음과 같다.

필요한 것만 허용하고, 나머지는 차단한다.

이를 최소 권한 원칙(Principle of Least Privilege)이라고 한다.

인터넷에 연결된 서버는
항상 외부의 접근 시도를 받을 수 있다.

따라서 “기본 허용”은 매우 위험하다.


7. 이 장의 핵심 정리

  1. 서버는 기본적으로 열려 있지 않다.
  2. 트래픽은 인바운드와 아웃바운드로 나뉜다.
  3. 포트를 연다는 것은 해당 서비스 접근을 허용한다는 의미다.
  4. 접근 제어는 보안을 위한 기본 장치다.
  5. 최소 권한 원칙은 서버 설계의 기본이다.