七、安装 postfix-2.6-20080824<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

1 .安装

#groupadd -g 2525 postfix

#useradd -g postfix -u 2525 -s /sbin/nologin -M postfix

#groupadd -g 2526 postdrop

#useradd -g postdrop -u 2526 -s /bin/false -M postdrop

 

#tar zxvf postfix-2.6-20080824.tar.gz

#cd postfix-2.6-20080824

#make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/sasl2/include/sasl -I/usr/local/BerkeleyDB/include  -DUSE_TLS -I/usr/local/ssl/include/openssl ' 'AUXLIBS=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm -L/usr/local/sasl2/lib -lsasl2 -L/usr/local/BerkeleyDB/lib -L/usr/local/ssl/lib -lssl -lcrypto'

#make

#make install

 

按照以下的提示输入相关的路径 ([] 号中的是缺省值,” ] ”后的是输入值 )

 

   install_root: [/] /

   tempdir: [/soft// postfix-2.4.5] /tmp

config_directory: [/etc/postfix] /etc/postfix

command_directory: [/usr/sbin] /usr/local/postfix/sbin

daemon_directory: [/usr/libexec/postfix] /usr/local/postfix/libexec

data_directory: [/var/lib/postfix]   

   queue_directory: [/var/spool/postfix]

   sendmail_path: [/usr/sbin/sendmail]

   newaliases_path: [/usr/bin/newaliases]

   mailq_path: [/usr/bin/mailq]

   mail_owner: [postfix]

   setgid_group: [postdrop]  

    html_directory: [no] /var/www/postfix_html

    manpages: [/usr/local/man] /usr/local/postfix/man  

    readme_directory: [no]

 

说明:这里的 postfix 将安装在独立的目录 /usr/local/postfix 中,目的是为了方便管理;您亦可以采用默认安装的方式,可能这样使用起来会更为方便些;

 

生成别名二进制文件,这个步骤如果忽略,会造成 postfix 效率极低:

#  mv /etc/aliases /etc/aliases.OFF

#  ln -sv /etc/postfix/aliases /etc/aliases

#  newaliases

 

2 .进行一些基本配置,测试启动 postfix 并进行发信

 

# /usr/local/postfix/sbin/postconf -n > /etc/postfix/main.cf2

# mv /etc/postfix/main.cf /etc/postfix/main.cf.old

# mv /etc/postfix/main.cf2 /etc/postfix/main.cf

#vim /etc/postfix/main.cf

修改以下几项为您需要的配置

myhostname = mail.benet.org

myorigin = benet.org

mydomain = benet.org

(mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

此值应为空 )

mynetworks = 192.168.1.0/24, 127.0.0.0/8

 

说明 :

myorigin 参数用来指明发件人所在的域名;

mydestination 参数指定 postfix 接收邮件时收件人的域名,即您的 postfix 系统要接收到哪个域名的邮件;

myhostname 参数指定运行 postfix 邮件系统的主机的主机名,默认情况下,其值被设定为本地机器名;

mydomain 参数指定您的域名,默认情况下, postfix myhostname 的第一部分删除而作为 mydomain 的值;

mynetworks 参数指定你所在的网络的网络地址, postfix 系统根据其值来区别用户是远程的还是本地的,如果是本地网络用户则允许其访问;

inet_interfaces 参数指定 postfix 系统监听的网络接口;

 

注意:

1 、在 postfix 的配置文件中,参数行和注释行是不能处在同一行中的;

2 、任何一个参数的值都不需要加引号,否则,引号将会被当作参数值的一部分来使用;

3 、每修改参数及其值后执行 postfix reload 即可令其生效;但若修改了 inet_interfaces ,则需重新启动 postfix

4 、如果一个参数的值有多个,可以将它们放在不同的行中,只需要在其后的每个行前多置一个空格即可; postfix 会把第一个字符为空格或 tab 的文本行视为上一行的延续;

 

启动 postfix

/usr/local/postfix/sbin/postfix  start

echo "/usr/local/postfix/sbin/postfix  start" >> /etc/rc.local

连接 postfix ,验正服务启动状况:

# telnet localhost 25

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

220 mail.benet.org ESMTP Postfix

ehlo mail.benet.org

250-mail.benet.org

250-PIPELINING

250-SIZE 10240000

250-VRFY

250-ETRN

250-ENHANCEDSTATUSCODES

250-8BITMIME

250 DSN

mail from:root@test.cn

250 2.1.0 Ok

rcpt to:test@test.cn

250 2.1.5 Ok

data

354 End data with <CR><LF>.<CR><LF>

subject:Mail test!

Mail test!!!

.

250 2.0.0 Ok: queued as AB94A1A561

quit

221 2.0.0 Bye

Connection closed by foreign host.

 

切换到 redhat 用户进行收信:

# su – test

$ mail

Mail version 8.1 6/6/93.  Type ? for help.

"/var/spool/mail/redhat": 1 message 1 new

>N  1 root@domain     Wed Sep  5 10:59  15/488   "Mail test!"

&