精华内容
下载资源
问答
  • 其实只要我们把其中的localhost.localdomain修改成机器名就不会被当成垃圾邮件了(当然也可以同时修改域名),在进行主机修改前,我们要知道/etc/hosts文件中的格式,下面简单介绍下一般/etc/hosts 的内容一般有如下...

    当用sendmail发邮件的时候,如果不经过修改,默认都是以root@localhost.localdomain这样的方式发送的,这样很容易被接收的邮件服务器当作垃圾邮件处理.其实只要我们把其中的localhost.localdomain修改成机器名就不会被当成垃圾邮件了(当然也可以同时修改域名),
    在进行主机名修改前,我们要知道/etc/hosts文件中的格式,下面简单介绍下
    一般/etc/hosts 的内容一般有如下类似内容:
    127.0.0.1     localhost.localdomain     localhost
    每行由三部份组成,每个部份由空格隔开
    其格式就是
    IP地址 主机名/域名  主机名别名 
    即,第一部份:网络IP地址;第二部份:主机名或域名;第三部份:主机名别名;
    格式知道了,我们只要改成我们想要用的域名就可以正常发邮件了,如下是我改的内容(因为我只有主机名,比较简单点)
    127.0.0.1   oradata1.localhost      oradata1

    而一般/etc/hosts默认的127.0.0.1的格式为

    127.0.0.1              oradata1  localhost.localdomain localhost

    因此我们对应做相应修改就行,如下

    127.0.0.1               oradata1 oradata1.localdomain localhost

    其中主机名oradata1一定要在/etc/sysconfig/network 中设置,并使用hostname oradata1临时生效.这些完成后重起sendmail便可service sendmail restart

    展开全文
  • cisco服务器设置步骤A simple guide to setup your own mail server using MailCow, DigitalOcean and Docker 使用MailCow,DigitalOcean和Docker设置自己邮件服务器的简单指南 Setting a mail server is easy and...

    cisco服务器设置步骤

    A simple guide to setup your own mail server using MailCow, DigitalOcean and Docker

    使用MailCow,DigitalOcean和Docker设置自己的邮件服务器的简单指南

    Setting a mail server is easy and hard at the same time. What an irony! Let’s begin with a simple explanation of what is a mail server, why we would want to create one instead of using one of the many paid mail services out there and how much maintenance it requires.

    小号 ETTING邮件服务器是容易的,难在同一时间。 真是讽刺! 让我们从一个简单的解释开始,什么是邮件服务器,为什么我们要创建一个而不是使用那里的许多付费邮件服务之一,以及它需要多少维护。

    A mail server is the technological equivalent of a post office. It will handle incoming mail by storing or delivering it to the addressed person. This service can be broken in two different types of servers:

    邮件服务器在技术上等同于邮局。 它会通过将收到的邮件存储或传递给收件人来处理收到的邮件。 可以在两种不同类型的服务器中破坏此服务:

    • Outgoing mail servers (STMP protocol)

      寄出邮件伺服器(STMP通讯协定)
    • Incoming mail servers (POP3 or IMAP protocol)

      传入邮件服务器(POP3或IMAP协议)
    Image for post

    There are either two/three steps depending on the domain name.

    根据域名,有两个/三个步骤。

    1. The user writes an email, clicks send and it’s pushed to the smtp server.

      用户写一封电子邮件,单击“发送”,然后将其推送到smtp服务器。
    2. If the domain name of all users is the same (michael@dundermifflin.com → dwight@dundermifflin.com) it will send directly the mail to the POP/IMAP server. If not, it will search the internet looking for the ip address with the domain name @princeFamilyPaper — 172.16.254.1 for example, send the mail to that user’s server and then pushes it to their mailbox.

      如果所有用户的域名都相同(michael@dundermifflin.com→dwight@dundermifflin.com),它将直接将邮件发送到POP / IMAP服务器。 如果不是,它将在互联网上搜索域名为@princeFamilyPaper的ip地址—例如172.16.254.1 ,将邮件发送到该用户的服务器,然后将其推送到其邮箱。

    Now that we begin to grasp how this process “kind of” works, let us dissect a mail server and take a look to each piece.

    现在,我们开始了解此过程是如何工作的,让我们剖析邮件服务器并逐一查看。

    邮件服务器 (Email server)

    The server on which the email processes run. We already said that we can distinguish between outgoing and incoming mail servers and their respective protocols.

    运行电子邮件进程的服务器。 我们已经说过,我们可以区分传出和传入邮件服务器及其各自的协议。

    Smtp和Pop3 / Imap (Smtp & Pop3/Imap)

    These are the protocols used to handle the email transport. Smtp is used to transport outgoing emails, from user to server, and it verifies the success of the email delivery, while pop/imap protocols ensure this process in the oposite direction, from server to user.

    这些是用于处理电子邮件传输的协议。 Smtp用于将传出的电子邮件从用户传输到服务器,并验证电子邮件传递是否成功,而pop / imap协议可确保从服务器到用户的相反方向进行此过程。

    Mta (Mta)

    Or Mail Transfer Agent handles the routing of the email between other MTA services or computer senders. It’s main function is forwarding the incoming messages to the correct user.

    或邮件传输代理处理其他MTA服务或计算机发件人之间的电子邮件路由。 它的主要功能是将传入消息转发给正确的用户。

    建立 (Setup)

    Image for post

    For our mail service we will use mailcow, which runs on top of docker. And will also use a digital ocean droplet in order to host the application. These are the steps we will follow

    对于我们的邮件服务,我们将使用在docker之上运行的mailcow 。 并且还将使用数字海洋滴来托管应用程序。 这些是我们将要遵循的步骤

    1. Register a domain

      注册域名

    2. Start a droplet

      开始液滴

    3. Set the firewall configuration

      设置防火墙配置

    4. Install docker

      安装泊坞窗

    5. Create dns and record settings

      创建DNS并记录设置

    6. Start mailcow

      启动mailcow

    7. Adding a Domain

      添加域

    8. Creating the DKIM key

      创建DKIM密钥

    9. Adding a mailbox

      添加邮箱

    10. Testing the service

      测试服务

    注册域名 (Register a domain)

    First things first, let’s get a free domain to try on the mail server. You can get a free domain at Freenom, I will be using mytestmail.ml for this post.

    首先,让我们获得一个免费的域来试用邮件服务器。 您可以在Freenom上获得免费域,我将在此帖子中使用mytestmail.ml

    开始液滴 (Start a droplet)

    Let’s get a droplet up and going. Go to Digital ocean and start a droplet with these characteristics:

    让我们飞起来吧。 转到数字海洋 ,开始具有以下特征的液滴:

    • Distribution: Ubuntu 18.04.4 LTS

      发行:Ubuntu 18.04.4 LTS
    • Plan: Shared

      计划:共享
    • Virtual machine: 10$ (2gb — 1cpu — 50gb ssd — 2tb transfer)

      虚拟机:10美元(2GB — 1cpu — 50gb ssd — 2tb传输)
    • Select your closest datacenter/region

      选择最近的数据中心/区域
    • Choose a hostname: mail.mytestmail.ml (remember to append “mail” to the droplet hostname)

      选择一个主机名: mail.mytestmail.ml (请记住在Droplet主机名后附加“ mail”)

    防火墙配置 (Firewall configuration)

    Once you click on the droplet details, there’s a menu on the left, and under networking you will find the Firewall settings. Create a new firewall called Mail, and open the following ports.

    单击Droplet详细信息后,左侧会显示一个菜单,在网络下方,您会找到防火墙设置。 创建一个名为Mail的新防火墙,并打开以下端口。

    Image for post

    安装Docker (Install Docker)

    Ssh into your droplet with root@<droplet’s-public-ip> and follow these commands

    使用root @ <droplet's-public-ip>进入您的Droplet,并遵循以下命令

    #!/bin/bash # Updating server
    sudo apt-get update
    sudo apt-get upgrade -y# Installing dependencies
    sudo apt-get install -y curl vim

    # Installing Docker
    sudo curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh # Installing Docker-compose
    curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose

    It will take a few minutes, but by the end the server will have docker and docker-compose installed. Once the installation is finished check if any of the ports used by mailcow are been used.

    这将需要几分钟,但是最终服务器将安装docker和docker-compose。 安装完成后,检查是否已使用mailcow使用的任何端口。

    ss -tlpn | grep -E -w '25|80|110|143|443|465|587|993|995|4190'

    创建DNS并记录设置 (Create dns and record settings)

    Time to go to back to Freenom! Under “client area → manage freenom dns” we will set a series of records that will allow our email server to be found, certified and verified. The DKIM key will be generated once the mail server is up, so you can either let it blank or fill it temporarily. You can copy the fields and get more information in the mailcow prerequisites guide.

    是时候回到Freenom了! 在“客户区域→管理freenom dns”下,我们将设置一系列记录,以使我们的电子邮件服务器可以找到,认证和验证。 邮件服务器启动后,将生成DKIM密钥,因此您可以将其空白或暂时填充它。 您可以复制字段并在mailcow先决条件指南中获取更多信息。

    Image for post

    启动mailcow (Start mailcow)

    First go to your opt folder and check that you have root permisions by running the umask command. Once this is confirmed pull the mailcow repository.

    首先转到opt文件夹,然后通过运行umask命令检查是否具有root用户权限。 一旦确认,请拉出mailcow信息库。

    # It is recommended to do the installation in the opt folder
    # And that your umask is 0022
    cd /opt
    umask# Clone the github repository
    git clone https://github.com/mailcow/mailcow-dockerized
    cd mailcow-dockerized

    Once it’s installed, start the configuration process. Here I dissabled ClamAv because it’s a small project and there isn’t enough space on the server. The timezone would be your Continent/city.

    安装完成后,开始配置过程。 在这里,我禁用了ClamAv,因为它是一个很小的项目,并且服务器上没有足够的空间。 时区将是您的大陆/城市。

    # Start the configuration settings
    ./generate_config.sh# Configuration
    1. Mail server hostname: mail.mytestmail.ml
    2. Time zone: Europe/madrid - Please! Write YOUR time zone
    3. Do you want to disable ClamAV now: y

    Final step, pull and compose up the project!

    最后一步,拉动并组成项目!

    # Start the docker setup
    docker-compose pull
    docker-compose up -d

    添加域 (Adding a domain)

    Go to the hostnames website “mail.mytestmail.ml” and log as:

    转到主机名网站“ mail.mytestmail.ml”并登录为:

    user: admin
    password: moohoo

    Change your password clicking the Edit button.

    单击编辑按钮更改密码。

    Image for post

    Then, the next step is adding a domain. To do this, go to configuration → mail setup and add a domain. You should be fine by adding by setting the domain as: mytestmail.ml (no mail prefix) and clicking the Add domain and restart Sogo button.

    然后,下一步是添加域。 为此,请转到配置→邮件设置并添加域。 您可以通过将域设置为mytestmail.ml(无邮件前缀)并单击添加域并重新启动Sogo按钮来进行添加。

    创建DKIM密钥 (Creating the DKIM key)

    In order to allow posting emails we need to add our DKIM key to the dns manager. Go to the control panel and under configuration → configuration → ARC/DKIM keys and create a DKIM key:

    为了允许发布电子邮件,我们需要将DKIM密钥添加到dns管理器中。 转到控制面板,然后在配置→配置→ARC / DKIM密钥下创建一个DKIM密钥:

    • Domain/s: mytestmail.ml

      域:mytestmail.ml
    • Length: 2048

      长度:2048
    Image for post

    Go to Freenom and paste the private key on the DKIM._DOMAINKEY txt record.

    转到Freenom,然后将私钥粘贴到DKIM._DOMAINKEY txt记录上。

    添加邮箱 (Adding a mailbox)

    Once it’s complete go again to configuration → mail setup → mailboxes and add new mailbox.

    完成后,再次转到配置→邮件设置→邮箱并添加新邮箱。

    Image for post

    After it’s created go to the webmail, sign as admin@mytestmail.ml, try to send and receive an email to check if it is working properly. If your mail goes to the spam folder you can go to Mail-tester and check which fields can be improved.

    创建完成后,请转到网络邮件,以admin@mytestmail.ml身份登录,尝试发送和接收电子邮件以检查其是否正常运行。 如果您的邮件转到垃圾邮件文件夹,则可以转到Mail-tester并检查可以改进哪些字段。

    翻译自: https://medium.com/swlh/setting-your-own-mail-server-in-10-steps-56bcf9b88c7d

    cisco服务器设置步骤

    展开全文
  • 打造自己邮件安全系统

    千次阅读 2019-04-04 15:05:01
    电子邮件是整个互联网业务重要的组成部分。据相关报道统计,四分之三以上的用户上网的主要目的是收发邮件,每天有十数亿封电子邮件在全球传递,其应用频率已经超过了WWW服务,因此,电子邮件已成为网络用户不可或缺...

    电子邮件是整个互联网业务重要的组成部分。据相关报道统计,四分之三以上的用户上网的主要目的是收发邮件,每天有十数亿封电子邮件在全球传递,其应用频率已经超过了WWW服务,因此,电子邮件已成为网络用户不可或缺的需要。
    然而,由于电子邮件的免费特性以及一些电子邮件服务器的开放性,使得电子邮件服务面临着垃圾邮件、病毒感染以及服务器滥用等严重的安全问题。基于这个背景,本专题对Linux系统中的著名邮件服务器(包括qmail邮件服务器、Postfix邮件服务器)的安全配置和使用作详细介绍。

    1、电子邮件系统面临的安全威胁
    一般说来,电子邮件系统面临如下两种安全威胁:
    (1)电子邮件系统自身的安全问题:电子邮件系统自身作为一个网络服务器,存在着配置和误操作上的安全威胁和隐患,如没有合理配置服务器的相关配置文件中的重要选项等,极有可能造成潜在的安全隐患。另外,电子邮件系统版本的及时更新与否也影响到其安全;
    (2)垃圾邮件问题:垃圾邮件问题是当今最让网络用户头疼的顽疾之一。许多不请自来的垃圾邮件不但占据网络带宽,也极大地消耗了邮件服务器的存储资源,给用户带来非常大的不便。如何应对该问题,是电子邮件系统面临的最大的挑战;
    (3)开放性中继的安全问题:这就是大家经常所谈到的open relay的原理,如果设置不合理,将直接引起电子邮件系统的滥用,甚至会成为垃圾邮件的温床,它可以说是电子邮件系统中的“定时炸弹”。

    3、安全Postfix电子邮件服务器
    Postfix是一个由IBM资助、由Wietse Venema负责开发的自由软件工程产物,它的目的就是为用户提供除Qmail之外的邮件服务器选择。Postfix在快速、易于管理和提供尽可能的安全性方面都进行了较好的考虑。Postfix是基于半驻留、互操作的进程的体系结构,每个进程完成特定的任务,没有任何特定的进程衍生关系,使整个系统进程得到很好的保护。同时Postfix也可以和Qmail邮件服务器保持兼容性以满足用户的使用习惯。
    (1)安全配置Postfix邮件服务器
    与Qmail相比,Postfix最被人称道的地方就在于其配置文件的可读性很高。Postfix的主配置文件是/etc/postfix/main.cf。虽然该配置文件的内容比较多,但其中大部分内容都是注释(“#”号开头的行),真正需要自行定义的参数并不多。然而,为了对其进行安全配置,还是需要针对某些选项进行细心的设置。
    在main.cf文件中,参数都是以类似变量的设置方法来设置的,这些参数的使用主要包含两部分的内容:
    (1)定义和声明变量:例如definename = good-better-best。等号左边是变量的名称,等号右边是变量的值。
    (2)引用变量:可以在变量的前面加上符号“$”来引用该变量,如:myname = $ definename(相当于definename = good-better-best)。
    需要注意的是:等号两边需要有空格字符。此外,如果变量有两个以上的设置值,就必须用逗号“,”或者空格符“ ”将它们分开。
    在熟悉了上述变量的定义和引用方法后,下面详细介绍如何安全、高效地配置Postfix服务器的相关选项。
    1.设置Postfix服务监听的网络接口
    默认情况下,inet_interfaces参数的值被设置为localhost,这表明只能在本地邮件主机上寄信。如果邮件主机上有多个网络接口,而又不想使全部的网络接口都开放Postfix服务,就可以用主机名指定需要开放的网络接口。不过,通常是将所有的网络接口都开放,以便接收从任何网络接口来的邮件,即将inet_interfaces参数的值设置为“all”,如下所示:
    inet_interfaces = all
    2.安全设置可接收邮件的主机名称或域名
    mydestination参数非常重要,因为只有当发来的邮件的收件人地址与该参数值相匹配时,Postfix才会将该邮件接收下来。通过该选项的设置可以过滤掉许多没有经过认证和授权的邮件,从而节省服务器的存储空间,以及节省用户的邮件处理时间。
    举一个简单的例子,用户可以将该参数值设置为如下:
    accept_domain = test.net
    mydestination = $accept_domain
    这就表明无论来信的收件人地址是X@test.net(其中X表示某用户在test.net域中的邮件账户名),Postfix都会接收这些邮件。而除此之外的邮件,Postfix都不会接受。
    3.安全设置可转发邮件的网络(IP设置)
    有关安全设置可转发邮件的网络可以使用mynetworks参数来设置。可将该参数值设置为所信任的某台主机的IP地址,也可设置为所信任的某个IP子网或多个IP子网(采用“,”或者“ ”分隔)。
    比如,用户可以将mynetworks参数值设置为172.168.96.0/24,则表示这台邮件主机只转发子网172.168.96.0/24中的客户端所发来的邮件,而拒绝为其他子网转发邮件:
    mynetworks = 172.168.96.0/24
    除了mynetworks参数外,还有一个用于控制网络邮件转发的参数是mynetworks-style,它主要用来设置可转发邮件网络的方式。通常有以下三种方式:
    (1)class:在这种方式下,Postfix会自动根据邮件主机的IP地址得知它所在的IP网络类型(即A类、B类或是C类),从而开放的它所在的IP网段。
    (2)subnet:这是postfix的默认值,postfix会根据邮件主机的网络接口上所设置的IP地址、子网掩码来得知所要开放的IP网段。
    (3)host:在这种方式下,postfix只会开放本机。
    通常,用户一般不需要设置mynetworks-style参数,而直接设置mynetworks参数。如果这两个参数都进行了设置,那么mynetworks参数的设置有效。
    4.设置可转发邮件的网络(域名设置)
    上面介绍的mynetworks参数是针对邮件来源的IP来设置的,而relay_domains参数则是针对邮件来源的域名或主机名来设置的,其实从原理上来说是一致的,不过是区分了IP地址和域名而已,不过,relay_domains还需要依赖DNS这个基础设施。
    例如,用户可以将relay_domains参数值设置为test.net,则表示任何由域test.net发来的邮件都会被认为是信任的,Postfix会自动对这些邮件进行转发,如下所示:
    relay_domains = test.net
    那么,要使它能在实际网络中更好地转发邮件,还必须进行相应的DNS设置。那么,需要在该网络的DNS服务器上定义了一个主区域test.net,并在该区域配置文件中定义了以下记录:
    //定义邮件服务器的IP地址
    patterson.test.net. IN A 172.168.96.254
    //定义邮件服务器的别名
    mail.test.net. IN CNAME patterson.test.net.
    //定义优先级别
    test.net. IN MX 10 mail.test.net.
    上述记录只对邮件服务器进行了定义,还有诸如SOA、NS等的定义,在这里就不再赘述。
    (2)Postfix使用SMTP安全认证
    如同前面所述的qmail服务器面临的邮件转发的问题,在Postfix服务器中同样也存在。为了避免这种情况的出现,Postfix默认不会对外开放转发功能,而仅对本机(localhost)开放转发功能。但是,在实际应用中,必须在Postfix主配置文件中通过设置mynetworks、relay_domains参数来开放一些所信任的网段或网域,否则该邮件服务器几乎没有什么用处。在开放了这些所信任的网段或网域后,还可以通过设置SMTP认证,对要求转发邮件的客户端进行用户身份(用户账户名与密码)验证。只有通过了验证,才能接收该用户寄来的邮件并帮助转发。同样,Postfix中目前比较常用的SMTP认证机制是通过Cyrus SASL包来实现的。
    默认情况下,Postfix并没有启用SMTP认证机制。要让Postfix启用SMTP认证,就必须对Postfix的主配置文件/etc/postfix/main.cf进行修改。用户需要在main.cf文件中添加如下有关SMTP认证的设置部分:
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_local_domain = ‘’
    smtpd_recipient_restrictions = permit_mynetworks
    permit_sasl_authenticated, reject_unauth_destination
    broken_sasl_auth_clients=yes
    smtpd_client_restrictions = permit_sasl_authenticated
    smtpd_sasl_security_options = noanonymous
    其中,每个选项的具体含义如下:
    (1)smtpd_sasl_auth_enable:指定是否要启用SASL作为SMTP认证方式。默认不启用,这里必须将它启用,所以要将该参数值设置为yes。
    (2)smtpd_sasl_local_domain:如果采用Cyrus-SASL版进行认证,那么这里不做设置。
    (3)smtpd_recipient_restrictions:表示通过收件人地址对客户端发来的邮件进行过滤。通常有以下几种限制规则:
    permit_mynetworks:表示只要是收件人地址位于mynetworks参数中指定的网段就可以被转发邮件。
    permit_sasl_authenticated:表示允许转发通过SASL认证的邮件。
    reject_unauth_destination:表示拒绝转发含未信任的目标地址的邮件。
    (4)broken_sasl_auth_clients:表示是否兼容非标准的SMTP认证。有一些Microsoft的SMTP客户端采用非标准的SMTP认证协议,只需将该参数设置为yes就可解决这类不兼容问题。
    (5)smtpd_client_restrictions:表示限制可以向Postfix发起SMTP连接的客户端。如果要禁止未经过认证的客户端向Postfix发起SMTP连接,则可将该参数值设置为permit_sasl_authenticated。
    (6)smtpd_sasl_security_options:用来限制某些登录的方式。如果将该参数值设置为noanonymous,则表示禁止采用匿名登录方式。
    在完成上述设置后,必须使用命令/etc/init.d/postfix reload重新载入配置文件,或使用命令/etc/init.d/postfix restart重新启动Postfix服务,以使该配置生效。当然,这两个命令的具体使用需要根据不同的Linux版本来选用。
    此外,由于当Postfix要使用SMTP认证时,会读取/usr/lib/sasl2/smtpd.conf文件中的内容,以确定所采用的认证方式,因此如果要使用saslauthd这个守护进程来进行密码认证,就必须确保/usr/lib/sasl2/smtpd.conf文件中的内容为:
    pwcheck_method: saslauthd

    在邮件安全领域,防范策略已经不能满足人们对邮件安全的需求,邮件内容安全已经慢慢被人们所重视,这样一来,即使用户的邮件或者账号信息被窃取,还能让用户的邮件信息不泄露。要想实现这些首先就是邮件内容加密技术,另外需要附加一些二次认证手段。随着邮件内容加密的发展,现在已经有一些免费的公开平台了,比如说隐秘邮,用户不用自己管理密钥,安全性也高,不会影响用户自己本身的邮件使用情况,是以邮件加密网关的形式存在的,使用的是基于身份标识的加密方法,企业级用户也可以使用,并且不用改造现有的邮件架构,我相信慢慢的会有更多的免费开源系统雨后春笋般的出现。

    展开全文
  • jenkins的邮件通知设置

    千次阅读 2019-03-05 13:33:53
    本文主要对Windows环境 jenkins 的邮件通知进行介绍 jenkins 内置的邮件功能 ...1、系统管理-系统设置,先设置发件人的邮件,切记:一定要设置,且在系统管理员那个地方设置的email地址要和email配置的相同 2、...

    本文主要对Windows环境 jenkins 的邮件通知进行介绍

    • jenkins 内置的邮件功能
    • 使用email-ext插件扩展的邮件功能

     

    邮件通知功能主要包含两个部分:全局配置和项目配置。

    一. 先介绍下内置的Jenkins 邮件服务器 配置

    1、系统管理-系统设置,先设置发件人的邮件,切记:一定要设置,且在系统管理员那个地方设置的email地址要和email配置的相同

    2、系统管理-系统设置,再设置全局设置

    可以勾选 “通过发送测试邮件配置”  测试此配置能否连通, 如果收到以下邮件,恭喜 This is test email #1 sent from Jenkins

     

    3、对构建的job 添加邮件发送的步骤,针对具体job名称-配置,如下图:

    这样每次build后都会发送邮件给这个接收者, 到这里你会发现,只能发给 固定的对象,且格式单一(txt)

     

    二、介绍email-ext插件配置

      Jenkins默认提供了一个邮件通知,能在构建失败、构建不稳定等状态后发送邮件。但是它本身有很多局限性,比如它的邮件通知无法提供详细的邮件内容、无法定义发送邮件的格式、无法定义灵活的邮件接收配置等等。在这样的情况下,我们找到了Jenkins Email Extension Plugin。该插件能允许你自定义邮件通知的方方面面,比如在发送邮件时你可以自定义发送给谁,发送具体什么内容等等。

    email-ext插件可根据构建的结果,发送构建报告,给当前的committer (用git做代码管理)

       1) 该插件支持jenkins 1.5以上的版本,插件的安装此处略 ,若您可选插件的页卡的列表是空的,先去高级页面检查更新下。

       2)插件用于job配置页面,添加构建后步骤“Editable Email Notification”

    1、系统管理-系统设置,先设置全局:

    详细参数说明如下:

    复制代码

    1. Override Global Settings:如果不选,该插件将使用默认的E-mail Notification通知选项。反之,您可以通过指定不同于( 默认选项)的设置来进行覆盖。
    2. Default Content Type:指定构建后发送邮件内容的类型,有Text和HTML两种.
    3. Use List-ID Email Header:为所有的邮件设置一个List-ID的邮件信头,这样你就可以在邮件客户端使用过滤。它也能阻止邮件发件人大部分的自动回复(诸如离开办公室、休假等等)。你可以使用你习惯的任何名称或者ID号,但是他们必须符合如下其中一种格式(真实的ID必须要包含在<和>标记里):
    <ci-notifications.company.org>
    Build Notifications <ci-notifications.company.org>
    “Build Notifications” <ci-notifications.company.org>
    4. Add 'Precedence: bulk' Email Header:设置优先级,
    5. Default Recipients:自定义默认电子邮件收件人列表。如果没有被项目配置覆盖,该插件会使用这个列表。您可以在项目配置使用$ DEFAULT_RECIPIENTS参数包括此默认列表,以及添加新的地址在项目级别。添加抄送:cc:电子邮件地址例如,CC:someone@somewhere.com
    6. Reply To List:回复列表, A comma separated list of e-mail addresses to use in the Reply-To header of the email. This value will be available as $DEFAULT_REPLYTO in the project configuration.
    7. Emergency reroute:如果这个字段不为空,所有的电子邮件将被单独发送到该地址(或地址列表)。
    8. Excluded Committers:防止邮件被邮件系统认为是垃圾邮件,邮件列表应该没有扩展的账户名(如:@domain.com),并且使用逗号分隔
    9. Default Subject:自定义邮件通知的默认主题名称。该选项能在邮件的主题字段中替换一些参数,这样你就可以在构建中包含指定的输出信息。
    10. Maximum Attachment Size:邮件最大附件大小。
    11. Default Content:自定义邮件通知的默认内容主体。该选项能在邮件的内容中替换一些参数,这样你就可以在构建中包含指定的输出信息。
    12. Default Pre-send Script:默认发送前执行的脚本(注:grooy脚本,这是我在某篇文章上看到的,不一定准确)。
    13. Enable Debug Mode:启用插件的调试模式。这将增加额外的日志输出,构建日志以及Jenkins的日志。在调试时是有用的,但不能用于生产。
    14. Enable Security:启用时,会禁用发送脚本的能力,直接进入Jenkins实例。如果用户试图访问Jenkins管理对象实例,将抛出一个安全异常。
    15. Content Token Reference:邮件中可以使用的变量,所有的变量都是可选的。

    复制代码

     

    2、项目配置

    1)要想在一个项目中使用email-ext插件,你首先必须在项目配置页激活它。在构建后操作——”Add Post-build Actions”选项中勾选”Editable Email Notification”标签。如下图:

    项目基本配置参数说明:

    复制代码

    当插件激活后你就能编辑如下字段(只列出常用的字段):
     Project Recipient List:这是一个以逗号(或者空格)分隔的收件人邮件的邮箱地址列表。允许您为每封邮件指定单独的列表。Ps:如果你想在默认收件人的基础上添加收件人:$DEFAULT_RECIPIENTS,<新的收件人>
     Default Subject:允许你配置此项目邮件的主题。
     Default Content:跟Default Subject的作用一样,但是是替换邮件内容。
     Attach Build Log:附件构建日志。
     Compress Build Log before sending:发送前压缩生成日志(zip格式)。

    复制代码

     

    2)点击高级,设置触发器:(注意:所有的触发器都只能配置一次)

    触发器参数说明:

    复制代码

    Failure:即时发送构建失败的邮件。如果”Still Failing”触发器已配置,而上一次构建的状态是”Failure”,那么”Still Failing”触发器将发送一封邮件来替代(它)。
    Unstable:即时发送构建不稳固的邮件。如果”Still Unstable”触发器已配置,而上一次构建的状态是”Unstable”,那么”Still Unstable”触发器将发送一封邮件来替代(它)。
    Still Failing:如果两次或两次以上连续构建的状态为”Failure”,发送该邮件。
    Success:如果构建的状态为”Successful”发送邮件。如果”Fixed”已配置,而上次构建的状态为“Failure”或“Unstable”,那么”Fixed”触发器将发送一封邮件来替代(它)。
    Fixed:当构建状态从“Failure”或“Unstable”变为”Successful”时发送邮件。
    Still Unstable:如果两次或两次以上连续构建的状态为” Unstable “,发送该邮件。
    Before Build:当构建开始时发送邮件。

    复制代码

    对于内容,你也许注意到了 这里调用了个 ‘html.jelly’ 的模板,这是插件内置的,直接用即可。

    当然也可以自己写 jelly文件, 确保放置 jenkins/home/email-template下 以供jenkins调用。  

     

    三、附email-ext邮件通知模板

    发现一个很好的邮件通知模板,如下:

    Default Subject:

    构建通知:${BUILD_STATUS} - ${PROJECT_NAME} - Build # ${BUILD_NUMBER} !

    Default Content:

    复制代码

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
    </head>
    
    <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4"
        offset="0">
        <table width="95%" cellpadding="0" cellspacing="0"
            style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
            <tr>
                <td>(本邮件是程序自动下发的,请勿回复!)</td>
            </tr>
            <tr>
                <td><h2>
                        <font color="#0000FF">构建结果 - ${BUILD_STATUS}</font>
                    </h2></td>
            </tr>
            <tr>
                <td><br />
                <b><font color="#0B610B">构建信息</font></b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td>
                    <ul>
                        <li>项目名称&nbsp;:&nbsp;${PROJECT_NAME}</li>
                        <li>构建编号&nbsp;:&nbsp;第${BUILD_NUMBER}次构建</li>
                        <li>SVN&nbsp;版本:&nbsp;${SVN_REVISION}</li>
                        <li>触发原因:&nbsp;${CAUSE}</li>
                        <li>构建日志:&nbsp;<a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
                        <li>构建&nbsp;&nbsp;Url&nbsp;:&nbsp;<a href="${BUILD_URL}">${BUILD_URL}</a></li>
                        <li>工作目录&nbsp;:&nbsp;<a href="${PROJECT_URL}ws">${PROJECT_URL}ws</a></li>
                        <li>项目&nbsp;&nbsp;Url&nbsp;:&nbsp;<a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
                    </ul>
                </td>
            </tr>
            <tr>
                <td><b><font color="#0B610B">Changes Since Last
                            Successful Build:</font></b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td>
                    <ul>
                        <li>历史变更记录 : <a href="${PROJECT_URL}changes">${PROJECT_URL}changes</a></li>
                    </ul> ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:<br />%c<br />",showPaths=true,changesFormat="<pre>[%a]<br />%m</pre>",pathFormat="&nbsp;&nbsp;&nbsp;&nbsp;%p"}
                </td>
            </tr>
            <tr>
                <td><b>Failed Test Results</b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <tr>
                <td><pre
                        style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">$FAILED_TESTS</pre>
                    <br /></td>
            </tr>
            <tr>
                <td><b><font color="#0B610B">构建日志 (最后 100行):</font></b>
                <hr size="2" width="100%" align="center" /></td>
            </tr>
            <!-- <tr>
                <td>Test Logs (if test has ran): <a
                    href="${PROJECT_URL}ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip">${PROJECT_URL}/ws/TestResult/archive_logs/Log-Build-${BUILD_NUMBER}.zip</a>
                    <br />
                <br />
                </td>
            </tr> -->
            <tr>
                <td><textarea cols="80" rows="30" readonly="readonly"
                        style="font-family: Courier New">${BUILD_LOG, maxLines=100}</textarea>
                </td>
            </tr>
        </table>
    </body>
    </html>
    展开全文
  • CactiEZ版设置邮件告警

    千次阅读 2018-01-15 13:43:16
    众所周知,用Linux系统自带的sendmail发送邮件是有限制的,可能对有些邮箱无法正常发送,导致报警邮件不能够及时发送到,因此就可能会产生不必...废话不多说,下面是在cacti上面的设置过程,其中cacti已经安装了相关的
  • 使用git config --global设置用户名和邮件

    万次阅读 多人点赞 2018-11-03 11:41:44
    安装好git后,在命令行或终端中使用下面的命令可以设置git自己的名字和电子邮件。这是因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。 git config --global user.name "...
  • wordpress发送邮件设置

    千次阅读 2017-03-19 12:31:58
    wordpress发送邮件设置,我也是从中解决了我的网站邮件接收问题。 关于wordpress的搭建在我的另一篇文章"【腾讯云的1001种玩法】一个小白的自学建站史(菜鸟建站入门)"的文末已经有了较为详细的解答,需要的朋友...
  • 然而,由于电子邮件的免费特性以及一些电子邮件服务器的开放性,使得电子邮件服务面临着垃圾邮件、病毒感染以及服务器滥用等严重的安全问题。基于这 个背景,本专题对Linux系统中的著名邮件服务器(包括qmail...
  • 使用【James】搭建自己邮件服务器

    千次阅读 2015-05-26 14:40:47
    使用【James】搭建自己邮件服务器   James邮件服务器,开源,免费 ! 首先去官方网站下载James :http://james.apache.org/ 官方文档:http://james.apache.org/server/2.3.1/index.html 这里下载的是...
  • 用commons-email,javax.mail发送邮件,中文附件乱码。   原来需要用MimeUtility.encodeText(fileNameString)转一下就可以不乱码了,记一下。   下附完整发送含附件的邮件。 import java.io....
  • email.properties文件如下: host=smtp.qq.com //这是qq邮箱...user=自己邮箱 pwd=邮箱密码 subject=主题 1:167359230@qq.com //发送人 2:17655858721@qq.com import java.io.BufferedReader; import java.io.IOE
  • 本人是java开发工程师,玩过javaMail的都知道,当我们使用javaMail发送邮件的时候,我们一般使用的是个人邮箱账号,如:126或qq邮箱,那如果我们想让自己的邮箱变成一个属于自己域名的邮箱呢? 如 当然这里的域名:...
  • Jenkins中的邮件设置

    千次阅读 2018-07-12 18:50:58
    先介绍下 基本的Jenkins 邮件服务器 配置 1)进入系统设置system config 页面 (以qq邮件服务器为例): 可以勾选 “通过发送测试邮件配置” 测试此配置能否连通, 如果收到以下邮件,恭喜This is test email #1 ...
  • cacti 设置接收报警邮件

    千次阅读 2015-01-06 16:57:49
    邮件报警功能对于cacti来说很重要,管理者通过报警邮件,可以在第一时间得知被监控设备异常状态,为发现问题,处理问题节省了很多宝贵的时间,它的设置并不复杂,下面就来做一下简单的图文配置; 首先,打开”控制台...
  • Python通过发邮件通知自己电脑被入侵

    万次阅读 多人点赞 2018-05-11 02:45:19
    最强黑客的人对里面的黑客的技术佩服得无以复加,黑客一般对自己的电脑数据都比较在意,一般都会设置些密码等并在被破解密码后做相应的补救措施,那么我们如何知道自己的电脑被人动过或者被盗呢(假设电脑开始是关机...
  • jira设置邮件通知完整流程

    千次阅读 2020-03-05 10:30:10
    2、选择设置-系统-外发邮件 3、选择编辑或者新建一条邮件通知 我这里使用的是qq邮箱,所以主机是smtp.qq.com,如果是163邮箱则为smtp.163.com,其他邮箱则做响应修改。若是初次修改,记得勾选更改密码,并在...
  • 您将要创造的 这是运行自己的开源电子邮件服务器的系列教程的第三部分。 在本教程中,我将指导您自定义iRedMail选择的基于Web的电子邮件客户端Roundcube 。 Roundcube是一个独立的开源项目,具有自己的开发人员...
  • 设置foxmail通过ccproxy代理收发邮件

    千次阅读 2011-04-21 16:01:00
    当别人能上网时,而且他和你够铁,让他打开ccproxy,然后你就能通过他上网了,ccproxy的设置,这里就不说啦,因为设置很简单,比较麻烦的是foxmail的邮件设置,怎么样才能让你自己的foxmail通过他的ccproxy上网呢?...
  • hudson 邮件设置

    千次阅读 2011-12-05 15:04:29
    使用email-ext替换Jenkins(Hudson)的默认邮件通知 May 18th, 2011Leave a commentGo to comments 注:本文由Jdonee投递 简述 众所周知,Jenkins(Hudson)默认提供了一个邮件通知,能在构建失败、构建不稳定等...
  • Java实现QQ邮件发送客户端程序设计

    千次阅读 多人点赞 2020-12-15 00:10:33
    这一篇为QQ邮件发送客户端程序设计的下篇,将实现更加完善的功能,不用命令发送...java实现QQ邮件发送客户端的程序设计,基本实现了QQ邮件发送客户端的功能,操作更加简便,实现自己的QQ邮件发送端,以后就用这个啦。
  • Java发送邮件

    万次阅读 2018-07-28 21:51:35
    前段时间做一个紧急的功能,其中有部分需求是需要发邮件通知;通过查阅以及实验,很快的写了个发送邮件的功能;现在整理一下记录下来。 【发送邮件】 一、在pom中引入相关依赖 <dependency> <...
  • 最近几天做好了应用【贱泰迪】,其中有个意见...给我自己丢下了一个命题。 于是我调查,发现SMTP发送email 无需系统支持,无需配置, 经过多次尝试,多次失败,终于完成了此项功能。 先来看应用【贱泰迪】的效果, 填
  • 邮件系统

    千次阅读 2011-12-06 11:22:28
    邮件系统是一套单独的系统,要有自己的服务器,在邮件系统中可以设多个域,每个域中可以设多个用户,比如说我买了某邮件厂商提供的商业版本的的邮件系统或者是开源的邮件系统,可以进行多项设置.它的数据是放在自己的...
  • 但是它本身有很多局限性,比如它的邮件通知无法提供详细的邮件内容、无法定义发送邮件的格式、无法定义灵活的邮件接收配置等等。在这样的情况下,我们找到了Jenkins Email Extension Plugin。该插件能允许你...
  • 今天中心要将东芝5015AC网络打印机激活扫描后发送邮件功能,就是这个大家伙。 以下是操作过程。 原理 其实就是借用一个SMTP服务器,将扫描的电子文件发送到用户指定的邮箱。 选择一个具有SMTP功能的邮箱 注册...
  • 用JAMES实现自己邮件服务器
  • zabbix 3.0.9邮件报警设置

    千次阅读 2017-08-01 17:13:25
    Zabbix 3.0.9 邮件报警配置   Zabbix 邮件报警配置看似简单,其实不然;折腾1天终于实现了报警机制,今天总结在此以备查阅。   一、 环境说明及配置简述   环境说明:zabbix服务端、客户端都已部署完成并zabbix...
  • jenkins邮件插件中的内容参数设置

    万次阅读 2015-11-13 11:22:40
    但是它本身有很多局限性,比如它的邮件通知无法提供详细的邮件内容、无法定义发送邮件的格式、无法定义灵活的邮件接收配置等等。在这样的情况下,我们找到了Jenkins Email Extension Plugin。该插件能允许你...
  • 因为此处选择了mailx作为邮件发送工具,所以关闭其他自带的邮件服务,在安装zabbix的服务器上执行以下命令: service sendmail stop ##关闭sendmail systemctl disable sendmail.service ##禁止开机启动sendmai
  • 环境系统:CentOS7 Zabbix版本:Zabbix3.4.4安装邮件发送工具mailx因为此处选择了mailx作为邮件发送工具,所以关闭其他自带的邮件服务,在安装zabbix的服务器上执行以下命令:service sendmail stop ##关闭sendmail...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 211,117
精华内容 84,446
关键字:

如何设置自己的邮件名