准备工作

james 压缩包下载:

链接:https://pan.baidu.com/s/1SIGj2HIhzPl2DVhl8bS_5g?pwd=7tjj 
提取码:7tjj

安装所需环境:

因为是apache开源java项目所以Linux必须要有java环境:

安装

1.解压

tar -xf james-binary-2.3.2.1.tar.gz

2.进入bin目录,给phoenix.sh run.sh 两个文件赋权

chmod +wxr run.sh phoenix.sh

会遇见的问题:

1. 权限不足:出现原因有两种①你使用的是普通用户权限,他需要启动的端口都是100上下的,普通用户没有权限。②部分文件没有执行权限,你使用su获取的root用户,启动执行脚本,导致部分解压出来的文件所属用户组是root,你没有执行权限。
2.地址被占用:原因:端口被占用,占用的端口,启动服务需要的端口有
        4555 连接端口
        25 SMTP端口
        110  POP3端口
        119 NNTP端口

解决办法:

1.直接使用root用户全局操作。
2.在执行./run.sh脚本即第四步之后,在./apps/james/SAR-INF 文件下有个config.xml文件,该文件是邮箱服务器的配置文件,在该文件中修改所有的端口号即可,普通用户就可以调度修改后的端口。
3.部分文件没有执行权限,如果是用su获取root权限执行了一遍脚本的,可以使用root权限下chown -R '用户':'组' '文件'的方式修改文件下所有的用户组。

3.执行脚本

./run.sh

4.修改域名配置

4.1. 创建虚拟域名

如果是外网有域名的话就直接进入4.2

执行:

vi /etc/hosts

在文件中添加: 127.0.0.1 email.com

既可在该网段下配置虚拟域名

4.2. 修改配置

进入./apps/james/SAR-INF 文件下的config.xml

1.配置localhost

<postmaster>Postmaster@localhost</postmaster>
<servernames autodetect="true" autodetectIP="true"> <servername>localhost</servername>
</servernames>

修改为:

autodetect设为true会自动侦测你的主机名,设成false会用你指定的server name
autodetectIP设为true会为你的servername加上ip,如果开了一个用户user,那么他的邮件地址就是user@email.com

<postmaster>Postmaster@email.com</postmaster>
<servernames autodetect="false" autodetectIP="false"> <servername>email.com</servername>
</servernames>

2.注释下面配置

<!--<mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor"> <processor> relay-denied </processor> <notice>550 - Requested action not taken: relaying denied</notice>
</mailet>-->

3.查找所有的myMailServer 替换为你自己的域名

<helloName autodetect="true">myMailServer</helloName>

修改为:

<helloName autodetect="true">email.com</helloName>

5.设置身份认证,取消注释

<authRequired>true</authRequired>

6.修改密码(可改可不改)

<account login="root" password="root"/>

默认是!chxxx! 不太记得了

5.创建邮箱账号

1.进入控制台:telnet localhost 4555

2.输入用户名密码: root/root

3.创建用户:adduser user 123

会遇见的问题:

1.没有telnet命令。

解决办法:

1.检测telnet-server的rpm包是否安装。执行:rpm -qa telnet-server 。
2.若未安装,则执行:yum install telnet-server 进行安装,反之直接进入第三步。
3.检测telnet-server的rpm包是否安装。执行:rpm -qa telnet 。

4.若未安装,则执行:yum install telnet,反之直接进入第五步。

5.重新启动xinetd守护进程 service xinetd restart 。
6.如果两个都安装了都还没有用就重启服务器。

6.Foxmail测试

下载链接:Foxmail for Mac

选择其他邮箱  > 手动设置 >

> 输入自己添加的账号密码,服务器就填写自己的服务器地址

会遇见的问题:

1.云服务器防火墙没开。
2.虚拟域名有问题,可以在自己FoxMail的电脑上测一下可以不可以 ping 通

7.java代码测试Demo

package com.liang.sender;import javax.mail.MessagingException;
import java.util.Scanner;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;public class Main {public static void main(String[] args) {//发送者账号密码final String user = "ronxxao.lxxng";final String password = "1xx3x";//接收者邮箱final String recipient = "lixxxry@163.com";Scanner scanner = new Scanner(System.in);StringBuilder sb = new StringBuilder();String s = "";System.out.println("请输入要发送的信息");while (!(s = scanner.nextLine()).equals("end")) {sb.append(s);sb.append("<br>");}try {sendEmail(user, password, recipient, "test", sb.toString());} catch (MessagingException e) {e.printStackTrace();}}private static void sendEmail(String user, String password, String recipient, String title, String sendMessage)throws MessagingException {Properties p = new Properties();p.setProperty("mail.smtp.host", "email.xxxxx.top");//发送者邮箱服务器p.setProperty("mail.smtp.port", "25");//发送者端口p.setProperty("mail.smtp.auth", "true");//是否开启权限控制p.setProperty("mail.transport", "smtp");//协议Session session = Session.getInstance(p, new Authenticator() {@Overridepublic PasswordAuthentication getPasswordAuthentication() {return new PasswordAuthentication(user, password);}});Message message = new MimeMessage(session);message.setFrom(new InternetAddress(user));//设置收件人地址message.setRecipient(Message.RecipientType.TO, new InternetAddress(recipient));message.setSubject(title);message.setContent(sendMessage, "text/html;charset=UTF-8");try {Transport.send(message, user, password);} catch (AuthenticationFailedException e) {System.out.println("身份验证失败");}System.out.println("sent");}}

Linux服务器 james邮箱服务器搭建 (附java测试Demo)相关推荐

  1. 微软邮件服务器名称,邮箱服务器角色概述

    邮箱服务器角色概述 05/13/2016 本文内容 适用于: Exchange Server 2010 SP2, Exchange Server 2010 SP3 上一次修改主题: 2015-03-0 ...

  2. 公司服务器架设邮箱服务器,如何搭建企业邮箱服务器

    在当今企业信息化时代,无论是初创的企业还是中大型的企业,企业邮箱都已经成为企业日常运作不可或缺的应用.企业邮箱不仅有助于企业建立高效的内部沟通渠道,而且还是企业对外联络的重要沟通工具之一.那么,如何搭 ...

  3. 虚拟机 邮箱服务器,虚拟机邮箱服务器设置密码

    虚拟机邮箱服务器设置密码 内容精选 换一换 本节操作介绍购买云耀云服务器的操作步骤.购买时,为减少您配置参数的时间,部分参数由系统自动分配,以下参数配置供你了解系统的默认配置.购买云耀云服务器仅支持& ...

  4. docs邮箱服务器,配置邮箱服务器属性

    配置邮箱服务器属性 05/20/2011 本文内容 **适用于:**Exchange Server 2010 **上一次修改主题:**2009-08-27 若要在组织中配置邮箱服务器,可以使用 Exc ...

  5. java 文件头_常用文件的文件头(附JAVA测试类)

    1. MIDI (mid),文件头:4D546864 2. JPEG (jpg),文件头:FFD8FF 3. PNG (png),文件头:89504E47 4. GIF (gif),文件头:47494 ...

  6. linux搭建直播步骤,linux环境(CentOS-7)搭建HLS直播测试环境

    安装带rtmp的nginx 前提:需要yum update.wget.tar.gcc.pcre.pcre-devel.openssl 1.下载软件: mkdir nginx cd nginx wget ...

  7. hMailServer 使用教程 —— 手把手教你搭建自己的邮箱服务器

    前言 假设你已经拥有了一台具有公网ip的服务器,以及域名 hMailServer 介绍 hMailServer 适用于 Windows 操作系统,它除了提供邮箱系统需要的所有基础功能之外,还内置了一些 ...

  8. Exchange Server 2007邮箱服务器失败规划和恢复

    进行邮箱服务器灾难恢复的准备: 邮箱服务器失败的几个场景  如何减少邮箱服务器失败所带来的影响  服务器上的数据应该提前备份  实施一个灾难恢复所需要考虑的  如何减少邮箱服务器失败所带来的影响: 为 ...

  9. 海航exchange邮箱服务器,Exchange 邮件系统

    中心传输服务器角色 在整个企业内路由邮件,预先许可信息权管理 (IRM) 邮件,并在每个阶段强制执行遵从性. Exchange Server新增功能 Microsoft Exchange Server ...

最新文章

  1. APP抓链接工具(Fiddler版)
  2. 文科生如何入门机器学习:先看看这篇零基础教程,再多算几遍吧
  3. 在 Eclipse 中使用 Maven 构建 Web 项目
  4. jsp中 input placeholder_前端工作中的方法总结
  5. 如何在Linux中恢复一个删除了的文件
  6. 总帐科目的批量传输与复制
  7. python三引号注释_python使用三引号来注释的具体原因?
  8. ASP.NET Core2.2 和2.1 版本中对cookie的设置和存储
  9. C++ 开发者怒了:这个无用的模块设计最终会害死 C++!
  10. 运行make_datafiles的过程
  11. 区块链-公钥生成地址
  12. PPT文档如何插入超链接
  13. linux 查看硬盘序列号、设备序列号、系统安装时间
  14. Linux 系统安装中文语言包
  15. 人工智能论文-人工智能技术在新冠病毒肺炎疫情防控中的应用
  16. 数据分析之实战项目——电商用户行为分析【python】
  17. SQL Server Performance 分析
  18. 心率检测--异常可能
  19. 跟着示例学Ubuntu UFW防火墙设置
  20. 有关孙卫琴的个人网站

热门文章

  1. vscode官网下载失败或者下载速度太慢
  2. firebase auth_使用Auth0对Firebase和Angular进行身份验证:第1部分
  3. 怎么使用telnet入侵其他主机
  4. Python环境的搭建+pycharm的安装 小白版 菜鸟教程
  5. 【flash】每日一签,保佑大家健康平安,看看你是什么签!
  6. C语言 编程题 亲密数
  7. 200道网络安全常见面试题合集(附答案解析+配套资料)
  8. 浅析GPU通信技术(中)-NVLink总线协议
  9. 学习rtklib(一)
  10. 学生网上考试报名系统的设计与实现