CentOS 6에 Postfix를 설치하는 방법
상태: 더 이상 사용되지 않음
이 문서에서는 더 이상 지원되지 않는 CentOS 버전에 대해 설명합니다. 현재 CentOS 6을 실행하는 서버를 운영 중인 경우 지원되는 CentOS 버전으로 업그레이드하거나 마이그레이션하는 것이 좋습니다.
이유:
대신 참조:
포스트픽스 소개
Postfix는 이메일을 라우팅하고 전달하는 무료 오픈 소스 메일 전송 에이전트입니다. Cyrus는 메일 자체를 정리하는 데 도움을 주는 서버입니다.
1단계 — Postfix 및 Cyrus 설치
가장 먼저 해야 할 일은 가상 사설 서버에 postfix와 Cyrus를 설치하는 것입니다. 가장 쉬운 방법은 yum 설치 프로그램을 이용하는 것입니다.
sudo yum install postfix
sudo yum install cyrus-sasl sudo yum install cyrus-imapd
물어볼 때마다 프롬프트에 예라고 대답합니다. 모든 구성 요소가 다운로드되면 postfix와 cyrus가 설치됩니다.
2단계 — Postfix 구성
두 프로그램을 별도로 구성할 예정입니다.
먼저 Postfix의 기본 구성 파일을 엽니다.
sudo vi /etc/postfix/main.cf
postfix 구성 파일은 매우 편리하고 상세하며 VPS에서 프로그램을 시작하고 실행하는 데 필요한 거의 모든 정보를 제공합니다. 불행히도 이것은 또한 매우 긴 파일을 만듭니다.
아래에 제안된 코드는 대부분의 경우 이미 파일에 있는 것의 단축되고 올바르게 주석이 제거된 버전입니다. Postfix를 설정하는 데 필요한 모든 구성을 제공하는 빠른 설정을 위해 Postfix의 현재 구성에 아래 정보를 복사하여 붙여넣으십시오. myhostname 및 my domain 아래의 도메인 이름을 수정하도록 주의하십시오.
myhostname 줄의 example.com을 DNS 승인 도메인 이름으로 바꿉니다. 구문이 여전히 mail.yourdomainnamehere인지 확인하십시오.
mydomain 줄의 example.com을 올바른 도메인 이름으로 바꿉니다.
soft_bounce = no queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix mail_owner = postfix # The default_privs parameter specifies the default rights used by # the local delivery agent for delivery to external file or command. # These rights are used in the absence of a recipient user context. # DO NOT SPECIFY A PRIVILEGED USER OR THE POSTFIX OWNER. # #default_privs = nobody myhostname = mail.example.com mydomain = example.com mydestination = $myhostname, localhost unknown_local_recipient_reject_code = 550 mynetworks_style = host mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp local_destination_recipient_limit = 300 local_destination_concurrency_limit = 5 recipient_delimiter=+ virtual_alias_maps = hash:/etc/postfix/virtual header_checks = regexp:/etc/postfix/header_checks mime_header_checks = pcre:/etc/postfix/body_checks smtpd_banner = $myhostname debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 sendmail_path = /usr/sbin/sendmail.postfix newaliases_path = /usr/bin/newaliases.postfix mailq_path = /usr/bin/mailq.postfix setgid_group = postdrop html_directory = no manpage_directory = /usr/share/man sample_directory = /usr/share/doc/postfix-2.3.3/samples readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES smtpd_sasl_auth_enable = yes smtpd_sasl_application_name = smtpd smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, reject_invalid_hostname, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, reject_rbl_client zen.spamhaus.org, reject_rbl_client bl.spamcop.net, reject_rbl_client dnsbl.njabl.org, reject_rbl_client dnsbl.sorbs.net, permit smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = broken_sasl_auth_clients = yes smtpd_helo_required = yes
3단계 — Postfix 마무리
적절한 구성을 붙여넣고 나면 가상 서버에서 postfix 설정이 거의 완료됩니다.
오류를 방지하려면 두 단계를 더 실행해야 합니다.
구성에서 가상 별칭을 virtual_alias_maps = hash:/etc/postfix/virtual; 줄과 함께 포함했습니다. 이제 해당 데이터베이스를 설정해야 합니다.
해당 파일을 엽니다.
sudo vi /etc/postfix/virtual
파일 내의 모든 텍스트를 삭제한 후 다음 한 줄을 추가하여 user를 실제 사용자 이름으로, example.com을 올바른 도메인으로 대체합니다.
user@example.com user\@example.com
저장 및 종료.
이것을 터미널에 입력하여 후속 조치를 취하십시오.
postmap /etc/postfix/virtual
이렇게 하면 가상 파일이 조회 테이블로 바뀌고 postfix가 작동하는 데 필요한 데이터베이스가 생성됩니다.
마지막으로 이 명령을 사용하여 결론을 내립니다. 이 명령은 postfix가 무언가를 보내기 전에 예상하는 새 파일을 생성합니다.
touch /etc/postfix/body_checks
모든 작업이 완료되면 Cyrus를 구성하여 마무리할 수 있습니다.
4단계 - Cyrus 구성
첫 번째 단계는 Postfix/SASL에 대한 인증을 정의하는 smtpd.conf 파일을 SASL 디렉터리에 추가하는 것입니다.
sudo vi /etc/sasl2/smtpd.conf
계속해서 다음 텍스트를 복사하여 붙여넣으십시오.
pwcheck_method: auxprop auxprop_plugin: sasldb mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5
저장 및 종료.
다음으로 Cyrus 파일을 구성해야 합니다.
sudo vi /etc/imapd.conf
현재 파일에 있는 내용을 삭제하고 아래 구성을 파일에 붙여넣어 개인 도메인 이름과 일치하도록 기본 도메인 및 서버 이름을 변경합니다.
virtdomains: userid defaultdomain: example.com servername: example.com configdirectory: /var/lib/imap partition-default: /var/spool/imap admins: cyrus sievedir: /var/lib/imap/sieve sendmail: /usr/sbin/sendmail.postfix hashimapspool: true allowanonymouslogin: no allowplaintext: yes sasl_pwcheck_method: auxprop sasl_mech_list: CRAM-MD5 DIGEST-MD5 PLAIN tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt autocreatequota: -1 createonpost: yes autocreateinboxfolders: spam autosubscribeinboxfolders: spam
저장 및 종료.
5단계 - 메일 클라이언트 설치
성공! VPS에 Postfix와 Cyrus를 설치했습니다. 그러나 이 두 프로그램 모두 이메일을 보내는 것이 아니라 처리하는 것과 관련이 있습니다. 명령줄에서 메시지를 보내는 방법을 빠르게 설치할 수 있습니다.
우리가 사용할 수 있는 다양한 클라이언트가 있습니다. 여기에서 MailX와 연결하겠습니다.
yum install mailx
프롬프트에 동의하면 mailx가 설치를 완료합니다.
그런 다음 이메일을 보내려면 이 명령을 터미널에 입력하고 메시지를 보내려는 이메일로 대체합니다.
mail user@example.org
터미널에서 제목을 묻습니다. 하나를 입력한 다음 Enter 키를 누릅니다. 다음 줄에 메시지를 입력할 수 있습니다. 엔터를 누르고 마침표를 입력한 경우에만 전송됩니다.
귀하의 편지는 다음과 같이 보일 것입니다.
[root@demoserver ~]# mail user@example.org Subject: Hello This is a test message. Regards, . EOT
축하합니다. 이제 postfix가 설치되었고 이메일이 실행되었습니다. 이제 가상 사설 서버를 사용하여 이메일을 보내도록 설정되었습니다.