银河麒麟 | ubuntu 搭建属于自己的邮件服务器

 

目录

遇权不绝就转root

更新系统

安装 Postfix

配置 Postfix

重启 Postfix

安装 Dovecot

配置 Dovecot

编辑 Dovecot 的 IMAP 配置文件

编辑 Dovecot 的用户认证配置文件

编辑 Dovecot 的服务配置文件

重启 Dovecot

安装发送邮箱功能

发送邮件

测试


遇权不绝就转root

    sudo -i

    更新系统

      apt update

       
      
        # 网不好的人别敲了,这玩意太久了apt upgrade -y

        安装 Postfix

          apt install -y postfix

          假设我的公司域名是 wmcode.com

          那么 我待会输入的邮件服务器主机名则是 mail.wmcode.com

          配置 Postfix

            vi /etc/postfix/main.cf

            配置前

              home_mailbox = Maildir/smtpd_sasl_type = dovecotsmtpd_sasl_path = private/authsmtpd_sasl_auth_enable = yessmtpd_sasl_local_domain = $myhostnamesmtpd_sasl_security_options = noanonymous,noplaintextsmtpd_sasl_tls_security_options = noanonymousbroken_sasl_auth_clients = yessmtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destinationsmtp_tls_security_level = maysmtpd_tls_security_level = maysmtp_tls_note_starttls_offer = yessmtpd_tls_CApath = /etc/ssl/certssmtpd_tls_cert_file = /etc/ssl/certs/server.crtsmtpd_tls_key_file = /etc/ssl/private/server.keysmtpd_tls_loglevel = 1smtpd_tls_received_header = yessmtpd_tls_auth_only = yes

              修改后

              重启 Postfix

                systemctl restart postfix

                安装 Dovecot

                  apt install -y dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql

                  配置 Dovecot

                    vi /etc/dovecot/dovecot.conf

                    编辑 Dovecot 的 IMAP 配置文件

                      vi /etc/dovecot/conf.d/10-mail.conf

                      编辑 Dovecot 的用户认证配置文件

                        vi /etc/dovecot/conf.d/10-auth.conf
                          disable_plaintext_auth = noauth_mechanisms = plain login

                          编辑 Dovecot 的服务配置文件

                            vi /etc/dovecot/conf.d/10-master.conf
                              #修改以下内容service lmtp {  unix_listener /var/spool/postfix/private/dovecot-lmtp {    mode = 0600    user = postfix    group = postfix  }}service auth {  unix_listener /var/spool/postfix/private/auth {    mode = 0660    user = postfix    group = postfix  }}

                              重启 Dovecot

                                systemctl restart dovecot

                                安装发送邮箱功能

                                  apt install -y mailutils

                                  发送邮件

                                    echo "This is the email body" | mail -s "Test Subject" other_email@outlook.com -r chen@wmcode.com
                                    • echo "This is the email body":邮件正文内容。

                                    • mail -s "Test Subject":邮件主题。

                                    • other_email@outlook.com:收件人邮箱地址。

                                    • -r chen@wmcode.com:发件人邮箱地址。

                                    测试

                                    邮件可能在垃圾邮箱里面


                                    * Thanks you *

                                    如果觉得文章内容不错,随手帮忙点个赞在看转发一下,如果想第一时间收到推送,也可以给我个星标~谢谢你看我的文章


                                    *往期推荐 *

                                    银河麒麟 | ubuntu 安装运用 docker 容器,实现容器化部署项目

                                    银河麒麟 | ubuntu 安装zabbix监控设备信息(亲测包对)

                                    只需5步让你轻松导出学习通纯考试题目(JavaScript)

                                    国产操作系统-银河麒麟本地化部署Ollama国产开源的AI大模型Qwen3

                                    Ubuntu |  安装 Zabbix 一篇就够了

                                    彻底删除 Nginx + 重新安装

                                    Swagger | 手把手带你写自动生成接口文档的爽感(零基础亲测实用)

                                    SpringBoot整合Openfeign接入Kimi Ai!!超简单,居然没多少行代码??(附加兜底教程)

                                    SpringBoot接入Kimi实践记录轻松上手

                                    Wrod 也可以添加代码快啦!!快看有哪种你是会的吧!

                                    Linux | 零基础Ubuntu搭建JDK

                                    Maven | 站在初学者的角度配置与项目创建(新手必学会)

                                    Spring Ai | 极简代码从零带你一起走进AI项目(中英)

                                    Open Ai | 从零搭建属于你的Ai项目(中英结合)

                                    MongoDB | 零基础学习与Springboot整合ODM实现增删改查(附源码)

                                    Openfeign | 只传递城市代码,即可获取该地域实时的天气数据(免费的天气API)

                                    API接口到底是什么

                                    Redis | 缓存技术对后端的重要性,你知道多少?

                                    Mongodb | 基于Springboot开发综合社交网络应用的项目案例(中英)

                                    谈谈模块化设计在单体架构中的应用

                                    彻底讲清楚 单体架构、集群架构、分布式架构及扩展架构

                                    为什么还在使用单体架构

                                    2025年Java路线一条龙服务

                                    2025年健康新趋势:科技与生活方式的融合


                                    感谢阅读 | 更多内容尽在公棕号 WMCode | CSDN@小Mie不吃饭

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

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

                                    相关文章

                                    嵌入式通信协议框架的四层架构设计与实现

                                    文章目录 一、硬件抽象层:数据收发的基石1.1 设计要点1.2 代码示例 二、协议管理层:智能路由中枢2.1 设计要点2.2 代码示例 三、协议处理层:协议具体实现3.1 设计要求3.2代码示例3.2.1 协议公共定义3.2.2 协议一设计3.2.3 协议二设计 四、应用…

                                    RA信号处理

                                    ra_snr_gui.m 作用:统计不同信噪比下,五种信号的峰值旁瓣比RA和低高频均值比RM,绘制结果,参考图3.11和3.12 DFCW_RA_SNR.m 作用:产生正交离散频率编码信号,并计算峰值旁瓣比RA和低高频均值比 RM LFM_RA_S…

                                    【go的测试】单测之gomock包与gomonkey包

                                    目录 使用gomock包 1. 安装mockgen 2. 定义接口 3. 生成mock文件 4. 在单测中使用mock的函数 5. gomock 包的使用问题 使用gomonkey包 1. mock 一个包函数 2. mock 一个公有成员函数 3. mock 一个私有成员函数 使用gomock包 1. 安装mockgen go get -u github.com/go…

                                    html实现登录与注册功能案例(不写死且只使用js)

                                    目录 案例需求 实现思路 代码参考 login.html register.html 运行效果 升级思路 案例需求 需要一个登录界面和注册页面实现一个较为完整的登录注册功能 1.登录界面没有登录限制需求(降低难度),实现基本的登录判断需求,弹窗…

                                    PHP is the best language.

                                    PHP很好写。 众所周知Python很好写,Python 也能开发 Web 应用,但和 PHP 相比,在“直接处理网页”这件事上,PHP 更加贴近底层和原生。 想快速搭建原型或者 B 端后台工具,不妨用 PHP Laravel 来搞,真的很香…

                                    Mybatis-Plus 在 getOne() 的时候要加上 .last(“limit 1“)

                                    1.先写结论: 1.为了确保 SQL 查询只返回一条记录(当查询返回多条时会报错->多为代码本身问题)。 2.防止数据库执行全表扫描 3.参考网址:问题记录:MyBatis-Plus 中 ServiceImpl 类的 getOne_mybatis_无他&唯手熟尔-2048…

                                    C语言:二分搜索函数

                                    一、二分搜索基本概念 二分搜索(Binary Search)是一种在有序数组中查找特定元素的高效算法,时间复杂度为O(log n)。 基本特点: 仅适用于有序数组(升序或降序) 每次比较将搜索范围减半 比线性搜索(O(n))…

                                    [前端AI]LangChain.js 和 Next.js LLM构建——协助博客撰写和总结助手

                                    LangChain.js 和 Next.js LLM 后端应用于协助博客撰写和总结领域是一个非常实用的方向!这涉及到理解和处理文本内容,并生成新的、有结构的信息。 根据您之前提供的代码和需求,我们可以在此基础上进行更具针对性的功能规划和技术实现。 博客…

                                    用 GitHub Issues 做任务管理和任务 List,简单好用!

                                    说实话,我平时也是一个人写代码,每次开完会整理任务最麻烦: 一堆事项堆在聊天里、文档里,或者散落在邮件里…… 为了理清这些,我通常会做一份 List,标好优先级,再安排到每日的工作里 虽然这个…

                                    每日算法刷题Day35 6.22:leetcode枚举技巧枚举中间2道题,用时1h

                                    枚举中间 对于三个或者四个变量的问题&#xff0c;枚举中间的变量往往更好算。 为什么&#xff1f;比如问题有三个下标&#xff0c;需要满足 0≤i<j<k<n&#xff0c;对比一下&#xff1a; 枚举 i&#xff0c;后续计算中还需保证 j<k。 枚举 j&#xff0c;那么 i 和…

                                    【教学类-18-06】20250623蒙德里安黑白七款合并WORD(500张、无学号)

                                    背景需要 客户买了蒙德里安黑白格子7种尺寸,但是不需要学号方块,并指定要WORD 设计思路 【教学类-18-05】20241118正方形手工纸(蒙德里安-风格派-红黄蓝黑白)-CSDN博客文章浏览阅读1.3k次,点赞29次,收藏18次。【教学类-18-05】20241118正方形手工纸(蒙德里安-风格派-红…

                                    langchain--(4)

                                    7 Embedding文本向量化 Embedding文本向量化是一种将非结构化文本转化为低维、连续数值向量的技术,旨在通过数学方式捕捉文本的语义、语法或特征信息,从而让机器更高效地处理语言任务。其核心思想源于流形假设(Manifold Hypothesis),即认为高维原始数据(如文本)实际隐含…

                                    DMDRS部署实施手册(ORACLE=》DM)

                                    DMDRS部署实施手册&#xff08;ORACLE》DM&#xff09; 1 同步说明2 DMDRS安装3 数据库准备3.1 源端准备3.1.1 开启归档日志和附加日志3.1.2 关闭回收站3.1.3 创建同步用户 3.2 目标准备3.2.1 创建同步用户 4 DMDRS配置4.1 源端配置4.2 目标配置 5 DMDRS启动5.1 启动源端服务5.…

                                    十(1)作业:sqli-labs重点关卡

                                    参考文章&#xff1a;详细sqli-labs&#xff08;1-65&#xff09;通关讲解-CSDN博客 第1关&#xff1a; 输入 &#xff1a; ?id3 输入 &#xff1a; ?id2 当输入的数字不同&#xff0c;页面的响应也不同&#xff0c;说明&#xff0c;输入的内容被带入到数据库里查询了 输…

                                    Python 爬虫入门 Day 7 - 复盘 + 实战挑战日

                                    Python 第二阶段 - 爬虫入门 &#x1f3af; 本周知识回顾 网络请求与网页结构基础 HTML解析入门&#xff08;使用 BeautifulSoup&#xff09; 实现爬虫多页抓取与翻页逻辑 模拟登录爬虫与 Session 维持 使用 XPath 进行网页解析&#xff08;lxml XPath&#xff09; 反爬虫应对…

                                    WebRTC(七):媒体能力协商

                                    目的 在 WebRTC 中&#xff0c;每个浏览器或终端支持的音视频编解码器、分辨率、码率、帧率等可能不同。媒体能力协商的目的就是&#xff1a; 确保双方能“听得懂”对方发的媒体流&#xff1b;明确谁发送、谁接收、怎么发送&#xff1b;保障连接的互操作性和兼容性。 P2P的基…

                                    可信启动方案设计

                                    安全之安全(security)博客目录导读 目录 一、引言 二、关键数据(Critical Data) 三、度量槽(Measurement Slot) 四、可信启动后端 1、事件日志(Event Log) 2、离散型 TPM(Discrete TPM) 3、RSE(运行时安全引擎) 五、平台接口 平台接口的职责: 1、函数:b…

                                    ✨通义万相2.1深度解析:AI视频生成引擎FLF2V-14B全流程指南(命令行参数+模型架构+数据流)

                                    &#x1f31f; 从零详解&#xff1a;如何用AI模型生成视频&#xff1f;命令行、模型结构、数据流全解析&#xff01; 本文通过一个实际案例&#xff0c;详细解析使用AI模型生成视频的整个流程。从命令行参数解读到模型结构&#xff0c;再到数据在模型间的流动&#xff0c;一步步…

                                    在 TypeScript 前端中使用 Umi-Request 调用 Java 接口的完整指南

                                    下面我将详细介绍如何在基于 TypeScript 的前端项目中使用 umi-request 调用 IntelliJ IDEA 中开发的 Java 接口&#xff0c;包括完整的实现方案和代码示例。 整体方案设计 一、Java 后端接口准备 1. 创建 Spring Boot 控制器 // src/main/java/com/example/demo/controller…

                                    GO Gin Web框架面试题及参考答案

                                    目录 Gin 与 net/http 有哪些主要区别?为什么选择 Gin? 如何使用 Gin 启动一个 HTTP 服务并设置默认路由? Gin 的默认路由和自定义路由器组是如何工作的? 如何在 Gin 中绑定请求参数(Query、Form、JSON、XML)? 如何在 Gin 中使用中间件?中间件执行顺序是怎样的? …