CentOS 7 메일( sendmail / dovecot ) 서버 구축
2016.11.25 11:51
메일 서버는 dns 서버 구축을 해야 되며 dns 서버 구축 방법은 별도로 dns 서버 강좌를 참고하세요
① 네입서버 설정
/etc/named.conf 파일을 열어서 제일 하단에 추가
# nano /etc/named.conf
기존 내용 제일 하단에 test.kr 도메인 설정
아래 형식으로 도메인만 바꿔서 사용 그대로 입력하세요
------------------------------------------------
zone "test.kr" IN {
type master;
file "test.kr";
allow-update { none; };
};
------------------------------------------------
* 도메인 zone 파일설정
# nano /var/named/test.kr
아래 내용 입력함
----------------------------------------------------------------------
$TTL 86400 ; TTL(Time To Live)
@ IN SOA @ root. (
20130115 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.test.kr. ; DNS Server Domain
IN MX 10 mail.test.kr. ; MAIL Server Domain
IN A 123.123.123.100 ; Server ip
mail IN A 123.123.123.100 ; Mail Server ip
ns IN A 123.123.123.200 ; DNS Server ip
----------------------------------------------------------------------
IN MX 10 mail.test.kr. ( 주의 : 도메인 마지막에 마침표(.) 입력해야 됨 )
* 도메인 설정 파일 테스트
# /usr/sbin/named-checkconf /etc/named.conf (아무 메세지 없으면 정상)
# /usr/sbin/named-checkzone test.kr /var/named/test.kr
zone test.kr/IN: loaded serial 00000000
OK ( OK 나오면 문법상 문제 없다는 의미임 )
위에서 실행한 # named-checkzone 옵션에 두개가 들어가는데
처음 옵션은 도메인 입력, 두번째는 도메인 zone 파일명 입니다.
위 테스트 결과 dns 설정 파일이 문제가 없다면 네임서버 재가동
# systemctl restart named
② 방화벽 오픈
SMTP 포트 오픈
# firewall-cmd --permanent --zone=public --add-port=25/tcp
POP3 포트 오픈
# firewall-cmd --permanent --zone=public --add-port=110/tcp
방화벽 설정 적용
# firewall-cmd --reload
③ 발신 메일 ( Sendmail ) 서버 설치 및 설정
* 설치
# yum -y install sendmail sendmail-cf
* 설정 원본 파일 백업
# cd /etc/mail
# mv ./sendmail.cf sendmail.cf.org
# cp ./sendmail.mc sendmail.mc.org
* sendmail 설정 순서
- 설정 파일은 sendmail.cf 입니다.
- sendmail.cf파일은 sendmail.mc파일을 기준으로 만드는데,
- 우선 sendmail.mc 파일을 수정한후에 sendmail.cf 파일을 생성 하게 됩니다.
* sendmail.mc 수정
# nano /etc/mail/sendmail.mc
- 52,53 line 수정 (앞부분 dnl 제거)
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 118 line 수정
Addr=127.0.0.1,을 삭제 또는 127.0.0.1 → 0.0.0.0
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- sendmail.mc 저장하기
* sendmail.cf 파일 생성
# m4 sendmail.mc > sendmail.cf
* sendmail.cf 수정
# nano sendmail.cf
- 95 line 도메인 입력 ( #Dj$w.Foo.COM → Djtest.kr, Dj 다음 공백없이 도메인 입력 )
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 449 line 보안을 위해 일부 글자 삭제
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- sendmail.cf 저장하기
* 서비스 재시작
# systemctl restart sendmail
④ 호스트 네임 설정
* hostname 도메인 추가
# nano /etc/hostname
test.kr
test.kr 또는 mail.test.kr 호스트네임을 입력하면 됩니다.
* local-host-names 호스트 추가
# nano /etc/mail/local-host-names 메일 서버 호스트 추가
mail.test.kr
호스트 까지 입력해야 됩니다.
⑤ 수신 메일(dovecot) 서버 설정
* dovecot 설치
# yum -y install dovecot
* dovecot.conf 파일 수정
# nano /etc/dovecot/dovecot.conf
- 24행 : 제일 앞에 # 주석 삭제, imap 와 lmtp 사용 안하면 삭제
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 30행 : 제일 앞에 # 주석 삭제, ip6 사용안하려면 :: 도 삭제, * 만 남김
listen = *
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 33행 : 제일 앞에 # 주석 삭제
base_dir = /var/run/dovecot/
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- dovecot.conf 저장 하기
* 10-ssl.conf 파일 수정
# nano /etc/dovecot/conf.d/10-ssl.conf
- 8행 : ssl 값을 required 에서 yes 로 변경
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 10-ssl.conf 저장하기
* 10-mail.conf 파일 수정
# nano /etc/dovecot/conf.d/10-mail.conf
- 25행 : 제일 앞 # 주석 제거, 메일함 경로 지정 항목
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 119행 : 제일 앞 # 주석 제거후 우측 값을 mail 설정
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 159행 : 제일 앞 # 주석 제거
lock_method = fcntl
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
- 10-mail.conf 저장하기
* 10-auth.conf 파일 수정
# nano /etc/dovecot/conf.d/10-auth.conf
앞에 # 제거하고 disable_plaintext_auth = no 로 수정
-< 수정 전 >--------------------------------------------------------------------------------
-< 수정 후 >--------------------------------------------------------------------------------
* dovecot 서비스 재 시작
# systemctl restart dovecot
* 포트 서비스 상태 확인
# netstat -an | grep :25
# netstat -an | grep :110
⑥ 메일 서버 작동 테스트
- SMTP 테스트
# telnet localhost 25
mail from : <보내는 사람 메일주소>
rcpt to : <받는 사람 주소>
data
내용 입력
. (마침을 의미한다. 점을 받드시 입력해줘야 한다.)
quit ( telnet 종료 하기 )
또 다른 SMTP 테스트 방법으로 간단하게 한줄 명령어로 가능합니다.
echo "Subject: sendmail test" | sendmail -v my@email.com
자신의 메일로 전송되었다면 정상 작동이 되도 있는 상태입니다.
- POP3 테스트
# telnet localhost 110
user 아이디
pass 암호
list
retr 번호
dele 번호
quit ( telnet 종료 하기 )
댓글 [0]
번호 | 제목 | 글쓴이 | 조회 |
---|---|---|---|
[공지] | 연재 강좌를 진행합니다. | gooddew | - |
105 | CentOS 7| SSH 서버 구축 | gooddew | 1351 |
104 | CentOS 7| telnet 서버 구축 | gooddew | 1032 |
103 | CentOS 7| Let's Encrypt SSL 설치 [1] | gooddew | 1349 |
102 | CentOS 7| SAMBA 서버 구축 및 윈도우 네트워크 설치 [1] | gooddew | 4910 |
101 | CentOS 7| proftpd 서버 구축 | gooddew | 725 |
100 | CentOS 7| VSFTPD 서버 구축 | gooddew | 3821 |
99 | CentOS 7| Apache 최신버전 설치하기 | gooddew | 3427 |
98 | CentOS 7| Nginx, MySQL, PHP 웹서버 구축 | gooddew | 5174 |
97 | CentOS 7| DNS 서버 설치 [1] | gooddew | 8155 |
96 | CentOS 7| APM 설치하기 [1] | gooddew | 8463 |
95 | CentOS 7| 리눅스 설치후 초기 설정해야 할 것들 | gooddew | 5676 |
94 | CentOS 7| CentOS 기본 강좌 | gooddew | 7068 |
93 | CentOS 7| CentOS-7.0 Minimal 설치 [2] | gooddew | 5108 |
92 | 네트웍 활용| 케이블 모뎀 설치 | gooddew | 3242 |
91 | 네트웍 활용| Netstat 명령어를 이용한 라우팅 테이블 확인 | gooddew | 4450 |
90 | 네트웍 활용| Tracert 명령어를 이용한 장애확인 | gooddew | 3299 |
89 | 네트웍 활용| Ping 명령어를 이용한 장애확인 | gooddew | 5661 |
88 | 네트웍 활용| Lanbird Router 설정 | gooddew | 1352 |
87 | 네트웍 활용| Teltrend Router 설정 | gooddew | 1199 |
86 | 네트웍 활용| 3COM Router 설정 | gooddew | 2031 |