YUMSERV
Published 2019. 6. 1. 14:27
Sendmail 설치 및 설정 LINUX/MAIL
반응형

※ CentOS 7에서 진행하였습니다.

 

 

1. sendmail 설치

 

설치되어있는지 확인합니다.

# rpm -qa | grep sendmail*

설치가 되어있지 않은 경우 sendmail을 yum으로 설치 진행합니다.

# yum -y install sendmail*

 


2. sendmail 설정

 

실제로 구입하지 않은 도메인이라서, /etc/hosts 파일에 등록해줍니다.

# vi /etc/hosts

192.168.0.100 mail.lena04.com lena04.com

 

아래 파일은 메일을 처리할 도메인에 대한 정보 기록 파일입니다.

# vi /etc/mail/local-host-names

lena04.com

 

# vi /etc/mail/sendmail.mc

52,53번째 줄의 앞에 주석처리인 dnl을 지워줍니다.

 

52 TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

53 define(confAUTHMECHANISMS',confAUTHMECHANISMS′, EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLA IN')dnl

 

118번째 라인에 127.0.0.l을 0.0.0.0으로 바꿔줍니다. 내부에서만 데몬이 돌기때문에 외부에서 메일이 발송이 되지 않습니다.

118 DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

118 DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

 

# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

m4 명령어를 통해 sendmail.cf 파일을 재생성해줍니다.

sendmail.cf 파일은 sendmail의 주 설정 파일입니다.

 

접근제어 설정파일

# vi /etc/mail/access

Connect:localhost.localdomain RELAY

Connect:localhost RELAY

Connect:127.0.0.1 RELAY

Connect:192.168.0.100 RELAY

Connect:mail.lena04.com RELAY

스팸메일을 차단하기 위하여 디폴트로 설정되는 값. 자신의 네트워크가 아닌 다른 네트워크 상에서 자신의 메일 서버를 이용하여

메일을 전송하는 것을 원천적으로 거부하는 기능.

릴레이에 허용하고자 하는 네트워크 주소와 허용 여부를 입력하면 됩니다.

 

# makemap hash /etc/mail/access < /etc/mail/access

makemap 명령어를 사용하여 access파일을 db화 시켜줍니다.

 

# vi /etc/mail/virtusertable

test@lena04.com test

동일한 메일계정을 여러개의 도메인에서 사용하기 위해 설정하는 부분입니다.

메일계정과 같은 계정일 경우 추가하지 않아도 되며, 메일계정과 다른시스템 계정으로 포워딩할 경우 사용합니다.

 

# makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable

makemap 명령어를 통해 virtuasertable파일을 db화 시켜줍니다.

 

# chkconfig saslauthd on

# service saslauthd restart

 

# chkconfig sendmail on

# /etc/init.d/sendmail restart

 

# netstat -nltp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 14453/sshd

tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 4441/sendmail: acce

tcp6 0 0 :::80 :::* LISTEN 7058/httpd

tcp6 0 0 :::22 :::* LISTEN 14453/sshd

tcp6 0 0 :::3306 :::* LISTEN 20475/mysqld

 

 

3. 메일 발송 테스트

 

# telnet localhost 25

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

220 ESMTP Sendmail 8.14.7/8.14.7; Mon, 29 Oct 2018 13:57:34 +0900

mail from: test@lena04.com

250 2.1.0 test@lena04.com... Sender ok

rcpt to: tech@test.com

250 2.1.5 tech@test.com... Recipient ok

data

354 Enter mail, end with "." on a line by itself

subject: sendmail test

test

.

250 2.0.0 w9T4vYCX004517 Message accepted for delivery

quit

221 2.0.0 closing connection

Connection closed by foreign host.


반응형

'LINUX > MAIL' 카테고리의 다른 글

Rainloop 설치 및 설정  (0) 2019.06.01
RoundcubeMail 설치  (0) 2019.06.01
Dovecot 설치 및 설정  (0) 2019.06.01
Dovecot 에러  (0) 2019.05.29
profile

YUMSERV

@lena04301

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!