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 | - |
125 | CentOS 7| OpenSSL 업데이트 | gooddew | 7550 |
124 | CentOS 7| top 활용하기 | gooddew | 5499 |
123 | CentOS 7| 시스템 하드 복사하기 ( DISK TO DISK ) | gooddew | 13155 |
122 | CentOS 7| 백업 및 복구 | gooddew | 11702 |
121 | CentOS 7| 윈도우 클라이언트에서 PUTTY 자동 로그인 | gooddew | 5288 |
120 | CentOS 7| Centos 7 에서 NTFS 인식하기 | gooddew | 7634 |
119 | CentOS 7| root 패스워드 초기화 [1] | gooddew | 9080 |
118 | CentOS 7| SSH 보안 정책 | gooddew | 6413 |
117 | CentOS 7| 패스워드 보안 정책 | gooddew | 6348 |
116 | CentOS 7| MC를 이용한 FTP 활용 [2] | gooddew | 6786 |
115 | CentOS 7| 리눅스 명령어 정리 | gooddew | 10003 |
114 | CentOS 7| 유용한 프로그램 설치하기 | gooddew | 10061 |
113 | CentOS 7| 네트워크 수동 설정하기 | gooddew | 29697 |
112 | CentOS 7| AWStats를 설치하기 | gooddew | 18565 |
111 | CentOS 7| 방화벽 서버 구축 ( firewalld ) [1] | gooddew | 5516 |
110 | CentOS 7| 방화벽 서버 구축( iptables ) | gooddew | 5481 |
109 | CentOS 7| PROXY 서버 구축 | gooddew | 5232 |
108 | CentOS 7| DHCP 서버 구축 | gooddew | 5900 |
107 | CentOS 7| NFS 서버 구축 | gooddew | 5698 |
» | CentOS 7| 메일( sendmail / dovecot ) 서버 구축 | gooddew | 5718 |