QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2828|回复: 12

在Fedora上建立自己的邮件服务器

[复制链接]
发表于 2003-11-22 07:16:47 | 显示全部楼层 |阅读模式
在Fedora上建立自己的邮件服务器
Postfix + Mysql + Sasl + Courier-imap
/////飘飘于2003.11.20 barcelona////
一,软件的准备
A. 检查你的系统是否已安装了以下软件,
1. pam
2. pam-devel
3. mysql
4. mysql-servel
5. mysql-devel
6. imap-devel
7. sharutils
B. 下载以下软件
1. metamail*.i386.rpm
2. pam-mysql
3. cyrus-sasl-2.1.15
4. postfix-2.0.16
5. courier-imap
C.说明
mysql-devel在第3个盘。我忘了装,结果pam-mysql和postfix的编译过不了。metamail和sharutils是取验证码用的。
二,mysql数据库和表的建立。
A. [root@localhost root]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.58

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> INSERT INTO db (Host,Db,User,Select_priv)VALUES('localhost','postfix','postfix','Y');
Query OK, 1 row affected (0.00 sec)

mysql> CREATE DATABASE postfix;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL ON postfix.* TO postfix@localhost
    -> IDENTIFIED BY "postfix";
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
B. 把下列文字复制存为postfix.sql
########potfix_sql########bigin##################
CREATE TABLE alias (
  uname varchar(255) NOT NULL default'',
  goto text NOT NULL,
  domain varchar(255) NOT NULL default'',
  PRIMARY KEY (username)
) TYPE=MyISAM;

CREATE TABLE domain (
  domain varchar(255) NOT NULL default'',
  description varchar(255) NOT NULL default'',
  PRIMARY KEY (domain)
) TYPE=MyISAM;

CREATE TABLE mailbox (
   userid char(20) binary NOT NULL default'',
   uname varchar(255) NOT NULL default'',
   password varchar(255) NOT NULL default'',
   home varchar(255) NOT NULL default'',
   maildir varchar(255) NOT NULL default'',
   name varchar(255) NOT NULL default'',
   uid smallint(5) unsigned NOT NULL default'12345',
   gid smallint(5) unsigned NOT NULL default'12345',
   quota varchar(255) NOT NULL default'',
   domain varchar(255) NOT NULL default'',
   create_date date NOT NULL default'0000-00-00',
   create_time time NOT NULL default'00:00:00',
   change_date date NOT NULL default'0000-00-00',
   change_time time NOT NULL default'00:00:00',
   last_access int(10) unsigned NOT NULL default'0',
   passwd_lastchanged int(10) unsigned NOT NULL default'0',
   status tinyint(4) NOT NULL default'1',
   PRIMARY KEY (username),
   KEY status (status)
) TYPE=MyISAM;
#####################end########################

[root@localhost root]# mysql postfix < /work/postfix.sql

C. 对表的内容的一些说明.
mysql> use postfix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+-------------------+
| Tables_in_postfix |
+-------------------+
| alias             |
| domain            |
| mailbox           |
+-------------------+
3 rows in set (0.00 sec)

mysql> desc alias;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| uname | varchar(255) |      | PRI |         |       |
| goto     | text         |      |     |         |       |
| domain   | varchar(255) |      |     |         |       |
+----------+--------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> desc domain;
+-------------+--------------+------+-----+---------+-------+
| Field       | Type         | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+-------+
| domain      | varchar(255) |      | PRI |         |       |
| description | varchar(255) |      |     |         |       |
+-------------+--------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> desc mailbox;
+--------------------+----------------------+------+-----+------------+-------+
| Field              | Type                 | Null | Key | Default    | Extra |
+--------------------+----------------------+------+-----+------------+-------+
| userid             | varchar(20) binary   |      |     |            |       |
| uname           | varchar(255)         |      | PRI |            |       |
| password           | varchar(255)         |      |     |            |       |
| home               | varchar(255)         |      |     |            |       |
| maildir            | varchar(255)         |      |     |            |       |
| name               | varchar(255)         |      |     |            |       |
| uid                | smallint(5) unsigned |      |     | 12345      |       |
| gid                | smallint(5) unsigned |      |     | 12345      |       |
| quota              | varchar(255)         |      |     |            |       |
| domain             | varchar(255)         |      |     |            |       |
| create_date        | date                 |      |     | 0000-00-00 |       |
| create_time        | time                 |      |     | 00:00:00   |       |
| change_date        | date                 |      |     | 0000-00-00 |       |
| change_time        | time                 |      |     | 00:00:00   |       |
| last_access        | int(10) unsigned     |      |     | 0          |       |
| passwd_lastchanged | int(10) unsigned     |      |     | 0          |       |
| status             | tinyint(4)           |      | MUL | 1          |       |
+--------------------+----------------------+------+-----+------------+-------+
17 rows in set (0.00 sec)

mysql>
domain表的解释:
domain        任意的domain.
description        通常是2种 "local:" 用于本地的 or "virtual:" 用于是虚拟的.

alias表的解释:
username        是虚拟的邮箱[email protected] ,将被转发到goto下的联结中.
goto        可以用简单的名字,如果是本地用户名,如(root, postmaster, etc.), 或者是整个的邮箱名字,[email protected]


Mailbox表的内容:
Userid        使用者编码
username        可以是user.domain.tld 或 [email protected]
password        在mysql中用encrypt('password') 输入.
name        使用着的真实姓名。
uid        虚拟用户身份uid
gid        组的gid
home        "/usr/local/virtual/". Maildirs必须在此目录下。
domain        这栏可以不要,但有些软件需要他。
maildir        是整个地址,必须带”/”结尾。
Quota        邮箱的空间或信息量的限制。
status        0 为禁止。"MYSQL_WHERE_CLAUSE= status"  .

三,pam-mysql的编译
tar pam-mysql-5.0.tar.gz
make cp pam_mysql.so /lib/security

四,修改pam.
[root@localhost pam_mysql]# cd /etc/pam.d
[root@localhost pam.d]# cp /work/postfix postfix
[root@localhost pam.d]#
postfix的内容如下:
##########/etc/pam.d/postfix##################
echo auth sufficient pam_mysql.so user=postfix passwd=postfix host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1
echo account required pam_mysql.so user=postfix passwd=postfix host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1
echo auth sufficient pam_unix_auth.so
echo account sufficient pam_unix_acct.so
[root@localhost pam.d]# [ -f imap ] && mv imap imap.orig
[root@localhost pam.d]# [ -f pop ] && mv pop pop.orig
[root@localhost pam.d]# [ -f smtp ] && mv smtp smtp.orig
[root@localhost pam.d]# n -s postfix imap
bash: n: command not found
[root@localhost pam.d]# ln -s postfix imap
[root@localhost pam.d]# ln -s postfix pop
[root@localhost pam.d]# ln -s postfix smtp
[root@localhost pam.d]# cp postfix sieve
[root@localhost pam.d]# cd ..

五,cyrus-sasl的安装配置
我本不想重新编译cyrus-sasl的,可是fedora自带的在我测试的时候出问题,还是重编译吧,虽然fedora带的也是2.1.15版本。
[root@localhost etc]# cd /ruanjian
[root@localhost ruanjian]# cd cyrus-sasl-2.1.15
[root@localhost cyrus-sasl-2.1.15]# ./configure --disable-sample \
> --disable-pwcheck --disable-gssapi --disable-cram \
> --disable-digest --disable-krb4 --disable-anon \
> --with-saslauthd=/var/run/saslauthd \
> --enable-plain --enable-login
[root@localhost cyrus-sasl-2.1.15]# [ -d /usr/lib/sasl2 ] && mv /usr/lib/sasl2 /usr/lib/sasl2.orig
[root@localhost cyrus-sasl-2.1.15]# ln -s /usr/local/lib/sasl2 /usr/lib/sasl2
[root@localhost cyrus-sasl-2.1.15]# echo /usr/local/lib >> /etc/ld.so.conf
[root@localhost cyrus-sasl-2.1.15]# echo /usr/local/lib/sasl2 >> /etc/ld.so.conf                                                                                
[root@localhost cyrus-sasl-2.1.15]# ldconfig
[root@localhost cyrus-sasl-2.1.15]#
[root@localhost cyrus-sasl-2.1.15]# echo pwcheck_method: saslauthd > /usr/lib/sasl2/smtpd.conf
[root@localhost cyrus-sasl-2.1.15]# /usr/local/sbin/saslauthd -a pam
[root@localhost cyrus-sasl-2.1.15]#
六,postfix的安装和配置。
A.先停止sendmail.fedora已经默认安装了sendmail,去掉它。
[root@localhost ruanjian]# /etc/init.d/sendmail stop
关闭 sendmail:                                            [失败]
[root@localhost ruanjian]# mv /usr/bin/newaliases /usr/bin/newaliases.orig
[root@localhost ruanjian]#  mv /usr/bin/mailq /usr/bin/mailq.orig
[root@localhost ruanjian]# mv /usr/sbin/sendmail /usr/sbin/sendmail.orig
B.添加用户和组
[root@localhost ruanjian]# groupadd -g 12345 postfix
[root@localhost ruanjian]# groupadd -g 12346 postdrop
[root@localhost ruanjian]# useradd -u 12345 -g 12345 -c postfix -d /dev/null -s /nologin postfix
C.编译postfix
[root@mail ruanjian]# cd postfix-2.0.16
[root@mail postfix-2.0.16]# make -f Makefile.init makefiles \
> 'CCARGS=-DUSE_SASL_AUTH -DHAS_MYSQL -I/usr/include/mysql -I/usr/include/sasl' \
> 'AUXLIBS=-L/usr/lib/mysql -L/usr/local/lib/sasl2 -lmysqlclient -lsasl2 -lz -lm'
[root@mail postfix-2.0.16]# make install
[root@localhost postfix-2.0.16]# cd /etc
[root@localhost etc]# mv aliases aliases.orig
[root@localhost etc]# ln -s postfix/aliases aliases
[root@localhost etc]# cd postfix
[root@localhost postfix]# echo 'root: tester' >> /etc/postfix/aliases
[root@localhost postfix]# postalias /etc/postfix/aliases
[root@localhost postfix]#
D.配置postfix.
1. 主要是main.cf的配置。
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:12345
virtual_mailbox_base = /usr/local/virtual
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_limit = 51200000
virtual_minimum_uid = 1001
virtual_transport = virtual
virtual_user_id_maps = static:12345

smtpd_sasl_auth_enable = yes
#smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated permit_auth_destination reject
smtpd_sasl_security_options = noanonymous
smtpd_client_restrictions = permit_sasl_authenticated
broken_sasl_auth_clients = yes

2. mysql_virtual_alias_maps.cf 如下

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

3. mysql_virtual_domains_maps.cf 如下

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

4. mysql_virtual_mailbox_maps.cf 如下

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

E.建立
[root@localhost root]# mkdir /usr/local/virtual
[root@localhost root]# chown -R postfix:postfix /usr/local/virtual
[root@localhost root]# chmod -R 751 /usr/local/virtual

七.测试端口25
A. mysql> use postfix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;
+-------------------+
| Tables_in_postfix |
+-------------------+
| alias             |
| domain            |
| mailbox           |
+-------------------+
3 rows in set (0.00 sec)

mysql> INSERT INTO alias (username,goto) VALUES ('[email protected]','[email protected]');
Query OK, 1 row affected (0.08 sec)

mysql> INSERT INTO domain (domain,description) VALUES ('lansemail.com','local:'); Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO mailbox (username,password,home,maildir,name,domain,create_date,create_time) VALUES('tester','$1$pi.WVgBx$a3dUCzBnbY76jnZlqWQCQ/','/usr/local/virtual/','[email protected]/','tester','lansemail.com','2003-11-19','21:24:00'); Query OK, 1 row affected (0.03 sec)

mysql> select * from mailbox
    -> ;
+--------+----------+------------------------------------+---------------------+-----------------------+--------+-------+-------+-------+---------------+-------------+-------------+-------------+-------------+-------------+--------------------+--------+
| userid | uname | password                           | home                | maildir               | name   | uid   | gid   | quota | domain        | create_date | create_time | change_date | change_time | last_access | passwd_lastchanged | status |
+--------+----------+------------------------------------+---------------------+-----------------------+--------+-------+-------+-------+---------------+-------------+-------------+-------------+-------------+-------------+--------------------+--------+
|        | tester   | $1$pi.WVgBx$a3dUCzBnbY76jnZlqWQCQ/ | /usr/local/virtual/ | [email protected]/ | tester | 12345 | 12345 |       | lansemail.com | 2003-11-19  | 21:24:00    | 0000-00-00  | 00:00:00    |           0 |                  0 |      1 |
+--------+----------+------------------------------------+---------------------+-----------------------+--------+-------+-------+-------+---------------+-------------+-------------+-------------+-------------+-------------+--------------------+--------+
1 row in set (0.11 sec)

mysql>

这里用的username为tester,只是用来测试端口用的,正式使用一定要用全名[email protected].
否则信件收不到,信息如下
无法到达以下收件人:

      '[email protected]',时间为 21/11/2003 13:05
            450 <[email protected]>: User unknown in local recipient table

B.[root@localhost postfix]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost.localdomain ESMTP Postfix
ehlo local host
250-localhost.localdomain
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN OTP
250-AUTH=LOGIN PLAIN OTP
250-XVERP
250 8BITMIME
auth plain dGVzdGVyAHRlc3RlcgB0ZXN0cHc=
235 Authentication successful
quit
221 Bye
Connection closed by foreign host.
[root@localhost postfix]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost.localdomain ESMTP Postfix
ehlo localhost
250-localhost.localdomain
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH LOGIN PLAIN OTP
250-AUTH=LOGIN PLAIN OTP
250-XVERP
250 8BITMIME
auth login
334 VXNlcm5hbWU6
dGVzdGVy    ---->username: tester(用printf 'tester' | mmencode取得。)
334 UGFzc3dvcmQ6
dGVzdHB3    ---->password: testpw
235 Authentication successful
quit
221 Bye
Connection closed by foreign host.
[root@localhost postfix]#

八,Courier-IMAP Install
A. 先在普通用户下
#./configure --without-authpwd --without-authpam --without-authuserdb --without-authshadow
--without-cram --without-chkpw --without-ldap --without-pgsql --without-authdaemon
--without-authcustom --with-authmysql
#make
#make check
#su root
#make install
#make install-configure
B.修改authmysqlrc,这里是简单的
#DEFAULT_DOMAIN                domain.tld
MYSQL_CRYPT_PWFIELD        password
MYSQL_DATABASE                postfix
MYSQL_GID_FIELD                '12345'
MYSQL_HOME_FIELD        '/usr/local/virtual'
MYSQL_LOGIN_FIELD        username
MYSQL_MAILDIR_FIELD        maildir
MYSQL_NAME_FIELD        name
MYSQL_OPT                0
MYSQL_PASSWORD                postfix
#MYSQL_PORT                3306
#MYSQL_QUOTA_FIELD        quota
MYSQL_SERVER                localhost
MYSQL_SOCKET                /var/lib/mysql/mysql.sock
MYSQL_UID_FIELD                '12345'
MYSQL_USERNAME                postfix
MYSQL_USER_TABLE        mailbox
#MYSQL_WHERE_CLAUSE        status
C. [root@localhost root]# /usr/lib/courier-imap/bin/maildirmake /usr/local/virtual/[email protected]
[root@localhost root]# chmod -R 700 /usr/local/virtual/[email protected]
[root@localhost root]# chown -R postfix:postfix /usr/local/virtual/[email protected]
D. 启动courier-imap
[root@localhost root]# /usr/lib/courier-imap/libexec/pop3d.rc start
[root@localhost root]# /usr/lib/courier-imap/libexec/imapd.rc start
[root@localhost root]# pstree | grep courier
     |-2*[courierlogger]
     |-2*[couriertcpd]
[root@localhost root]# netstat -an | grep LISTEN
tcp        0      0 0.0.0.0:32770           0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:32771         0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:110             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:143             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN

九,测试端口110
[root@localhost root]# telnet localhost 110 Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.
user tester
+OK Password required.
pass testpw
+OK logged in.
list
+OK POP3 clients that break here, they violate STD53.
.
quit
+OK Bye-bye.
Connection closed by foreign host.
[root@localhost root]#

十,一切ok了,用你的outlook试试。。记住,添加用户邮箱,一定要用全名。再去找个webmail吧。
发表于 2003-12-1 22:49:18 | 显示全部楼层
一点注释都没有啊!我想可以看得懂的人是不需要再来看这篇文章的! :-(
回复

使用道具 举报

 楼主| 发表于 2003-12-1 23:22:51 | 显示全部楼层
你的体会就是我的注释。
回复

使用道具 举报

发表于 2003-12-2 09:54:58 | 显示全部楼层
[quote:199f921de5="viento"]你的体会就是我的注释。[/quote]
呵呵,虽然没看懂,不过还是支持
回复

使用道具 举报

发表于 2003-12-2 09:59:56 | 显示全部楼层
我在执行# mysql postfix < /work/postfix.sql的时候,说找不到username这个字段。还有,怎样验证是否安装了你说的那些软件?
回复

使用道具 举报

 楼主| 发表于 2003-12-2 17:55:18 | 显示全部楼层
晕,公社的论坛有问题。。。。
uname的地方为username,可是论坛中就是要吃掉我的3个字母ser...

斑竹查看下。。。。我今天再次添加了ser这3个字母,还是没出来。。。。希望你能帮我添下,否则错误多多,拜托,谢谢。
回复

使用道具 举报

 楼主| 发表于 2003-12-2 17:58:26 | 显示全部楼层
[quote:a96777c6c9="微笑的撒旦"]我在执行# mysql postfix < /work/postfix.sql的时候,说找不到username这个字段。还有,怎样验证是否安装了你说的那些软件?[/quote]


是公社的论坛显示有问题,少了几个字母。。。

你用vi打开postfix.sql,修改uname为username.
回复

使用道具 举报

发表于 2003-12-3 00:05:05 | 显示全部楼层
我没有编译cyrus-sasl,你遇到的是什么问题?我没有建立符号链接,直接使用的/usr/lib/sasl2,会有问题吗?

我执行 echo 'root: tester' >> /etc/postfix/aliases时,提示说有两个root入口;

B.[root@localhost postfix]# telnet localhost 25后,到Escape character is '^]'.就停下来了,你是自动显示后面那些的吗?

Courier-IMAP我下的是2.1.2的,make后提示:
configure.in:14: error: possibly undefined macro: AC_PROG_SYSCONFTOOL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make: *** [configure] Error 1
------------------------------------------------------------------------------------------------
问题太多了 ,可不可以留个即使通讯的方式啊?或是你联系我的msn messenger:[email protected]
回复

使用道具 举报

 楼主| 发表于 2003-12-3 05:56:41 | 显示全部楼层
[quote:04c1f3da3c="微笑的撒旦"]我没有编译cyrus-sasl,你遇到的是什么问题?我没有建立符号链接,直接使用的/usr/lib/sasl2,会有问题吗?

我执行 echo 'root: tester' >> /etc/postfix/aliases时,提示说有两个root入口;

B.[root@localhost postfix]# telnet localhost 25后,到Escape character is '^]'.就停下来了,你是自动显示后面那些的吗?

Courier-IMAP我下的是2.1.2的,make后提示:
configure.in:14: error: possibly undefined macro: AC_PROG_SYSCONFTOOL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make: *** [configure] Error 1
------------------------------------------------------------------------------------------------
问题太多了 ,可不可以留个即使通讯的方式啊?或是你联系我的msn messenger:[email protected][/quote]

a.B.[root@localhost postfix]# telnet localhost 25后,到Escape character is '^]'.就停下来了,你是自动显示后面那些的吗?

这里是你没重编缘故。。。

b.Courier-IMAP我用的是2.2.0版本。

c. 查看软件包是否安装用 rpm -q xxxxx.xx
回复

使用道具 举报

发表于 2003-12-3 08:45:23 | 显示全部楼层
弄错了,这是sendmail.

/*
[root@fedora william]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 localhost.localdomain ESMTP Sendmail 8.12.10/8.12.10; Wed, 3 Dec 2003 08:34:
50 +0800

quit
221 2.0.0 localhost.localdomain closing connection
Connection closed by foreign host.
[root@fedora william]#

今天我到公司通过telnet测试了一下,显示了quit以上的内容,似乎比昨天多了一点 ,但好像跟你的不一样。
*/
而且如果不登录我的linux,直接telnet ip 25的话并不能访问,也就是外部好像无法访问。
回复

使用道具 举报

发表于 2003-12-3 08:49:10 | 显示全部楼层
[quote:53ce95b715="viento"]晕,公社的论坛有问题。。。。
uname的地方为username,可是论坛中就是要吃掉我的3个字母ser...

斑竹查看下。。。。我今天再次添加了ser这3个字母,还是没出来。。。。希望你能帮我添下,否则错误多多,拜托,谢谢。[/quote]

我尝试了一下,无能为力。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

发表于 2003-12-4 15:25:06 | 显示全部楼层
fedora已经安装了postfix,为什么还要编译呢?
回复

使用道具 举报

 楼主| 发表于 2003-12-4 17:55:19 | 显示全部楼层
[quote:909d8d9840="微笑的撒旦"]fedora已经安装了postfix,为什么还要编译呢?[/quote]

你有了windows了,为什么还要linux?
别再问这些问题了。

web演示地址: mail.lansemail.com
用户名: tester
密码: testpw
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-2 15:01 , Processed in 0.109488 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表