¹ê§@¶l¥óµêÀÀ¥D¾÷(µêÀÀºô°ì)
¨Ï¥Îpostfix+vm-pop3d
§@ªÌ:cschen33.tw@yahoo.com.tw
«Ø¥ß¤é´Á¡G2006/05/31
³Ì«á§ó·s¡G2006/06/01

¥Øªº:
Åý¤@¥x¥D¾÷¥i¥H´£¨Ñ¤£¦Pªººô°ì¶l¥óªA°È,¤]´N¬O§Ú­Ì¥u»Ý­n¤@¥x¥D¾÷¥i¥H´£¨Ñ¤£¦Pªº¤½¥qªº¶l¥óªA°È

§@·~¨t²Î:
FC4,CentOs
¨Ï¥Î³nÅé:
§Ú­Ì­n¤@¨Ö¦Ò¼{¶l¥ó¦øªA¾¹ªº¨â­Ó¨ó©w:
1.SMTP:
¥Ø«e±`¥Îªº¦³sendmail/postfix/qmail
§ä¹Lºô¸ô¤W¦³Ãösendmailªº¸ê®Æ¹ê¦b¦³­­,¨äºô¸ô¤W¦³http://www.sendmail.org/tips/virtual-hosting.html(²ÓŪ¤§«á,¨ä¹ê¥u¬O¹ê§@Ãþ¦ü§O¦Waliasesªº§@ªk,±N«HÂà¨ÓÂà¥h),¦Ó¹ê§@ªº¥u¦³linuxcon³o­Ó«Ü¤[ªººÞ²zµ{¦¡¤ä´©³o­Ó¥\¯à(¨äpop3¥H¤@­Óvpop3d¹ê§@),¦ý¸ê®Æ¤Ó¹L¦ÑÂÂ,¤£¤ä´©FC4µ¥
¦Ópostfix§¹¾ã¤ä´©,¨äºô­¶¤W¦³§¹¾ãªº¤å¥óhttp://www.postfix.org/VIRTUAL_README.html,¦ý¬O»y²j¤£¸Ô,¥ç¤£¤ÁÃD,¦ý¬O¥¦¦X¥G§Úªº»Ý¨D
2. pop3:
vm-pop3d(¤ä´©¦hºØMTA),ÁöµMµ{ºØ¦³ÂIÂÂ,¦ý¦³¸û¸Ô²Óªº¤å¥óhttp://www.sonicresolutions.com/tech/howto_postfix_vmpop3d.html
vpopmail(¥D­n¤ä´©qmail),¥Ñ©óqmail¸û¤Ö¨£,¦]¦¹§Ú¿ï¾Üvm-pop3d

¦w¸Ë³nÅé:
1.postfix
°²³]§A¤w¸g¦w¸Ëpostfix(²¤)
2.vm-pop3d
¤U¸ü³nÅévm-pop3d-1.1.6.tar.gz : http://www.reedmedia.net/software/virtualmail-pop3d/#download
 ¦w¸Ë:
  tar xvfz vm-pop3d-1.1.6
  cd vm-pop3d-1.1.6
  ./configure --prefix=/usr
  make
  make install

¬°µêÀÀ¥D¾÷³]©w¤@­Ó·sªº¸s²Õ¤Î¨Ï¥ÎªÌ
¦]¬°µêÀÀ¥D¾÷¤Wªº¨Ï¥ÎªÌ¤£¦s¦b,¦ý¦s©ñÀɮ׮ɥ²¶·­n¦³Åv­­,¦]¦¹§Ú­Ì­n±N¦¬«H¤Î°e«Hµ{¦¡³£¦³Åv­­¥i¥HŪ¼g¸ÓÀɮשΥؿý
¹w³]:¨Ï¥ÎªÌvmail(uid 200),¸s²Õvmail(gid 200),§A¥i¥H¨Ì·Ó¦Û¤vªºÀô¹ÒÅܧó
groupadd  vmail -g 200
adduser vmail -u 200 -g vmail
½Ð±N/etc/passwd¤¤ªºvmailªºshell§ï¬°/sbin/nologin(¬°¤F¦w¥þªº­ì¦])

°²³]:µêÀÀ¥D¾÷¬°xyz.com.tw,¨Ï¥ÎªÌteddy
³]©wpostfix :
/etc/postfix/main.cf
¥[¤J: 
virtual_mailbox_domain = xyz.com.tw
#§AªºµêÀÀ¥D¾÷ªººô°ì,¥i¥H¦h­Ó¨Ï¥Î³rÂI¤À¶}
virtual_mailbox_base = /var/spool/virtual #µêÀÀ¥D¾÷¶l¥óªºÀɮ׮ڥؿý(¤£¥i¥H¶Ã§ï­n°t¦Xvm-pop3dªº¹w³]­È)
virtual_mailbox_maps=/etc/postfix/vmailbox #³]©w¨Ï¥ÎªÌ¶l¥óªº¥Ø¿ý©Ò¦b,³o¬O¤@­ÓÀÉ®×
virtual_uid_maps=200 #¦sÀɨϥΪº¨Ï¥ÎªÌuid
virtual_gid_maps=200 #¦sÀɨϥΪº¸s²Õgid

/etc/postfix/vmailbox
¥[¤J:
teddy@xyz.com.tw     xyz.com.tw/teddy #³]©w¨Ï¥ÎªÌteddyªº¶l¥ó¥Ø¿ý=virtual_mailbox_base+xyz.com.tw/teddy
/var/spool/virtual/xyz.com.tw/teddy
#½Ð®Ú¾Ú¤£¦Pªº¨Ï¥ÎªÌ¥[¤J,¥[¤J¤§«á½Ð°õ¦æpostmap /etc/postfix/vmailbox
postmap ¬O±N¤å¦rÀÉÂର.dbÀÉ

¥ý«e§Ú­Ì«ü©w¤F´X­Ó¥Ø¿ý§Ú­Ì»Ý­n¤â°Ê«Ø¥ß,¨Ã«ü©w¨äÅv­­¬°vmail.vmail
mkdir /var/spool/virtual
chown vmail.vmail /var/spool/vairtual
mkdir /var/spool/virtual/xyz.com.tw
chown vmail.vmail /var/spool/virtual/xyz.com.tw

³]©wvm-pop3d:
¦b/etc/xinetd.d/«Ø¥ß¤@­ÓÀÉ®×vm-pop3d
/etc/xinetd.d/vm-pop3d
¨ä¤º®e¦p¤U:
service pop3
    {
        socket_type = stream
        protocol = tcp
        wait = no
        user = root
        instances = 25
        server = /usr/sbin/vm-pop3d
        server_args = -i --user vmail
        log_type = SYSLOG local4 info
        log_on_success = PID HOST EXIT DURATION
        log_on_failure = HOST ATTEMPT
        disable = no
    }
#pop3¥²¶·¨Ï¥Î±K½X¨ÓÅçÃÒ,¨º±K½X¦b¨ºùؤS¦p¦ó³]©w©O?
#§Ú­Ì¥i¥H¬Ý¤@¤Uvm-pop3dªº¤å¥óman vm-pop3d ,¨ä³Ì«á¤@¬q
FILES
     /var/spool/mail     mail files
     /var/spool/virtual  virtual mail directories
     /etc/virtual        virtual passwd files
     /etc/inetd.conf     pop3 server program invocation
     /etc/syslog.conf    logging specifications


¨äµêÀÀ¨Ï¥ÎªÌªº±K½X©Ò¦b/etc/virtual/µêÀÀºô°ì
#¦Ó¨ä±K½X¬O¨Ï¥Îhttpd ªºhtpasswd ¨Ó«Ø¥ß
 «Ø¥ß¤W­z¥²¶·¥Ø¿ý
mkdir /etc/virtual
mkdir /etc/virtual/xyz.com.tw
«Ø¥ßxyz.com.twºô°ìªº¨Ï¥ÎªÌteddy
htpasswd -c /etc/virtual/xyz.com.tw/passwd teddy

¥Ø«e³£³]©w¦n¤F
1.­«·s±Ò°Êpostfix: service postfix reload
2.­«·s±Ò°Êxinetd:servcie xinetd restart

´ú¸Õ:
postfix ¦¬«H:
¥»¾÷±H¤@«Ê«Hµ¹teddy@xyz.com.tw
Àˬd/var/spool/virtual/xyz.com.tw/teddy¬O§_¦s¦b
vm-pop3dÅçÃÒ´ú¸Õ:
[root@abc com.tw]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost (127.0.0.1).
Escape character is '^]'.
+OK POP3 Welcome to vm-pop3d 1.1.6 <30242.1149118462@abc.com.tw>
user teddy@xyz.com.tw
+OK
pass teddy
+OK opened mailbox for teddy

OutLook Express³]©w
¥u¦³±b¤á¦WºÙ¤£¤@¼Ë

¦]¬°ÅçÃÒ¥²¶·¥]§tdomain
¥Ñteddy §ï¬°teddy@xyz.com.tw

dns ³]©w
¤W­z³]©w§¹²¦«á,ºô¸ô¤W¨Ã¤£ª¾±Hµ¹xyz.com.twºô°ìªº«H­n±Hµ¹¥»¥D¾÷
¦]¦¹§Ú­Ì¦bxyz.com.tw¦WºÙ¦øªA¾¹¤W³]©w
xyz.com.tw. IN MX 10 ¥»¾÷ªº¥D¾÷¥þ¦W.

1.¦b­ìµêÀÀºô°ì·s¼W¨Ï¥ÎªÌ,¨Ò: sam@xyz.com.tw
    vi  /etc/postfix/vmailbox
    ¥[¤J:
    sam@xyz.com.tw    xyz.com.tw/sam
    postmap /etc/postfix/vmailbox
    htpasswd /etc/virtual/xyz.com.tw/passwd sam
2.·s¼W¤@­ÓµêÀÀºô°ì,¨Ò:def.com.tw
    ¦b/etc/postfix/main.cf ¶µ¥Øviirtual_mailbox_domain=xyz.com.tw, def.com.tw
    «Ø¥ß¥Ø¿ý/etc/virtual/def.com.tw
    «Ø¥ß¥Ø¿ý/var/spool/virtual/def.com.tw
    chown vmail.vmail /var/spool/virtaul/def.com.tw
 
¦bfc4¤W­ì/etc/passwd¤¤ªº¨Ï¥ÎªÌ,»Ý­n­×§ï¤~¯à¥¿±`¦¬«H
¤Á´« vm-pop3dªº­ì©l¥Ø¿ý¤¤
cp vm-pop3d.pam /etc/pam.d/vm-pop3d
¥B½sĶ­n¥[¤J --enable-pam
¸Ô±¡½Ð°Ñ¦Ò:µ{¦¡ºô¯¸¤¤ªºFAQªº(CVS faq)

ip baseªº³]©w
¦b½sĶvm-pop3d¤¤¥i¥H¥[¤J
  --enable-ip-based-virtual  

©Ò¿× ip base ¬O«ü¤@¥x¾÷¾¹¦³¦h­ÓIP¨C¤@­ÓIP¹ïÀ³¤@­Óºô°ì