在ubuntu feisty上面配置域名解析和邮件服务器

来源:互联网 发布:linux如何安装yum 编辑:程序博客网 时间:2024/05/08 11:29
以前的域名解析都是ISP给我做的,邮件服务器都是用sendmail,对于其运作的细节向来不甚了解。昨天亲自动手,居然一切顺利。

首先说域名解析。我用的是bind9。Ubuntu上面还有一个叫bind的包,那要么是bind9的别名,要么是更低的版本,安装时要注意。所以sudo apt-get install bind9接下来就是对域名对配置了。这里我建议大家看一下O'Reilly出版的DNS and BIND一书,它对bind对每个细节都讲得很深入。我先在/etc/bind/named.conf.local(是的,后面有local的文件,而不试named.conf,否则软件更新时可能丢失以前的配置)里面加入这几行
zone "my.com" {
type master;
file "/etc/bind/db.my.com";
};

zone "0.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.0.34";
};

logging {
channel my_file {
file "log.msgs";
severity dynamic;
print-severity yes;
print-category yes;
print-time yes;
};
category default { default_syslog; my_file; };
category panic { default_syslog; my_file; };
category packet { my_file; };
category eventlib { my_file; };
category queries { my_file; };
};
我的正向解析/etc/bind/db.my.com文件配置如下
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns root (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
IN NS ns
@ IN A 192.168.0.34
@ IN MX 0 192.168.0.34
ns IN A 192.168.0.34
www IN A 192.168.0.34
tt IN A 192.168.0.11
ubuntu IN A 192.168.0.13
uu IN CNAME ubuntu
因为在named.conf.local中已经声明了$origin,所以这个文件里面的域名使用了大量的简写。反向解析文件/etc/bind/db.192.168.0.34文件也是使用了简写
;
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA my.com. root.my.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
IN NS ns.my.com.
11 IN PTR tt.my.com.
13 IN PTR ubuntu.my.com.
其中92.168.0.34是我在局域网中的IP。配置好了以后不要忘记重启namedsudo /etc/init.d/bind restart然后就可以使用nslookup或者dig来测试域名配置是否正确了,尤其是MX记录。

接下来就很简单了。我们需要安装邮件服务器。我这里推荐postfix,因为它更像是sendmail的精简增强版。sudo apt-get install postfix在安装过程中会提示进行基本的配置。我们只需要在relay domain中输入自己的域名就可以了,这里是my.com。如果已经安装好了,那就修改/etc/postfix/main.cf文件中的mydestination一行,在其后面加上自己的域名。当然别忘记sudo /etc/init.d/postfix restart。然后打开强大的mutt,给自己的好朋友发一封邮件看看。不过最好是先发给自己测试一下。

我当时还遇到一个小问题。我发给别人的邮件都成功,发给自己都确不行。在/var/log/mail.log中有这么一行提示Aug 30 08:04:13 jerryphp postfix/local[7389]: 1CFB8251F77: to=<jerry@my.com>, orig_to=<root@my.com>, relay=local, delay=0.41, delays=0.15/0.19/0/0.07, dsn=5.2.0, status=bounced (cannot update mailbox /var/mail/jerry for user jerry. cannot open file: Permission denied)原来是我的邮箱路径权限不对#ls -l /var/mail/jerry
-rw-r--r-- 1 root mail 553 2007-08-30 08:06 /var/mail/jerry
而运行邮件服务器的用户是postfix。所以只要chmod 666就可以了。当然更彻底的解决办法是查明原因,为什么这个文件属于mail用户,而不是postfix。
原创粉丝点击