1、首先,检查是否安装mail命令,如果没有请按以下命令安装
# yum install sendmail
# yum install mailx –y
# yum update libreport-plugin-mailx => yum install libreport-plugin-mailx
注意:此处如果不是更新,就采用安装命令
# yum -y install sharutils
# yum install mutt
2、确认命令都安装ok
# mail --help
mail: illegal option -- -
Usage: mail -eiIUdEFntBDNHRVv~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users
3、设置postfix限制规则
# vim /etc/postfix/main.cf
添加如下设置,无则添加,有则修改
//////////////begin///////////////
mynetworks = 127.0.0.1,localhost,172.60.1.0/24
smtpd_sender_restrictions =
permit_mynetworks,
reject_sender_login_mismatch,
reject_authenticated_sender_login_mismatch,
reject_unauthenticated_sender_login_mismatch
///////////////end//////////////
通过命令postfix加载配置以生效
# postfix reload
postfix/postfix-script: refreshing the Postfix mail system
4、配置发送邮箱账号信息
# vim /etc/mail.rc
文件尾部追加以下配置信息
//////////begin////////
# append for sending mail in individual manner
set from=youraccount@tom.com
set smtp=smtp://smtp.tom.com
set smtp-auth-user=youraccount@tom.com
set smtp-auth-password=<yourpassword>
set smtp-auth=login
//////////end//////////
注意:
1> 属性smtp配置值务必为带协议的写法,不走SSL,采用smtp://smtp.tom.com;走SSL,采用smtps://smtp.tom.com;
如果port自定义了,也需要配置上;smtps://smtp.tom.com:xxx
2> 属性smtp-auth-user配置值务必为邮箱账号全称写法,比如:youraccount@tom.com,而不是youraccount;
5、通过mail发送邮件
1> 文件内容来自文件
# touch /usr/mail.txt
# echo "how are you?" >> /usr/mail.txt
2> 执行发送命令
# mail -s "System Monitor Log" otheruser@baidu.com < /usr/mail.txt
6、如果采用SSL发送邮件,需要生成和配置证书
1> 通过openssl生成证书
# mkdir -p /root/.certs
# echo -n | openssl s_client -connect smtp.tom.com:xxx | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/163.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/./ -i 163.crt
certutil -L -d /root/.certs
2> /etc/mail.rc中增加引用证书的属性
//////////begin///////
set ssl-verify=ignore
set nss-config-dir=/root/.certs
//////////end//////////
【小结】
1> 如果提示错误Sender address rejected: not owned by user,则优先考虑/etc/postfix/main.cf中规则的设置,将当前发邮件服务器的出网内网ip加到规则中;
2> 如果提示Wrong Receive Channel,则优先考虑/etc/mail.rc中配置信息smtp是否写别
3> 如果提示invalid password,则优先考虑/etc/mail.rc中配置信息smtp-auth-user或者smtp-auth-password是否写别了;
2> 如果提示Sender address rejected: not owned by user zhanglefan@tom.com,也需要考虑/etc/mail.rc中用户配置from是否正确?
【温馨提示】
如果您觉得满意,可以选择支持下,您的支持是我最大的动力:
分享到:
相关推荐
在Linux系统中,监控磁盘空间使用情况...以上就是Linux磁盘监控并发送邮件的全过程,通过这个方法,你可以实时掌握系统的磁盘空间状态,确保服务的稳定运行。记住,根据实际情况调整监控的分区和阈值,以满足特定需求。
使用linux下的sendmail程序来发送邮件,利用popen函数(python docs关于popen函数)可以直接调用linux系统程序,需要指定程序所在的位置。 python代码: #!/usr/bin/python # -*- coding: UTF-8 -*- #Author: ...
本文将深入探讨如何使用shell脚本来实现这一功能,并通过mail465协议发送邮件提醒,确保及时发现并处理问题。 首先,我们需要了解shell脚本的基础。Shell是Unix或Linux系统中的命令解释器,它允许用户通过命令行...
本文将通过实例讲解Linux Shell脚本编程的基本概念、语法和应用。 一、基本概念 1. Shell脚本是什么? Shell脚本是指使用Shell命令语言编写的程序,用于自动执行一系列任务或操作。Shell脚本通常以文本文件形式...
Linux Shell脚本编程实例 Linux Shell脚本编程实例是一种使用Linux Shell编程语言编写的脚本,旨在提供一个实用的编程实例,帮助用户学习和...在脚本中,可以使用mail命令来发送邮件,例如,发送Party邀请函给朋友们。
本文将深入探讨如何在Linux环境下进行磁盘监控,并介绍一种自动化的方式——通过脚本监控并发送邮件通知。 首先,我们要了解Linux下的一些基本磁盘监控命令。`df`命令用于查看磁盘空间的使用情况,它能显示每个挂载...
本文将介绍一个名为“Linux_base_shell.sh”的Shell脚本,它包含了创建文件、发送邮件以及文件操作等实用功能。 一、发送邮件功能 在脚本中,`email_attach`函数用于通过邮件附件发送文件。它使用`mutt`命令来实现...
另外,虽然在这个例子中用写入"mail"到日志文件来模拟发送邮件,但在真实环境中,我们通常会使用`mail`或`mutt`等邮件发送工具来发送告警邮件。发送邮件的具体实现会依赖于系统的配置,可能需要提供发件人地址、收件...
### Linux Shell 脚本知识点解析 #### 一、从文件`user.list`中提取信息并添加用户与用户组 ...这些知识点涵盖了文件处理、用户管理、网络配置等多个方面,对于理解和实践Linux环境下的自动化任务非常有帮助。
# 设置阈值,当CPU或内存超过特定百分比时发送警告邮件或其他操作 if (( $(echo "$CPU_USAGE > 80" | bc -l) )); then echo "High CPU usage: $CPU_USAGE%" | mail -s "Java Service CPU Warning" admin@example....
注:通过系统直接发送mail容易被拦截,可使用mail连接第三方smtp发送邮件。 shell脚本实现代码: 代码如下:#!/bin/bash#set -xwhile truedo list=(www.jb51.net s.jb51.net) mail=jmj@jb51.net date=$(date -d ...
- **特点**: Linux支持多个虚拟终端,通过Ctrl+Alt+F1~F6切换。 #### YaST - YetAnotherSetupTool - **全称**: Yet Another Setup Tool - **用途**: 用于SUSE Linux的安装和配置工具。 - **特点**: 提供图形化界面...
Mimella是用于创建、解析、修改、发送,以及接收MIME格式的邮件消息的C++类库,支持Windows平台(可以方便地移植到Unix/Linux上),以及SMTP、POP3、MIME、IMAP和NNTP等协议。在掌握了Mimella的面向对象接口之后,...
使用无限循环`while :do`持续监控,并用`mail`命令发送邮件。 6. **生成随机数并让用户猜数字游戏** 这个脚本利用`RANDOM`系统变量生成1-100之间的随机数,通过`read`命令接收用户输入并进行比较,通过`if`语句...
在Linux环境下,服务器监控是非常重要的运维工作之一。良好的监控系统能够及时发现并解决系统问题,确保服务稳定运行。本文将详细介绍几个常用的Linux监控脚本,涵盖主机网卡流量、系统状况、主机磁盘空间、CPU和...
通过这些详细的介绍,我们可以清晰地了解到如何利用Linux操作系统及其相关应用软件来构建一个功能完善且易于管理的免费个人主页系统。这种系统不仅能够满足用户的基本需求,还能有效保障系统的安全稳定运行。