CentOS7.5下,搭建James邮件服务器
程序员文章站
2024-03-08 15:07:28
...
目录
一、下载James、JDK
James下载地址:http://james.apache.org/posts.html
JDK1.8下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
二、安装服务
-
安装JDK
1. 将下载好的JDK上传至CentOS中,解压
tar -zxf XXXX.tar.gz
2. 配置环境变量
#查看当前路径
pwd
#编辑环境文件
vim /etc/profile
##在文件末尾加入
export JAVA_HOME=你的JDK路径
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
-
安装James
1. 解压
tar -zxf XXXX.tar.gz
2. 进入目录下的bin文件夹,运行run.sh
#授权,可以运行
chmod +x run.sh phoenix.sh
#执行shell脚本----这里只是为了生成配置文件而已,等配置好了再执行一次就OK
sh run.sh
##结束
ctrl c
3. 进入james解压目录下的/apps/james/SAR-INF之后编辑confg.xml
主要有以下几个地方需要改动
第一个:
<postmaster>aaa@qq.com</postmaster>
改成
<postmaster>aaa@qq.com你的域名</postmaster>
第二个:
<servernames autodetect="true" autodetectIP="true">
<servername>localhost</servername>
</servernames>
改成
<servernames autodetect="false" autodetectIP="false">
<servername>XXXX.com</servername>
</servernames>
第三个:
注释掉这个部分
<mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor">
<processor> relay-denied </processor>
<notice>550 - Requested action not taken: relaying denied</notice>
</mailet>
第四个:
<dnsserver>
<servers>
<!--<server>127.0.0.1</server>-->
</servers>
<autodiscover>true</autodiscover>
<authoritative>false</authoritative>
<maxcachesize>50000</maxcachesize>
</dnsserver>
改成
<dnsserver>
<servers>
<server>114.114.114.114</server>
<server>你的DNS</server>
<server>你的域名(该域名必须能被解析)</server>
</servers>
<autodiscover>false</autodiscover>
<authoritative>false</authoritative>
<maxcachesize>50000</maxcachesize>
</dnsserver>
DNS可以使用
cat /etc/resolve.conf
查看
第五个:
所有的这个标签
<helloName autodetect="true">ndsoadsoa</helloName>
全部改成
<helloName autodetect="false">lanqiaozb.com</helloName>
注释掉
<authorizedAddresses>127.0.0.1/8</authorizedAddresses>
最后把管理员密码改下:
<administrator_accounts>
<account login="root" password="你的密码"/>
</administrator_accounts>
特别注意,如果想接收外网的邮件,别动端口号
三、下载配置bind
- 下载bind
yum install -y bind
- 修改/etc/named.conf文件
listen-on port 53 { 127.0.0.1; };
和
allow-query { 127.0.0.1; };
改成
listen-on port 53 { any; };
allow-query { any; };
- 修改/etc/named.rfc1912.zones
全删除之后只留下这一个内容
zone "test.com" IN {
type master;
file "test.localhost";
allow-update { none; };
};
- 复制一个文件
cp -a named.localhost 刚才zone中的文件名名字
例如:
cp -a named.localhost test.localhost
-
编辑一下
注意,域名后面都有 .
$TTL 1D
@ IN SOA lanqiaozb.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS dns.test.com.
MX 3 mail.test.com.
dns A 邮件服务器IP
mail A 邮件服务器IP
四、运行测试
运行一下:
#运行一开始的run.sh
sh run.sh ---进入控制模式
#或者运行phoenix.sh
sh phoenix.sh start ---守护运行模式
#再开一个窗口,运行
telnet localhost 4555
#如果没有telnet的话
yum install -y telnet
输入用户名密码,即上面改动的地方
添加几个用户试下邮件的收发
adduser zangsan zhangsan
adduser lisi lisi
quit
使用OutLook或者foxmail客户端登录一下
来试下外网发送:
让我们看下打印的日志是什么
日志上说不能连接SMTP服务器 : 121.51.19.150 ,端口25。
然后作者就看了下QQ的SMTP端口设置的时465端口,并非25号。
目前还没有找到很好的解决办法,所以希望大家也可以一起解决,如果有大佬就更好了。
上一篇: 详解Spring学习总结——Spring实现AOP的多种方式
下一篇: Java双括弧初始化操作技巧