출처 : https://www.youtube.com/watch?v=Ru6oYQnOxHE&list=PLVsNizTWUw7FqN2gq79Cb3R6qkS7mqOJk&index=55
메일 서버 구현
실습 목표
- naver.com 메일 서버와 daum.net 메일 서버를 구축한다.
- sendmail, dovecot 패키지의 설치 및 설정을 알아본다.
- 메일 클라이언트 사용법을 익힌다.
server의 naver.com 메일 서버 구현
server 가상 머신에서 sendmail-cf, dovecot 패키지를 설치한다.(sendmail 패키지는 이전 시간에 설치했음)
dnf -y install sendmail-cf dovecot
패키지가 잘 설치되었는지 확인한다.
rpm -qa | grep sendmail
rpm -qa dovecot
gedit 에디터로 /etc/mail/sendmail.cf 파일을 열고 위 그림과 같이 수정한다.
85행 : Cwlocalhost -> Cwnaver.com
268행 : O DaemonPortOptions=Port=smtp, Name=MTA (Addr=127.0.0.1 삭제)
gedit 에디터로 /etc/mail/access 파일을 열고 다음 내용을 추가한다.
naver.com RELAY
daum.net RELAY
192.168.111 RELAY
access 파일을 수정한 후, 설정 내용을 적용한다.
makemap hash /etc/mail/access < /etc/mail/access
gedit 에디터로 /etc/dovecot.conf 파일을 열고, 다음 부분을 수정한다.
24행 주석(#) 제거 : protocols = imap pop3 lmtp submission
30행 주석(#) 제거 : listen = *, ::
33행 주석(#) 제거 : base_dir = /var/run/dovecot/
gedit 에디터로 /etc/dovecot/conf.d/10-ssl.conf 파일을 열고, 8행의 ssl = yes 로 수정한다.
gedit 에디터로 /etc/dovecot/conf.d/10-mail.conf 파일을 열고, 다음 부분을 수정한다.
25행 주석(#) 제거 : mail_location = mbox:~/mail:INBOX=/var/mail/%u
121행 주석 제거 및 mail 추가 : mail_access_groups = mail
166행 주석 제거 : lock_method = fcntl
naver.com의 메일 계정 사용자 lee를 생성한다. lee 사용자의 메일 계정은 lee@naver.com이 된다.
useradd lee
passwd lee
새 암호 입력
새 암호 재입력
다음 명령을 입력해 sendmail 및 dovecot 서비스를 재시작하고 상시 가동되도록 설정한다.
systemctl restart sendmail
systemctl enable sendmail
systemctl restart dovecot
systemctl enable dovecot
server 메일 서버 작동 테스트
client 가상 머신을 부팅하고 naver.com 메일 서버가 잘 동작하는지 테스트한다.
client 가상 머신에서 [현재 활동] -> [프로그램 표시] -> [에볼루션]을 클릭해서 에볼루션을 실행한다.
처음 에볼루션을 실행하면 위 그림과 같이 나타난다. 다음을 누른다.
백업에서 복구도 다음을 누른다.
전체이름은 적당히 지어주고 전자메일 주소는 lee@naver.com으로 지어준다. 다음을 누른다.
서버 종류는 POP 으로 설정하고 서버는 mail.naver.com 사용이름은 lee 라고 지어준다. 포트는 자동으로 995번이 될 것이다. 다음을 누른다.
받기 옵션은 기본값으로 설정하고 다음을 누른다.
서버 종류는 SMTP, 서버는 mail.naver.com, 포트는 25 번, 암호화 방식은 암호화 없음으로 설정한다. 다음을 누른다.
이름은 적당히 지어주고, 개인 상세 정보가 위 그림과 동일한지 확인한다. 다음을 누른다.
완료 창이 나오면 적용을 누른다.
상단에 [보내기 / 받기] 를 클릭한 다음, 인증서 신뢰... 에서 계속 허용을 클릭해서 server 가상머신의 인증서를 허용한다.
암호를 입력하고, 이 암호를 키 모음에 추가를 해제한 다음 확인을 누른다.
받는 사람도 자기 자신(lee@naver.com)으로 설정하고 제목과 내용에 적당한 글을 작성하고 보내기를 클릭한다.
전송한 다음, [보내기 / 받기]를 클릭하면 왼쪽 받은 편지함에 메일이 하나 도착한다. 확인해보면 내가 자신에게 보낸 그 메일인 것을 확인할 수 있다. 즉, naver.com 메일 서버가 정상적으로 작동하는 상태이다.
server(B)의 daum.net 메일 서버 구현
server(B) 가상 머신으로 접속해서 sendmail-cf와 dovecot 패키지를 설치한다.
dnf -y install sendmail-cf dovecot
nano 에디터로 /etc/mail/sendmail.cf 파일을 실행해 다음과 같이 수정한다.
nano -c /etc/mail/sendmail.cf -> -c 를 해서 행 번호가 출력되도록 실행
85행 Cwdaum.net 으로 수정
268행 Addr=127.0.0.1, 부분 삭제
저장하고 나가는 법은 ctrl + x -> y -> enter 를 누른다.
nano -c /etc/mail/acess 를 입력하고 다음 내용을 추가한다.
naver.com RELAY
daum.net RELAY
192.168.111 RELAY
/etc/mail/access의 수정 내용을 적용한다.
makemap hash /etc/mail/access < /etc/mail/access
nano -c /etc/dovecot/dovecot.conf 로 들어가서 다음 부분을 수정한다.
24행 주석(#) 제거: protocols = imap pop3 lmtp submission
30행 주석 제거 : listen = *, ::
33행 주석 제거 : base_dir = /var/run/dovecot/
nano -c /etc/dovecot/conf.d/10-ssl.conf 로 들어가 다음 부분을 수정한다.
8행 : ssl = yes
nano -c /etc/dovecot/conf.d/10-mail.conf 로 들어가서 다음 부분을 수정한다.
25행 주석 제거 : mail_location = mbox:~/mail:INBOX=/var/mail/%u
121행 주석 제거 후 변경 : mail_access_groups = mail
166행 주석 제거 : lock_method = fcntl
daum.net 메일 계정의 사용자인 kim을 생성한다. kim의 메일 계정은 kim@daum.net이 된다.
useradd kim
passwd kim
새 암호 입력
새 암호 재입력
sendmail과 dovecot 서비스를 재가동시키고 상시 가동되도록 설정한다.
systemctl restart sendmail
systemctl enable sendmail
systemctl restart dovecot
systemctl enable dovecot
방화벽을 잠시 끈다.
systemctl stop firewalld
systemctl disable firewalld
server(B) 메일 서버 작동 테스트
winClient를 부팅한다. 혹시 가상머신을 재부팅했다면, powershell에서 netsh interface ip set dns "Ethernet0" static 192.168.111.100 을 입력한다.
메일 클라이언트 프로그램을 설치한다. 아래 주소로 들어가 썬더버드 52.8.0 버전을 다운로드한다.
https://download-installer.cdn.mozilla.net/pub/thunderbird/releases/52.8.0/win32/ko/
설치는 그냥 기본 설정으로 다음만 누르면 된다.
기본으로 설정을 누른다.
건너뛰고 기존 메일 사용하기를 클릭한다.
적당한 이름을 지어주고 메일 주소는 kim@daum.net, 비밀번호를 입력하고 계속을 누른다.
POP3를 선택하고 완료를 누른다.
주소는 기본값으로 두고 보안 예외 확인을 누른다.
좌측의 kim@daum.net을 우클릭해서 설정으로 들어간다. 보내는 서버 -> 편집으로 들어가서 포트를 25, 보안 연결 없음, 인증 방식 인증 없음으로 설정하고 확인을 누른다.
좌측 상단에 쓰기를 클릭한다. 받는 사람은 lee@naver.com을 입력하고 제목과 내용을 적당하게 작성한 다음 보내기를 클릭해 메일을 전송한다.
Client 가상 머신으로 돌아와서 [보내기 / 받기] 를 누르면, WinClient에서 보낸 메일이 수신된 것을 확인할 수 있다.
상단에 답장을 누르고 이번에는 lee@naver.com에서 kim@daum.net으로 메일을 보내보자.
Winclient로 돌아와서 좌측 상단에 받기를 누르고 받은 편지함으로 가면 정상적으로 메일이 수신된 것을 확인할 수 있다.
이렇게 완전하게 메일 서버 2대를 구축하고, 서로 메일을 다른 사용자가 주고받는 것을 구현을 하였다. 실제로 우리가 도메인을 구매를 하고 위 방법을 똑같이 진행하면 외부에서 사용할 수 있는 메일 서버를 구축할 수 있다.
'Study > 이것이 리눅스다 with Rocky Linux 9' 카테고리의 다른 글
11장. 데이터베이스 서버 구축 및 운영 (1) - DBMS의 개념과 간단한 SQL 문 (2) | 2024.01.04 |
---|---|
10장. 메일 서버 설치 및 운영 (3) - 라운드 큐브 메일 설치 (0) | 2024.01.04 |
10장. 메일 서버 설치 및 운영 (1) - 메일 서버의 개념과 센드메일 서버 구현을 위한 네임 서버 구축 (3) | 2024.01.03 |
9장. 네임 서버 설치 및 운영 (4) - 라운드 로빈 네임 서버 (0) | 2024.01.02 |
9장. 네임 서버 설치 및 운영 (3) - 마스터 네임 서버 (1) | 2024.01.02 |