应用jenkins发送邮件的邮件服务器 SMTP server 可以是本地的,也可以是远程,远程的就不多说了,在此说一下如何在jenkins本地服务器上搭建邮件服务器,并用jenkins发送邮件,详细过程如下:

一、linux服务器搭建邮件服务器:

  这里选择用linux的sendmail 来搭建邮件服务器,步骤如下:

   1、工具准备:

  安装sendmail和配置工具sendmail-cf

  检查是否已安装:rpm -qa grep sendmail*

  

 如果有结果,则说明已经安装了,没结果则安装一下:

  sudo yum install mailx -y

  sudo yum -y install sendmail

  sudo yum install -y sendmail-cf

  继续安装SMTP认证服务(如果需要用外部SMTP服务的话,这里我要使用的是本地邮件服务器,所以没有用到这个)
  sudo yum install -y saslauthd

  2、配置sendmail:

  sudo vim /etc/mail/sendmail.mc

  找到DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl 这一行,把它修改为:

  DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

  3、生成Sendmail的配置文件:

  m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

  如果报错:sendmail.mc:10: m4: cannot open `/usr/share/sendmail-cf/m4/cf.m4′: No such file or directory

  则说明 sendmail-cf没安装成功,重新安装一下:

  sudo yum install -y sendmail-cf

  4、重启sendmail服务:

  sudo service sendmail restart

  如果报错:sendmail:451 4.0.0 /etc/mail/sendmail.cf: line 91: fileclass: cannot open '/etc/mail/local-host-names': Group writable directory 
            451 4.0.0 /etc/mail/sendmail.cf: line 588: fileclass: cannot open '/etc/mail/trusted-users': Group writable directory

  或者Starting sendmail: 451 4.0.0 /etc/mail/sendmail.cf: line 91: fileclass: cannot open '/etc/mail/local-host-names': World writable directory
             451 4.0.0 /etc/mail/sendmail.cf: line 588: fileclass: cannot open '/etc/mail/trusted-users': World writable derectory [FAILED]

这样的,那么就是文件权限问题导致的,处理办法如下:

  检查一下文件权限:

  ls -ld / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue

  dr-xr-xr-x. 23 root root 4096 Aug 31 02:55 /
  drwxr-xr-x. 93 root root 4096 Oct 11 18:31 /etc
  drwxr-xr-x 2 root root 4096 Oct 11 19:49 /etc/mail
  drwxr-xr-x. 15 root root 4096 Aug 31 16:03 /usr
  drwxr-xr-x. 18 root root 4096 Aug 31 02:55 /var
  drwxr-xr-x. 13 root root 4096 Oct 11 16:28 /var/spool
  drwx------ 2 root mail 4096 Oct 12 14:04 /var/spool/mqueue

  修改/etc/mail/sendmail.cf 文件中以下内容:

  sudo  vim /etc/mail/sendmail.cf

  Fw/etc/mail/local-host-names  --->改成:Fw-o /etc/mail/local-host-names

  Ft/etc/mail/trusted-users   --->改成:Ft-o /etc/mail/trusted-users

  修改/etc/mail/submit.cf文件内容:

  sudo vim /etc/mail/submit.cf

  Ft/etc/mail/trusted-users --->改成:Ft-o /etc/mail/trusted-users

  修改完成后再次重启:

  sudo /etc/init.d/sendmail restart

  启动成功后查看一下运行状态:

  sudo /etc/rc.d/init.d/sendmail status

  sendmail (pid 21921) is running...

  sm-client (pid 21930) is running...

  成功运行,接下来可以先发送一个测试邮件

  5.发送测试邮件:

  mail -s "test" ssss@qq.com < /home/opt/welcom.txt

  这样可以把/home/opt/welcom.txt文件里的内容作为邮件正文,test 作为邮件标题发送到邮箱:ssss@qq.com了

  OK,至此,邮件服务器搭建成功,接下来在jenkins里调用

二、jenkins调用本地sendmail邮件服务器发送邮件

  上诉搭建的sendmail邮件服务器跟jenkins是一台机子,jenkins里设置如下:

  这就简单了,只需要配置两个地方即可

  系统配置里:

  

这两个地方设置一下,然后测试发送邮件,成功

【本地邮件服务器不需要再配SMTP认证】

jenkins调用本地搭建sendmail邮件服务器发送邮件的更多相关文章

  1. centos7搭建postfix邮件服务器

    在使用qq等邮件服务器厂商提供的邮件服务后,发现他们的邮件发送数量是有限制的,随着公司的业务的需求下,我们需要搭建一个邮件服务器,邮件服务器可以帮助我们在一些提醒方面和消息推送方面起到帮助. 理论性语 ...

  2. python3:利用smtplib库和smtp.qq.com邮件服务器发送邮件

    python3:利用smtplib库和smtp.qq.com邮件服务器发送邮件 使用qq的邮件服务器需要注意的两个地方主要是: 1.协议问题 使用465端口 SSL 协议 2.口令问题 出现SMTPA ...

  3. linux sendmail 邮件服务器架设(fedora 8)

    linux sendmail 邮件服务器架设(fedora 8) 2009-01-22 17:27 3316人阅读 评论(2) 收藏 举报 邮件服务器linuxprotocolscaching测试lo ...

  4. linux sendmail 邮件服务器架设

    大家都知道架邮件服务器首先要架DNS服务.架设sendmail邮件服务器,以供大家一起学习探讨. 步骤一, 安装SNEDMAIL服务,查看你是否有安装SENDMAIL. #rpm -qa|grep b ...

  5. linux平台搭建postfix邮件服务器

    一,搭建邮件服务器前准备如下: Centos 7.2 64位Postfix-2.8.12.tar.gz Postfix MTA(邮件传输代理)Dovecot-2.1.8.tar.gz IMAP 和 P ...

  6. sendmail邮件服务器

    安装sendmail之前 我们要先搭建一个DNS服务器用来解析邮件 下图是配置好的DNS正向解析记录和反向解析记录 正向 反向 DNS配置好之后我们就来安装sendmail服务 然后再安装sendma ...

  7. python使用smtplib库和smtp.qq.com邮件服务器发送邮件(转)

    使用qq的邮件服务器需要注意的两个地方主要是: 1.协议问题 使用465端口 SSL 协议 2.口令问题 出现SMTPAuthenticationError 主要的原因就是口令和帐号信息不对,这里我们 ...

  8. python使用smtplib库和smtp.qq.com邮件服务器发送邮件

    使用qq的邮件服务器需要注意的两个地方主要是: 1.协议问题 使用465端口 SSL 协议 2.口令问题 出现SMTPAuthenticationError 主要的原因就是口令和帐号信息不对,这里我们 ...

  9. 搭建james邮件服务器

    把james解压到任何一个非中文无空格目录下: lib下添加必要的jar文件: 运行run.bat命令服务器,使用期间不要关闭. 创建邮件数据库 创建配置文件:james-database.prope ...

随机推荐

  1. 【英宝通Unity4.0公开课学习 】(四)GUI到物理引擎

    今天老妈打电话来说和老爸吵架了... 真的是家家都有本难念的经啊.前后帮她分析了个半小时才帮她解开心结...现在想想老爸还是蛮可怜的,连分享的人都木有 讲的GUI都看睡着了...因为想着可以用NGUI ...

  2. 对象导航查询和OID查询(补)

    ----------------siwuxie095                                 对象导航查询         以客户和联系人为例(一对多)     1.应用场景 ...

  3. 【校招面试 之 C/C++】第26题 C++ 智能指针(二)之 share_ptr

    1.综述 shared_ptr 是一个标准的共享所有权的智能指针, 允许多个指针指向同一个对象. 定义在 memory 文件中(非memory.h), 命名空间为 std. shared_ptr 是为 ...

  4. Spring框架的AOP的底层实现

    1. Srping框架的AOP技术底层也是采用的代理技术,代理的方式提供了两种 1. 基于JDK的动态代理 * 必须是面向接口的,只有实现了具体接口的类才能生成代理对象 2. 基于CGLIB动态代理 ...

  5. Macbook pro睡眠状态恢复后没声音的解决办法

    杀招: sudo killall coreaudiod macos会自动重启进程,恢复声音

  6. maven 发布打包部署 命令

    一.配置好jdk 二.下载安装maven http://maven.apache.org/download.cgi 三.添加环境变量 1. 添加 M2_HOME 和 MAVEN_HOME 环境变量到 ...

  7. iOS.Book.Effective Objective-C 2.0

    1. 中文翻译版 (更新中) https://github.com/HagerHu/effective-objective-c-2.0 2. Book的主页 和 代码主页 http://www.eff ...

  8. ffmpeg 入门教程

    1.在terminal,安装ffmpeg开源库 #brew install ffmpeg 2.新建一个目录first_ffmpeg,并在first_ffmpeg目录下新建ffmpeg目录 3.拷贝/u ...

  9. phpstrom+xdebug配置

    1.确认是否安装了xdebug 2.在php.ini文件中配置如下 [xdebug] zend_extension="D:\wamp\php-5.6.2-x64\ext\php_xdebug ...

  10. 【Sikuli】Sikuli 文档

    http://sikulix-2014.readthedocs.io/en/latest/index.html