一 背景介绍

文章需求:
编写脚本从数仓里提取数据,并将数据表格通过阿里企业邮箱发送给指定人员,这里主要讲下,使用mail命令发送邮件时遇到的一些坑。
个人公众号:放纵的Coder 有疑问请联系我

二 mail命令参数

linux系统中,默认自带有mail命令。

常用的命令参数如下:

-s <邮件主题>:指定邮件的主题;

-c <地址>:添加邮件抄送人,多个人时用逗号隔开

-b <地址>:添加邮件暗送人

-a <附件>: 添加附件

三 测试发送邮件

echo '数据部门' | mail -s '需求数据' -a celebrity_20020301.csv xxxxxxxxx@dingding.com

1.使用上面命令发送邮件,发现报错:

send-mail: fatal: parameter inet_interfaces: no local interface found for ::1

于是就疯狂的查找资料,根据其他作者的文章,做了以下修改:

# 进入到main.cf配置文件中
>>>vim /etc/postfix/main.cf发现配置为:
inet_interfaces = localhost
inet_protocols = all
改成:
inet_interfaces = all
inet_protocols = all# 重新启动
>>>service postfix start

修改完成后接着尝试发送邮件,执行完命令后没有报错,但是查看后发现接受者无法收到邮件。

悲剧发生的很突然,接着就继续去找相关文章,查询。

然后发现,这里需要使用的是mail外部邮箱发送邮件功能,需要在mail.rc文件中添加的相应的配置。

接着疯狂修改:

>>>vim /etc/mail.rc# 在文件的尾部添加如下设置
# 文章设置的发送者是钉钉邮箱
set from=123456@aliyun.com   # 公司授权个人的阿里企业邮箱
set smtp=smtps://smtp.mxhichina.com:465
set smtp-auth-user=123456@aliyun.com
set smtp-auth-password=*****
set smtp-auth=login
set ssl-verify=ignore #sslroot
set nss-config-dir=/root/.certs #证书所在目录

配置完成后,会发现用到了证书目录,下面就继续生成证书:

# root下 执行以下命令
>>>mkdir .certs
>>>echo -n | openssl s_client -connect smtp.mxhichina.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /root/.certs/ding.crt
>>>certutil -A -n "GeoTrust SSL CA" -t "C,," -d /root/.certs -i /root/.certs/ding.crt
>>>certutil -A -n "GeoTrust Global CA" -t "C,," -d /root/.certs -i /root/.certs/ding.crt
>>>certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d /root/.certs/./ -i /root/.certs/ding.crt

结果输出:Notice: Trust flag u is set automatically if the private key is present. 成功

查看.certs下文件结构:

>>>ls /root/.certs/
cert8.db  ding.crt  key3.db  secmod.db

到这里搞定,继续尝试发送邮件,依然是上面发送邮件的命令。

意外,太意外了,又失败了,结果报错:

Error initializing NSS: Unknown error -8015.

继续研究,不放弃,最后发现是权限问题,有点尴尬…

这里说下,实际工作中,我的服务器没有root权限,在读取配置文件证书所在目录的时候失败了。

解决方式:1.修改配置文件证书所在目录 2.修改生成证书文件的位置

更简单的方式:获取到root权限

四 总结

简单的mail命令,因为涉及到外部邮件发送和linux用户权限问题,走了一个又一个坑,希望看到这篇文字的同胞们,引以为戒,哈哈…

linux下使用mail定时发送邮件-阿里企业邮箱发送相关推荐

  1. Linux下使用mail命令发送邮件

    因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...

  2. linux邮箱发文件夹,Linux下使用mail命令发送邮件

    Linux服务器mail程序本身就是调用sendmail来进行邮件发送的,sendmail服务器提供对外的邮件发送功能.CentOS默认不能发送邮件,需要发送邮件的童鞋可以安装一个sendmail程序 ...

  3. python SMTP 发送邮件 阿里企业邮箱、163邮箱 及535错误

    class SendEmail(object):def __init__(self, type, to_addr):self.to_addr = to_addrself.sys_date = time ...

  4. Java使用钉钉定时发送邮件到企业邮箱

    相关步骤 配置发送邮件相关信息 # 邮件服务配置mail:host: smtp.qiye.aliyun.comport: 465username: 发送者对应的邮箱账号password: 发送者对应的 ...

  5. C#发送邮件(阿里企业邮箱示例 包括各个类型的服务器及端口配置)

    本文讲解通过C#来实现发送邮件: 1.我这里是使用的阿里企业邮箱,至于其他的163和QQ邮箱,就是修改下服务器地址和端口的问题 2.至于发送失败的问题,在排除代码问题之后,可以看下自己使用的发送邮箱的 ...

  6. Linux下通过mail发送qq邮件出现连接超时的情况

    Linux下通过mail发送qq邮件出现连接超时的情况 一.一般来说都是smtp的地址配置错误: 之前配置过的地址有: 1) set smtp=smtp.qq.com 2) set smtp=smtp ...

  7. 详解:阿里邮箱_阿里企业邮箱_阿里邮箱企业版

    阿里邮箱是阿里云自主研发的,基于飞天平台自主研发的云原生分布式邮箱系统,阿里邮箱提供免费版.标准版.尊享版和集团版,企业邮箱版本不同支持的账号数也不同,共享网盘容量和个人网盘容量均不同,阿里云百科来详 ...

  8. 记一次confluence邮件服务器配置的坑(阿里企业邮箱)

    公司想通过confluence自动发送邮件,项目经理搞了半天没搞定,公司服务器是阿里云服务器,有事就甩给我了,按照百度出来的方法试了下(可能大部分方式一,方式二就成功了,方式三可适用于阿里企业邮箱). ...

  9. 阿里企业邮箱:密码登录

    阿里企业邮箱:密码登录 一.配置信息 企业邮箱POP.SMTP.IMAP地址列表如下: (阿里云邮箱web端通用访问地址:https://qiye.aliyun.com/),客户端推荐以下参数配置: ...

最新文章

  1. CentOS7上配置ELK
  2. jquery option 动态 selected
  3. matlab对一行矩阵fft,MATLAB?fft命令
  4. 知识图谱实体链接:一份“由浅入深”的综述
  5. 2015年度个人总结和计划
  6. TP5:异常处理封装——3
  7. linux qt yuv,c – 如何使用Qt中的RGBA32数据将带有YUV数据...
  8. java字节流分为_Java文件流可分为字节流和字符流。
  9. android开源2016_2016年十大开源项目
  10. SaltStack 使用 Jinja2 模板
  11. [网络流24题-9]试题库问题
  12. 第三章 Goroutine调度策略(16)
  13. 使用python编写聊天小程序
  14. 51单片机制作计算机1602显示,51单片机对LCD1602液晶显示器的控制
  15. 发票专用驱动sjz_【智能财税大讲堂】专用发票电子化的财税信息化变革
  16. 基于struts2 拦截器ResultType为chain的Action之间数据传递 ——表单页面打开优化
  17. 高德智慧交通地图空间可视化SDK设计与实现
  18. 笔记-项目干系人管理-识别干系人
  19. 1.17 设置工作簿的页眉和页脚 [原创Excel教程]
  20. 利用opencv给视频截图

热门文章

  1. Linux网络之DHCP
  2. Markdown KaTex 积分符号
  3. C语言三行代码情书,程序员的极致浪漫!!!
  4. [Python爬虫] 三、数据抓取之Requests HTTP 库
  5. 什么是大数据?如何成为大数据工程师?
  6. python数据分析实战:DCM模型设计及实现(以波音公司用户选择为例)
  7. python反爬虫应对之借助平台超级鹰突破网页验证码识别
  8. 移动支付之支付宝支付
  9. nas安装emby_Emby+KODI--完美的NAS多媒体方案
  10. dataframe处理excel基础内容