Postfix: 포트 25를 통한 인증 비활성화

Postfix: 포트 25를 통한 인증 비활성화

메일서버에서 사용시 보통 3개 이상의 포트가 열려있습니다 Postfix.IMAP

25 smtp   : incoming emails from anybody (whole internet)
465 smtps : outgoing emails from authorized users (to the whole intenet)
993 imap  : imap for authorized users

승인된 사용자가 465를 통해서만 이메일을 보낼 수 있도록 postfix를 구성하고 싶습니다. 기본적으로는 그렇지 않습니다. 사용자는 포트 25를 통해 STARTTLS를 사용할 수도 있습니다. 비활성화하고 싶습니다.

내 계획은 대중이 나에게 이메일을 보낼 때 포트 25를 사용하는 것입니다.

내 사용자를 위해 포트 465 사용(방화벽을 사용하여 특정 IP 범위를 허용하거나 사용자 지정 포트를 사용할 수 있음)

이렇게 하면 해커가 사용자/비밀번호를 추측하려고 시도하는 무차별 대입 공격에 의해 포트 25가 악용되는 것을 방지할 수 있습니다. 포트 25는 사용자/비밀번호가 유효하더라도 전혀 허용하지 않습니다. 그리고 포트 465는 방화벽에 의해 제한되어 있으므로 해커는 포트 465를 사용할 수 없습니다.

Postfix에서 이것이 가능합니까?

Debian Wheezy에서 Postfix 2.9.6-2를 사용하고 있습니다.

답변1

경고하다:
기본 메일 릴레이 포트에서 TLS(암호화)를 비활성화하여 해당 포트를 통해 전송된 데이터가 제3자 수신기 및/또는 진행 중인 수정에 노출되었기 때문에 이 요청은 모범 보안 사례를 따르지 않습니다. 아래 답변은 요청을 이행하지만 모범 사례에서는 STARTTLS를 사용하려면 포트 25 연결도 필요합니다.

master.cf파일(보통 /etc/postfix/master.cf)은 특정 Postfix 서비스의 시작 및 구성을 제어합니다. 문서에 따르면 이 파일의 유사한 구성으로 원하는 작업을 수행할 수 있습니다.

smtp  inet  n  -  -  -  -  smtpd
  -o smtpd_tls_security_level=none
  -o smtpd_sasl_auth_enable=no

smtps inet  n  -  -  -  -  smtpd
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject

이 구성은 인증과 포트 25의 STARTTLS 옵션을 끕니다. 포트 465에서 STARTTLS 옵션을 켜고, STARTTLS를 요구하고, 인증을 활성화하고, 인증된 경우에만 클라이언트 연결을 허용합니다.

smtpd_tls_wrappermodeSTARTTLS 연결이 아닌 실제 TLS 연결을 강제하는 옵션을 살펴볼 수도 있습니다 .

이 구성으로 인해 Postfix 구성을 따르기가 약간 어려울 수 있습니다(옵션은 에서 설정한 main.cf다음 에서 재정의 할 수 있음 master.cf). 또 다른 옵션은 Postfix의 여러 인스턴스를 실행하는 것입니다. 각 인스턴스에는 이러한 옵션을 지정하는 자체 main.cf구성 파일이 있습니다.

관련 정보