15장. 메일 서버
Red Hat Enterprise Linux는 이메일 제공 및 액세스를 위한 다양한 고급 애플리케이션을 제공합니다. 이 장에서는 현재 사용 중인 최신 이메일 프로토콜과 이메일을 보내고 수신하도록 설계된 일부 프로그램에 대해 설명합니다.
15.1. 이메일 프로토콜
현재 이메일은 클라이언트/서버 아키텍처를 사용하여 제공됩니다. 이메일 메시지는 메일 클라이언트 프로그램을 사용하여 생성됩니다. 이 프로그램은 서버에 메시지를 보냅니다. 그런 다음 서버는 메시지를 수신자의 이메일 서버로 전달합니다. 여기서 메시지가 수신자의 이메일 클라이언트에 제공됩니다.
이 프로세스를 지원하기 위해 다양한 표준 네트워크 프로토콜을 사용하면 다른 시스템, 종종 다른 운영 체제를 실행하고 다른 이메일 프로그램을 사용하여 이메일을 보내고 받을 수 있습니다.
다음 설명 된 프로토콜은 이메일 전송에 가장 일반적으로 사용됩니다.
15.1.1. 메일 전송 프로토콜
클라이언트 애플리케이션에서 서버로, 원본 서버에서 대상 서버로의 메일 전달은SMTP( Simple mail Transfer Protocol )에 의해 처리됩니다.
15.1.1.1. SMTP
SMTP의 주요 목적은 메일 서버 간에 이메일을 전송하는 것입니다. 그러나 이는 또한 이메일 고객에게도 중요합니다. 이메일을 보내기 위해 클라이언트는 발신 메일 서버로 메시지를 보냅니다. 그러면 배달을 위해 대상 메일 서버에 연결합니다. 그러나 더 많은 중간 SMTP 서버가 이 체인에 포함될 수 있습니다. 이 개념을 메일 릴레이라고 합니다. 따라서 이메일 클라이언트를 구성할 때 SMTP 서버를 지정해야 합니다.
Red Hat Enterprise Linux에서 사용자는 메일 전송을 처리하기 위해 로컬 시스템에서 SMTP 서버를 구성할 수 있습니다. 그러나 발신 메일에 대해 원격 SMTP 서버를 구성할 수도 있습니다.
SMTP 프로토콜에 대한 한 가지 중요한 점은 인증이 필요하지 않다는 것입니다. 이렇게 하면 인터넷의 모든 사람이 다른 사람이나 큰 그룹에도 이메일을 보낼 수 있습니다. 이 특징은 정크 이메일 또는 스팸 을 가능하게 하는 SMTP의 특징입니다. 중계 제한으로 인해 인터넷상의 임의의 사용자가 이메일을 SMTP 서버를 통해 보내는 것을 제한하며, 인터넷의 다른 서버로는 전송됩니다. 이러한 제한 사항을 적용하지 않는 서버를 공개 릴레이 서버라고 합니다.
Red Hat Enterprise Linux 7은78 및 Sendmail SMTP 프로그램을 제공합니다.
15.1.2. 메일 액세스 프로토콜
이메일 클라이언트 애플리케이션이 메일 서버에서 이메일을 검색하는 데 사용하는 두 가지 기본 프로토콜인POP( Post Office Protocol ) 및 RHSA( Internet Message Access Protocol )입니다.
15.1.2.1. POP
Red Hat Enterprise Linux의 기본 POP 서버는 Dovecot 이며 dovecot 패키지에서 제공합니다.
Dovecot 를 설치하려면 다음 명령을 실행합니다.
~]# yum install dovecot
YUM을 사용하여 패키지 설치에 대한 자세한 내용은 9.2.4절. “패키지 설치” 을 참조하십시오.
POP
서버를 사용하면 클라이언트 애플리케이션에서 이메일 메시지를 다운로드합니다. 기본적으로 대부분의 POP
이메일 클라이언트는 전송 후 이메일 서버에서 메시지를 삭제하도록 자동으로 구성되지만 이 설정은 일반적으로 변경할 수 있습니다.
POP
는 이메일 첨부 파일을 허용하는 Multipurpose Internet Mail Extensions (MIME)와 같은 중요한 인터넷 메시지 표준과 완전히 호환됩니다.
POP
는 이메일을 읽을 수 있는 시스템을 가진 사용자에게 가장 적합합니다. 또한 인터넷에 지속적으로 연결되지 않은 사용자 또는 메일 서버가 포함된 네트워크에서도 잘 작동합니다. 네트워크 연결이 느리기 때문에 POP
는 인증 시 각 메시지의 전체 콘텐츠를 다운로드하기 위해 클라이언트 프로그램이 필요합니다. 메시지가 큰 첨부 파일이 있는 경우 시간이 오래 걸릴 수 있습니다.
표준 POP
프로토콜의 최신 버전은 POP3
입니다.
그러나 덜 사용되는 다양한 POP
프로토콜 변형이 있습니다.
-
APOP -
POP3
MD5
인증 사용자 암호의 인코딩된 해시는 암호화되지 않은 암호를 전송하지 않고 이메일 클라이언트에서 서버로 전송됩니다. -
KPOP - Kerberos 인증을 사용하는
POP3
-
RPOP -
RPOP
인증을 사용하는POP3
. 이는 암호와 유사한 사용자별 ID를 사용하여 POP 요청을 인증합니다. 그러나 이 ID는 암호화되지 않으므로RPOP
는 표준POP
보다 더 안전하지 않습니다.
보안을 강화하기 위해 클라이언트 인증 및 데이터 전송 세션에SSL( Secure Socket Layer ) 암호화를 사용할 수 있습니다. SSL 암호화를 활성화하려면 다음을 사용합니다.
-
pop3s
서비스 -
stunnel
애플리케이션 -
starttls
명령
이메일 통신 보안에 대한 자세한 내용은 15.5.1절. “통신 보안” 을 참조하십시오.
15.1.2.2. IMAP
Red Hat Enterprise Linux의 기본 gRPC 서버는 Dovecot 이며 dovecot 패키지에서 제공합니다. Dovecot 를 설치하는 방법에 대한 자세한 내용은 15.1.2.1절. “POP” 을 참조하십시오.
gRPC 메일 서버를
사용하는 경우 사용자가 읽거나 삭제할 수 있는 서버에 이메일 메시지가 남아 있습니다. 클라이언트 애플리케이션에서는 또한 서버에서 메일 디렉터리를 생성, 이름 변경 또는 삭제하여 이메일을 구성 및 저장할 수 있습니다.
redfish
는 여러 시스템을 사용하여 이메일에 액세스하는 사용자에게 특히 유용합니다. 이 프로토콜은 또한 느린 연결을 통해 메일 서버에 연결하는 사용자에게 편리합니다. 이메일 헤더 정보 만 열 때까지 메시지에 다운로드되므로 대역폭을 절약할 수 있습니다. 사용자는 또한 보거나 다운로드 하지 않고 메시지를 삭제할 수 있는 기능이 있습니다.
편의를 위해 pxe
클라이언트 애플리케이션은 로컬로 메시지 사본을 캐싱할 수 있으므로, 사용자가 gRPC 서버에 직접 연결되지 않을 때 이전에 메시지를 읽을 수
있습니다.
POP
와 같은 IMAP
는 이메일 첨부 파일을 허용하는 MIME과 같은 중요한 인터넷 메시지 표준과 완벽하게 호환됩니다.
보안을 강화하기 위해 클라이언트 인증 및 데이터 전송 세션에 SSL
암호화를 사용할 수 있습니다. 이 기능은 SriovIBNetwork s 서비스를 사용하거나
stunnel
프로그램을 사용하여 활성화할 수 있습니다.
-
pop3s
서비스 -
stunnel
애플리케이션 -
starttls
명령
이메일 통신 보안에 대한 자세한 내용은 15.5.1절. “통신 보안” 을 참조하십시오.
상용, gRPC 클라이언트 및 서버뿐만 아니라 기타 무료도 사용할 수 있으며, 많은 경우 operations 중 많은 사용자가 operations를 확장하고 추가 기능을 제공합니다.
15.1.2.3. dovecot
dove cot 패키지에 포함된 마스터
및 dovecot
데몬에 의해 creatingvv 및 POP3
프로토콜을 구현하는 redfish-loginpop3-login
프로세스는 dovecot 데몬에 의해 생성됩니다. DestinationRule 및
POP
의 사용은 /etc/dovecot/dovecot.conf
구성 파일을 통해 구성됩니다. 기본적으로 dovecot
는 SSL
을 사용하여 보안 버전과 함께 gRPC 및 POP3
을 실행합니다.
POP
를 사용하도록 dovecot
를 구성하려면 다음 단계를 완료합니다.
/etc/dovecot/dovecot.conf
구성 파일을 편집하여프로토콜
변수의 주석을 제거하고 행 시작 시 해시 기호(#
) 삭제)에pop3
인수가 포함되어 있는지 확인합니다. 예를 들면 다음과 같습니다.protocols = imap pop3 lmtp
protocols
변수가 주석 처리되면dovecot
는 위에서 설명한 대로 기본값을 사용합니다.root
로 다음 명령을 실행하여 현재 세션에 대해 작동을 변경합니다.~]# systemctl restart dovecot
다음 재부팅 후 명령을 실행하여 변경합니다.
~]# systemctl enable dovecot Created symlink from /etc/systemd/system/multi-user.target.wants/dovecot.service to /usr/lib/systemd/system/dovecot.service.
참고dovecot
는 pxe 서버를 시작한 보고서만 보고하지만POP3
서버도 시작합니다.
SMTP
와 달리 redfish 및
POP3
모두 사용자 이름 및 암호를 사용하여 클라이언트를 인증해야 합니다. 기본적으로 두 프로토콜의 암호는 암호화되지 않은 네트워크를 통해 전달됩니다.
dovecot
에서 SSL
을 구성하려면 다음을 수행합니다.
/etc/dovecot/conf.d/10-ssl.conf
구성을 편집하여ssl_protocols
변수의 주석을 제거하고!SSLv2 !SSLv3
인수가 포함되어 있는지 확인합니다.ssl_protocols = !SSLv2 !SSLv3
이 값을 사용하면
dovecot
가 SSL 버전 2와 3을 방지할 수 있으며 둘 다 안전하지 않은 것으로 알려져 있습니다. 이는 POODLE에서 설명하는 취약점으로 인한 것입니다. SSLv3 취약점 (CVE-2014-3566). Etcd 및 Dovecot에서 POODLE SSL 3.0 취약점(CVE-2014-3566)에 대한 확인 을 참조하십시오./etc/dovecot/conf.d/10-ssl.conf
에 다음 옵션이 포함되어 있는지 확인합니다.ssl=required
-
원하는 대로
/etc/pki/dovecot/dovecot-openssl.cnf
구성 파일을 편집합니다. 그러나 일반적인 설치에서는 이 파일을 수정할 필요가 없습니다. -
/etc/pki/dovecot/certs/dovecot.pem
및/etc/pki/dovecot/private/dovecot.pem
파일의 이름을 변경, 이동 또는 삭제합니다. dovecot
자체 서명된 인증서를 생성하는/usr/libexec/dovecot/mkcert.sh
스크립트를 실행합니다. 이러한 인증서는/etc/pki/dovecot/certs
및/etc/pki/dovecot/private
디렉터리에 복사됩니다. 변경 사항을 구현하려면root
로 다음 명령을 실행하여dovecot
를 다시 시작합니다.~]# systemctl restart dovecot
Dovecot
에 대한 자세한 내용은 http://www.dovecot.org 에서 확인할 수 있습니다.