<邮件的反垃圾反病毒>
本章——发送接收邮件的工具为雷鸟
安装
# yum install dovecot-mysql.x86_64 dovecot.x86_64 -y
编辑文件
vim 10-mail.conf
mail_location = maildir:/home/vmail/%d/%n/Maildir/ first_valid_uid = 800
开启
!include auth-sql.conf.ext
# vim auth-sql.conf.ext
文件提示让找 args = /etc/dovecot/dovecot-sql.conf.ext 但/etc/dovecot目录下没有这个文件。
提示可以参考模板: # Path for SQL configuration file, see example-config/dovecot-sql.conf.ext
/usr/share/doc/dovecot-2.0.9/example-config cp dovecot-sql.conf.ext /etc/dovecot/
# vim dovecot-sql.conf.ext //主要修改以下几行
driver = mysql
connect = host=localhost dbname=extmail user=extmail password=extmail
default_pass_scheme = PLAIN
password_query = \ SELECT username, domain, password \ FROM mailbox WHERE username = '%u'
user_query = SELECT maildir, 800 AS uid, 800 AS gid FROM mailbox WHERE username = '%u'
重启dovecot服务 测试豆腐块是否成功:
# telnet localhost 110
user redhat@extmail.org pass redhat
豆腐块SASL认证
首先查看下帮助文档,怎么安装豆腐块的SASl认证库。
cd /usr/share/doc/postfix-2.6.6/README_FILES
# less SASL_README
查看postfix的参数信息 postconf -d | grep smtpd_sasl
将其写入main.cf postfix的主配置文件
postconf -e smtpd_sasl_auth_enable=yes
postconf -e smtpd_sasl_authenticated_header=yes
查看SASL加密那些认证。
postconf -d | grep smtpd_recipient
postconf -e "smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, permit_sasl_authenticated"
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, permit_sasl_authenticated
开启SASL认证/认证头。
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
系统默认的帮助文档做的不怎么好,自己找个包看。
postfix-2.10.2.tar.gz
tar zxf postfix-2.10.2.tar.gz cd postfix-2.10.2
less SASL_README
vim /etc/sasl2/smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sql
mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5 NTLM
sql_engine: mysql
sql_hostnames: 127.0.0.1
sql_user: extmail
sql_passwd: extmail
sql_database: extmail sql_select: SELECT
password FROM mailbox WHERE username = '%u@%r'
yum list cyrus-sasl*
rpm -ivh cyrus-sasl-sql-2.1.23-13.el6_3.1.x86_64.rpm
yum install cyrus-sasl-md5.x86_64 cyrus-sasl-devel.x86_64 cyrus-sasl-plain.x86_64 -y
认证
postconf -d | grep smtpd_tls //查找下tls认证的项,写入postfix主文件
postconf -e smtpd_tls_security_level=encrypt cd /etc/pki/tls/certs/ make postfix.pem
postconf -e smtpd_tls_cert_file=/etc/pki/tls/certs/postfix.pem
postconf -e smtpd_tls_received_header=yes
postconf -e "smtpd_tls_session_cache_database=btree:/var/lib/postfix/smtpd_scache"
postconf -e smtpd_tls_auth_only=yes /etc/init.d/postfix restart /etc/init.d/clamd start
邮件的反垃圾反病毒
yum install spamassassin -y cd /usr/share/spamassassin/
yum localinstall clam* -y
下载病毒库
# rm -rf virusdb/ # chown clamav.clamav *
# yum install -y rpm-build
# ./install.sh
# vim MailScanner.conf //下面的为这个库要修改的选项参数
Incoming Queue Dir = /var/spool/postfix/hold
Outgoing Queue Dir = /var/spool/postfix/incoming Run As User = postfix Run As Group = postfix MTA = postfix
Incoming Work Group = clamav
Incoming Work Permissions = 0640
Virus Scanners = clamd
Monitors for ClamAV Updates = /var/clamav/*.cld /var/clamav/*.cvd
# rpm -ql clamd
# cd /var/run/clamav/ clamd.pid clamd.sock
Clamd Socket = /var/run/clamav/clamd.sock
Always Include SpamAssassin Report = yes
SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin
Spam Actions = delete High Scoring Spam Actions = delete
[root@vm1 MailScanner]# mkdir spamassassin
# chown -R postfix.clamav .
# cd /etc/postfix/
# vim main.cf
把下面的#去掉
header_checks = regexp:/etc/postfix/header_checks
# vim header_checks 低行下入 /^Received:/ HOLD
下面是检测语法时 的报错,和解决方案
MailScanner –lint
报错解决方案:
ERROR: The "envelope_sender_header" in your spam.assassin.prefs.conf ERROR: is not correct, it should match X-yoursite-MailScanner-From
# cd /etc/MailScanner/
envelope_sender_header X-yoursite-MailScanner-From
报错: config: failed to parse line, skipping, in "/etc/mail/spamassassin/mailscanner.cf": use_auto_whitelist 0
注释掉此行 #use_auto_whitelist 0
报错: Unrar is not installed, it should be in /usr/bin/unrar. This is required for RAR archives to be read to check filenames and filetypes. Virus scanning is not affected.
安装软件包 unrar-4.2.4-1.el6.x86_64.rpm
[root@vm1 MailScanner]# /etc/init.d/postfix status master is stopped
[root@vm1 MailScanner]# /etc/init.d/MailScanner start
Starting MailScanner daemons: incoming postfix: [ OK ] outgoing postfix: [ OK ] MailScanner: [ OK ]
[root@vm1 MailScanner]# /etc/init.d/postfix
status master (pid 10891) is running...
<邮件的反垃圾反病毒>的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- Asp.net Core学习笔记
之前记在github上的,现在搬运过来 变化还是很大的,感觉和Nodejs有点类似,比如中间件的使用 ,努力学习ing... 优点 不依赖IIS 开源和跨平台 中间件支持 性能优化 无所不在的依赖注入 ...
- tomcat 自带jdk
http://blog.csdn.net/b452608/article/details/70143466
- mongodb 修改操作
$addToSet与$each结合完成批量数组更新 db.text.update({_id:1000},{$addToSet:{books:{$each:["js","d ...
- 8.bwapp亲测xxe漏洞
这几天在学习XXE漏洞,这里用靶机bwapp来练习一下这个漏洞,重在学习 xxe漏洞主要针对webservice危险的引用的外部实体并且未对外部实体进行敏感字符的过滤, 从而可以造成命令执行,目录遍历 ...
- 7.XXEinjector:一款功能强大的自动化XXE注射工具
今天给大家介绍的是一款名叫XXEinjector的漏洞利用工具,XXEinjector是一款基于Ruby的XXE注入工具, 它可以使用多种直接或间接带外方法来检索文件.其中,目录枚举功能只对Java应 ...
- 【Qt文档阅读】Window and Dialog Widgets
Window and Dialog Widgets 没有嵌入到父控件中的控件(widget)称之为窗口(window).通常窗口带有边框和标题栏. Windows通常集成到桌面环境中,并且在某种程度上 ...
- 【linux安装软件步骤】
一.解析linux应用软件安装包: 通常Linux应用软件的安装包有三种: tar包,如software-1.2.3-1.tar.gz.它是使用UNIX系统的打包工具tar打包的. rpm包,如sof ...
- Windows日志为什么要把它转成Syslog呢?
有的朋友会问,好好的Windows日志为什么要把它转成Syslog呢?呵呵,当Windows服务器比较少的时候,我们是不需要这样做的.但试想如果你管理着成千上百台的Windows机器,你会一台一台的登 ...
- 牛客网NOIP赛前集训营-提高组(第四场)B题 区间
牛客网NOIP赛前集训营-提高组(第四场) 题目描述 给出一个序列 a1, ..., an. 定义一个区间 [l,r] 是好的,当且仅当这个区间中存在一个 i,使得 ai 恰好等于 al, al+1, ...
- 关于json_encode和json_decode
json_encode将数组或者对象编码成字符串json_deode将字符串解码称对象或者数组,第二个参数为true时解码成字符串,否则解码成对象