Email System Install Manual ver1.1
說明 : 測試域名:test.com ; hostname=mail.test.com 系統環境 :
Postfix PostfixAdmin MySQL Apache22 PHP4 PHP4-Session Cyrus-sasl Courier-imap Maildrop Squirrelmail ClamAV Amavisd-new SpamAssassin
1 OS:FreeBSD 6.1 Release 2 mysql-server-5.x:/usr/ports/database/mysql50-server 3 apache-2.2.x:/usr/ports/www/apache22 4 php5-x:/usr/ports/lang/php5 5 php5-session-5.x:/usr/ports/www/php5-session 6 cyrus-sasl-2.x:/usr/ports/security/cyrus-sasl2 7 postfix-2.3.x:/usr/ports/mail/postfix 8 PostfixAdmin :/usr/ports/mail/postfixadmin 9 courier-imap-4.x:/usr/ports/mail/courier-imap 10 maildrop-1.x:/usr/ports/mail/maildrop 11 squirrelmail-1.4.x:/usr/ports/mail/squirrelmail 12 ClamAV(ClamAntiVirus):/usr/ports/security/clamav 13 Amavisd-new:/usr/ports/security/amavisd-new 14 SpamAssassin:/usr/ports/mail/p5-Mail-SpamAssassin
安裝前先更新port tree 系統采用最小化安裝 #cd /usr/ports/net/csup //切換到安裝路徑 #make install clean //安裝並清除過程中不必要的檔案 #cd /usr/share/examples/cvsup //路徑 #cp ports-supfile /root/ //放到/usr下(看你高興要放哪) #cd /root #vi ports-supfile //修改原更新站台位置內容如下 default host CHANGE_THIS.FreeBSD.org //官方站台(預設值) default host cvsup.cn.freebsd.org //改為國內站台,如此下載速度較快 #cd /root //切換路徑 #rehash //才不會出現指令無效訊息(csup: Command not found.) #csup -L 2 ports-supfile //開始更新 #cd /usr/ports;make fetchindex //或取ports INDEX文件,可以不做這步
安裝 MySQL50 ( Server/Client ) 官方網站:http://www.mysql.com #cd /usr/ports/databases/mysql50-server/ #make install clean
#vi /etc/rc.conf # 設定 mysql 開機自動啟動
mysql_enable="YES"
#/usr/local/etc/rc.d/mysql-server start # 手動啟動 mysql 。
#netstats -na |grep LISTEN # 確認 mysql server 有啟動
tcp4 0 0 *.3306 *.* LISTEN
Setp 2.
安裝 Apache2.2.x 官方網站 http://www.apache.org #cd /usr/ports/www/apache22 #make install clean
#vi /etc/rc.conf # 設定 apache22 開機自動 up
apache22_enable="YES" #vi /boot/loader.conf #添加 apache22的accf 選項 accf_http_local=”yes”
#vi /usr/local/etc/apache22/httpd.conf
ServerAdmin test@test.com ServerName 127.0.0.1 AddDefaultCharset big5
#/usr/local/sbin/apachectl start #ps -ax |grep http # 確認 apache 有啟動
70558 ?? Ss 0:00.06 /usr/local/sbin/httpd -k start 70559 ?? S 0:00.01 /usr/local/sbin/httpd -k start 70560 ?? S 0:00.01 /usr/local/sbin/httpd -k start 70561 ?? S 0:00.01 /usr/local/sbin/httpd -k start
Setp 3.
安裝 PHP5 php5-session cyrus-sasl2 官方網站 http://www.php.net #cd /usr/ports/lang/php5 #make install clean Options for php5.x # 選 apache,debug不選避免zend出錯 [X] APACHE Build Apache Module
#vi /usr/local/etc/apache22/httpd.conf # 修改 apache22 設定讓 php 運行在apache22
AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.php index.html index.html.var
#cd /usr/local/etc/ #cp php.ini-dist php.ini #vi php.ini
register_globals =On # 修改 register_globals =Off 變成 On ,squirrelmail 會用得到
#cd /usr/ports/www/php5-session/ # 安裝 php5-session 是 postfixadmin 需要用到的,所以是必須要加裝的 官方網站 http://www.php.net #make install clean
#apachectl restart # 重新起動 apache #vi /usr/local/www/apache22/data/index.php phpinfo(); ?>
測試 php5 有無安裝成功: http://192.168.2.130/index.php
# cd /usr/ports/security/cyrus-sasl2 # 安裝 cyrus-sasl 官方網站 http://cyrusimap.web.cmu.edu # make install WITH_AUTHDAEMON=yes clean #vi /usr/local/lib/sasl2/smtpd.conf # 配置 sasl SMTP 認證 方案一 pwcheck_method: authdaemond log_level: 3 mech_list: PLAIN LOGIN authdaemond_path:/var/run/authdaemond/socket
方案二, pwcheck_method: auxprop auxprop_plugin: sasldb mech_list: plain login cram-md5 digest-md5
# saslpasswd2 –c smtpauth@ # 創建用戶smtpauth@,如果不加”@”,將創建形如username@hostname. Password: # password : 123456 Again (for verification): # sasldblistusers2 # 查看sasldb2.db smtpauth@: userPassword Setp 4.
安裝 Postfix 官方網站 http://www.postfix.org #cd /usr/ports/mail/postfix #make install WITH_AUTHDAEMON=yes clean Postfix configuration options # 只選 SASL2 跟 MySQL [X] SASL2 Cyrus SASLv2 (Simple Authentication and Security Layer) [X] MySQL MySQL map lookups (choose version with WITH_MYSQL_VER)
Would you like to activate Postfix in /etc/mail/mailer.conf [n]? y # 選 yes
#vi /etc/rc.conf # 開機自動啟動 postfix 加入: postfix_enable=”YES” #echo ‘postfix: root’ >> /etc/aliases #/usr/local/bin/newaliases #chown postfix:postfix /etc/opiekeys
#vi /usr/local/etc/postfix/main.cf
myhostname = mail.test.com mydomain = test.com myorigin = $mydomain mydestination = $myhostname localhost localhost.$mydomain mynetworks = 192.168.2.0/24, 127.0.0.0/8 inet_interfaces = all relay_domains = $mydestination
virtual_mailbox_base = /var/mailbox/ virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf virtual_alias_domains = virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_uid_maps = static:5001 virtual_gid_maps = static:5001
virtual_transport = virtual transport_maps = mysql:/usr/local/etc/postfix/mysql_virtual_transport_maps.cf
message_size_limit = 15728640 virtual_mailbox_limit = 2097152000 virtual_create_maildirsize = yes virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf virtual_mailbox_limit_override = yes virtual_maildir_limit_message = Sorry,the user's maildir has overdrawn his diskspace quota,please try again later. virtual_overquota_bounce = yes
broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated permit_auth_destination reject_invalid_hostname reject_unknown_sender_domain reject_non_fqdn_sender reject_non_fqdn_recipient reject_unknown_recipient_domain reject_unauth_pipelining reject_unauth_destination reject smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = $mydomain smtpd_sasl_security_options = noanonymous smtpd_sasl_application_name = smtpd smtpd_client_restrictions = permit_sasl_authenticated reject_non_fqdn_sender reject_unknown_sender_domain reject_sender_login_mismatch smtpd_banner = $myhostname ESMTP "SZ Mail Server"
content_filter = smtp-amavis:[127.0.0.1]:10024
說明:同域多服務器情況 test.com 域下有A(廣州office) 、B(深圳office)兩台mail server ,A保存所有廣州office的郵箱;B 保存所有深圳office的郵箱。 廣州office:所有發往 “廣州office”內部的郵件將由A mail server進行本地投遞,發往 “深圳office” 的郵件將通過transport_maps (mail address list) 指向 B mail server 進行投遞。 深圳office:所有發往 “深圳office”內部的郵件將由B mail server進行本地投遞,發往 “廣州office”的郵件將通過transport_maps (mail address list) 指向 A mail server 進行投遞。 其中:A mail server 的transport_maps 記錄 “深圳office”的所有郵件地址;B mail server的transport_maps 記錄 “廣州office” 的所有郵件地址。
#mkdir /var/mailbox # 建立郵件存放目錄
#pw groupadd vmail -g 5001 # 建立 vmail 這個使用者帳號及群組 #pw useradd vmail -u 5001 -g 5001 -s/sbin/nologin -d/dev/null # 無home目錄及不可登錄系統。
#chown -R vmail:vmail /var/mailbox #chmod -R ug rwx,o-rwx /var/mailbox #(chmod –R 770 /var/mailbox)
#vi /usr/local/etc/postfix/mysql_virtual_alias_maps.cf # 建立MySQL 跟 postfix 之間的資料對應關聯文件,總共五個。 user = postfix password = postfix hosts = localhost dbname = postfix table = alias select_field = goto where_field = address
#vi /usr/local/etc/postfix/mysql_virtual_domains_maps.cf user = postfix password = postfix hosts = localhost dbname = postfix table = domain select_field = description where_field = domain
#vi /usr/local/etc/postfix/mysql_virtual_transport_maps.cf user = postfix password = postfix hosts = localhost dbname = postfix table = alias select_field = transport_maps where_field = mlist #vi /usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf user = postfix password = postfix hosts = localhost dbname = postfix table = mailbox select_field = maildir where_field = username
#vi /usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf user = postfix password = postfix hosts = localhost dbname = postfix table = mailbox select_field = quota where_field = username
#/usr/local/sbin/postfix start # 啟動 postfix
Setp 4.
安裝 Postfixadmin 官方網站 http://high5.net/postfixadmin #cd /usr/ports/mail/postfixadmin/ #make install clean
#chown -R vmail:vmail /usr/local/www/postfixadmin # 修改所有 postfixadmin 的目錄資料夾權限 #cd /usr/local/www/postfixadmin #chmod 640 *.php *.css #cd /usr/local/www/postfixadmin/admin/ #chmod 640 *.php .ht* #cd /usr/local/www/postfixadmin/images/ #chmod 640 *.gif *.png #cd /usr/local/www/postfixadmin/languages/ #chmod 640 *.lang #cd /usr/local/www/postfixadmin/templates/ #chmod 640 *.tpl #cd /usr/local/www/postfixadmin/users/ #chmod 640 *.php
#cd /usr/local/www/postfixadmin # 建立 Postfixadmin 的 MySQL 資料庫 vi DATABASE_MYSQL.TXT # 在以下位置新增兩行,加下劃線紅色的為新增行 # Table structure for table alias # ailas表中存儲alias 和transport_maps 信息。 # CREATE TABLE alias ( address varchar(255) NOT NULL default '', goto text NOT NULL, domain varchar(255) NOT NULL default '', created datetime NOT NULL default '0000-00-00 00:00:00', modified datetime NOT NULL default '0000-00-00 00:00:00', active tinyint(1) NOT NULL default '1', mlist varchar(255) NULL default ‘’, # 新增字段mlist transport_maps varchar(255) NULL default ‘’, # 新增字段 transport_maps PRIMARY KEY (address), KEY address (address) ) TYPE=MyISAM COMMENT='Postfix Admin - Virtual Aliases';
#mysql -u root –p < DATABASE_MYSQL.TXT # root password: testadmin
#vi config.inc.php # 修改 postfixadmin 的設定檔 $CONF['default_language'] = 'tw'; $CONF['database_type'] = 'mysql'; $CONF['database_host'] = 'localhost'; $CONF['database_user'] = 'postfixadmin'; $CONF['database_password'] = 'postfixadmin'; $CONF['database_name'] = 'postfix'; $CONF['encrypt'] = 'md5crypt'; # 用md5 加密密碼 $CONF['domain_path'] = 'YES'; $CONF['domain_in_mailbox'] = 'NO'; $CONF['quota'] = 'YES'; $CONF['alias_control'] = 'YES'; $CONF['footer_text'] = 'Return to mail.test.com'; $CONF['footer_link'] = 'http://mail.test.com/postfixadmin/';
#vi /usr/local/etc/apache22/httpd.conf # 修改 apache 的 User 跟 Group
#User www #Group www User vmail Group vmail
#vi /usr/local/etc/apache22/Includes/mine.conf # 增加 apache 對應的 postfixadmin 虛擬目錄
Alias /postfixadmin/ "/usr/local/www/postfixadmin/" Options None AllowOverride ALL Order allow,deny Allow from all
#apachectl stop # 重新啟動apache #apachectl start
由於postfixadmin 本身沒有添加transport_maps選項功能,為了實現添加mail address list記錄到alias 表中需要修改以下幾個文件: # vi /usr/local/www/postfixadmin/variables.inc.php # 增加如下四個變量 $fTransport_maps = ""; $fMlist = ""; $tMlist = ""; $tTransport_maps = "";
# vi /usr/local/www/postfixadmin/templates/craete-alias.tpl # 加下劃線部分為新增行
# vi /usr/local/www/postfixadmin/templates/edit-alias.tpl # 加下劃線部分為新增或修改部分
|
| [365Key收藏]
[雅虎收藏+] [返回顶部] [打印本页] [关闭窗口] |
 |
|
相关文章 |
|
|
|
|
|
|
|
|