在主机的设定之前我们得先了解一下 postfix 的整体构造,以方便以后来处理我们的档案吶!所以底下我们会先针对 postfix 这个套件的结构做个简单的说明,然后再针对各个设定项目来进行说明啰!Postfix 的设定档几乎完全都在 /etc/postfix 里面,至于执行档则在 /usr/sbin 里面,我们分别来谈一谈几个主要的注意事项吧!
设定档:Postfix 的设定档都在 /etc/postfix 里面,主要的设定档有:
/etc/postfix/main.cf :这个就是最重要的 postfix 的设定档了!等一下我们谈到的设定都在这个档案里面进行修改的动作!基本上,他本身就是一个简单的说明文件档啦!不过,要注意的是,在你修改完成了 main.cf 之后,请记得『一定要重新 reload 或重新 restart postfix 才行!』
/etc/postfix/master.cf:这个档案是另外一个重要的 postfix 设定档!他主要是规定了 postfix 每个程序的运作参数!
/etc/postfix/access :这个档案与 sendmail 的 access 是相同的!都是用来做为 relay 或者是 deny 某些 IP 与 hostname 的档案!不过,要启用他还是得要修改 main.cf 才行!
/etc/postfix/aliases : 这个档案与 sendmail 的 aliases 也是相同的!同样的可以做为别名之用,所以您可以回头去翻一翻这个档案的用法喔!
/etc/postfix/pcre_table regexp_table relocated : 这几个档案可以做为邮件的过滤之用喔!可以使用正规表示法来进行邮件过滤(filter)的规则,嗬嗬!会使用这几个档案,或许连 procmail 也不需要使用了呢! ^_^
执行档:Postfix 的执行档可不少啊!约略提几个主要的执行档吧!
/usr/sbin/postfix:这就是 postfix 的主要执行档案啦!启动与简单的关闭 postfix 可以使用:
postfix check :检查 postfix 相关的档案、权限等是否正确!
postfix start :开始 postfix 的执行
postfix stop :关闭 postfix
postfix flush :强制将目前正在邮件伫列的邮件寄出!
postfix reload:重新读入设定档,也就是 /etc/postfix/main.cf
要注意的是,每次更动了 /etc/postfix/main.cf 之后,一定需要执行 postfix reload 喔!
/usr/sbin/postalias:这个指令是 sendmail 的 newaliases 啦!他可以用来将上面提到的设定档 aliases 製作成为 postfix 看的懂得『资料库』格式化档案!由于一般来说,我们都是使用 hash 这一种资料格式,所以啰,你可以简单的使用底下的指令方式来格式化。
postalias 资料库格式:档名
postalias hash:/etc/postfix/aliases ==>自动建立 /etc/postfix/aliases.db 这个资料库档案!
/usr/sbin/postcat :这个指令可以用来观察某个邮件伫列里面档案的资讯!postfix 的邮件伫列放置在 /var/spool/postfix 里面,但是这个目录里面的档案格式是 postfix 看的懂得,我们人类看不懂~为了取得这些在邮件伫列里面的档案资讯,所以我们得使用 postcat 这个指令来读取出资讯喔!假如有个档案放在 /var/spool/postfix/deferred,你可以这样看:
postcat /var/spool/postfix/deferred/filename
/usr/sbin/postconf :可以用来读取 main.cf 这个档案里面的设定资料的一个指令!用途多多啊!简单的来说,可以直接将你的 main.cf 里面的设定分门别类的显示给你看,可以帮助除错 (debug) 啦!不错的工具,鸟哥个人蛮喜欢加入 -n 这个参数来瞭解目前的主要规範档放置在那个目录下!
postconf -n
显示的结果为:
- alias_database = hash:/etc/postfix/aliases
- alias_maps = hash:/etc/postfix/aliases
- command_directory = /usr/sbin
- config_directory = /etc/postfix
- daemon_directory = /usr/lib/postfix
- debug_peer_level = 2
看到了吧!你想要知道的资料立刻一目了然,可以加快你的除错喔!不必每次都要进入 main.cf 里面找好久呢!
/usr/sbin/postmap:怪怪!这个指令的用法跟上面提到的 postalias 几乎完全一模一样啊! ^_^不过,他是用来取代 sendmail 的 makemap 的!用法是:
postmap hash:/etc/postfix/access ==>自动建立 /etc/postfix/access.db 这个资料库档案!
/usr/sbin/postqueue :这个是在观察邮件伫列的一个指令啦!你可以使用 postqueue -p 来显示目前的邮件伫列内容!这个:
postqueue -p 与 mailq 显示的内容会一模一样喔!
目录:同样的具有邮件伫列与邮件信箱的放置目录啊!
/var/spool/mail :电子邮件信箱放置目录
/var/spool/postfix :邮件伫列,里面还有很多次目录,都是一些其他功能的咚咚啊!
整体的架构大致是如此,好啦!
【编辑推荐】