* Mail server set up
* 모든 과정은 google search하여 여기저기서 참고하였습니다.
* 대부분 cloud vps는 smtp port가 block되어 있어 vps hosing사용시 주의
* 필자는 Vultr.com cloud 이용 - 기본 설정은 tcp 25 block이지만 일반적 사용의 경우 해제 해준다고 한다.
(언제 다시 block 할지 모른다고 함)
root 계정을 제공함으로 연습용으로 사용하기에 편리함
-> vultr VPS www.vultr.com/?ref=8819164-6G
SSD VPS Servers, Cloud Servers and Cloud Hosting by Vultr
Vultr Global Cloud Hosting - Brilliantly Fast SSD VPS Cloud Servers. 100% KVM Virtualization
www.vultr.com
(2021/03/14 기준 가입시 100$ credit 제공 for 30days, 위 링크로 가입 후 결제 하면 필자에게 이익이 돌아오지만 무료 회원가입시 그런거 x, google에서 따로 들어가도 무료 credit 제공하는 걸로 확인)
*CentOS 8 64bit
1. 기본 세팅
[root@iamlena ~]# vi /etc/hostname
- iamlena
[root@iamlena ~]# vi /etc/hosts
- 서버 IP주소 mail.iamlena.xyz 추가
127.0.0.1 iamlena 추가
[root@iamlena ~]# reboot
[root@iamlena ~]# setenforce 0 (or vi /etc/selinux/config에서 disabled)
[root@iamlena ~]# getenforce
Permissive
[root@iamlena ~]# firewall-cmd --permanent --add-port={25,110,143,587,465,993,995}/tcp
[root@iamlena ~]# firewall-cmd --reload
2. sendmail install & configure
[root@iamlena ~]# yum -y update
[root@iamlena ~]# yum -y install sendmail*
[root@iamlena ~]# vim /etc/mail/mail/local-host-names
mail.iamlena.xyz
[root@iamlena ~]# vim /etc/mail/sendmail.mc
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp, Addr=0.0.0.0, Name=MTA')dnl
(주석해제 및 Addr 수정)
[root@iamlena ~]# m4 /etc/mail/sendmail.mc /etc/mail/sendmail.cf
[root@iamlena ~]# vim /etc/mail/access
Connect:mail.iamlena.xyz RELAY
[root@iamlena ~]# makemap hash /etc/mail/access < /etc/mail/access
[root@iamlena ~]# systemctl restart sendmail
[root@iamlena ~]# systemctl enable sendmail
- sendmail test
[root@iamlena ~]# useradd test1
[root@iamlena ~]# passwd test1
!qwe234R
[root@iamlena ~]# telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.iamlena.xyz ESMTP Postfix
ehlo localhost
250-mail.iamlena.xyz
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250 SMTPUTF8
mail from:<test1>
250 2.1.0 Ok
rcpt to:<test1>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
test postfix
.
250 2.0.0 Ok: queued as 365B1101A38
[root@iamlena ~]# ls /home/test1/Maildir/new/
1615691434.Vfd01I101a3cM382986.iamlena
3. Dovecot install & configure
[root@iamlena ~]# yum -y install dovecot
[root@iamlena ~]# vim /etc/dovecot/dovecot.conf
protocols = imap pop3 lmtp
[root@iamlena ~]# vim /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:~/Maildir
(ls -al 로 권한 체크 필수)
[root@iamlena ~]# vim /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no
auth_mechanisms = plain login
[root@iamlena ~]# vim /etc/dovecot/conf.d/10-master.conf
#Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
[root@iamlena ~]# vim /etc/dovecot/conf.d/10-ssl.conf
ssl = no
[root@iamlena ~]# systemctl restart dovecot
[root@iamlena ~]# systemctl enable dovecot
[root@iamlena ~]# netstat -ntlp < port 확인>
[root@iamlena ~]# telnet localhost pop3
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user test1
+OK
pass !qwe234R
+OK Logged in.
retr 1
+OK 394 octets
<postfix test 메일내용이 보이면 ok>
quit
3. squirrelmail install & configure
[root@iamlena ~]# yum -y install php httpd
[root@iamlena ~]# wget https://squirrelmail.org/countdl.php?fileurl=http%3A%2F%2Fprdownloads.sourceforge.net%2Fsquirrelmail%2Fsquirrelmail-webmail-1.4.22.zip
[root@iamlena ~]# mv ./countdl.php\?fileurl\=http\:%2F%2Fprdownloads.sourceforge.net%2Fsquirrelmail%2Fsquirrelmail-webmail-1.4.22.zip ./squirrelmail.zip
[root@iamlena ~]# unzip ./squirrelmail.zip
[root@iamlena ~]# mkdir /var/www/html/mail
[root@iamlena ~]# mv ./squirrelmail-webmail-1.4.22/ /var/www/html/mail/
[root@iamlena mail]# chown -R apache:apache /var/www/html/mail/
[root@iamlena mail]# ./squirrelmail-webmail-1.4.22/config/conf.pl
(config.php 파일을 직접 수정하거나 conf.pl 실행,perl 오류시 yum install perl)
-2 서버세팅 -> 1 domain : iamlena.xyz, 3. SMTP
-4 General Options
1. Data Directory : /var/www/html/mail/data/
2. Attachment Directory : /var/www/html/mail/attach/ (폴더 새로 생성)
vim /etc/httpd/conf/httpd.conf
ServerName mail.iamlena.xyz:80
Alias /webmail /var/www/html/mail/squirrelmail-webmail-1.4.22
<Directory /var/www/html/mail/squirrelmail-webmail-1.4.22>
Options Indexes FollowSymLinks
RewriteEngine On
AllowOverride All
DirectoryIndex index.php
Order allow,deny
Allow from all
</Directory>
맨 마지막에 추가
http://IPorFQDN/webmail 로 접속 후 로그인 한 상태
postfix 테스트시 보낸 메일이 확인 된다.
* 실제 외부 naver, kakao, google 등으로 메일을 주고받으려면 iamlen.xyz 라는 도메인을 구입 후 DNS에 MX 레코드를 올바르게 설정해 주어야 한다
가비아/cafe24/hosting.co.kr 등에서 구입가능
-이미 구입한 domain은 db 연동 mail server test로 사용중이라 외부로 test는 pass
'IT' 카테고리의 다른 글
한글2010 hwpx 파일 실행하기 (0) | 2023.06.27 |
---|---|
보안 위험관리 및 검토 (0) | 2021.03.02 |
Software 개발, 보안 구축 - NCS 기준 정리 (0) | 2021.02.04 |
[Linux] chage 계정 정보 수정 (0) | 2020.12.24 |
MobaXterm에서 Linux 사용하기 (0) | 2020.12.24 |