● 샌드메일 서버의 작동 원리
MTA : Mail Transfer Agent
MUA : Mail User Agent
MDA : Mail Delivery Agent
MRA : Mail Retrieval Agent
MUA : Mail User Agent
MDA : Mail Delivery Agent
MRA : Mail Retrieval Agent
① 메일 클라이언트1은 SMTP 프로토콜을 이용해서, 메일 서버1의 샌드메일 데몬에게 메일을 보내달라고 요청한다.
② 샌드메일 데몬은 메일을 '메일 큐'에 넣어 놓는다.(이 파일은 /var/spool/mqueue임)
③ 샌드메일 데몬은 시간이 되면 MDA에게 메일을 보내달라고 요청한다.
④, ⑤ MDA는 SMTP 프로토콜을 이용해서 메일 서버2의 샌드메일 데몬에게 메일을 전송한다.
⑥, ⑦ 메일 서버2의 샌드메일 데몬은 받은 메일을 MDA를 통해서 사용자의 메일 박스에 넣어 놓는다.
⑧ 메일 클라이언트2는 메일 서버2의 dovecot 데몬에게 자신의 메일을 달라고 요청한다.
⑨, ⑩ dovecot 데몬은 메일 박스에서 메일 클라이언트2의 메일을 POP3 또는 IMAP 프로토콜을 이용해서 전송해 준다.
② 샌드메일 데몬은 메일을 '메일 큐'에 넣어 놓는다.(이 파일은 /var/spool/mqueue임)
③ 샌드메일 데몬은 시간이 되면 MDA에게 메일을 보내달라고 요청한다.
④, ⑤ MDA는 SMTP 프로토콜을 이용해서 메일 서버2의 샌드메일 데몬에게 메일을 전송한다.
⑥, ⑦ 메일 서버2의 샌드메일 데몬은 받은 메일을 MDA를 통해서 사용자의 메일 박스에 넣어 놓는다.
⑧ 메일 클라이언트2는 메일 서버2의 dovecot 데몬에게 자신의 메일을 달라고 요청한다.
⑨, ⑩ dovecot 데몬은 메일 박스에서 메일 클라이언트2의 메일을 POP3 또는 IMAP 프로토콜을 이용해서 전송해 준다.
이때 메일을 보내는 방법은 크게 두가지가 있다.
첫번째 방법은 A와 B 중간에 중계서버를 두는 것인데 A가 중계서버에 메일을 넣어두면 B가 그 서버에서 메일을 찾아서 본다. 첫번째 방법의 단점은 인터넷이 안되면 메일을 볼 수가 없다.
두번째 방법은 첫번째 방법에서 중계서버에 저장된 메일을 가져오는 것이다. 사용자는 A PC에서 메일을 작성해서 자신이 구축한 메일서버로 보낸다. B는 A가 구축한 메일서버에서 메일을 받는다.
'운영체제 > 리눅스' 카테고리의 다른 글
[리눅스] 웹서비스를 위한 솔루션 APM(Apache + PHP + MySQL) (0) | 2010.07.13 |
---|---|
[리눅스] 네임 서버 (0) | 2010.07.07 |
[리눅스] LVM(Logical Volume Manager)과 RAID(Redundant Array of Inexpensive Disks) (0) | 2010.07.06 |
[리눅스] 디스크 추가하기 (0) | 2010.07.06 |
[리눅스] 응급복구 (루트 암호 없애기) (0) | 2010.07.02 |