使用alterMIME实现添加message footer功能
tar zxvf altermime-0.3.8.tar.gz
cd altermin3-0.3.8
make
make install
altermine将被编译安装到/usr/local/bin/
2. 使用必备条件:一个运行且配置正常的邮件服务器
3. 配置AlterMIME
3.1 为altermine创建一个系统帐号,如下:
useradd -r -c "Postfix Filters" -d /var/spool/filter filter
mkdir /var/spool/filter
chown filter:filter /var/spool/filter
chmod 750 /var/spool/filter
3.2 创建一个脚本用来运行altermine,vi /etc/postfix/disclaimer,如下:
#!/bin/sh
# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL=/usr/sbin/sendmail.postfix
####### Changed From Original Script #######
DISCLAIMER_ADDRESSES=/etc/postfix/disclaimer_addresses
####### Changed From Original Script END #######
# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69
# Clean up when done or when aborting.
trap "rm -f in.$$" 0 1 2 3 15
# Start processing.
cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit
$EX_TEMPFAIL; }
cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }
####### Changed From Original Script #######
# obtain From address
from_address=`grep -m 1 "From:" in.$$ | cut -d "<" -f 2 | cut -d ">" -f 1`
if [ `grep -wi ^${from_address}$ ${DISCLAIMER_ADDRESSES}` ]; then
/usr/bin/altermime --input=in.$$ \
--disclaimer=/etc/postfix/disclaimer.txt \
--disclaimer-html=/etc/postfix/disclaimer.txt \
--xheader="X-Copyrighted-Material: Please visit http://www.company.com/privacy.htm" || \
{ echo Message content rejected; exit $EX_UNAVAILABLE; }
fi
####### Changed From Original Script END #######
$SENDMAIL "$@" <in.$$
exit $?
3.3 修改组及权限,是的可以运行此脚本
chgrp filter /etc/postfix/disclaimer
chmod 750 /etc/postfix/disclaimer
3.4 创建一个文件包含所有那些需要使用altermine来处理的帐号列表
vi /etc/postfix/disclaimer_addresses
内容如下:
olli@example.com
falko@example.com
till@example.com
3.5 创建一个文件,包含需要在邮件中添加的内容
vi /etc/postfix/disclaimer.txt
举例如下:
-------------------
EXAMPLE Company
Examplestreet 1
Examplecity
www.example.com
4. 配置Postfix的相关文件
vi /etc/postfix/master.cf
Add the line "-o content_filter=dfilt:" (without the quotes) straight below the line for smtp. Keep in mind, that the new line has to begin with at least one whitespace.
The corresponding part should look like this:
smtp inet n - n - - smtpd
-o content_filter=dfilt:
Add the following lines at the end of the file. Keep in mind, that the line with the flags (flags=...) has to begin with at least one whitespace.
# altermime
dfilt unix - n n - - pipe
flags=Rq user=filter argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient}
Afterwards restart Postfix.
5. 重启postfix服务
/etc/init.d/postfix restart
转载于:https://blog.51cto.com/krishna/198806
相关文章:
Facebook最新研究:无需额外训练AI,即可加速NLP任务
作者 | KYLE WIGGERS译者 | Kolen出品 | AI科技大本营(ID:rgznai100)自然语言模型通常要解决两个难题:将句子前缀映射到固定大小的表示形式,并使用这些表示形式来预测文本中的下一个单词。在最近的一篇论文(https://ar…
PgSQL · 特性分析 · full page write 机制
PG默认每个page的大小为8K,PG数据页写入是以page为单位,但是在断电等情况下,操作系统往往不能保证单个page原子地写入磁盘,这样就极有可能导致部分数据块只写到4K(操作系统是一般以4K为单位),这些“部分写”的页面包含…

局域网DVD yum源的制作
今天在网上溜达,看到这篇文章不错,于是就转载过来,感谢原作者的辛苦劳动.源地址:http://blog.chinaunix.net/u3/94782/showart_1953260.html一:两台计算机做实验<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />1&…

AWS攻略——使用S3托管静态网页
在AWS上有很多部署静态网页的方式,比如使用EC2或者Lightsail。但是不管使用上述哪种方案,都需要预先部署如Nignx或者Apache等Http服务。这对纯前端同学来说可能有点复杂,而AWS提供了更简单的部署方式——只需要提供静态网页文件的“S3网页托管…
2020年涨薪26-30%,能实现吗?18%数据科学家是这么期待的
作者丨Big Cloud编译 | 武明利,责编丨Carol出品 | AI科技大本营(ID:rgznai100)本报告将深入探讨亚太地区各个背景、不同年龄和不同地点的专业人员对2019/2020年的见解。今年贡献最大的地区来自新加坡和澳大利亚。因为这些是我们最大的数据点&…

AWS攻略——使用CodeBuild进行自动化构建和部署静态网页
首先声明下,使用“CodeBuild”部署并不是“正统”的方案,因为AWS提供了“CodeDeploy”。如果不希望引入太多基础设施,可以考虑直接使用CodeBuild进行部署。(转载请指明出于breaksoftware的csdn博客) 创建构建项目 kro…
我们需要什么样的数据架构?
作者 | Stephanie shen编译 | 火火酱,责编丨Carol出品 | AI科技大本营(ID:rgznai100)在大数据和数据科学的新时代,对企业而言,一定要有与业务流程保持一致的中心化数据架构,该架构能随业务增长而扩展&#…

Windows Server 2008 R2 之二十九故障转移群集(一)(
关于Windows Server 2008故障转移群集见http://technet.microsoft.com/zh-cn/library/cc732488(WS.10).aspx实验环境:两台已安装好Windows Server 2008 R2的计算机R2DC01、R2DC02,均为DC、DNS,域名为HBYCRSJ.COM,均有两块网卡。分别为心跳网络和本地连接…

基于多核DSP处理器DM8168的视频处理方法
摘要:随着1080P高清视频以及4K超高清晰视频的普及和应用,基于传统单核DSP处理器的视频信息处理已有些力不从心。为此TI公司推出了一款专门用于高清视频处理的多核DSP处理器,它拥有4个不同类型的处理器,使得视频处理达到了一个更高…

AWS攻略——使用CodeBuild进行自动化构建和部署Lambda(Python)
Aws Lambda是Amazon推出的“无服务架构”服务。我们只需要简单的上传代码,做些简单的配置,便可以使用。而且它是按运行时间收费,这对于低频访问的服务来说很划算。具体的介绍可以常见aws lambda的官网。(转载请指明出于breaksoftw…

vmware 添加 磁盘 空间
VMware安装linux的时候默认分配的空间是4GB,可能会不够,这个时候可以通过增加一块虚拟硬盘,将/usr或其他内容拷贝过去解决这个问题:创建虚拟硬盘1、关闭VM中正在运行的虚拟系统;2、在虚拟系统名称上点右键-…
Python爬取考研数据:所有985高校、六成211高校均可调剂
又到了一年一度的考研出分时间啦,近期有不少朋友让笔者帮他们分析如何提前做好调剂。复试与调剂总是密不可分。今天,给大家分享一些调剂的重要知识点,希望你在调剂的时候,能明白调剂的趋势与规则。也许,大家对于调剂的…

iOS审核秘籍】提审资源检查大法
iOS审核秘籍】提审资源检查大法 2015/11/27阅读(752)评论(1)收藏(6)加入人人都是产品经理【起点学院】产品经理实战训练营,BAT产品总监手把手带你学产品点此查看详情! 本篇主要是提审…

谈一次单元测试驱动代码重构
目前团队并没有QA岗,而且在很长一段时间内,可能也不会设立QA岗,所以我们需要RD保证代码的质量。而鉴于人类天生的“惰性”,很多时候质量完全依赖于作者的能力以及职业素质。于是我在团队内推动单元测试,并要求提升测试…

新机会在广州拓波
公司简介广州拓波软件科技有限公司的前身为 Turbomail工作室,由广州华工信息软件(集团)有限公司于2002 年成立,是一家专业研发电子邮件系统、企业即时通信和企业短信的开发组织,2005年TurboMail工作室正式发布1.0.2版本…
关于正则表达式,这篇都讲清楚了
作者 | 猪哥来源 | 裸睡的猪(ID:rgznai100)目前越来越多的网站、编辑器、编程语言都已支持一种叫“正则表达式”的字符串查找“公式”,有过编程经验的同学都应该了解正则表达式(Regular Expression 简写regex)是什么东…

MJExtension简介
MJExtension简介 前言:关于MJExtension更多的使用,可以到github网站上根据详述学习。 字典转模型比较流行的第三方框架 Mantle所有模型都必须继承自MTModel JSONModel所有模型都必须继承自JSONModel MJExtension不需要强制继承任何其他类 框架需要考虑的…

Discuz!常用函数解析(续)
/*** 产生随机码* param $length - 要多长* param $numberic - 数字还是字符串* return 返回字符串*/function random($length, $numeric 0) {PHP_VERSION < 4.2.0 && mt_srand((double)microtime() * 1000000);if($numeric) {$hash sprintf(%0.$length.d, mt_ran…
基于新型忆阻器的存内计算原理、研究和挑战
作者 | 林钰登、高滨、王小虎、钱鹤、吴华强来源 | 《微纳电子与智能制造》期刊引言过去半个世纪以来 ,芯片计算性能的提高主要依赖于场效应晶体管尺寸的缩小。随着特征尺寸的减小 ,器件的制备成本和制造工艺难度不断增加 ,芯 片性能的提升愈…

3、JPA一些常用的注解
常用注解有下面这些: ①:Entity、Table、Id、GeneratedValue、Column、Basic ②:Transient 用于忽略某个属性,而不对该属性进行持久化操作 ③:Temporal 一、第①组注解 Entity 标注用于实体类声明语句之前,…

实战域树部署,Active Directory系列之十九
实战子域部署<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />域树是Active Directory针对NT4的传统域模型所进行的重要改进。在NT4时代的域模型中,每个域都要使用没有层次结构的NETBIOS名称,而且域和域之…
黑科技抗疫,Python开发者大集结!
2020年初,突如其来的新型冠状病毒肺炎打乱了所有人的节奏,但社会各界迅速团结起来,为抗击疫情贡献出自己的力量。除了捐款捐物外,很多科技公司运用5G、大数据、AI、云计算等新互联网技术,以科技的手段助力抗疫…

Inplayable技术分享
Inplayable技术分享运维设计模式Web安全工具语言python运维 《aws lambda 通过codebuild上线踩坑指南之 lambda 进程被占用 status error 255》《google pay 配置sub/pub回调》《AWS攻略——使用CodeCommit托管代码》《AWS攻略——使用S3托管静态网页》《AWS攻略——使用CodeB…

将数组A中的内容和数组B中的内容进行交换(数组一样大)
#include <stdio.h>int main() {int arr1[10]{1,2,3,4,5,11,14,16,17,12};int arr2[10]{0,6,7,8,9,15,21,18,19,13};int arr3[10];int i0;for(i0;i<sizeof(arr1)/sizeof(arr1[0]);i){arr3[i]arr1[i];arr1[i]arr2[i];arr2[i]arr3[i];//不定义第三个变量的两种种方法&am…

***必备工具
***必备工具一、扫描工具 X-scan 3.1 焦点出的扫描器,国内最优秀的安全扫描软件之一!非常专业的一个扫描器! X-way 2.5 这也上一个非常不错的扫描器哦!功能非常多!使用也不难,***必备工具! SuperScan 3.0 强大的TCP 端口扫描器、Ping 和域名解析器! Namp 3.5 这个就…
通过评估假设行为来学习人类目标
来源| deepmind编译| 武明利,责编| Carol出品 | AI科技大本营(ID:rgznai100)当我们在现实世界中训练强化学习(RL)代理时,我们不会希望它们探索不安全的状态,例如将一个移动机器人开进…

ReactiveCocoa入门-part2
ReactiveCocoa是一个框架,它能让你在iOS应用中使用函数响应式编程(FRP)技术。在本系列教程的第一部分中,你学到了如何将标准的动作与事件处理逻辑替换为发送事件流的信号。你还学到了如何转换、分割和聚合这些信号。 在本系列教程…

VirtualBox虚拟机安装RedHat7.3编译Linux0.01内核
引子 由于需要编译linux0.01内核,而目前的linux版本太高需要降低gcc版本等等,需要做不少调整非常不方便。 所以,直接安装RedHat7.3,这样就好编译linux0.01的内核了。 但是,安装RedHat7.3需要注意一些问题。 下载老…
远程办公是巨头游戏?十倍扩容,他们如何做到百万级并发流量
疫情发生后,除了Zoom这样深耕视频会议多年的软件,钉钉、企业微信、飞书等一大批互联网巨头也开通了免费服务,凭借着自身庞大的资源四处招揽用户。 据说,远程办公工具是2020年的第一个风口。 疫情发生后,除了Zoom这样深…

linux下使用sort命令升序、降序、随机及组合方式排序方法
示例文件:####################################################序号 优先级 字段1 字段21 5 abc def2 5 ae3 wff6 4 l…