Linux系统发邮件
Linux系统发送邮件
管理服务器时我们经常需要写一些监测脚本,然后在出问题的时候通过邮件来通知
SMTP
SMTP(Simple Mail Transfer Protocol)简易邮件传输通讯协议
SMTP服务器是遵循SMTP协议的发送邮件服务器,用来发送或中转你发出的电子邮件。可以理解为就是用来寄信的,而且大多数SMTP服务器也是免费的。
QQ邮箱的SMTP


授权码作为密码
mailx
yum install -y mailx
系统指定SMTP服务器
vim /etc/mail.rc
在文件最后插入:
set from=345678910@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=345678910
set smtp-auth-password=授权码
set smtp-auth=login
from是你设置stmp服务的邮箱地址,也就是用来发送邮件的邮箱地址
smtp是发生的外部smtp服务器的地址,如qq的smtp.qq.com
smtp-auth-user是外部smtp服务器认证的用户名
smtp-auth-password是外部smtp服务器认证的用户密码(授权码)
smtp-auth是邮件认证的方式
发送邮件测试
echo ‘test’ | mail -s 'test' 345678910@qq.com
mail命令语法
mail -s "标题" 邮件地址 < 文件
mail -s "test" 345678910@qq.com </etc/hosts
echo "正文" | mail -s "test" 345678910@qq.com
使用465端口发送邮件
阿里云回复:
由于国际与国内均对垃圾邮件进行严格管控,我国《互联网信息服务管理办法》、《中国互联网协会反垃圾邮件规范》均对垃圾邮件进行说明与管理规范。 鉴于服务器25端口被大量垃圾邮件充斥,严重影响广大用户正常使用。为了共同维护良好的网络环境,自即日起阿里云新购服务器不再提供25端口邮件服务, 建议您尝试使用465加密端口发送邮件。
创建证书:
mkdir /root/.certs
echo -n | openssl s_client -connect smtp.163.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /root/.certs/163.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d /root/.certs -i /root/.certs/163.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d /root/.certs -i /root/.certs/163.crt
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d /root/.certs/./ -i /root/.certs/163.crt
certutil -L -d /root/.certs
mail.rc:
set from=345678910@163.com
set smtp=smtps://smtp.163.com:465
set smtp-auth-user=345678910
set smtp-auth-password=password
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs
Linux系统发邮件的更多相关文章
- linux系统下邮件的发送
在linux系统下发送邮件一般都要要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用. 其实我还可以安装mailx软件,通过修改配置文件可以使用外部SMTP服务 ...
- Linux系统下邮件服务器的搭建(Postfix+Dovecot)
对于网站来说,发送各种例如注册通知的邮件是很基本的一个需求,之前我一直用的是腾讯的企业邮箱,感觉挺方便的,直接可以绑定QQ邮箱接收邮件,网站配置一下SMTP也就可以发出邮件. 但是在前几天由于有重要信 ...
- Ubuntu Linux自动发邮件配置及邮件发送脚本
测试环境:Ubuntu 11.10 1. 安装mutt及msmtp软件 sudo apt-get install mutt sudo apt-get install msmtp 2. 编辑配置文件vi ...
- linux怎么发邮件
邮箱配置: tail /etc/mail.rc #要写在一行 set from=gb17735517416@163.com smtp=smtp.163.com smtp-auth-user=gb ...
- IOS 调用系统发邮件Api
// 判断设备是否有发送邮件功能 NSString *deviceType = [UIDevice currentDevice].model; if([deviceType isEqualToStri ...
- linux虚拟机发邮件给163邮件
配置/etc/mail.rc文件 set from=xxxxxxxx@163.com smtp=smtp.163.com set smtp-auth-user=yinhuanyi_cn@163.com ...
- linux mail 发邮件
system('echo "'.$xmlHeader.$xmlBody.$xmlFooter.'" | mail -s "百度新闻源生成成功,地址=>http:// ...
- linux 系统的负载与CPU、内存、硬盘、用户数监控脚本[marked]
转载文章 原始出处 在没有nagios监控的情况下,只要服务器能上互联网,就可通过发邮件的方式来提醒管理员系统资源的使用情况. 一.编写linux系统告警邮件脚本 # vim /scripts/sy ...
- 监测linux系统负载与CPU、内存、硬盘、用户数的shell脚本
本节主要内容: 利用Shell脚本来监控Linux系统的负载.CPU.内存.硬盘.用户登录数. 一.linux系统告警邮件脚本 # vim /scripts/sys-warning.sh #!/bin ...
- Linux系统的负载与CPU、内存、硬盘、用户数监控的shell脚本
利用Shell脚本来监控Linux系统的负载.CPU.内存.硬盘.用户登录数. 这几天在学习研究shell脚本,写的一些系统负载.CPU.内存.硬盘.用户数监控脚本程序.在没有nagios监控的情况下 ...
随机推荐
- 开源即时通讯IM框架 MobileIMSDK v6.5 发布
一.更新内容简介 本次更新为次要版本更新,进行了bug修复和优化升级(更新历史详见:码云 Release Notes.Github Release Notes). MobileIMSDK 可能是市面上 ...
- 海量用户IM聊天室的架构设计与实践
本文由网易云信资深服务端开发工程师曹佳俊分享,本文收录时有内容修订和重新排版. 1.引言 聊天室是一类非常重要的 IM 业务形态,不同于单聊和群聊,聊天室是一种大规模的实时消息分发系统.聊天室有多种技 ...
- Diary -「联合省选 2023」鸢尾
零 她们诞生于那样一段迷茫的时期,她们总是一个唱着虚幻的梦呓,一个哼着现实的词曲. 「平行的世界 / 另一个 / 我是怎样的」?如果那时的,虚幻的歌者没有妥协,现在的她会是怎样的人呢? 我 ...
- 小程序uView中loadMore 加载更多
<u-loadmore :status="status" :icon-type="iconType" :load-text="loadText& ...
- 基于Linux系统的PXE搭建方法
本文分享自天翼云开发者社区<基于Linux系统的PXE搭建方法>,作者:t***n 一.底层环境准备 1.安装RedHat7.6系统 2.关闭防火墙和Selinux systemctl s ...
- MySql执行Sql语句时出现“MySqlException: Parameter ‘@maxNo‘ must be defined.”的错误
1.问题描述 具体执行的SQL和报错的信息如下图所示: 2.解决办法 连接字符串中增加Allow User Variables=True;的配置即可,如下所示: Server=192.168.2.1; ...
- LangChain基础篇 (04)
LangChain 核心模块:Data Conneciton - Document Loaders 使用文档加载器从源中加载数据作为文档.一个文档是一段文字和相关的元数据. 如,有用于加载简单 .tx ...
- .NET 进程 stackoverflow异常后,还可以接收 TCP 连接请求吗?
昨天线上有几个进程因为 StackOverFlowException 导致进程 Crash 了,但是 TCP 请求还是可以连接,具体可不可以连接一个出现StackOverFlowException的微 ...
- SQLServer 常用命令记录,持续更新.....(有问题可以留言)
SqlServer 单用户解决方案 USE master; GO DECLARE @SQL VARCHAR(MAX); SET @SQL='' SELECT @SQL=@SQL+'; KILL '+R ...
- C51二进制数输入宏
在C语言中有十进制,十六进制,八进制;没有二进制的定义,在C51中使用十六进制表示有时不太直观,下面介绍几种方法表示二进制[均来自网络] 方法一 #define _BIN(a,b,c,d,e,f,g, ...