sendmail 보다 복잡한 설정
쉽게 따라가자.
1. 설치
yum -y install postfix
yum -y install cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain
sasl 인증을 위한 패키지도 설치
2. ssl인증서 만들기
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 365 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 365
3.설정파일 편집
vi /etc/postfix/main.cf
기존 내용 싹 지우고
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
home_mailbox = mail/
mynetworks = 127.0.0.0/8
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = cyrus
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
물론 호스트랑 도메인은 갖자 맞춰야함.
4. 추가 실행 설정
vi /etc/postfix/master.cf
첫번째 커맨드가 smtp로 시작하고, 그 다음에 내용추가
smtps inet n - n - - smtpd
-o smtpd_sasl_auth_enable=yes
-o smtpd_reject_unlisted_sender=yes
-o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
-o broken_sasl_auth_clients=yes
5. 실행
service postfix start
service saslauthd start
chkconfig postfix on
chkconfig saslauthd on
6.테스트
telnet localhost 25
ehlo localhost
dovecot
1. 설치
yum -y install dovecot
2.설정
vi /etc/dovecot/dovecot.conf
파일끝에 추가
protocols = imap pop3
mail_location = maildir:~/mail
pop3_uidl_format = %08Xu%08Xv
3. 실행
service dovecot start
chkconfig dovecot on
4.테스트
telnet localhost 110
유저추가해서 테스트
useradd -m myname -s /sbin/nologin
passwd myname
외부에서 메일을 보내고 /var/spool/mail 확인하면 메일이 온것을 알 수 있다.
virtual_maps = hash:/etc/postfix/virtual
vi /etc/postfix/virtual
메일주소 메일주소
포워딩
/etc/postfix/main.cf 에 추가
virtual_alias_domains = $mydomain($mydestination과 같으면 필요없음)
virtual_alias_maps = hash:/etc/postfix/virtual
/etc/postfix/virtual 편집
메일주소 계정or메일주소
적용
postmap /etc/postfix/virtual
service postfix reload
로그확인
tail /var/log/maillog
네이버 메일로 포워딩 안됨
다음 메일도 안됨
'dev > linux' 카테고리의 다른 글
[centos] apache tomcat 연동 (0) | 2015.07.25 |
---|---|
[centos] squirrelmail 설치 (0) | 2015.07.21 |
[centos] sendmail 설치(SMTP) (2) | 2015.07.16 |
[nginx] upstream sent too big header while reading response header from upstream (0) | 2015.07.01 |
[centos] install php 5.6 (0) | 2015.06.29 |