Sendmail 설정 (메일 발송)

Crystal Clear action info.png 작성 중인 문서입니다.
sendmail 설정

1 사전 작업

2 sendmail.mc 수정

[root@zetawiki ~]# cp /etc/mail/sendmail.mc /etc/mail/sendmail.mc.original
[root@zetawiki ~]# vi /etc/mail/sendmail.mc
[root@zetawiki ~]# diff /etc/mail/sendmail.mc.original /etc/mail/sendmail.mc
52,53c52,53
< dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
< dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
---
> dnl #TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
> dnl #define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
116c116
< DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
---
> DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

3 sendmail.cf 생성

  • 생성, 보존, 편집, 비교
[root@zetawiki ~]# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
[root@zetawiki ~]# cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.original
[root@zetawiki ~]# vi /etc/mail/sendmail.cf
[root@zetawiki ~]# diff /etc/mail/sendmail.cf.original /etc/mail/sendmail.cf
95c95
< #Dj$w.Foo.COM
---
> Djzetawiki.com
445c445
< O SmtpGreetingMessage=$j Sendmail $v/$Z; $b
---
> O SmtpGreetingMessage=$j Sendmail $b

4 서비스 재시작

[root@zetawiki ~]# service sendmail restart
Shutting down sm-client:                                   [  OK  ]
Shutting down sendmail:                                    [  OK  ]
Starting sendmail:                                         [  OK  ]
Starting sm-client:                                        [  OK  ]

5 메일 발송 테스트 1

[root@zetawiki ~]# telnet localhost 25
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 zetawiki.com ESMTP Sendmail 8.14.4/8.14.4; Wed, 25 Feb 2015 09:30:26 +0900
mail from: root@zetawiki.com
250 2.1.0 root@zetawiki.com... Sender ok
rcpt to: 지메일계정@gmail.com
250 2.1.5 지메일계정@gmail.com... Recipient ok
data
354 Enter mail, end with "." on a line by itself
hello, sendmail test.
.
250 2.0.0 t1P0UQNG027816 Message accepted for delivery
quit
221 2.0.0 zetawiki.com closing connection
Connection closed by foreign host.
[root@zetawiki ~]# cat /var/log/maillog | grep t1P0UQNG027816 
Feb 25 09:30:38 zetawiki sendmail[27816]: t1P0UQNG027816: Authentication-Warning: zetawiki.com: zetawiki [127.0.0.1] didn't use HELO protocol
Feb 25 09:31:06 zetawiki sendmail[27816]: t1P0UQNG027816: from=root@zetawiki.com, size=22, class=0, nrcpts=1, msgid=<201502250030.t1P0UQNG027816@zetawiki.com>, proto=SMTP, daemon=MTA, relay=zetawiki [127.0.0.1]
Feb 25 09:31:10 zetawiki sendmail[27827]: t1P0UQNG027816: to=지메일계정@gmail.com, ctladdr=root@zetawiki.com (0/0), delay=00:00:22, xdelay=00:00:04, mailer=esmtp, pri=120022, relay=gmail-smtp-in.l.google.com. [173.194.72.26], dsn=2.0.0, stat=Sent (OK 1424824357 km10si6230428pbc.75 - gsmtp)
← 정상 발송됨(Sent OK)
  • Gmail에서 확인해보니 메일이 잘 도착하였음

6 메일 발송 테스트 2

[root@zetawiki ~]# echo 'this is test2.' | mail -s 'sendmail test2' 지메일계정@gmail.com
  • gmail에서 확인하니 메일이 잘 도착하였음
보낸사람: root <root@zetawiki.com>
제목: sendmail test2
본문: this is test2.

7 같이 보기

8 참고 자료