开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開APP
          userphoto
          未登錄

          開通VIP,暢享免費電子書等14項超值服

          開通VIP
          [原創(chuàng)-申請加精] postfix dovecot postfixadmin mysql認證
           [原創(chuàng)-申請加精] postfix+dovecot+postfixadmin+mysql認證前段時間在弄postfix郵局,碰到了很多問題,最后原因都是由于看的那些教程沒有把細結(jié)部分寫出來,導(dǎo)致初學(xué)問題多多,這里就把我的過程寫出來,本文是通過結(jié)合了CU上各位前輩的一些文章總結(jié)配置成功而寫的,供需要學(xué)習(xí)的同學(xué)參考

          首先先裝好apache+php+mysql

          步驟這里不提了
          需要安裝以下軟件:postfix(一款MTA),postfixadmin(管理郵局賬號),cyrus-sasl(安全認證軟件),dovecot(一款安全pop軟件)

          wget http://dovecot.org/releases/1.2/dovecot-1.2.9.tar.gz
          wget http://downloads.sourceforg[…]_2.3.tar.gz?use_mirror=nchc
          wget ftp://ftp.andrew.cmu.edu/[…]/cyrus-sasl-2.1.23.tar.gz
          wget ftp://ftp.cuhk.edu.hk/[…]/postfix-2.6.5.tar.gz


          (1)安裝postfixadmin

          tar zxf postfixadmin_2.3.tar.gz
          mv postfixadmin_2.3 /usr/local/wwwroot/postfix
          cd /usr/local/wwwroot/postfix
          cp config.inc.php.sample config.inc.php
          vi config.inc.php

          找這行$CONF['default_language'] = 'en';
          改為$CONF['default_language'] = 'cn'; //讓postfixadmin 支持中文
          找到 $CONF['domain_in_mailbox'] = 'YES';
          改為$CONF['domain_in_mailbox'] = 'NO'; // If you don't want to have the domain in your mailbox set this to 'NO'.
          找到此行:$CONF['encrypt'] =
          改為CONF['encrypt'] = 'cleartext'; //明文存入mysql

          配置apache訪問postfixadmin

          vi /usr/local/apache/conf/httpd.conf

          <VirtualHost *:80>
          DocumentRoot /usr/local/wwwroot/postfix
          <Directory "/usr/local/wwwroot/postfix">
          Options FollowSymLinks
          DirectoryIndex index.php
          AllowOverride None
          AuthType Basic
          authname Private
          authuserfile /var/run/admin
          require valid-user
          Order allow,deny
          Allow from all
          </Directory>
          </VirtualHost>

          生成認證文件

          /usr/local/apache/bin/htpasswd -c /var/run/admin admin //其中/var/run/admin為文件名,最后http://www.becdoors.com的admin為用戶名
          ew password:
          Re-type new password:
          Adding password for user admin
          輸入兩次密碼后生成用戶admin

          添加mysql用戶

          create database postfix;
          GRANT all privileges on postfix.* TO postfix@localhost IDENTIFIED BY 'PostFIX_1228';
          flush privileges;

          運行安裝向?qū)靶枰惭bphp的imap擴展

          先安裝依賴包,否則會報錯

          yum -y install openssl openssl-devel pam pam-devel
          wget ftp://ftp.cac.washington.edu/mail/imap.tar.Z
          tar zxf imap.tar.z
          cd imap-2007a
          make lr5 PASSWDTYPE=std SSLTYPE=unix.nopwd IP6=4
          echo "set disable-plaintext nil" > /etc/c-client.cf
          mkdir /usr/local/imap-2007a
          mkdir /usr/local/imap-2007a/include/
          mkdir /usr/local/imap-2007a/lib/
          chmod -R 077 /usr/local/imap-2007a
          cp imapd/imapd /usr/sbin/
          cp c-client/*.h /usr/local/imap-2007a/include/
          cp c-client/*.c /usr/local/imap-2007a/lib/
          cp c-client/c-client.a /usr/local/imap-2007a/lib/libc-client.a
          cd /usr/local/src/php-5.2.10/ext/imap
          /usr/local/php/bin/phpize
          ./configure --with-php-config=/usr/local/php-config --with-imap-ssl --with-imap=/usr/local/imap-2007a
          make && make install

          然后在php.ini中加入 extension = "imap.so"
          重啟apache
          打開http://yourip/setup.php就可以開始postfixadmin的安裝了,安裝完后可以進行添加域和用戶的操作,這里添加了域mail.abc.com,用戶名lsm@mail.abc.com

          (2)安裝cyrus-sasl

          tar zxf cyrus-sasl-2.1.23.tar.gz
          cd cyrus-sasl
          ./configure --enable-login --enable-sql --with-mysql=/usr/local/mysql/
          make && make install
          ln -s /usr/local/lib/sasl2 /usr/lib/sasl2

          (3)

          請教,SAMBA可寫不可刪是否有它法實現(xiàn),急?。?!

          安裝postfix

          停用sendmail

          service sendmail stop
          chkconfig --level 345 sendmail off
          mv /usr/bin/newaliases /usr/bin/newaliases.orig
          mv /usr/bin/mailq /usr/bin/mailq.orig
          mv /usr/sbin/sendmail /usr/sbin/sendmail.orig
          groupadd -g 12345 postfix
          useradd -u 12345 -g 12345 -c postfix -d /dev/null -s /bin/false postfix
          groupadd -g 54321 postdrop

          tar zxf postfix-2.6.5.tar.gz
          cd postfix-2.6.5
          make -f Makefile.init makefiles \
          'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include \
          -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\"dovecot\"' \
          'AUXLIBS=-L/usr/local/mysql/lib -lmysqlclient -lz -lm'

          make && make install

          然后下一步下一步默認就可以

          echo postfix: root >>/etc/aliases
          newaliases

          (4)安裝配置dovecot

          mkdir -p /data/mailbox
          chown -R postfix.postfix /data/mailbox
          useradd -d /dev/null -s /sbin/nologin dovecot
          tar zxf dovecot-1.2.9.tar.gz
          cd dovecot-1.2.9
          ./configure --with-sql --with-sql-drivers --with-mysql
          make && make install


          vi /usr/local/etc/dovecot.conf
          protocols=pop3
          listen=*
          disable_plaintext_auth = no
          ssl_disable = yes
          auth_debug = yes
          log_path = /var/log/pop3.log
          mail_location = maildir:/data/mailbox/%u
          pop3_uidl_format=%08Xu%08Xv
          mail_uid = 12345
          mail_gid = 12345
          first_valid_uid = 12345
          auth default {
          mechanisms = PLAIN LOGIN CRAM-MD5 DIGEST-MD5
          passdb sql {
          args = /usr/local/etc/dovecot-sql.conf
          }
          userdb sql {
          args = /usr/local/etc/dovecot-sql.conf
          }
          socket listen {
          client {
          path = /var/run/dovecot/auth-client
          mode = 0660
          user = postfix
          group = postfix
          }
          }
          }

          vi /usr/local/etc/dovecot-sql.conf

          driver = mysql
          connect = host=localhost dbname=postfix user=postfix password=PostFIX_1228
          default_pass_scheme = MD5
          password_query = SELECT password, maildir as userdb_home FROM mailbox WHERE username = '%u'
          user_query = select maildir as home,12345 as uid ,12345 as gid from mailbox where username='%u' And active='1'


          (5)配置postfix

          vi /etc/postfix/main.cf

          command_directory = /usr/sbin
          config_directory = /etc/postfix
          daemon_directory = /usr/libexec/postfix
          data_directory = /var/lib/postfix
          debug_peer_level = 2
          html_directory = no
          inet_interfaces = all
          mail_owner = postfix
          mailbox_size_limit = 209715200 #容量大小
          mailq_path = /usr/bin/mailq
          manpage_directory = /usr/local/man
          message_size_limit = 52428800 #限制附件大小
          mydomain = mail.abc.com #域名
          myhostname = mail #主機名
          mynetworks = 0.0.0.0/0 #配置這一項使用用戶可在任意地發(fā)送郵件
          mynetworks_style = subnet
          myorigin = $mydomain
          newaliases_path = /usr/bin/newaliases
          queue_directory = /var/spool/postfix
          readme_directory = no
          sample_directory = /etc/postfix
          sendmail_path = /usr/sbin/sendmail
          setgid_group = postdrop

          #配置使用dovecot的sql認證
          smtpd_banner = $myhostname ESMTP
          smtpd_recipient_restrictions = permit_mynetworks, reject_invalid_hostname, reject_non_fqdn_hostname, reject_unknown_sender_domain, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_pipelining, reject_unauth_destination

          #上面這個smtpd_recipient_restrictions后面的項目每個逗號后都要有一個空格,否則會有問題

          smtpd_sasl_auth_enable = yes
          smtpd_sasl_local_domain =
          smtpd_sasl_path = /var/run/dovecot/auth-client
          smtpd_sasl_security_options = noanonymous
          smtpd_sasl_type = dovecot

          unknown_local_recipient_reject_code = 550

          #虛擬用戶設(shè)定
          virtual_alias_domains =
          virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
          virtual_gid_maps = static:12345
          virtual_mailbox_base = /data/mailbox/
          virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
          virtual_mailbox_limit = 209715200
          virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
          virtual_transport = virtual
          virtual_uid_maps = static:12345


          vi /etc/postfix/mysql_virtual_alias_maps.cf

          user = postfix
          password = PostFIX_1228
          hosts = localhost
          dbname = postfix
          table = alias
          select_field = goto
          where_field = address

          vi /etc/postfix/mysql_virtual_domains_maps.cf

          user = postfix
          password = PostFIX_1228
          hosts = localhost
          dbname = postfix
          table = domain
          select_field = description
          where_field = domain

          vi /etc/postfix/mysql_virtual_mailbox_maps.cf

          user = postfix
          password = PostFIX_1228
          hosts = localhost
          dbname = postfix
          table = mailbox
          select_field = maildir
          where_field = username

          (6)運行測試

          在測試前需要在DNS服務(wù)器上建一個MX記錄解析到本機

          postfix start
          dovecot

          然后用netstat -putln查看25和110端口是否啟動

          測試認證

          telnet localhost 25

          ehlo localhost # 手工輸入返回下列信息表示postfix運行良好
          250-mail
          250-PIPELINING
          250-SIZE 52428800
          250-VRFY
          250-ETRN
          250-AUTH PLAIN LOGIN CRAM-MD5 DIGEST-MD5
          250-ENHANCEDSTATUSCODES
          250-8BITMIME
          250 DSN
          auth login #手工輸入進行認證
          334 VXNlcm5hbWU6
          bHNtQG1haWwuYWJjLmNvbQ== #手工輸入用戶名的base64編碼
          334 UGFzc3dvcmQ6
          MTIzNDU2 #手工輸入密碼的base64編碼
          334 UGFzc3dvcmQ6
          235 2.7.0 Authentication successful #返回該信息表示認證成功
          mail from:lsm@mail.abc.com #發(fā)件人地址
          250 2.1.0 Ok
          rcpt to:lsm@163.com #收件人地址
          data
          sdfasdfsdfsf #輸入發(fā)信內(nèi)容
          . #結(jié)束輸入發(fā)信內(nèi)容
          subject:test email #發(fā)信主題

          將字符轉(zhuǎn)換為base64編碼的方法

          vi a.php
          <?php
          echo base64_encode("lsm@mail.abc.com");
          echo "<p>;";
          echo base64_encode("123456");
          ?>;

          運行/usr/local/php/bin/php a.php就可以看到轉(zhuǎn)換的base64編碼

          測試收信

          telnet localhost 110

          user lsm@mail.abc.com #輸入用戶名
          +OK
          pass 123456 #輸入密碼
          +OK Logged in.
          list #列出新郵件
          +OK 1 messages: #有一封新郵件
          1 1608

          整個過程完成了,你可以在outlook或者foxmail上配置看能不能正常收發(fā)郵件,注意用戶名是完整的,如lsm@mail.abc.com,這個郵件地址就是用戶名

          [ 本帖最后由 00306 于 2010-1-4 14:55 編輯 ]占個沙發(fā)板凳~~:mrgreen:只有站在地板上啦http://www.youlewanju.net!漢王電紙書

          有疑問:
          postfix支持curys-sasl 或dovecot 做驗證。只選一個如dovecot不就干凈了嗎?干嘛非要兩個都上?感覺有點多余。
          本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
          打開APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          爛泥:Postfix郵件服務(wù)器搭建之軟件安裝與配置
          linux下安裝postfix郵件系統(tǒng)(二)
          使用Postfix構(gòu)建基于FreeBSD的郵件系統(tǒng)(簡化版)
          Postfix 簡單安裝與配置
          CentOS5.3+Nginx0.7.57+Postfix+Extmail郵件系統(tǒng)安裝 -...
          CentOS6.4+LAMP+Postfix+Dovecot+Postfixadmin+Roundcubemail 打造企業(yè)級郵件服務(wù)器 (1)
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
          綁定賬號成功
          后續(xù)可登錄賬號暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點擊這里聯(lián)系客服!

          聯(lián)系客服