Apache James搭建内网邮件服务器
Apache James搭建内网邮件服务器
大概之前两个礼拜的日子,讨论会介绍了关于了.net内网邮件服务器的搭建。所以自己也很有必要来尝试一把邮件服务器的搭建,这里选取的是james这个工具。
为什么要使用内网邮件服务器?
a.安全这里仅限个人观点。对于任何一个企业来说,必要安全保密是非常重要的。
b.不受internet的限制虽然说现在到处都是wifi,但是有一个能够自己来控制和使用的邮件服务器肯定是不错的选择。
什么是apache james?
a.一个支持多协议的企业级邮件服务器
b.开源、多平台
开源的项目意味着不存在版本的问题,减少了诸多在法律上的问题,也保证了对于平台的扩展性的保持;纯java的实现也就不会存在window和linux等系统不兼容的问题了。
最新下载地址
本次选用2.3.2.
配置步骤
1.环境配置
a.jdk
Jdk 1.7 ,当前最好的是配置好相关的环境变量,这样就不用去每次到文件内去配置相关的java_home和jre_home了。
b.james
将下载好的zip文件解压到你喜欢的目录下
1.启动
在bin文件下找到run.bat文件
显示成功,如图
2.使用telnet工具远程到4555端口,并添加用户
.telnet localhost 4555;
.输入登录用户及密码默认为root root
.adduser cfl cfl(添加用户用户名 密码)
.adduser cfltest cfltest
添加成功,如图
2.xml配置
在文件james-2.3.1\apps\james\SAR-INF下的 config.xml 文件,需要注意的时。该文件是在启动之后才出现的。
a.邮件服务器名的配置
<span style="font-size:18px;"><postmaster>Postmaster@localhost</postmaster>
如<postmaster>Postmaster@chenfanglin.com</postmaster>
<servernames autodetect="true" autodetectIP="true">
<servername>localhost</servername>
</servernames> </span>
b.注释mailet
<span style="font-size:18px;"><!--mailet match="RemoteAddrNotInNetwork=127.0.0.1">
<processor> relay-denied </processor>
<notice>550 - Requested action not taken: relaying denied</notice>
</mailet--!> </span>
maillet类似于servlet会对邮件做一些简单的处理,这里我们不去实现这个接口
c.打开身份验证authRequired
<span style="font-size:18px;"><authRequired>true</authRequired></span>
之上配置两个客户端 cfl@chenfanglin.comcfltest@chenfanglin.com .我在自己的foxmail做了一个简单的测试
配置账户
效果
1.发送邮件
2.接收邮件
3.部分问题
在执行telnet时有时会出现telnet不是内部命令,这是因为telnet服务器没有开启,在window功能项内启用该功能即可
如图
总结
总的来说,配置过程不是很困难。当然这只是最为基础的邮件搭建,为了也是去了解这样一个比较好的开源工具。我想扩展和更多的实现才是最令人期待。
Apache James搭建内网邮件服务器的更多相关文章
- linux搭建内网邮件服务器
一.配置发件服务器 1.1 根据现场IP,配置主机名 vi /etc/hosts 192.168.40.133 mail.test.com 将主机名更改为邮件服务器域名mail.test.com 1. ...
- Django + Apache + 树莓派 搭建内网微信公众号服务器
其实早在微信开放公众号开发平台时就想弄一个自己的公众号服务器,奈何对web服务器搭建和开发一窍不通,只是注册了一下开发者帐号,并没有采取行动,万恶的拖延症. 前一年,开始接触python,打开了神奇世 ...
- bind搭建内网DNS服务器架构(主从、子域授权、DNS转发器)
实验目的 模拟企业DNS服务架构服务器及原理 实验环境准备 实验架构图 实验设备 DNS服务器4台 主服务器master(centos8):IP_192.168.100.30, 从服务器slave(r ...
- 使用 Apache James 3.3.0(开源免费) 搭建内网电子邮件服务器(基于 Windows + Amazon Corretto 8)
电子邮件服务器,对于很多公司,都是需要的. 虽然现在很多人,使用 QQ .微信进行一对一的工作沟通,使用QQ 群.微信群进行多人沟通,但这些即时聊天工具,与电子邮件相比,仍有很多不足: a. 电子邮件 ...
- CentOS搭建内网NTP服务器
在企业内部网络,不是所有的服务器都可以连接外网,需要搭建一台可以连接外网的服务器用于NTP服务器 安装环境查看 安装ntp yum -y install ntp 修改配置文件 driftfile ...
- Centos7搭建内网DNS服务器
一.配置阿里云yum源 执行脚本配置阿里云的yum源,已配置yum源的可以忽略 #!/bin/bash # ******************************************** ...
- 使用 Apache James 3.3.0(开源免费) 搭建外网电子邮件服务器(基于 Windows + Amazon Corretto 8)
对于邮件服务器的安装,请先参阅: 使用 Apache James 3.3.0(开源免费) 搭建内网电子邮件服务器(基于 Windows + Amazon Corretto 8) https://www ...
- 持续集成(二)环境搭建篇—内网邮件server搭建
在我们的持续构建中,项目构建中出现错误提醒.或者开发者之间的沟通交流,进度汇报的事务,都是离不开一个通信工具.那就是邮件.在我们的项目开发中假设使用第三方的邮件平台,这肯定不是最好的选择.由于第三方的 ...
- 云计算之路-试用Azure:搭建自己的内网DNS服务器
之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...
随机推荐
- 应注意的Flex&Bison潜规则
1.Flex的二义性模式 语法分析器匹配输入时匹配尽可能多的字符串 如果两个模式都可以匹配的话,匹配在程序中更早出的模式. 针对这一点的理解,在语法分析文件当中,token的识别,应从特殊到一般的过程 ...
- HttpClient SSL示例(转)
原文地址: http://www.cnblogs.com/jerry19890622/p/4291053.html package com.jerry.httpclient; import java. ...
- mongo数据库基础操作
概念 一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,这里的表名叫collection,每个collection可以存放多个文档(document),每个文档都以BSON(binar ...
- Delphi-仿vb里的IIF函数
//Delphi 函数-IIF // 实例-ChkValue := IIF(TCheckBox(tsPzJz.Controls[i]).Checked, '); function IIF(lExp: ...
- u3d 2d序列动画代码
using UnityEngine; using System.Collections; public class AniSprite : MonoBehaviour { private float ...
- 2016 Multi-University Training Contest 1 GCD RMQ+二分(预处理)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5726 题意:有N(N <= 100,000),之后有Q(Q <= 100,000)个区间查询[ ...
- javaweb 在netbeans 上的部署问题
最近用netbeans去部署开发 javaweb程序!现总结一下自己的安装开发过程. 第一,在官网上下载netbeans时,有自带的tomcat,可以直接使用这个服务器,在我这儿这个自带的tomcat ...
- BitSet
前几天干了一件比较无聊的事儿——抄了一遍C++ STL bitset的源代码,把不懂的宏定义去掉了,发现(暂时)还能用,嘿嘿. #ifndef BITSET_H #define BITSET_H #i ...
- MYSQL系列1_MySQL的安装,可视化工具的使用,以及建库建表等
大家都知道MYSQL是开源的数据库,现在MYSQL在企业中的使用也越来越多,本人之前用过SQL SERVER数据库,因业务需要和自己的兴趣想要学习MYSQL,对于MYSQL,本人还是新手,请大家多多指 ...
- python学习笔记27(python中sys模块的使用)
sys.argv 命令行参数List,第一个元素是程序本身路径 sys.modules.keys() 返回所有已经导入的模块列表 sys.exc_info() 获取当前正在 ...