RHCE---使用邮箱客户端s-nail

news2024/10/16 22:09:28

使用邮箱客户端s-nail

方案一:使用网易邮箱

1,挂载虚拟镜像

[root@localhost ~]# mount  /dev/sr1 /mnt
mount: /mnt: /dev/sr1 already mounted on /run/media/root/RHEL-9-3-0-BaseOS-x86_64.

2,编辑环境文件

[root@localhost ~]# vim /etc/yum.repos.d/base.repo
[root@localhost ~]# cat /etc/yum.repos.d/base.repo 
    [BaseOS]
    name=BaseOS
    baseurl=file:///mnt/BaseOS
    gpgcheck=0

    [AppStream]
    name=AppStream
    baseurl=file:///mnt/AppStream
    gpgcheck=0

3,安装s-nail邮箱客户端

[root@localhost ~]# dnf install s-nail -y
Complete!

4,编写邮箱客户端的环境

[root@localhost ~]# vim /etc/s-nail.rc
[root@localhost ~]# tail -5 /etc/s-nail.rc
set from=XXXXXXXXXXXXXXXXX@163.com         ------粘贴自己的网易邮箱账号(没有账号可注册)
set smtp=smtp.163.com
set smtp-auth-user=XXXXXXXXXXXXXXXXX@163.com       ---这里也是自己的网易邮箱账号
set smtp-auth-password=XXXXXXXXXXXXX(授权码)     ------这里需要获取授权码
set smtp-auth=login

授权码获取方式:

在这里插入图片描述

得到授权码后,粘贴进文件内部即可使用。注意在退出文件编辑时需要使用强制保存退出(wq!命令),否则配置文件的命令不会生效。

5,验证邮箱

[root@localhost ~]# echo 你好世界 | mail -s jinggao XXXXXXXXXXXXX@163.com      ------网易邮箱账号
s-nail: Warning: variable superseded or obsoleted: smtp
s-nail: Warning: variable superseded or obsoleted: smtp-auth-user
s-nail: Warning: variable superseded or obsoleted: smtp-auth-password
s-nail: Obsoletion warning: please do not use *smtp*, instead assign a smtp:// URL to *mta*!
s-nail: Obsoletion warning: Use of old-style credentials, which will vanish in v15!
s-nail:   Please read the manual section "On URL syntax and credential lookup"

登录网易邮箱即可看见邮件,表明验证成功。

在这里插入图片描述

方案二:使用QQ邮箱

1,挂载虚拟镜像

[root@localhost ~]# mount  /dev/sr1 /mnt
mount: /mnt: /dev/sr1 already mounted on /run/media/root/RHEL-9-3-0-BaseOS-x86_64.

2,编辑环境文件

[root@localhost ~]# vim /etc/yum.repos.d/base.repo
[root@localhost ~]# cat /etc/yum.repos.d/base.repo 
    [BaseOS]
    name=BaseOS
    baseurl=file:///mnt/BaseOS
    gpgcheck=0

    [AppStream]
    name=AppStream
    baseurl=file:///mnt/AppStream
    gpgcheck=0

3,安装s-nail邮箱客户端

[root@localhost ~]# dnf install s-nail -y
Complete!

4,s-nail程序登录验证qq账号

[root@localhost ~]# vim /etc/s-nail.rc
[root@localhost ~]# tail -7 /etc/s-nail.rc
set from=XXXXXXXXXX@qq.com             ------QQ邮箱账号
set smtp=smtps://smtp.qq.com:465
set smtp-auth-user=XXXXXXXXXX@qq.com          -----QQ邮箱账号
set smtp-auth-password=XXXXXXXXXXXX           -----QQ授权码
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs

在qq客户端程序(如浏览器中进入邮箱登录QQ邮箱->设置->账户)中通过设置开启imap/smtp服务提供第三方程序账号的授权码:

在这里插入图片描述

5,因为需要 QQ 邮箱的 SSL 证书,所以我们还需要手动的获取QQ 邮箱的证书保存到本地指定的目录里以备调用和验证,具体命令如下:

[root@localhost ~]# mkdir -p /root/.certs/
[root@localhost ~]# echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
[root@localhost ~]# certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
[root@localhost ~]# certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
[root@localhost ~]# certutil -L -d /root/.certs

为了防止出现前文所说的发送邮件警告提示,还需要进入邮箱 SSL 证书存放目录 /root/.certs 里执行如下命令:

[root@localhost ~]# cd /root/.certs
[root@localhost ~]# certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt

返回如下提示即可:

Notice: Trust flag u is set automatically if the private key is present.

6,验证测试

[root@localhost .certs]# echo 123 | mail -s test XXXXXXXXXX@qq.com        -----QQ邮箱账号
s-nail: Warning: variable superseded or obsoleted: smtp
s-nail: Warning: variable superseded or obsoleted: smtp-auth-user
s-nail: Warning: variable superseded or obsoleted: smtp-auth-password
s-nail: Warning: variable superseded or obsoleted: ssl-verify
s-nail: Obsoletion warning: please do not use *smtp*, instead assign a smtp:// URL to *mta*!
s-nail: Obsoletion warning: Use of old-style credentials, which will vanish in v15!
s-nail:   Please read the manual section "On URL syntax and credential lookup"
s-nail: SMTP server: /root/dead.letter 10/220
s-nail: ... message not sent

登录QQ邮箱即可看见邮件,表明验证成功。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2216586.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

部署harbor问题(缺少ssl认证证书)

在部署harbor服务,/install.sh启动时,缺少ssl认证 1. 创建证书目录 首先,创建 /usr/local/harbor/ssl 目录: mkdir -p /usr/local/harbor/ssl 2. 生成私钥 生成一个 4096 位的 RSA 私钥: openssl genrsa -out /us…

【优秀Python大屏】全球肺癌患病人数分析与可视化展示

1. 项目背景 肺癌是全球范围内影响人类健康的重大疾病之一,了解不同地区、不同收入水平国家的肺癌患病人数分布以及不同年龄段的患病趋势,有助于全球卫生组织和研究人员制定更有效的防治策略。本次数据分析利用全球各洲和国家的肺癌患病数据&#xff0c…

了解专用代理服务器的功能

在当今数字化的环境中,确保安全高效的互联网连接变得至关重要。这种需求催生了专用代理服务器,这是一种确保在线隐私、安全和可访问性的强大工具。了解专用代理服务器的细微差别和功能对于寻求增强在线保护和访问的个人和企业是十分重要的。 一、什么是…

中标麒麟v5安装qt512.12开发软件

注意 需要联网操作 遇到问题1:yum提示没有可用软件包问题 终端执行如下命令 CentOS7将yum源更换为国内源保姆级教程 中标麒麟V7-yum源的更换(阿里云源) wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Cento…

Ingress-nginx中HTTPS的强制转发

文章目录 在使用aws 的NLB转发流量到ingress时,发现NLP上生成的转发配置不符合正常预期,如下图: ingress-nginx service 配置如下: apiVersion: v1 kind: Service metadata:annotations:service.beta.kubernetes.io/aws-load-b…

无人机集群路径规划:5种优化算法(SFOA、APO、GOOSE、CO、PIO)求解无人机集群路径规划,提供MATLAB代码

一、单个无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化…

CSS网页布局(重塑网页布局)

一、实现两列布局 许多网站有一些特点,如页面顶部放置一个大的导航或广告条,右侧是链接或图片,左侧放置主要内容,页面底部放置版权信息等 一般情况,此类网页布局的两列都有固定的宽度,而且从内容上很容易区…

【C++】—通俗易懂的理解C++中的模板

文章目录 前言:💞1.函数模板💞1.1 函数模板的概念💞1.2 函数模板的格式💞1.3 函数模板的原理💞1.4 函数模板的实例化💞1.5 模板参数的匹配原则 💞2.类模板💞1.1 类模板的…

简单介绍$listeners

$listeners 它可以获取父组件传递过来的所有自定义函数&#xff0c;如下&#xff1a; // 父组件 <template><div class"a"><Child abab"handleAbab" acac"handleAcac"/></div> </template><script> impor…

【v5.3.0】修复订单批量发货提示 isPicUpload is not defined

使用订单批量发货的时候&#xff0c;没有反应&#xff0c;控制台提示 ReferenceError: isPicUpload is not defined 修改文件src/pages/order/orderList/components/tableList.vue 把isPicUpload改成isFileUpload&#xff0c;然后重新打包admin后台上传即可

音频分割:长语音音频 分割为 短语音音频 - python 实现

在做语音任务时&#xff0c;有是会用到的语音音频是长音频&#xff0c;这就需要我们将长音频分割为短音频。 该示例将声音的音量和静默时间结合作为语音的分割条件。 使用音量和静默时间结合的分割条件&#xff0c;能够比较好的进行自然断句&#xff0c;不会话语没有说完就切断…

【C++11】包装器:深入解析与实现技巧

C 包装器&#xff1a;深入解析与实现技巧 个人主页 C专栏 目录 引言包装器的定义与用途C 包装器的常见应用场景实现包装器的技巧使用 RAII 实现资源管理案例分析&#xff1a;智能指针模板包装器的应用包装器与设计模式性能优化更多应用案例总结 引言 C 是一门灵活且强大的语…

2024软考网络工程师笔记 - 第3章.广域通信网

文章目录 广域网物理层特性1️⃣公共交换电话网 PSTN2️⃣本地回路3️⃣机械特性4️⃣电气特性 &#x1f551;流量与差错控制1️⃣流量与差错控制2️⃣流量控制——亭等协议3️⃣流控机制——滑动窗口协议4️⃣差错控制5️⃣差错控制——停等协议6️⃣差错控制——选择重发ARQ协…

STARnak, LTR 模型笔记

未完成. 1. 简述 CIKM 23 的一篇论文, 任务为 Learning To Rank, 输入为 候选集合, 输出为 有序列表, 用于 top-n 推荐场景. 思考: 它是要替代 ctr 预估么?它跟 mind 这种召回, 有啥大的不一样么? 2. 网络结构 u u u: 将用户(或 query) 记为 u H q d X , d Y , . . . H…

SpringBoot3 + MyBatisPlus 快速整合

一、前言 MyBatis 最佳搭档&#xff0c;只做增强不做改变&#xff0c;为简化开发、提高效率而生。 这个发展到目前阶段已经很成熟了&#xff0c;社区也比较活跃&#xff0c;可以放心使用。官网地址&#xff1a;https://baomidou.com 二、快速开始 引入依赖 这里我引入了核心…

3.Three.js程序基本框架结构和API说明

Three.js程序基本框架结构和API说明 1.基本框架结构代码 一个基本的Three.js程序&#xff0c;基本都需要设置场景、渲染器、相机、灯光等等通用操作&#xff0c;因而我们可以把Three.js基本程序框架进行整理&#xff0c;如下。其中&#xff0c;我们可以用Three.js提供的Orbit…

深度解析计数排序:原理、特性与应用

目录 &#x1f4af;引言 &#x1f4af;计数排序的原理 ⭐核心概念 ⭐工作流程 1.确定计数范围 2.统计元素出现次数 3.计算累计计数 4.放置元素到正确位置 &#x1f4af;计数排序的实现 ⭐代码示例&#xff08;以 C 为例&#xff09; ⭐时间复杂度分析 ⭐稳定性分析…

【在Linux世界中追寻伟大的One Piece】Jsoncpp|序列化

目录 1 -> Jsoncpp 1.1 -> 特性 1.2 -> 安装 2 -> 序列化 3 -> 反序列化 4 -> Json::Value 1 -> Jsoncpp Jsoncpp是一个用于处理JSON数据的C库。它提供了将JSON数据序列化为字符串以及从字符串反序列化为C数据结构的功能。Jsoncpp是开源的&#xf…

CSS选择器及背景属性介绍

1.复合选择器 &#xff08;1&#xff09;后代选择器 &#xff08;2&#xff09;子代选择器 &#xff08;3&#xff09;并集选择器 &#xff08;4&#xff09;交集选择器 2.伪类选择器 即鼠标所悬停的内容变色 扩展&#xff1a;伪类选择器关于超链接 3.CSS三大特性 &#xff…

路由表来源(基于华为模拟器eNSP)

概叙 在交换网络中&#xff0c;若要实现不同网段之间的通信&#xff0c;需要依靠三层设备&#xff08;路由器、三层交换机等&#xff09;&#xff0c;而路由器只知道其直连网段的路由条目&#xff0c;对于非直连的网段&#xff0c;在默认情况下&#xff0c;路由器是不可达的&a…