computer_science/network

[컴퓨터네트워크] 08. 네트워크 서비스

렁치 2026. 8. 26. 17:22

앞에서 배운 HTTP·FTP·SMTP 같은 프로토콜은 이론으로 끝나지 않는다.
실제로 내 컴퓨터를 웹 서버나 파일 서버로 만들어 동작시킬 수 있다.
오늘은 윈도우의 IIS를 통해 웹·파일·메일 서비스를 직접 구축하는 관점에서 네트워크 서비스를 정리했다.


1. IIS: 윈도우의 서버 도구

IIS (Internet Information Service)
마이크로소프트가 제공하는 서버 운영 도구로, 별도 프로그램 설치 없이 윈도우에서 웹(WWW)·FTP 서버를 구축할 수 있다. 제어판의 "Windows 기능 켜기/끄기"에서 인터넷 정보 서비스를 체크하면 활성화된다.

전용 서버 소프트웨어를 따로 깔지 않고도, 내 PC를 서버로 바꿔 클라이언트의 요청을 받게 하는 것이다. 그동안 이론으로만 배운 클라이언트-서버 구조를 내 PC로 직접 해볼 수 있다는 게 흥미로웠다. 학습용으로 프로토콜의 동작을 직접 확인하기에 좋다.


2. 웹 서비스 (HTTP / WWW)

웹 서비스는 HTTP 프로토콜과 TCP 포트 80을 쓰며, HTML 문서를 브라우저에 보여준다. IIS에서 웹사이트를 만들면 기본 홈 디렉터리는 C:\inetpub\wwwroot이고, 여기에 HTML 파일을 두면 외부에서 접근할 수 있다.

한 대의 컴퓨터로 여러 웹사이트 운영하기
다음 중 하나라도 다르면 별개의 사이트로 구분된다.
  • IP 주소 (NIC가 여럿이거나 한 NIC에 여러 IP)
  • 포트 번호 (:80 vs :2000)
  • 호스트 헤더 정보 (도메인 이름)

이 원리 덕에 한 서버가 수많은 도메인을 호스팅할 수 있다. 웹 호스팅 업체가 서버 한 대로 여러 고객의 사이트를 운영하는 게 바로 이 "호스트 헤더로 구분"하는 방식이었다. 포트가 프로그램을 구분한다던 전송 계층 개념이, 여기선 사이트 구분으로 확장됐다.


3. 파일 전송 서비스 (FTP)

FTP 서비스는 클라이언트가 서버에 파일을 업로드·다운로드하게 해주며, 포트 21을 쓴다. ftp://192.168.x.x/ 형태로 접속하고 사용자 이름과 암호로 인증한다.

외부에서 접속하게 하려면 방화벽의 인바운드 규칙에서 FTP를 허용해야 한다.

익명 FTP와 보안
FTP는 기본적으로 통신 내용이 평문이라 도청에 취약하다. 특히 누구나 접속하는 익명(anonymous) FTP는 정보 유출 위험이 크다. 그래서 실무에서는 인증을 두고, SSL로 통신을 암호화하는 FTPS나 SFTP를 권장한다.

4. 메일 서비스 (SMTP / POP3)

메일 서버는 우체국에 비유하면 이해가 쉽다.

서비스 역할
SMTP (전송) 다른 메일 서버로 메일을 보냄 (우편 발송)
SMTP (수신) 들어오는 메일을 받아 보관 (우체통)
POP3 클라이언트가 접속해 메일을 가져감 (방문 수령)

보내는 일은 SMTP가, 받는 일은 POP3(또는 IMAP)가 담당한다는 구분이 핵심이다. 메일 서버 사이의 전달도 SMTP로 이뤄진다.


오늘 느낀 점

  • 이론으로만 알던 HTTP·FTP·SMTP를 IIS로 직접 서버로 띄워볼 수 있다는 게 가장 컸다. "프로토콜을 안다"와 "서버를 연다"는 다른 차원의 이해였다.
  • 포트가 프로그램을 구분한다던 전송 계층 개념이, 여기선 한 서버로 여러 사이트를 운영하는 방식(IP·포트·호스트 헤더)으로 확장됐다.
  • 서버를 연다는 게 곧 외부에 문을 여는 일이라, 방화벽·익명 접속 같은 보안 고려가 따라온다는 걸 알았다. 편의와 보안이 늘 함께였다.

한 걸음 더

  • "IP·포트·호스트 헤더 중 하나만 달라도 별개 사이트"라는 규칙은 가상 호스팅의 토대다. 특히 호스트 헤더(도메인) 기반 구분은 HTTP/1.1에서 Host 헤더가 필수가 되면서 가능해졌다. 덕분에 IP 하나로 수백 개 사이트를 운영할 수 있어, 부족한 IPv4 주소를 아끼는 데도 기여했다.
  • 직접 메일 서버를 세워도 실제로 메일을 보내기는 어렵다. 스팸을 막기 위해 받는 쪽 서버들이 발신 서버의 신뢰도(SPF·DKIM·DMARC 같은 인증, IP 평판)를 까다롭게 검사하기 때문이다. 그래서 학습용으로는 IIS로 구축해보되, 실서비스 메일은 검증된 메일 서비스를 쓰는 게 일반적이다.
  • 내 PC를 서버로 열 때 가장 먼저 부딪히는 벽이 방화벽과 공유기(NAT)다. 외부에서 들어오는 연결을 허용하도록 방화벽 인바운드 규칙을 열고, 공유기에서 포트 포워딩을 설정해야 비로소 외부 접속이 된다. 서버를 "여는" 일이 곧 보안 표면을 넓히는 일이라, 신중해야 하는 이유이기도 하다.