- 서버 방화벽 구성
- 패키지 설치
- 사용자 생성
- 기본 설정 테스트
- 포스트픽스를 Maildir 스타일 메일함 사용하도록 구성
- 쿠리어 IMAP 서버 설치
- 인터넷에서 이메일 수신을 위해 포스트픽스 구성
- 최종 설정 테스트
- 완료
수신 이메일을 위해 포스트픽스 설정하기 (FREE ALL)
이 문서는 Ubuntu에서 IMAP 인증이 있는 기본 포스트픽스 메일 서버 설정 단계를 안내합니다. 이 설정은 수신 이메일과 함께 사용될 수 있습니다.
지시 사항은 당신이 incoming@gitlab.example.com
이메일 주소를 사용하고 있다고 가정합니다. 즉, 호스트 gitlab.example.com
에서 incoming
사용자명을 사용하는 것입니다. 예제 코드 스니펫을 실행할 때 실제 호스트로 변경하는 것을 잊지 마십시오.
서버 방화벽 구성
- 서버의 포트 25를 개방하여 다른 사람이 SMTP를 통해 서버로 이메일을 보낼 수 있도록 합니다.
- 메일 서버가 GitLab을 실행하는 서버와 다른 경우, 서버의 포트 143을 개방하여 GitLab이 IMAP을 통해 서버에서 이메일을 읽을 수 있도록합니다.
패키지 설치
-
이미 설치되어 있지 않은 경우
postfix
패키지를 설치하십시오.sudo apt-get install postfix
환경에 대한 질문이 나오면 ‘인터넷 사이트’를 선택하십시오. 호스트 이름을 gitlab.example.com과 일치하도록 확인하라는 메시지가 나오면 확인하십시오.
-
mailutils
패키지를 설치하십시오.sudo apt-get install mailutils
사용자 생성
-
수신 이메일용 사용자를 생성하십시오.
sudo useradd -m -s /bin/bash incoming
-
이 사용자의 암호를 설정하십시오.
sudo passwd incoming
나중에 필요할 것이므로 잊지 말아 주십시오.
기본 설정 테스트
-
로컬 SMTP 서버에 연결하십시오.
telnet localhost 25
다음과 같은 프롬프트가 표시되어야 합니다.
Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 gitlab.example.com ESMTP Postfix (Ubuntu)
대신
Connection refused
오류가 발생하면postfix
가 실행 중인지 확인하십시오.sudo postfix status
실행 중이 아니라면 시작하십시오.
sudo postfix start
-
다음을 SMTP 프롬프트에 입력하여 새로운
incoming
사용자에게 이메일을 보내 SMTP를 테스트하십시오.ehlo localhost mail from: root@localhost rcpt to: incoming@localhost data Subject: Re: Some issue Sounds good! . quit
.
는 줄에 있는 점(.)입니다.rcpt to: incoming@localhost
를 입력한 후 오류가 발생하면, Postfixmy_network
구성이 올바르지 않습니다. 오류는 ‘임시 조회 실패’라고 할 것입니다. 인터넷에서 이메일 수신을 위해 포스트픽스 구성을 참조하십시오. -
incoming
사용자가 이메일을 받았는지 확인하십시오.su - incoming mail
다음과 같은 출력이 표시되어야 합니다.
"/var/mail/incoming": 1 message 1 unread >U 1 root@localhost 59/2842 Re: Some issue
메일 앱을 나가십시오:
q
-
incoming
계정에서 로그아웃하고root
로 돌아가십시오:logout
포스트픽스를 Maildir 스타일 메일함 사용하도록 구성
나중에 IMAP 인증을 추가하기 위해 설치하는 쿠리어는 메일함을 mbox 대신 Maildir 형식으로 가져야 합니다.
-
포스트픽스를 Maildir 스타일 메일함 사용하도록 구성하십시오.
sudo postconf -e "home_mailbox = Maildir/"
-
포스트픽스를 재시작하십시오.
sudo /etc/init.d/postfix restart
-
새 설정을 테스트하십시오.
- _기본 설정 테스트_의 단계 1과 2를 따르십시오.
-
incoming
사용자가 이메일을 받았는지 확인하십시오.su - incoming MAIL=/home/incoming/Maildir mail
다음과 같은 출력이 표시되어야 합니다.
"/home/incoming/Maildir": 1 message 1 unread >U 1 root@localhost 59/2842 Re: Some issue
메일 앱을 나가십시오:
q
mail
이Maildir: Is a directory
오류를 반환하면, 당신의mail
버전은 Maildir 스타일 메일함을 지원하지 않습니다.sudo apt-get install heirloom-mailx
를 실행하여heirloom-mailx
를 설치하십시오. 그런 다음 위의 단계를 다시 시도하여mail
명령을heirloom-mailx
로 대체하십시오. -
incoming
계정에서 로그아웃하고root
로 돌아가십시오:logout
쿠리어 IMAP 서버 설치
-
courier-imap
패키지를 설치하십시오.sudo apt-get install courier-imap
그리고
imapd
를 시작하십시오:imapd start
-
설치 후
courier-authdaemon
는 시작되지 않습니다. 이렇게 되면 IMAP 인증이 실패합니다:sudo service courier-authdaemon start
또한
courier-authdaemon
을 부팅할 때 시작하도록 구성할 수 있습니다:sudo systemctl enable courier-authdaemon
인터넷에서 이메일 수신을 위해 포스트픽스 구성
-
포스트픽스에게 로컬로 고려해야 할 도메인에 대해 알려주십시오.
sudo postconf -e "mydestination = gitlab.example.com, localhost.localdomain, localhost"
-
LAN의 일부인 IP에 대해 포스트픽스에게 알려주십시오:
예를 들어,
192.168.1.0/24
이 로컬 LAN이라고 가정합시다. 동일한 로컬 네트워크에 다른 머신이 없는 경우 이 단계를 건너뛰어도 됩니다.sudo postconf -e "mynetworks = 127.0.0.0/8, 192.168.1.0/24"
-
포스트픽스가 인터넷을 포함한 모든 인터페이스에서 이메일을 수신하도록 구성하십시오:
sudo postconf -e "inet_interfaces = all"
-
sub-addressing에
+
구분 기호를 사용하도록 포스트픽스를 구성하십시오:sudo postconf -e "recipient_delimiter = +"
-
포스트픽스를 재시작하십시오:
sudo service postfix restart
최종 설정 테스트
-
새 설정에서 SMTP를 테스트하십시오:
-
SMTP 서버에 연결하십시오:
telnet gitlab.example.com 25
다음과 같은 프롬프트가 표시되어야 합니다.
Trying 123.123.123.123... Connected to gitlab.example.com. Escape character is '^]'. 220 gitlab.example.com ESMTP Postfix (Ubuntu)
Connection refused
오류가 발생하면 방화벽이 포트 25에서 들어오는 트래픽을 허용하도록 설정되어 있는지 확인하십시오. -
SMTP를 테스트하려면 다음을 SMTP 프롬프트에 입력하십시오:
ehlo gitlab.example.com mail from: root@gitlab.example.com rcpt to: incoming@gitlab.example.com data Subject: Re: Some issue Sounds good! . quit
-
incoming
사용자가 이메일을 받았는지 확인하십시오.su - incoming MAIL=/home/incoming/Maildir mail
다음과 같은 출력이 표시되어야 합니다.
"/home/incoming/Maildir": 1 message 1 unread >U 1 root@gitlab.example.com 59/2842 Re: Some issue
메일 앱을 나가십시오:
q
-
incoming
계정에서 로그아웃하고root
로 돌아가십시오.logout
-
-
새 설정에서 IMAP를 테스트하십시오:
-
IMAP 서버에 연결하십시오:
telnet gitlab.example.com 143
다음과 같은 프롬프트가 표시되어야 합니다.
Trying 123.123.123.123... Connected to mail.gitlab.example.com. Escape character is '^]'. - OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Copyright 1998-2011 Double Precision, Inc. See COPYING for distribution information.
-
IMAP 테스트를 위해
incoming
사용자로 로그인하십시오.a login incoming PASSWORD
PASSWORD를 앞서
incoming
사용자에게 설정한 암호로 교체하십시오.다음과 같은 출력이 표시되어야 합니다.
a OK LOGIN Ok.
-
IMAP 서버에서 로그아웃하십시오:
a logout
-
–End of Document–
완료
모든 테스트가 성공적으로 완료되었으면, Postfix가 모두 설정되어 이메일을 수신할 준비가 되었습니다! 수신 이메일 가이드를 진행하여 GitLab를 구성하세요.
본 문서는 Ubuntu 문서 위키 기여자들에 의해 https://help.ubuntu.com/community/PostfixBasicSetupHowto에서 적용되었습니다.