在FreeBSD上建立一个功能完整的邮件服务器

第一部分:安装邮件服务器:postfix+vm-pop3d+openwebmail
  以下的安装在FreeBSD 5.2.1系统上完成

  1.更新 ports

  # cvsup -gL 2 -h cvs
p/ports-supfile
up.freebsdchina.org /usr/sha

re/examples/cvsu


  2. 安装 openssl+apache 服务器

  # cd /usr/ports/security/openssl
  # make install
  # make clean
  # cd /usr/ports/www/apache2
  # make install
  # make clean
  # vi /etc/rc.conf

  apache2_enable="YES"

  3. 安装 openwebmail

  # cd /usr/ports/mail/openwebmail/
  # make WITH_QUOTA=yes install
  # make clean

  4. 安装 postfix ,在安装过程中用yes回答提出的问题

  # cd /usr/ports/mail/postfix/
  # make install
  # make clean

  # vi /etc/rc.conf

  为了能启动postfix加入:

  sendmail_enable="YES"
  sendmail_flags="-bd"
  sendmail_pidfile="/v
ar/spool/postfix/pid/master.
pid"
  sendmail_outbound_enable="NO"
  sendmail_submit_enable="NO"

  5. 安装 vm-pop3d

  # cd /usr/ports/mail/vm-pop3d
  # make install
  # make clean

  6. 配置 postfix

  # vi /usr/local/etc/postfix/main.cf

  添加:

  virtual_alias_maps=h
ash:/usr/local/etc/postfix/v
irtual
  alias_maps=hash:/usr/local/etc/p
ostfix/aliases
  default_privs=nobody
  allow_mail_to_commands = alias,f
orward,include
  allow_mail_to_files
= alias,forward,include

  下面我加入一个 nero.3322.org 的
虚拟域,并添加一个用户llzqq
  # vi /usr/local/etc/postfix/virtual

  添加:

  nero.3322.org anything //之间用[tab]
  llzqq@nero.3322.org
llzqq.nero.3322.org //之间用
[tab]

  执行下面的命令,生成 virtual.db:

  # cd /usr/local/etc/postfix/
  # postmap virtual

  # vi /usr/local/etc/postfix/aliases

  添加:

  llzqq.nero.3322.org:
/var/spool/virtual/nero.3322
.org/llzqq

  执行下面的命令,生成 aliases.db:

  # cd /usr/local/etc/postfix
  # postalias aliases


  7. 配置 vm-pop3d 使其开机自动执行

  # cd /usr/local/etc/rc.d
  # mv vm-pop3d.sh.sample vm-pop3d.sh

  配置 openwebmail 支
持 nero.3322.org 域,创建下
面的文件:

  # vi /usr/local/www/cgi-bin/open
webmail/etc/sites.conf/nero.3322.org

  =========================== nero
.3322.org =======================
  auth_module auth_vdomain.pl
  auth_withdomain yes
  mailspooldir /var/sp
ool/virtual/nero.3322.org
  use_syshomedir no
  use_homedirspools no
  enable_autoreply no
  enable_setforward no
  enable_vdomain yes
  vdomain_admlist llzqq //这里设置了这个域的管理员
  vdomain_maxuser 500
  vdomain_vmpop3_pwdpa
th /usr/local/etc/virtual
  vdomain_vmpop3_pwdname passwd
  vdomain_vmpop3_mailpath /var/spo
ol/virtual
  vdomain_postfix_alia
ses /usr/local/etc/postfix/a
liases
  vdomain_postfix_virt
ual /usr/local/etc/postfix/v
irtual
  vdomain_postfix_postalias /usr/l
ocal/sbin/postalias
  vdomain_postfix_post
map /usr/local/sbin/postmap
  # quota设置部分
  quota_module quota_du.pl
  quota_limit 52400 //定义了邮箱大小
  quota_threshold 85
  delmail_ifquotahit no
  delfile_ifquotahit no
  =========================== nero
.3322.org =======================

  # mkdir -p /var/spoo
l/virtual/nero.3322.org
  # chown nobody /var/
spool/virtual/nero.3322.org
  # chgrp mail /var/spool/virtual/
nero.3322.org

  # mkdir -p /usr/loca
l/etc/virtual/nero.3322.org
  # touch /usr/local/etc/virtual/n
ero.3322.org/passwd
  # chmod 644 /usr/local/etc/virtu
al/nero.3322.org/passwd

  # htpasswd /usr/loca
l/etc/virtual/nero.3322.org/
passwd llzqq
  # chmod 755 /usr/loc
al/www/cgi-bin/openwebmail/e
tc/users

  # sync
  # reboot

  8. 最后通过浏览器登陆到OPENWEBMAIL

  http://nero.3322.org/cgi-bin/ope
nwebmail/openwebmail.pl

  第二部分:防病毒、垃圾邮件:clamav+amavisd-new+spam

  1.0 安装clamav:

  # cd /usr/ports/security/clamav
  # make install
  # make clean

  # vi /usr/local/etc/clamav.conf
  ===============================c
lamav.conf============================
  # Comment or remove the line below.
  # Example
  LogFile /var/log/clamav/clamd.log
  LogFileMaxSize 1M
  LogTime
  LogVerbose
  PidFile /var/run/clamav/clamd.pid
  DataDirectory /usr/local/share/clamav
  LocalSocket /tmp/clamd
  StreamMaxLength 10M
  MaxThreads 10
  MaxDirectoryRecursion 15
  User clamav
  ScanMail
  ScanArchive
  ScanRAR
  ArchiveMaxFileSize 10M
  ArchiveMaxRecursion 5
  ArchiveMaxFiles 1000
  ClamukoScanOnOpen
  ClamukoScanOnClose
  ClamukoScanOnExec
  ClamukoIncludePath /var/spool/virtual
  ClamukoMaxFileSize 6M
  ClamukoScanArchive
  ====================
===========clamav.conf======
======================

  1.1 更新病毒库

  # /usr/local/etc/rc.
d/clamav-freshclam.sh start

  2.0 安装amavisd-new

  # cd /usr/ports/security/amavisd-new
  # make install
  # make clean

  # cd /usr/local/etc
  # mv amavisd.conf-dist amavisd.conf
  # vi amavisd.conf
  ====================
========== amavisd.conf ====
===========================
  $MYHOME = '/var/amav
is'; # (default is '/var/ama
vis')
  $mydomain = 'nero.33
22.org'; # (no useful defaul
t)
  $daemon_user = 'vscan'; # (no de
fault; customary: vscan or amavis)
  $daemon_group = 'vsc
an'; # (no default; customar
y: vscan or amavis)

  $log_level = 0;

  $sa_spam_subject_tag = '***SPAM***'

  $virus_admin = "root\@$mydomain";
  $spam_admin = "llzqq\@$mydomain";
  $mailfrom_notify_adm
in = "llzqq\@$mydomain";
  $mailfrom_notify_recip = "llzqq\
@$mydomain";
  $mailfrom_notify_spa
madmin = "llzqq\@$mydomain";


  $inet_socket_bind = '127.0.0.1';
  $forward_method = 'smtp:127.0.0.
1:10025';
  $notify_method = $forward_method;
  $inet_socket_port = 10024;
  $max_servers = 2;

  ['Clam Antivirus-clamd',
  \&ask_daemon, ["CONT
SCAN {}\n", '/tmp/clamd'],
  qr/\bOK$/, qr/\bFOUND$/,
  qr/^.*?: (?!Infected
Archive)(.*) FOUND$/ ],
  ============================== a
mavisd.conf ===============================

  2.1 要启动clamav和am
avisd-new需要配置一下/etc/rc
.conf

  # vi /etc/rc.conf

  spamd_enable="YES"
  amavisd_enable="YES
  clamav_clamd_enable="YES"


  3.0 由于在安装amavisd-new时spama
ssassin被一起安装了下面对其进行配置

  3.1 建立过滤规则:

  # cd /usr/local/etc/mail/spamassassin
  # env LANG=C vi local.cf
  ===============================
local.cf ===============================
  # SpamAssassin confi
g file for version x.xx
  # generated by http://www.yrex.c
om/spam/spamconfig.php (version 1.01)

  # How many hits before a message
is considered spam.
  required_hits 4.0

  # Whether to change the subject
of suspected spam
  rewrite_subject 1

  # Text to prepend to subject if
rewrite_subject is used
  subject_tag *****SPAM*****

  # Encapsulate spam in an attachment
  report_safe 1

  # Use terse version of the spam report
  use_terse_report 0

  # Enable the Bayes system
  use_bayes 1

  # Enable Bayes auto-learning
  auto_learn 1

  # Enable or disable network checks
  skip_rbl_checks 1
  use_razor2 0
  use_dcc 0
  use_pyzor 0

  # Mail using languages used in t
hese country codes will not be marked
  # as being possibly
spam in a foreign language.
  # - chinese english
  ok_languages zh en

  # Mail using locales
used in these country codes
will not be marked
  # as being possibly spam in a fo
reign language.
  ok_locales en zh
  score SUBJ_FULL_OF_8BITS 2
  score NO_REAL_NAME 4.0
  ===============================
local.cf ===============================

  3.2 下载新的垃圾邮件地址列表文件

  # cd /usr/local/share/spamassassin
  # fetch http://anti-spam.org.cn/
rules/sa/55_diy_score.cf


  4.0 对POSFIX进行配置,在他的配置文件中添加下面的一些内容

  # vi /usr/local/etc/postfix/master.cf

  ---------------------- master.cf
---------------------
  smtp-amavis unix - - n - 2 smtp
  -o smtp_data_done_timeout=1200
  -o disable_dns_lookups=yes

  127.0.0.1:10025 inet n - n - - smtpd
  -o content_filter=
  -o local_recipient_maps=
  -o relay_recipient_maps=
  -o smtpd_restriction_classes=
  -o smtpd_client_restrictions=
  -o smtpd_helo_restrictions=
  -o smtpd_sender_restrictions=
  -o mynetworks=127.0.0.0/8
  --------------------
-- master.cf ---------------
------

  # vi /usr/local/etc/postfix/main.cf

  content_filter = smtp-amavis:[12
7.0.0.1]:10024

  现在一个基于FreeBSD的功能相对完
登陆OPENWEBMAIL进行用户的添加、删除
密码。
整的邮件服务器就建立起来了,虚拟域的管理员可以
等操作,虚拟用户可以通过OPENWEBMAIL修改自己的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值