Linux 28. evolution 메일 클라이언트 사용

2024. 5. 8. 18:06Linux

메일 클라이언트중 하나인

evolution을 썬더버드 대신 사용해보자

 

두 메일 서버를 생성해

서로 메일을 교환 해볼 것이다.

 

제일 먼저 DNS를 설치해 각 메일서버 주소를 만들어주자

 vi /etc/named.conf
--------------------------vi 편집기--------------------
     13         listen-on port 53 { any; };
     14 //      listen-on-v6 port 53 { ::1; };
     21         allow-query     { any; };
     36         dnssec-validation no;
각 행의 내용 변경

 

vi /etc/named.rfc1912.zones 
----------------------------vi 편집기----------------------------
     43 zone "google.com" IN {
     44         type master;
     45         file "google.com.zone";
     46         allow-update { none; };
     47 };
     48 
     49 zone "facebook.com" IN {
     50         type master;
     51         file "facebook.com.zone";
     52         allow-update { none; };
     53 };
마지막 줄에 DNS 영역 추가

 

 

영역 파일도 google.com.zone , facebook.com.zone을

/var/named/에 만들어 주었다.

vi /var/named/google.com.zone
-----------------------vi 편집기---------------------------
$TTL    0
@       IN      SOA     google.com.     admin.google.com.       (
                        20240508
                        1D
                        1H
                        1W
                        1W
)

        IN      NS      google.com.
        IN      A       192.168.20.212
        IN      MX      10      mail.google.com.
mail    IN      A       192.168.20.212



vi /var/named/facebook.com.zone
-----------------------vi 편집기---------------------------
$TTL    0
@       IN      SOA     facebook.com.   admin.facebook.com.     (
                        20240508
                        1D
                        1H
                        1W
                        1W
)

        IN      NS      facebook.com.
        IN      A       192.168.20.232
        IN      MX      10      mail.facebook.com.
mail    IN      A       192.168.20.232

 

 

실제로 존재하는 도메인을 사용하고 있기 때문에 

DNS를 찾으러 밖으로 나가지 못하게

resolv.conf를 수정 해주자 (재부팅 시 재설정 필요)

vi /etc/resolv.conf
-----------------------------vi 편집기-------------------
# Generated by NetworkManager
nameserver 192.168.20.212

host 명령어로 도메인 검색시 위 사진처럼 뜬다면 성공이다!

 

 

그리고 sendmail, dovecot을 설치한 뒤

메일서버를  설정하자

vi /etc/mail/sendmail.cf
-----------------------------vi 편집기---------------------------
	85	CWgoogle.com
	264	0 DaemonPortOption=Port=smtp,Addr=0.0.0.0, Name=MTA
    
   각 행 수정

CWlocalhost을 서버 도메인으로 수정해주고

264행의 Addr=127.0.0.1 부분은 지워주거나 0.0.0.0으로 수정하자

그래야 메일이 외부로 나갈 수 있게된다.

 

vi /etc/mail/access
-----------------------------vi 편집기------------------------------

	13	192.168.20				RELAY
    14	google.com				RELAY
    15	facebook.com				RELAY
    
마지막 줄에 각 도메인과 IP 대역을 추가해주자

--------------------------------------------------------------------

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

수정 후에 위 명령어로 DB형식으로 변환 해주자

Connect: 문구는 생략 가능하기에 생략해줬다

 

vi /etc/dovecot/dovecot.conf
-----------------------------vi 편집기------------------------------

	24	protocols = imap pop3 lmtp
    30	listen = *, ::
    33	base_dir = /var/run/dovecot/

--------------------------------------------------------------------

각 행의 주석을 해제해주자

기본 디렉토리 지정 및 프로토콜,포트 등을 허용 해줬다.

 

vi /etc/dovecot/conf.d/10-mail.conf 
-------------------------------- vi 편집기 --------------------------------

	30 mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u:INDEX=MEMORY

30번 행 주석 해제 후 경로 입력

위 설정은 메일 저장 경로를 지정해 주는데

24,25,26행의 사전 설정된 경로를 사용해도 된다.( %u = 유저명 변수)

에러가 발생할 수도 있어서 30번 행에 수동으로 입력해 주었다.

 

 vi /etc/dovecot/conf.d/10-auth.conf
 -----------------------------------vi 편집기---------------------------
 10 disable_plaintext_auth = no

10행 주석 해제 후 수정

 

 

vi /etc/dovecot/conf.d/10-ssl.conf 
-------------------------------- vi 편집기 --------------------------------

	8 ssl = yes

8번 행을 ssl = yes로 수정

ssl 인증서 관련 명령어라 설정하지 않아도 

메일 사용엔 지장은 없다.

 

systemctl restart named
systemctl restart sendmail
systemctl restart dovecot

설정이 모두 끝난 뒤 실행해주자

 

두번째 facebook 메일 서버에도 주소에 맞게 위 과정을 반복해주자(DNS 제외)

 

 

끝났다면 각 메일 서버에 테스트용 계정을 만들어 암호까지 설정 해주자

[root@localhost mail]# mail bb@facebook.com
Subject: hi
hello world
.
EOT

위 명령어처럼 facebook 메일 서버에

mail 명령어로 메일을 보내보자

 

facebook 서버의 

/etc/mail/bb에 메일이 도착했다면 성공이다.

메일이 도착하지 않아 google.com 서버를 확인해보니

mail이 google서버로 다시 돌아왔다. 

확인해보자

확인해보면 전송에 실패했다고 뜬다.

보내는 주소의 진짜 도메인 이름이 필요하다고 한다..

 

보내는 쪽이름도 root@localhost로 되어있다..

이럴땐 호스트를 변경해주자

 

vi /etc/hosts
---------------------------vi 편집기---------------------------

	3	192.168.20.212 mail.google.com
    
마지막 줄에 해당 메일서버 IP와 메일서버 도메인 추가

vi /etc/hostname
------------------------------vi 편집기---------------------------
	1 mail.google.com
    
원래 있던 localhost를 삭제하고 메일 도메인 삽입

vi /etc/sysconfig/network
------------------------------vi 편집기--------------------------

	2 hostname=mail.google.com

마지막 줄에 해당 내용 추가

 

이후 재시작 한뒤에 

/etc/resolv.conf 의 네임서버를 DNS서버가 있는 곳의 주소로 바꿔주자!

 

이 과정을 facebook.com 메일 서버에도 반복!

(주소는 facebook.com으로 바꿔서)

 

각 메일서버 접속시 위 사진처럼 호스트가 뜬다면

성공이다!

 

다시 mail 명령어로 메일을 보내보자

facebook 메일 서버에서

/var/mail/bb 파일을 열어보면

해당 메일이 도착해 있는 것이 보인다.

성공이다!

 

이제 evolution 프로그램을 설치해서 

메일 클라언트로 메일을 보내자!

 

yum install -y evolution*

당연히 두 메일서버에 모두 설치해주자

 

해당 프로그램은 centos 작업 표시줄의

프로그램 > 오피스 > 에볼루션

으로 실행할 수 있다.

 

처음 실행하면 에볼루션 설정 마법사 창이 뜬다!

안내에 따라서 설정해주자

마법사를 마치고 이전에 설정한 비밀번호를 입력해주자

 

facebook 서버에서도 반복!

 

그리고 메일 클라언트로 메일을 보내보자

 

 

서로에게 메일을 보내보자!

보낸 뒤 보내기/ 받기 버튼을 누르면 최신화가 된다!

 

잘 도착했다! 성공이다!

 

이상으로 evolution 클라이언트를 사용해 보았다!