Presentation is loading. Please wait.

Presentation is loading. Please wait.

SPARCS WHEEL SEMINAR mango X sugoi

Similar presentations


Presentation on theme: "SPARCS WHEEL SEMINAR mango X sugoi"— Presentation transcript:

1 SPARCS WHEEL SEMINAR 2016.07.14 mango X sugoi
Mail Server SPARCS WHEEL SEMINAR mango X sugoi

2 Mail server의 간략한 구동 형태(1)

3 Mail server의 간략한 구동 형태(2)
MUA(Mail User Agent) : 사용자가 을 읽고 답장하고 삭제할 수 있는 프로그램 들을 말한다. Ex) Mozilla Thunderbird, Windows 10 MAIL APP, Outlook, Mutt, etc. Gmail.com, mail.naver.com 같은 웹 사이트에서 제공하는 것들도 MUA이다! MTA(Mail Transport Agent) : MUA에서 작성되고 전송된 을 처리하는 장소이 다. 우리가 배우고자 하는 mail server가 바로 MTA에 해당한다. MDA(Mail Delivery Agent) : MUA에 의해서 전송된 을 MTA로부터 넘겨받아 다시 수신자가 MUA를 통해서 받기 전까지 을 저장해 주거나 MUA로 전송해 주는 역할을 한다. 메일서버들은 계정사용자들에 대한 MDA를 가지고 있어 사용자 들이 MUA를 이용해서 메일을 받아가지 않는다면 이를 보관해둔다.

4 Mail server의 간략한 구동 형태(3)
메일을 보내거나 받을 때 지켜야하는 프로토콜(Protocol)에 대한 부분들이다. SMTP(Simple Mail Transfer Protocol) : TCP/IP에서 을 전달시켜 주는 프로토콜 을 말한다. 기본으로 TCP 25 포트를 사용한다. PC에서 메일 서버로 메일을 보낼 때, 메일서버끼리 메일을 주고 받을 때 사용된다. POP3(Post Office Protocol) / IMAP(Internet Message Access Protocol) : 우리가 보 통 알고 있는 ‘받는 메일서버’를 말한다. MTA에서 MDA로 전송된 을 수신하기 위한 Daemon이 POP3나 IMAP Daemon이기 때문에 이런 이름이 붙었다. 최종적으로 MUA가 을 수신하기 전까지 의 내용을 가지고 있기 때문에 ‘받는 메일서 버’라고 한다.

5 POP3와 IMAP의 차이점(1) 구분 POP3 IMAP 사용 포트 110 43 / 143 메일을 가져간 후
메일서버 내에 존재하지 않음. 사용자가 메일을 가져가면 서버에서는 바로 삭제됨. 메일서버에서 삭제되지 않고 남아 있음. 사용자가 메일을 확인한 후에 삭제를 해야만 지워짐. 장단점 장점 구현이 용이함. 지원하는 클라이언트가 많음. 단점 메일 사용하는 곳이 많을 때 불편함. 메일사용하는 곳이 여러 곳일 때 편리함. POP3에 비해 구현이 어려움. 지원하는 클라이언트가 많지 않음.

6 POP3와 IMAP의 차이점(2) POP3 IMAP 원격 서버에서 이메일을 받아서 한꺼번에 메일 박스로 넣는다.
오프라인 상태에서도 읽을 수 있다. 메일을 받은 후 유저가 “분류” 할 수 있기 때문에 스팸메일도 로컬에 저장된다. IMAP 요청을 받으면 그때그때 메일을 보낸다. 스팸메일 등의 유저가 원하지 않는 메일은 로컬에 저장되지 않는다. 통신서버와의 트래픽이 높다. 그래서 온라인으로 동기화가 잘 된다는 가정을 기반으로 이루어질 때가 많다.

7 Mail server의 간략한 구동 형태 MTA MDA (SMTP / POP3 / IMAP) MUA

8 다른 그림으로 표현한다면… 차이점 : Daemon에 대해 나와있다

9 그래서 Mail daemon이 무엇인가요?  Mail Daemon이란 일종의 프로세스로서, MUA로 작성한 송신자의 메일과 정보를 메 일 서버가 해석 가능하도록 재 가공하며 메일서버에서 오는 정보를 수신자가 해석 가능하도록 재 가공한다. 백그라운드에서 실행된다.

10 MAIL Server 구동 원리 (1) 사용자는 MUA(mail client와 같은 프로그램)를 통해서 메일을 작성한 후, SMTP를 사용하여 메일 Daemon(MTA Daemon)으로 메시지를 전송한다

11 MAIL Server 구동 원리 (2) Mail Daemon은 client의 주소를 분석하고 보내는 쪽에 속하는 메일서버로 메시지와 정보를 보낸다.

12 MAIL Server 구동 원리 (3) 송신자 쪽의 메일서버에서 수신자 쪽의 메일 서버로 메시지와 정보를 보낸다. TCP/IP를 통해 보내는데, 이 때에도 SMTP가 쓰인다!

13 MAIL Server 구동 원리 (3) – 좀 더 자세한 설명
도착지와 출발지가 다르다면 출발지의 메일 서버는 메일을 25포트를 통하여 도착 지의 메일 서버에게 넘겨준다. 만약 도착지에 접속할 수 없다면 스풀에 저장되어 주 기적으로 도착지에 접속을 다시 시도한다. 접속이 이루어지면 메일을 전송한다. 지정된 시간(충분히 많은 시간)이 지나도 보낼 수 없다면 송신자에게 메일 발신 불 가 메일을 보내게 된다.

14 MAIL Server 구동 원리 (4) 메일 Daemon이 받은 SMTP 형식의 데이터를 해석하여 사용자의 메일 프로그램에 보내준다. 메일을 수신할 때는 메일 프로그램은 POP3 프로토콜을 사용하여 메일 서버로 부터 메일을 받는다.

15 MAIL Server 구동 원리 (4) – 좀 더 자세한 설명
도착지의 MTA는 User의 존재 유무를 확인하여 메일을 전달한다. User가 존재하지 않을 경우 다시 편지를 처음 전송한 사람에게 되돌려 준다. User가 존재할 경우 MDA 프로그램에 메일을 넘겨주며 MDA는 적절한 Filtering을 거쳐 각 사용자의 메일 박스에 저장된다.

16 한 장의 그림으로 요약

17 실습 시간이에요!

18 1. MUA 및 MTA 설치 Exim4(MTA) 먼저 설치하기! Mutt(MUA)!
#apt-get install exim4 exim4-base exim4-config Mutt(MUA)! #apt-get install mutt

19 2. 메일 보내보기 mutt를 실행해 보자! mutt m을 눌러서 메일을 보내보자! 시작은 자기자신한테~

20 자신의 구름 주소를 입력 Subject는 제목이다 본문은 vim으로 입력 후 저장! 옆 창에서 y를 누르면 전송 완료~

21 Q를 눌러서 종료 후 다시 접속할 시 메일이 보내져 있다!

22 하지만 외부 계정에 메일을 보낸다면…?! 같은 방법으로 본인의 네이버 계정에 메일을 보내보자! 잘 보내진 것 같다만….?

23 하지만 mutt에 다시 접속을 해보면 이상한 메일이…!
오류! MTA 서버의 기본 설정이 Local로 되어있기 때문이다.

24 실패한 이유는? #dpkg-reconfigure exim4-config 아래 옵션을 선택하기!

25 다른 설정들은 그대로 엔터!

26 다시 네이버로 메일을 보내보자! 네이버에서 구름으로 메일을 보내는것은 안되는 것 같다….ㅠㅠ

27 Exim 본격 설정! EXIM configuration
ACL: Access control list for controlling incoming SMTP mails Authenticators: Settings for authenticator drivers Routers: Determines how the messages is to be delivered Transports: Defines the mechanisms how the messages are to be copied Retry: Rules for use when the message cannot be delivered immediately Rewrite: Global address rewriting rules Local_scan: Private options for local_scan() function

28 #vim /etc/exim4/update-exim4.conf.conf

29 dc_eximconfig_configtype = ‘internet’
Internet / smarthost / satellite / local

30 dc_other_hostnames = ‘sparcs.org’
위의 도메인으로 보내진 메일만을 수신하게 된다. (로컬호스트 및 로컬 주소는 기본적으로 포함된다.)

31 dc_local_interfaces=‘’
어떤 주소와 연결을 할지 결정한다.

32 dc_localdelivery = ‘mail_spool’
mail_spool/maildir_home

33 Vim으로 수정한 후에는 #update-exim4.conf #service exim4 restart

34 그 외에…. /etc/exim4/exim4.conf.template /etc/exim4/passwd.client
기본적인 것들을 제외한 모든 설정이 여기에 기록되어 있다! /etc/exim4/passwd.client Smarthost에 접속하기 위한 아이디 및 비밀번호를 저장하는 곳이다!

35 포워딩! A라는 메일 주소에 온 메일을 포워딩으로 다른 주소들로도 전달받을 수 있다!

36 ? vim ~/.forward A가 B를 포워딩하고, B가 A를 포워딩할 경우 무한 루프가 발생할 수 있다!
( forwarding loop) 이것을 막아주기 위해서 \를 넣어준다. ?

37 ~/.forward 파일을 이용해서 필터링 또한 가능합니다.
첫 줄에 # exim filter을 입력하는 것으로 필터링 관련 코딩을 시작합니다. 관련 문법은 forwarding_and_filtering_in_exim.html을 참조하세요!

38 Aliases A라는 주소에 보내진 메일을 B로 다시 보낼 때 이용한다.

39 #vim /etc/aliases 이제 보내진 메일은 보 내진다!

40 :include:[파일위치]의 형태로 다른 vi파일과 연동시킬 수도 있다.

41 Mail QUEUE 현재 처리하고 있는 메일의 순번을 의미!
위처럼 처리되지 않는 것들이 쌓일 경우 여러가지 문제가 발생할 수 있다.(송수신 의 delay 및 처리 x) #exiqgrep #exim4 -bp

42 그렇다면? exiqgrep으로 아이디를 확인한 후, #exim4 –Mrm [ID] 로 처리해주세요!


Download ppt "SPARCS WHEEL SEMINAR mango X sugoi"

Similar presentations


Ads by Google