본문 바로가기

CentOS

Sendmail 설치

- 환경

: CentOS 7.8 / Domain name = lifeofs1ave.n-e.kr 

 

- 설치

: 명령어로 간단하게 설치 가능함

# yum install -y sendmail*

 

- 설정

: /etc/mail/sendmail.mc 수정 후 sendmail.cf에 명령어로 전달

# vi /etc/mail/sendmail.mc

52 Line 맨 앞 dnl 제거(smtp 인증 사용 설정)

117 Addr 부분 0.0.0.0으로 변경(127.0.0.1로 설정 시 로컬에서만 메일 발송 가능)

===

51 dnl #

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

53 dnl #

 

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

===

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

 

- 호스트 접속 허용

: /etc/mail/access 파일을 수정함

# vi /etc/mail/access

Connect: 메일 발송 서버 IP RELAY 추가

===

Connect:49.247.24.236 RELAY

Connect:lifeofs1ave.n-e.kr RELAY

===

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

메일 처리 도메인 정보를 기록하는 파일에 도메인 추가

===

lifeofs1ave.n-e.kr

===

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

access 파일 적용

 

- 서비스 재시작 및 리부팅 자동실행 등록

# systemctl restart sendmail

# systemctl enable sendmail

 

- 포트 방화벽 등록

# vi /etc/sysconfig/iptables

25번 포트 허용 구문 추가 후 재시작

===

-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 25 -j ACCEPT

===

# /etc/init.d/iptables restart

# iptables -nL | grep 25

 

- 계정 추가

# /etc/mail/virtusertable

: 사용할 이메일 주소를 (계정@주소 계정) 형식으로 추가

===

no-yeah@lifeofs1ave.n-e.kr no-yeah

===

: sendmailtext 설정 파일들을 DB화하여 DB파일들을 이용하여 설정을 적용하므로 virtusertable 파일에 정보를 아래 명령어로 DB

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

: 시스템 상에서 사용할 가상의 메일 계정을 생성

# adduser no-yeah

# passwd 패스워드

 

Sendmail은 시스템의 계정을 기본적으로 사용하지만 여러 도메인에서 같은 아이디를 사용한다면

시스템 계정을 공유하여 같은 계정의 메일 박스에 다른 도메인들의 메일이 수신됨.

이를 방지하기 위해 시스템에 생성되지 않은 가상의 사용자의 메일 주소를 설정하여

계정 사용자의 메일 박스에 메일을 저장할 수 있는 위와 같은 과정의 설정이 필요함.

 

- 발송테스트

# yum install -y telnet telent-server or telent*

# telent localhost 25

===

Trying ::1...

telnet: connect to address ::1: Connection refused

Trying 127.0.0.1...

Connected to localhost.

Escape character is '^]'.

220 sendmail ESMTP Sendmail 8.14.7/8.14.7; Sun, 10 Jan 2021 19:28:05 +0900

mail from: no-yeah@lifeofs1ave.n-e.kr // 발신인

250 2.1.0 no-yeah@lifeofs1ave.n-e.kr... Sender ok

rcpt to: no-yeah@naver.com // 수신인

250 2.1.5 no-yeah@naver.com... Recipient ok

data // 메일 내용 입력 시작

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

(제목 입력을 원하면 subject: 제목 추가)

Test Send // 내역

. // 입력 종료

250 2.0.0 10AAS5ln009638 Message accepted for delivery

quit // 종료

221 2.0.0 sendmail closing connection

Connection closed by foreign host.

===

 

발송 테스트 이후 스팸메일함에 도착한 모습

 

'CentOS' 카테고리의 다른 글

계정 패스워드 만료일 설정  (0) 2021.04.16
CentOS 7+Apache 2.4 coredump 설정  (0) 2021.03.11
MySQL DataDir 변경(DB 재생성)  (0) 2021.03.08
[CentOS 7] 설치 및 세팅  (1) 2020.07.01