s ystem p rogrammers' a ssociation for r esearching c omputer s ystems popular mtas exim &...

42
System Programmers' Association for Researching Computer Syst Popular MTAs EXIM & POSTFIX SPARCS 10 이이이 (harry)

Upload: jordan-neal

Post on 26-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Popular MTAsEXIM & POSTFIX

SPARCS 10 이대근 (harry)

Page 2: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

MTA

Mail Transfer Agent

Message Transfer Agentor

Page 3: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Let’s recall…

Page 4: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

E-mail

MTA MTA

MUA (ex: outlook express)MUA

그냥 새

MDA : Mail 우편함

Page 5: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

With MTA you can…

• Send and receive an email, of course– To users of your machine, without ISP– To other mail servers, you need connection to internet

• Fetch emails from POP3 server– using fetchmail

• Receive emails in right place– Using procmail

• Get messages from some programs via e-mail– Log files or security warnings can be delivered to your email

Page 6: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

A Lot of MTAs

AndQmail, Courier, Smail, MMDF…

Page 7: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

EXIMEXperimental Internet Mailer

Page 8: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

EXIM

• One of the most popular MTAs• Default MTA for Ubuntu• SPARCS server

• GPL• Flexible, extensible• Good compatibility with Sendmail

• Latest stable release: 4.72 (2010/06/03)

Page 9: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

How EXIM delivers mails?

Internet

SMTP(25)Daemon

Mail server

SpoolReceiver

Queue runner

DeliveryRemoteDelivery

LocalDelivery Mailbox

Page 10: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Message ID

1OROMT-0003j0-6G

The time at which the message started to be received. The number of sec-onds since the start of the epoch.

Time Process IDID of the process which received the message.

TimeFractional part of the time of recep-tion. The unit may be 1/2000 sec, 1/1000 sec, 1/200 sec or 1/100 sec.

Page 11: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Command line options

# exim [options] [arguments]

––helpDisplays help message

–bdRuns exim as a daemon, awaiting incoming SMTP connections from all available interfaces. Usually used with option –q.

–qStarts one queue runner process. Time specifications start queue runner periodically. (–q30m for starting every 30 minutes)

Page 12: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Command line options

# exim [options] [arguments]

–Mc <message id> <message id> …Deliver messages in turn. Usually called internally by queue runner.

–C <filelist>Find configuration files in <filelist> and apply them instead of de-fault configuration file specified by CONFIGURE_FILE.

–bP <option name> <option name> …Print the current configuration to standard output.

Page 13: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Let’s see SPARCS server

[21:56:58]harry@sparcs:~$ ps aux | grep exim102 2563 0.0 0.0 13344 1332 ? Ss Jul01 0:02 /usr/sbin/exim4 -bd -q30mRoot 17964 0.0 0.2 13588 3680 ? S 18:14 0:00 /usr/sbin/exim4 -Mc 1OXW93-0004fL-QH102 17966 0.0 0.1 13588 2056 ? S 18:14 0:00 /usr/sbin/exim4 -Mc 1OXW93-0004fL-QH102 17976 0.0 0.0 13352 896 ? S 18:14 0:00 /usr/sbin/exim4 -bd -q30m

Page 14: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Configuring EXIM

• EXIM configuration file is divided into 6 parts– 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 imme-

diately– Rewrite: Global address rewriting rules– Local_scan: Private options for local_scan() function

Difficult?

Page 15: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

[21:56:58]harry@sparcs:/etc/exim4$ cat update-exim4.conf.conf# /etc/exim4/update-exim4.conf.conf## Edit this file and /etc/mailname by hand and execute update-exim4.conf# yourself or use 'dpkg-reconfigure exim4-config'## Please note that this is _not_ a dpkg-conffile and that automatic changes# to this file might happen. The code handling this will honor your local# changes, so this is usually fine, but will break local schemes that mess# around with multiple versions of the file.## update-exim4.conf uses this file to determine variable values to generate# exim configuration macros for the configuration file.## Most settings found in here do have corresponding questions in the# Debconf configuration, but not all of them.## This is a Debian specific file

Page 16: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype='internet'dc_other_hostnames='sparcs.org;sparcs.net;143.248.234.102'dc_local_interfaces=''dc_readhost=''dc_relay_domains=''dc_minimaldns='false'dc_relay_nets=''dc_smarthost=''CFILEMODE='644'dc_use_split_config='true'dc_hide_mailname=''dc_mailname_in_oh='true'dc_localdelivery='maildir_home'

Page 17: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

dc_eximconfig_configtype='internet'

dc_eximconfig_configtype : The main configuration type.

‘local’: Mails are sent and received between the accounts of local machine‘internet’: Configure as a general email server connected to internet‘satellite’: Sends mail to another machine(smarthost)‘smarthost’: Intermediates email

Sets macro DC_eximconfig_configtype.

Page 18: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

dc_other_hostnames='sparcs.org;sparcs.net;143.248.234.102'

dc_other_hostnames : List of domains of mails that the server will finally accept

Multiple values can be set, separated by colon(:).

Mails delivered to [email protected], [email protected], [email protected] will be passed from daemon process to receiver process.

Page 19: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

dc_local_interfaces=''

dc_local_interfaces : List of IPs for daemon to listen on

Multiple values can be set, separated by colon(:).

Empty string means all interfaces.

Page 20: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

CFILEMODE='644'

CFILEMODE : The octal file mode of the generated file

Sets the mode of the files that are generated by update-exim4.conf.

Page 21: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/exim4/update-exim4.conf.conf

dc_use_split_config='true'

dc_use_split_config : Defines whether it uses split configuration files

‘true’: Uses multiple files below /etc/exim4/conf.d‘false’: Uses single file /etc/exim4/exim4.conf.template

dc_localdelivery='maildir_home'

dc_local_delivery : Name of default transport directory

‘’ or ‘mail_spool’: Mails are delivered to spool by default‘maildir_home’: Mails are delivered to ~/Maildir/ by default

Page 22: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Update configuration

# update-exim4.conf –d /etc/exim4 –o /etc/exim4/exim4.conf

Automatically generates configuration files.

# /etc/init.d/exim4 restart

Restarts the daemon with new configuration.

Page 23: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Log files

• /var/log/exim4/mainlog

• /var/log/exim4/rejectlog

Page 24: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

POSTFIX

Page 25: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

POSTFIX

• One of the most popular MTAs

• IBM Public License(free)

• Secure alternative to Sendmail• Able to handle large amounts of emails

• Latest stable release: 2.7.1 (2010/06/08)

Page 26: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Installation

Page 27: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

[21:56:58]harry@sparcs:/etc/postfix$ cat main.cf# See /usr/share/postfix/main.cf.dist for a commented, more complete version

# Debian specific: Specifying a file name will cause the first# line of that file to be used as the name. The Debian default# is /etc/mailname.myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)biff = no

# appending .domain is the MUA's job.append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings#delay_warning_time = 4h

readme_directory = no

Page 28: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

# TLS parameterssmtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pemsmtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.keysmtpd_use_tls=yessmtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scachesmtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for# information on enabling SSL in the smtp client.

myhostname = sparcsalias_maps = hash:/etc/aliasesalias_database = hash:/etc/aliasesmydestination = sparcs.org, sparcs.net, localhost.localdomain, , localhostrelayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = all

Page 29: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

# Debian specific: Specifying a file name will cause the first# line of that file to be used as the name. The Debian default# is /etc/mailname.myorigin = /etc/mailname

myorigin : Specifies the domain that appears in mail that posted on this machine.

/etc/mailname has sparcs.kaist.ac.kr in its first line, so specifying myorigin = /etc/mailname makes the sender of the mails outgoing from this machine like ‘[email protected]’.

myorigin = $mydomain is one of the most generally used set-tings.

Page 30: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

mynetworks_style = subnet

mynetworks_style : Specifies what kinds of clients to relay mail from.

host: Forwards mails from only the local machinesubnet: Forwards mail from the clients in the same subnetwork as the machineclass: Forwards mail from the clients in the same class as the ma-chine

If mynetworks_style is not set, you should specify the mynetworks list by hand.

Page 31: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

mydestination = sparcs.org, sparcs.net, localhost.localdomain, , localhost

mydestination : Specifies what domains this server will finally accept

Multiple values can be set, separated by commas(,).

Page 32: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/postfix/main.cf

relayhost =

relayhost : Specifies the delivery method

(empty string): Deliver the mail directly to the internet$mydomain: Deliver mails via local mail server

inet_interfaces = all

inet_interfaces : Specifies what interfaces that daemon should listen on

Page 33: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Update configuration

# postfix reload# /etc/init.d/postfix restart

Restarting postfix daemon will apply your new settings

Page 34: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Log files

• /var/log/mail.log

• /var/log/mail.info• /var/log/mail.err• /var/log/mail.warn

Page 35: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

ALIASES & FORWARDING

Page 36: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Aliases

• Alias is a way to use a virtual mail account– If webmaster is an alias of harry, messages sent to [email protected] will be redirected to harry’s mailbox.

• Alias is an easy way to configure mailing list– If wheel-seminar is aliases of all members who participates in

wheel seminar, messages sent to [email protected] will be redirected to their mailboxes.

• MTAs automatically reads alias database when the delivery process starts and deliver messages according to it.

Page 37: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

/etc/aliases

• <alias> : <actual name>– webmaster : harry

• <alias> : :include:<file name>– wheel-seminar : :include:/SPARCS/mail/aliases.d/wheel-seminar– Files is just a list of usernames separated by newlines.

• We have a good tool: edalias

Page 38: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

newaliases

• MTAs read /etc/aliases.db, not /etc/aliases.• You have to update database file after editing aliases files.

• # newaliases

Page 39: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Forwarding

• Pass messages to other mail addresses

• If harry forwards his mails to [email protected], all mails sent to [email protected] will be delivered to [email protected], in fact.

Page 40: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Settings

• Alias– harry : [email protected]

• /home/harry/.forward– [email protected]

Page 41: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Questions?

Page 42: S ystem P rogrammers' A ssociation for R esearching C omputer S ystems Popular MTAs EXIM & POSTFIX SPARCS 10 이대근 (harry)

Syst

em

Pro

gra

mm

ers

' A

ssoci

ati

on f

or

Rese

arc

hin

g C

om

pute

r Syst

em

s

Thank you!