1. 라이브러리
  2. 포트
  3. 주요 포트 참조표

업데이트됨 1개월 전

이메일을 확인할 때, 본인도 모르는 사이에 포트 993을 사용하고 있을 가능성이 높습니다. 이 포트는 IMAPS—인터넷 메시지 접근 프로토콜 보안(Internet Message Access Protocol Secure)—를 처리합니다. 인터넷을 통해 전송되는 이메일을 보호하는 IMAP의 암호화 버전입니다.

포트 993은 단순히 "암호화가 추가된 IMAP"이 아닙니다. 포트 143의 IMAP과는 근본적으로 다른 보안 철학을 담고 있으며, 바로 그 차이 때문에 포트 993이 유일하게 올바른 선택입니다.

IMAPS란 무엇인가?

IMAPS는 연결이 시작되는 첫 순간부터 TLS 암호화로 감싸진 IMAP입니다. 프로토콜 자체는 표준 IMAP과 동일합니다—메시지를 동기화하고, 폴더를 관리하고, 이메일을 읽음으로 표시하고, 편지함을 검색합니다. 차이점은 기기와 메일 서버 사이를 오가는 모든 바이트가 암호화된다는 것입니다: 비밀번호, 이메일 내용, 심지어 어떤 폴더를 탐색하는지까지요.

이를 묵시적 TLS라고 합니다. 협상도 없고, 업그레이드 요청도 없으며, 서버가 지원해 주길 기대하는 것도 없습니다. 연결이 암호화되거나, 아니면 연결 자체가 이루어지지 않습니다.

STARTTLS 문제

포트 143은 STARTTLS라는 다른 방식을 사용합니다. 이메일 클라이언트가 암호화 없이 먼저 연결하고, 인사를 나눈 다음, TLS로 업그레이드하기 위해 STARTTLS 명령을 보냅니다.

실제로 어떤 일이 벌어지는지 살펴봅시다:

  1. 클라이언트가 평문으로 연결합니다
  2. 클라이언트가 평문으로 자신을 알립니다
  3. 클라이언트가 암호화로 업그레이드를 요청합니다
  4. 서버가 동의하면 암호화가 시작됩니다
  5. 그제서야 클라이언트가 비밀번호를 전송합니다

STARTTLS는 이미 방 안에서 비밀번호를 소리쳐 알린 후에야 문을 잠그는 것과 같습니다. 그 첫 몇 밀리초가 중요합니다.

더 심각한 문제는, 네트워크의 공격자가 STARTTLS 명령을 가로채 제거할 수 있다는 점입니다. 클라이언트는 암호화를 요청하지만, 그 요청이 서버에 도달하지 못합니다. 서버가 암호화로 응답하지 않으니, 클라이언트는 평문으로 계속 진행합니다. 이것은 이론 속의 공격이 아닙니다—잘못 구성된 클라이언트에서 실제로 작동하는 세 줄짜리 스크립트입니다.

포트 993은 이러한 공격 가능성을 원천 차단합니다. TLS 핸드셰이크는 이메일 프로토콜 명령이 교환되기 전에 즉시 시작됩니다. 평문 구간도 없고, 가로챌 업그레이드 요청도 없으며, 암호화가 활성화되어 있는지에 대한 모호함도 없습니다.

포트 993이 더 나은 이유

포트 993의 묵시적 TLS는 더 단순하고 안전합니다:

다운그레이드 공격이 불가능합니다. 처음부터 암호화되지 않은 적이 없는 연결에서 암호화를 제거할 수는 없습니다.

설정 실수가 없습니다. STARTTLS에서는 잘못 구성된 서버나 클라이언트가 실수로 암호화되지 않은 연결을 허용할 수 있습니다. 포트 993에서는 암호화가 필수이므로, 설정 오류가 발생할 여지가 없습니다.

구현이 더 단순합니다. 개발자들이 연결 도중 업그레이드하는 복잡함을 다룰 필요가 없습니다. 연결은 처음부터 암호화되어 있으며, 웹 전반에서 사용되는 것과 동일한 패턴을 따릅니다.

인증서 검증이 먼저 이루어집니다. STARTTLS에서는 업그레이드 후에 인증서를 검증하므로 구현 오류의 여지가 생깁니다. 포트 993에서는 초기 핸드셰이크 중에 검증이 이루어집니다.

웹 트래픽에서 HTTPS가 HTTP를 대체한 것처럼, 포트 993의 IMAPS는 이메일 접근을 보호하는 올바른 방법입니다. 업계의 기준은 "가능하면 암호화"에서 "무조건 암호화"로 바뀌었습니다.

인증서의 중요성

모든 TLS 서비스와 마찬가지로, IMAPS는 메일 서버에 유효한 인증서가 필요합니다—신뢰할 수 있는 인증 기관(CA)이 발급하고, 서버의 호스트명과 일치하며, 만료되지 않은 인증서여야 합니다.

이메일 클라이언트가 포트 993에 연결하면, 다음 단계로 넘어가기 전에 서버의 인증서를 검증합니다. 검증에 실패하면 대부분의 클라이언트는 연결을 거부합니다. 이는 누군가가 여러분의 메일 서버인 척하는 MITM 공격으로부터 보호해 줍니다.

메일 서버 관리자에게: 정식 인증서를 발급받으세요. Let's Encrypt에서 무료로 제공합니다. 일반 사용자에게: 이메일 클라이언트가 인증서 문제를 경고한다면, 무시하지 마세요. 그 경고가 손상된 연결과 여러분 사이의 유일한 방어막일 수 있습니다.

이메일 클라이언트 설정

대부분의 최신 이메일 클라이언트는 IMAPS를 자동으로 감지합니다. 이메일 주소를 입력하면 포트 993을 시도하고, 인증서를 확인하고, 암호화된 연결을 설정합니다.

수동으로 설정하는 경우, 다음이 필요합니다: 이메일 주소, 비밀번호, 수신 메일 서버 호스트명, 포트 993. "SSL/TLS" 또는 "보안 연결 사용"이라고 표시된 옵션을 찾으세요—이것이 묵시적 TLS를 사용함을 나타냅니다.

일부 클라이언트는 여전히 STARTTLS를 옵션으로 제공합니다. 항상 포트 993에서 SSL/TLS를 선택하세요. 묵시적 TLS를 사용할 수 있는데 STARTTLS를 선택할 이유는 없습니다.

IMAPS가 보호하는 것

IMAPS는 단순히 이메일 내용만 암호화하는 것이 아닙니다. 다음을 모두 보호합니다:

  • 자격 증명 — 비밀번호가 암호화되지 않은 상태로 전송되는 일이 없습니다
  • 메타데이터 — 누구와 통신하는지, 메시지가 언제 도착하는지, 제목 줄
  • 편지함 구조 — 어떤 폴더를 탐색하는지조차 외부에 노출되지 않습니다

이는 암호화되지 않은 이메일 트래픽을 손쉽게 가로챌 수 있는 공용 Wi-Fi 환경에서 특히 중요합니다. IMAPS 덕분에 카페에서 이메일을 확인하는 것이 집에서 확인하는 것만큼 안전합니다.

IMAPS에 대한 자주 묻는 질문

IMAP과 IMAPS의 차이점은 무엇인가요?

IMAP은 서버에서 이메일에 접근하기 위한 프로토콜입니다. IMAPS는 첫 번째 바이트부터 TLS 암호화가 필수 적용되는 IMAP입니다. 프로토콜 명령은 동일하며, 차이는 암호화가 언제 시작되느냐에 있습니다.

포트 993과 STARTTLS가 적용된 포트 143 중 어느 것을 사용해야 하나요?

포트 993을 사용하세요. STARTTLS는 공격자에 의해 제거될 수 있으며, 본인도 모르는 사이에 연결이 암호화되지 않은 상태가 될 수 있습니다. 포트 993은 즉시 암호화를 설정합니다.

이메일 클라이언트에 인증서 경고가 표시되는 이유는 무엇인가요?

메일 서버의 인증서가 만료되었거나, 자체 서명되었거나, 호스트명과 일치하지 않을 수 있습니다. 무시하지 마세요—MITM 공격을 나타낼 수 있습니다. 인증서 오류가 발생하면 이메일 제공업체에 문의하세요.

이메일 설정의 "SSL"이 IMAPS와 같은 건가요?

네. 이메일 클라이언트는 역사적인 이유로 묵시적 TLS를 "SSL" 또는 "SSL/TLS"로 표시하는 경우가 많습니다. "SSL"과 포트 993을 선택하면 최신 TLS 암호화를 사용하는 IMAPS를 사용하는 것입니다.

IMAPS를 사용하려면 특별히 해야 할 것이 있나요?

없습니다. 대부분의 이메일 클라이언트는 기본적으로 포트 993을 자동으로 사용합니다. STARTTLS가 아닌 SSL/TLS 옵션을 선택했는지 확인하면, 나머지는 클라이언트가 처리합니다.

이 페이지가 도움이 되었나요?

😔
🤨
😃