RHEL6安装telnet服务

这篇博文就说说RHEL6里面怎么安装telnet服务!纠结了太久,一般情况下我都是用yum安装的方法安装软件包的!因为要自己一个个去找各个包的依赖关系真的好麻烦。不过这里我就用rpm安装的方法安装下telnet服务!
首先,检查系统是否已经安装了telnet服务!
#rpm -q telnet-server
package telnet-server is not installed
进入系统存放软件包的文件夹找到telnet服务的rpm包
#find telnet(这里有个习惯,找软件包的时候进入包目录执行find命令加自己想找的包准确敲上软件包前面几个字母的然后就按“tab”键)找到软件包后如下:
# find telnet-server-0.17-47.el6.i686.rpm然后就ctrl+a吧find命令改成rpm就OK;
#rpm -ivh telnet-server-0.17-47.el6.i686.rpm
warning: telnet-server-0.17-47.el6.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing…                ########################################### [100%]
1:telnet-server          ########################################### [100%]

安装好后并不是就可以直接进行telnet了。还要进行配置。
telnet的配置文件默认就在/etc/xinetd.d/telnet 下。下面是查看结果:
[root@kutea xinetd.d]# more telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
#       unencrypted username/password pairs for authentication.
service telnet
{
flags           = REUSE
socket_type     = stream
wait            = no
user            = root
server          = /usr/sbin/in.telnetd
log_on_failure  += USERID
disable         = yes
}
[root@kutea xinetd.d]#
然后vi /etc/xinetd.d/telnet 把disable     =yes改成no!保存退出!重启xinetd守护进程;
[root@kutea xinetd.d]# service xinetd restart
Stopping xinetd:                                           [  OK  ]
Starting xinetd:                                           [  OK  ]
[root@kutea xinetd.d]#
到此,RHEL6下的telnet-srv已经安装完成!但是,由于出于安全的考虑。系统默认不会给root用户直接可以telnet进去系统的!不加于配置root用户直接登录不上系统!可以先用普通用户telnet进去主机再su切换成root用户!

结果如下图所示:

telnet for rhel6
telnet for rhel6
view telnet user
view telnet user

[root@localhost xinetd.d]# useradd kutea.net
[root@localhost xinetd.d]# passwd kutea.net
更改用户 kutea.net 的密码 。
新的 密码:
无效的密码: 过于简单化/系统化
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@localhost xinetd.d]#

RHEL6下搭建DNS服务器

DNS是大部分网络服务基石,DNS解释的主要作用就是让域名替换IP,即:人们通过记忆的域名找到该域名所对应的物理主机的真实地址,可以方便人记忆。所以说DNS解释是大部分网络服务的基石,可想而知,人记IP地址的话,最多可以记上几个!上一篇博文中介绍了RHEL6中搭建本地YUM库的方法。这里我们用上了。下面就用YUM软件包管理器的方法安装DNS服务器的所需组件。这里就是最简单的安装DNS服务,用的DNS服务的软件包是有名的BIND软件。这里和通常的不一样就是没有安装bind-chroot组件。所以配置可能会和通常的有点小小的差别。But,没关系,原理还是一样的。bind-chroot组件的作用就是可以改变DNS各种主要或者次要的默认配置文档的目录路径。

一、用yum安装bind软件。
检查系统中是否安装bind软件,
#rpm -qa | grep bind
bind-libs-9.7.3-8.P3.el6.i686 (这里没有安装bind主要软件包)
#yum install bind -y  (这里的-y参数是确认安装的意思)
[root@localhost ~]# rpm -qc bind      (查询bind软件包安装路径和各配置文档的具体路径,结果如下)

简单的DNS服务器只需要对DNS的主配置文档,正反向解释配置文档进行简单的配置就OK了!
上面列出的其中/etc/named.conf为主配置文档、正反向解释配置文档存放在目录/var/named/下。这里因为么有安装bind-chroot软件包。所以默认的解释文档就放在目录/var/named/下。
前提是修改本地DNS服务器的指向。这里我的RHEL6-Server的其中一张网卡IP地址为 192.168.3.15
# vi /etc/resolv.conf
search localdomain
nameserver 192.168.3.15

二、配置DNS主配置文档。
下面是RHEL6中DNS主配置文档默认的配置。我们只需进行小小的改动就可以了。
vi /var/named/chroot/etc/named.conf

options {
        listen-on port 53 { 192.168.3.15; };(更改服务器侦听53端口的网络IP地址,这是我的RHEL6其中一张网卡的IP地址。)
        listen-on-v6 port 53 { ::1; };
        directory       “/var/named”;
        dump-file       “/var/named/data/cache_dump.db”;
        statistics-file “/var/named/data/named_stats.txt”;
        memstatistics-file “/var/named/data/named_mem_stats.txt”;
        allow-query     { any; };(更改允许DNS请求的范围。这里为了方便就填写any,允许所有。你也可以控制只允许某些)
        recursion yes;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file “/etc/named.iscdlv.key”;
};

logging {
        channel default_debug {
                file “data/named.run”;
                severity dynamic;
        };
};

zone “.” IN {
        type hint;
        file “named.ca”;
};

//添加正向zone区域进行解释。这里得注重语法。不要错漏了末尾的“;”号。写错了是无法启动DNS服务的!

zone “kutea.net” IN {
 type master;  (DNS服务器类型,master表示主域名服务器区域)
 file “kutea.net.zone”;  (DNS服务器解释指向的配置文件,直接填写名字表明存放在默认路径/var/named/目录下)
 allow-update { none;};  (不允许域名进行动态更新)
};

//添加反向zone区域解释。这里的zone区域命名有严格的要求,一般反向IP断后面的都有严格遵守它的写法。

zone “3.168.192.in-addr.arpa” IN {
 type master;
 file “1.168.192.zone”;
 allow-update { none;};
};

include “/etc/named.rfc1912.zones”;

最后保存退出就OK了!

三、配置正反向解释文档。

#cd /var/named/
#cp -p named.localhost kutea.net.zone (加-p参数确保copy后的文件某些权限还和源文件一样)
#vi kutea.net.zone
添加以下简单代码:

dns     IN A    192.168.3.15   (解释域名dns.kutea.net指向的主机IP为192.168.3.15 即本地IP地址)
www     IN CNAME dns.kutea.net. (添加别名 ‘CNAME’表示别名 注意域名后面的‘.’不要错漏了!)

最后,保存退出!

#cp -p named.loopback 3.168.192.zone
#vi 3.168.192.zone

添加以下解释:

15      IN PTR  dns.kutea.net.

保存退出!
到此,RHEL6下简单的DNS服务器配置完成,接下来进行测试。

四、测试DNS服务器正反向的解释情况。

[root@localhost Packages]# nslookup www.kutea.net
-bash: nslookup: command not found
[root@localhost Packages]#
RHEL6最小安装默认没有安装nslookup功能的软件包,不要紧,我们安装下就OK。
找到系统中COPY的RHEL6镜像文件中的Packages目录。用find命令查找bind
#find bind (按tab键,显示如下)

[root@localhost Packages]# find bind-
bind-9.7.3-8.P3.el6.i686.rpm          bind-libs-9.7.3-8.P3.el6.i686.rpm
bind-chroot-9.7.3-8.P3.el6.i686.rpm   bind-utils-9.7.3-8.P3.el6.i686.rpm
bind-dyndb-ldap-0.2.0-7.el6.i686.rpm 
[root@localhost Packages]# find bind-
然后安装软件包bind-utils-9.7.3-8.P3.el6.i686.rpm即可。
#rpm -ivh bind-utils-9.7.3-8.P3.el6.i686.rpm

Preparing…                ########################################### [100%]
   1:bind-utils             ########################################### [100%]
[root@localhost Packages]# nslookup www.kutea.net
Server:         192.168.3.15
Address:        192.168.3.15#53

www.kutea.net   canonical name = dns.kutea.net.
Name:   dns.kutea.net
Address: 192.168.3.15

[root@localhost Packages]#

[root@localhost /]# ping www.kutea.net
PING dns.kutea.net (192.168.3.15) 56(84) bytes of data.
64 bytes from dns.kutea.net (192.168.3.15): icmp_seq=1 ttl=64 time=0.036 ms
64 bytes from dns.kutea.net (192.168.3.15): icmp_seq=2 ttl=64 time=0.044 ms
64 bytes from dns.kutea.net (192.168.3.15): icmp_seq=3 ttl=64 time=0.041 ms
^C
— dns.kutea.net ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2769ms
rtt min/avg/max/mdev = 0.036/0.040/0.044/0.006 ms
[root@localhost /]#

nslookup test
nslookup test

Oracle Linux 6.4 发布

Oracle Enterprise Linux是由Oracle公司提供支持的企业级Linux发行。据项目网站称,Oracle以Red Hat Linux做为起始,移除了Red Hat的商标,然后加入了Linux的错误修正。Oracle Enterprise Linux现在是,并旨在保持为,与Red Hat Enterprise Linux完全兼容。

Oracle Linux 6.4包含了诸多新功能和改进,最重要的改进要数新版Unbreakable Enterprise内核,大大提升了应用运行的性能和效率。其他重要改进包括:

支持XFS文件系统
Ksplice离线客户端:无需停机即可升级内核,现在新增了一个选项,允许在不直接联网的情况下安装Ksplice补丁。
DTrace for Oracle Linux,这是一个全面的动态跟踪框架。
详细信息:Announcing Oracle Linux 6.4
下载地址:http://edelivery.oracle.com/linux

诠释BIND软件下的zone文件

BIND软件中的区域文件是由named.conf文档指定的,RHEL6中,如果没有安装chroot组件包的话。named.conf默认存放位置在/etc/目录下。而named.conf默认指定的区域文件就在/var/named/
目录下。下面先来看下一个基本的正向解析区域文档。

@ IN SOA kutea.net. root.kutea.net. (
1999051401 ; Serial
3600 ; Refresh
300 ; Retry
3600000 ; Expire
3600 ) ; Minimum

(@ 这符号是缩写,表示 named.conf 中这个 zone 文档所对应的区域,SOA 后面的两个是该zone文件中的参数,是指定这个zone文件是在哪部主机(kutea.net)定义的,以及这个zone文件的负
责人(root)既是(root.kutea.net),亦可以看成是 root@kutea.net )

(Serial 代表这个zone 文件的版本,每当zone 文件内容有变动,name server 管理者就应该增加这个号码,因为slave 会将这个号码与其copy 的那份比对以便决定是否要再copy 一次(即进
行zone 传输))

(Refresh Slave server 每隔这段时间(秒),就会检查Master server 上的serial number。不过这里会发生一个问题就是,在master server 在update data 完成到slave server 来检查时再update 可能还有好一段时间,因此这段期间master/slave DNS server间zone files 就可能出现不一致。所以在Bind较新的版本中便加入”notify”功能,使用者在”named.conf” 设定中在需要的zone 中加入”notify”的设定,则master server在update 完成某个zone file 的data 后便会主动发个讯息(NOTIFY),借以通知该其它的slave servers,因此如果slave servers 也有支援这个”notify”功能时,接下来slave servers 马上就可以做zone 传输来更新数据)

zone “kutea.net” IN {
type master;
file “kutea.db”;
notify yes;
also-notify { 192.168.0.15; }; //指定slave server的IP地址
};

(Retry 当从服务器无法和主站进行串行检查时,要每隔几秒再试一次)

(Expire 当时间超过Expire 所定的秒数而slave server 都无法和master 取得连络,那么slave 会删除自己的这份copy)

(Minimum 代表这个zone 文件中所有record 的内定的TTL 值,也就是其它的DNS server cache 这个record时,最长不应该超过这个时间)

NS :
IN NS ns1.kutea.net. (name server, 用来指定操作的DNS服务器主机名称,NS记录是不允许用主机IP地址来表示的。有过域名注册和使用域名的朋友或许知道 域名商要求你指定你域名解释的NS服务器时,你用服务器IP地址来替换,就会报错。就是这个原因了。NS记录其本身就不允许用IP地址来制定)

A 和 AAAA :
A记录 address,即主机记录。(就是将一个域名对应IP地址的记录。)
例如下面的IPv4和IPv6指定A记录的格式是:
www IN A 122.128.109.86
mail IN AAAA CDCD:910A:2222:5498:8475:1FF1:3900:2027

PTR (其中这个记录是出现在反向解析zone文件中):
Pointer , 定义某一 IP 地址对应的 domain name ,就是将 IP 地址转换成主机的FQDN
86 IN PTR www.kutea.net. (注意别名记录后面有个小数点)

CNAME :
Canonical name , 可为同一部主机设定许多别名,例如cdn.kutea.net的别名可为www.kutea.net和ftp.kutea.net 因此所设定的别名都会连到同一台服务器上。

MX :
mail exchanger,设定区域中担任邮件服务器的主机,所有要送往那部机器的mail 都要经过mail exchanger 转送。注意 而数字则是该主机邮件传递时的优先次序,此值越低表示有越高的邮件处理优先权。
mail IN MX 3 ns.kutea.net.

来总结下,以上就是DNS服务器之BIND软件中的zone文档诠释。其中应该注意的是,上文提到的PTR记录出现在反向区域文档中。SOA授权的一些参数在正向反向都存在的,MX(邮件交换)记录中的邮件级别值越低就有越高的邮件处理优先权。

好啦,到此为止!

Linux RHEL6下架设YUM服务器

续上,RHEL6中挂载远程windows主机共享文件目录.下面介绍下RHEL6.3下架设YUM服务器。YUM简介查阅百度百科。该YUM服务器是基于FTP搭建的。所以,要在服务器上安装并启动FTP服务。安装过程在上篇博文,这里不再赘述。YUM客户端:安装某个软件时,先下载服务器上面记录的依赖性关系文件(可通过WWW、NFS或者FTP等方式),通过对服务器端下载的纪录数据进行分析,然后取得所有相关的软件,一次性下载所需软件包并解决各个软件包的依赖关系进行安装。YUM服务器端:在服务器上面存放了所有的RPM软件包,然后以相关的功能去分析每个RPM文件的依赖性关系,将这些数据记录成文件存放在服务器的某特定目录内。

其他不多说了,上图文:

1、查看ISO镜像文件的Discinfo信息。其实可以不指定这个,具体怎么说我也搞不太清楚。

查看ISO镜像文件的Discinfo信息
查看ISO镜像文件的Discinfo信息

2、编辑RHEL6下YUM服务器的配置文档,(之前我只做了RHEL系统的本地YUM配置,下面不删。方便大家查阅,其实YUM配置为服务器的话,大可不必配置什么本地YUM库了。命令可以解决。自然不会通过本例中的ftp服务下载软件包,执行   yum localinstall   即可):

编辑/etc/yum.repos.d目录下的yum服务器配置文件
编辑/etc/yum.repos.d目录下的yum服务器配置文件

3、其实配置就这么简单。不敢相信吧,就这样.RHEL6下面的YUM服务器就配置完成了。接下来就是客户机上测试使用YUM服务。linux系统默认最小安装没有安装ftp支持的组件。

客户机安装FTP-Client组件支持并测试与FTP可用性
客户机安装FTP-Client组件支持并测试与FTP可用性

4、客户机配置yum文档。(YUM源)

客户机配置yum源
客户机配置yum源

5、客户机测试并使用yum源:

client check yum list
client check yum list

客户机使用yum源
客户机使用yum源

到此,yum服务器的配置是测试使用完成。

RHEL6中挂载远程windows主机共享文件目录

前言:Linux系统挂在Windows系统的共享文件,有点离题了。看来主要是架设RHEL6下的YUM服务器来着。其关键就是该过程通过CIFS协议来协助完成工作的。CIFS协议简介在看下面。下面会通过挂载远程Windows主机Linux的ISO镜像文件在本地架设RHEL6本地yum库为实例作简单的运用。CIFS (Common Internet File System)通用Internet文件系统 (这里是关键了)在windows主机之间进行网络文件共享是通过使用微软公司自己的CIFS服务实现的。CIFS 是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机的服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议现在是局域网上用于服务器文件访问和打印的协议。象SMB协议一样,CIFS在高层运行,而不象TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。

1、设置windows共享文件目录(共享目录下有RHEL6.3系统镜像文件,下面实例会用到):

win share type
share type 共享给特定用户

2、RHEL6.3系统安装CIFS组件并挂载远程windows主机共享文件目录。(Linux系统默认最小化安装是没有安装这个组件包的):

安装CIFS组件包并挂载远程windows主机共享文件
安装CIFS组件包并挂载远程windows主机共享文件

3、安装RHEL6.3下安装VSFTP服务器并启动测试其可用性(用于架设基于FTP服务的YUM服务器):

RHEL6.3安装vsftp服务器并测试其可用性
RHEL6.3安装vsftp服务器并测试其可用性

4、挂载本地ISO镜像文件到ftp公用目录下(该镜像亦是远程windows主机共享出来的):

挂载本地ISO镜像文件到ftp公用目录下
挂载本地ISO镜像文件到ftp公用目录下

5、下面是RHEL6中架设YUM服务器的具体过程:

RHEL6系列之SSH、Telnet远程管理

说到Linux系统的远程管理也不少,其中最长用到的就是SSH类的远程管理工具了。RHEL下默认就安装了OpenSSH这个服务包的,据资料显示,OpenSSH这个软件包出现过漏洞。在一些版本下的。现在的OpenSSH软件包漏洞暂时没发现,所以,OpenSSH还算是很安全的,OpenSSH和Telent最大的区别就在于是否使用明文传输。Telnet是属于明文传输数据的协议。所以很不安全,强烈建议系统中都不要安装Telent-Server这个服务包。
安装服务组件包:上面说到,RHEL系统中默认就安装了OpenSSH这个服务包,但是默认没有安装SSH客户端使用的组件。本系列采用RHEL6下搭建简单的YUM库进行安装。

RHEL6下配置简单的本地YUM库
RHEL6下配置简单的本地YUM库

首先,实验的话,安装个SSH客户端组件包。
yum install openssh-clients
OpenSSH:
客户端配置文件是/etc/ssh/ssh_config 服务端的配置文件是/etc/ssh/sshd_config 。客户机没什么好说的,这里就只说说OpenSSH服务端的配置。
vim /etc/ssh/sshd_config (常用参数如下)

#Port 22 (服务端口,默认22,要修改去掉前面的#号改为其他端口即可)
#ListenAddress 0.0.0.0 (服务所侦听的IP地址,默认侦听所有网络IP地址。当然,只是IPv4)
#Protocol 2 (使用的协议,SSH有两种协议版本,现在一般都是用版本2的,侦听两个版本的协议用 ‘ Protocol 2,1 ’ 就行了)
PermitEmptyPasswords no (禁止空密码登录)
PermitRootLogin no (禁止root用户登录)
AllowGroups ssh guest / DenyGroups ssh guest (只 允许/拒绝 用户组ssh和guest组登录)
AllowUsers test root@192.168.8.115 / AllowUsers test root@192.168.8.115 (只 允许/拒绝 用户test和root登录从192.168.8.115上登录)
UseDNS yes (使用DNS查询SSH客户端)
X11Forwarding no (不允许SSH远程客户端运行系统中的 X11 程序)
PasswordAuthentication no (不使用口令认证 )
PubkeyAuthentication yes (使用非对称密钥认证 )
AuthorizedKeysFile .ssh/authorized_keys (用户认证使用的公钥)

service sshd restart 重启OpenSSH服务。OpenSSH的常用配置就这么多了,下面简单说下Telnet。这在linux平台下几乎算是被遗弃的东西了,个人感觉那是用得少之又少的服务。不知道有
木有朋友经常用telnet的方式访问“水木社区”的WEB服务。题外话,第一次看到我震惊了我。哈….

yum install telnet telnet-server (telnet和OpenSSH都有分服务端组件包和客户端组件包的,其实几乎所有网络服务都是这样分开的)
RHEL6下面只要安全启动, vim /etc/xinetd.d/telnet 文档,把disable = yes 修改为 disable = no 既可开启,(当然,服务还要启动的)
service xinetd restart 既重新启动xinetd服务。强烈建议安装了telnet服务后user修改为其他非root用户。最好不要装了,SSH够方便了。
好啦,RHEL6下的OpenSSH和Telnet就说到这里。

RHEL6搭建sendmail邮件服务器

RHEL6搭建sendmail邮件服务器,邮箱服务器一定要有DNS服务器的支持。没有邮箱服务器级别,sendmail邮箱服务器是工作不了的。下面是基于RHEL6下搭建sendmail邮箱服务器的DNS服务器配置。全部在一台RHEL6下面配置的。当然,DNS服务器也可以是别的机器,只要DNS服务器指定sendmail邮件服务器的IP地址就行了。RHEL中基于sendmail搭建的邮件服务器在RHEL5和RHEL6中有小小的区别。主要是认证方面是的区别,还有就是dovecot的主配置文件/etc/dovecot.conf 已经移动到 /etc/dovecot/dovecot.conf,且Dovecot 配置的其它部分已移动到 /etc/dovecot/conf.d/*.conf。

 配置DNS服务器。记得添加邮箱交换记录。下面是DNS主要配置文件添加的内容:
zone "rhel6.com" IN {
type master;
file "rhel6.com.zone";
};
zone "2.168.192.in-addr.arpa" IN {
type master;
file "2.168.192.zone";
};

include "/etc/named.rfc1912.zones";

rhel6.com.zone区域配置文件:

[root@localhost ~]# cat /var/named/chroot/var/named/rhel6.com.zone
$TTL 3H
@ IN SOA ns.rhel6.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.rhel6.com.
IN MX 0 mail.rhel6.com.
A 127.0.0.1
AAAA ::1
ns IN A 192.168.2.15
www IN A 192.168.2.15
mail IN A 192.168.2.15
pop3 IN A 192.168.2.15
smtp IN A 192.168.2.15
ftp IN A 192.168.2.15

反向区域 2.168.192.zone 配置文件:

[root@localhost ~]# cat /var/named/chroot/var/named/2.168.192.zone
$TTL 1D
@ IN SOA ns.rhel6.com. rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.rhel6.com.
A 127.0.0.1
AAAA ::1
PTR localhost.
15 IN PTR ns.rhel6.com.
15 IN PTR www.rhel6.com.
IN PTR mail.rhel6.com.
IN PTR pop3.rhel6.com.
IN PTR smtp.rhel6.com.
IN PTR ftp.rhel6.com.

配置简单的RHEL6中的本地yum库:

[root@localhost ~]# df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/mapper/VolGroup-lv_root
8780808 4045416 4289340 49% /
tmpfs 189992 0 189992 0% /dev/shm
/dev/sda1 495844 29864 440380 7% /boot
/dev/sr0 2962816 2962816 0 100% /media
[root@localhost ~]# cat /etc/yum.repos.d/mediayum.repo
[mediayum]
name=media yum server
baseurl=file:///media/
enabled=1
gpgcheck=0

如果还有其他yum源,停用其他yum源。利用RHEL6本地YUM源安装sendmail和dovecot软件包。

[root@localhost ~]# yum install dovecot* sendmail* -y

RHEL6下面基于sendmail和dovecot搭建的配置:

1)[root@localhost ~]# cd /etc/mail/

[root@localhost mail]# vim sendmail.mc /* 大概在52,53行左右,11*/

dnl #TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

sendmail配置文件是于(dnl为注释的,编辑去掉上面两行的注释。)

TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

/* 下面的大概在116行左右,修改Addr=127.0.0.1为Addr=0.0.0.0

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

修改为 DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

2)编辑access文档,使用这个文件限制或者允许Sendmail服务器为那些主机、网域或者IP端服务:

[root@localhost mail]# cat access
# Check the /usr/share/doc/sendmail/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc
# package.
#
# If you want to use AuthInfo with "M:PLAIN LOGIN", make sure to have the
# cyrus-sasl-plain package installed.
#
# By default we allow relaying from localhost...
Connect:localhost.localdomain RELAY
Connect:localhost RELAY
Connect:127.0.0.1 RELAY
Connect:rhel6.com RELAY

[root@localhost mail]#

3)编辑dovecot文档:

开启pop3服务,将这配置文件中的 #protocols = pop3 imap lmtp 的 # 号去掉。

大约38行,改成为:“login_trusted_networks = 0.0.0.0/0” /* 其中 0.0.0.0/0 是指定允许所有网段的客户登录。

4)编辑10-mail.conf文档:

编辑/etc/dovecot/conf.d/目录下的10-mail.conf,去掉改行注释“mail_location = mbox:~/mail:INBOX=/var/mail/%u ”(大约在25行)

5)将mc文件转换为cf格式和生成access.db的数据库文件:

到/etc/mail/目录下,“m4 sendmail.mc>sendmail.cf”命令,用m4程序将mc文件转换为cf格式的主文件,“makemap hash access.db < access”命令,生成access.db的数据库文件。

6)创建用户:

[root@localhost mail]# useradd user0
[root@localhost mail]# passwd user0
更改用户 user0 的密码 。
新的 密码:
无效的密码: WAY 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
[root@localhost mail]# useradd user1
[root@localhost mail]# passwd user1
更改用户 user1 的密码 。
新的 密码:
无效的密码: WAY 过短
无效的密码: 过于简单
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。

7)启动服务:

[root@localhost ~]# service sendmail start
正在启动 sendmail: [确定]
启动 sm-client: [确定]
[root@localhost ~]# service dovecot start
正在启动 Dovecot Imap: [确定]
[root@localhost ~]# service saslauthd start
正在启动 saslauthd: [确定]

8)客户端安装fixmail软件进行测试:

nslookup for mail client
nslookup for mail client
fixmail conf user1 test
fixmail conf user1 test
fixmail conf user0
fixmail conf user0
user0 sendmail to user1
user0 sendmail to user1
Sent successfully
Sent successfully

原创作品,转载请注明出处。多谢合作!