Linux系统应用sendmail实验

合集下载

Linux1 邮件服务器 测试Sendmail

Linux1 邮件服务器  测试Sendmail

Linux1 邮件服务器测试Sendmail配置好每一种服务器后总要检验一下服务器的运行状态,查看是否设置正确。

检测服务器的运行可以通过进程检查、端口的测试及查看邮件日志等几种方式。

不过,所有的测试都是在前面配置过程中系统没有报错的情况下进行的,如果有报错的说明服务器的基本配置存在错误,要从配置文件开始查看起。

1.进程检查检验Sendmai服务器是否正常运行,首先要利用命令“ps –eaf |grep sendmail”查看Sendmai服务器是否有它自己的进程存在,如图9-43所示。

图9-43 进程检查以smmsp运行的进程为Starting sm-client(启用Sendmail客户端)时产生的进程。

如果有如上显示就表示进程启动正常。

2.端口的测试由于sendmail服务器占用的是SMTP 25端口,所以要检测服务器是否正常运行,还应该使用“netstat -tlunp”命令查看SMTP的端口号是否打开,如图9-44所示。

图9-44 查看端口状态输出中“tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN”信息,表示端口为所有网络接口打开,且处于正常的监听状态。

为了检测服务器的端口的可用性,使用telnet hostname port命令(port代表端口),登录到sendmail服务器所使用的25号端口。

登录后,使用介绍SMTP和邮件接收协议时使用的命令,测试收发邮件,测试时使用的用户为本服务器的用户。

由于sendmail默认的禁止转发功能会禁止邮件的转发,所以不能使用其它域的用户。

3.查看sendmail服务日志查看日志始终都是配置服务器的最好帮手,学会查看日志能节省许多时间。

邮件服务器的日志保存在/var/log/目录中,可使用ls –la /var/log/mail*命令查看所有的邮件服务的日志文件,如图9-45所示。

图9-45 查看sendmail服务日志文件文件maillog为系统现在正在使用的服务日志,而maillog.1等后缀为数字的文件中存放的则是旧的日志,系统一般会自动管理日志,不用管理员手动删除整理。

linux中sendmail邮件发送导致服务器延迟linux操作系统-电脑资料

linux中sendmail邮件发送导致服务器延迟linux操作系统-电脑资料

linux中sendmail邮件发送导致服务器延迟linux操作系统-
电脑资料
下面大家一起来看看关于linux中sendmail邮件发送导致服务器延迟问题的解决办法,希望例子对各位会带来帮助哦,。

在折腾自动备份到邮箱的脚本,执行中突然vps变得非常卡,ping了下发现vps的延迟飙升到了2000+,从阿里云后台的监控看上行带宽最大已经达到了1MB/s,
停止sendmail服务后延迟正常,重启后问题依旧,很容易就可以判断应该是邮件发送的附件体积较大占用大量网络资源导致的问题,尝试重启sendmail问题依旧,可以判断重启后邮件仍在发送的列队,会重新发送,平常很少使用mail命令,所以一番搜索后找到答案:代码如下复制代码
[root@abccccc ~]# sendmail -bp
/var/spool/mqueue (1 request)
-----Q-ID----- --Size-- -----Q-Time----- ------------Sender/Recipient-----------
s42CBBlP002728 175369339 Fri May 2 20:11
Total requests: 1
可以查看待发送的列队,看到已经的确是有列队的邮件,我们删除掉就好了,邮件列队文件存放
在/var/spool/mqueue/,删除该目录下的对应文件即可
代码如下复制代码
[root@abccccc ~]# cd /var/spool/mqueue
[root@abccccc mqueue]# ls
dfs42CBBlP002728 qfs42CBBlP002728
[root@abccccc mqueue]# rm -rf *。

senmail

senmail

Linux系列-Red Hat5平台下Sendmail邮件服务搭建Sendmail是具有较长历史并不断发展的邮件服务器软件,通过对Sendmail 服务器的配置管理,可以实现基本的邮件发送功能;dovecot服务器实现了POP3协议,可以与Sendmail服务器配合工作,实现用户对邮件的收取功能。

本次我们会看到Sendmail和dovecot结合运用的实例。

本次分三部分说,先来了解一下sendmail.第一部分:sendmail的安装、控制启动及主要配置文件一.Sendmail安装Sendmail服务器在RHEL5系统中是默认安装的,完整的安装应包括四个软件包。

如果没安装或是重新安装,可以使用rpm命令进行手动安装。

如下:1>.sendmail //是sendmail服务器程序的安装包,是最重要的软件包2>.m4 //包括了配置sendmail服务器的必要工具3>.sendmail-cf //包括了重新配置sendmail服务器的必要配置文件4>.sendmail-doc //包括了sendmail服务器的说明文档注意:Sendmail服务程序在安装后并没有设置在系统启动时自动运行,所以我们还得使用chkconfig命令设置它在系统启动时自动启动二.Sendmail的控制启动在启动sendmail服务器程序之前,需要先确保运行sendmail服务器的主机有完整的域名,在internet上能够解析到,并且有相应的邮件交换(MX)记录以及能够反向解析。

Sendmail服务器使用名为sendmail的启动脚本进行程序的启动与停止,此脚本位于“/etc/init.d/”目录中。

也可以使用service命令调用sendmail脚本执行sendmail服务器的启动和停止操作。

三.Sendmail主要配置文件1. sendmail服务器的配置目录sendmail服务器使用的所有配置文件都保存在目录“/etc/mail”中,该目录中保存了sendmail服务器运行所需要的配置文件以及库文件等多种类型的文件,如下:[root@mail ~]# ls /etc/mailaccess helpfile Makefile submit.cf virtusertableaccess.db local-host-names sendmail.cf submit.cf.bak virtusertable.db domaintable mailertable sendmail.mc submit.mcdomaintable.db mailertable.db spamassassin trusted-users2. 配置文件sendmail.cf和sendmail.mcSendmail服务器的主配置文件是sendmail.cf。

Linux1 邮件服务器 配置Sendmail

Linux1 邮件服务器  配置Sendmail

Linux1 邮件服务器配置Sendmail完成Sendmail安装操作后,接下来以开放Sendmail监听端口与设置收件计算机名称、使用MTA Relay权限设置/etc/mail/access为目的来对Sendmail邮件服务器进行配置。

1.开放监听端口及设置收件计算机名称事实上Red Hat Enterprise Linux5.4在安装Sendmail后默认已经启动Sendmail (端口25处于LISTEN状态),只是它仅接收来自本计算机的MTA要求,验证此结果可在终端下输入“netstat -tulnp”命令,并按【回车】键查阅,如图9-19所示。

图9-19 查看Sendmail默认端口状态由图9-19可查看到端口25处于LISTEN状态,且只监听127.0.0.1这个lookup 接口。

所以用户的重点就是如何将监听的接口开启到整个Internet上,否则它是无法接收来自Internet的邮件的。

虽然配置文件在/etc/mail/sendmail.cf中,但建议不要手动修改它,应该修改的是sendmail.mc文件。

这个文件设置项目的基本语法为“设置组件(`设置项目’,`参数一’,`参数二’)”。

提示每个设置项目与参数左边使用的符号均为数字键1左边的引用键(quote),右边则是单引号。

这个文件的设置项目用户可以参考/m4/readme.html网页说明。

若要开放Sendmail对整个Internet的监听功能,只需要在终端下输入“vi /etc/mail/sendmail.mc”命令,按【回车】键进入sendmail.mc文件的编辑界面。

然后按“i”,切换到插入模式,将第116行中“Addr=127.0.0.1”改为“Addr=0.0.0.0”,按【ESC】键退出插入模式,最后按“:”并输入wq”按【回车】键保存配置,如图9-20所示。

图9-20 开放Sendmail监听功能修改sendmail.mc参数后,在使用m4宏文件生成器和修改后的配置创建新的sendmail.cf配置文件之前,还需要使用mv命令对原有的设置文件进行备份,这一点很重要,如图9-21所示。

linux mail 用法

linux mail 用法

linux mail 用法在Linux操作系统中,Mail是一个强大的命令行工具,用于发送和接收电子邮件。

它提供了一个简单而有效的方式来管理个人和企业的电子邮件通信。

下面是关于Linux Mail用法的详细说明。

1. 安装Mail:如果你的Linux系统上还没有安装Mail,请使用适当的包管理器来安装它。

例如,对于Debian或Ubuntu系统,可以使用以下命令安装Mail:```sudo apt-get install mailutils```2. 配置Mail:安装完毕后,首先需要配置Mail以便正确发送和接收邮件。

Mail的配置文件位于`/etc/mail.rc`或`~/.mailrc`文件中。

你可以使用文本编辑器打开一个或两个文件来进行配置。

3. 发送电子邮件:要发送电子邮件,可以使用以下命令:```echo "邮件正文内容" | mail -s "邮件主题" 收件人邮箱地址```例如,要发送一封主题为"Hello"的邮件给`*******************`,可以使用以下命令:```echo "这是一封测试邮件,请勿回复。

" | mail -s "Hello"*******************```你也可以在文件中编写邮件正文内容,并使用`-a`选项添加附件。

4. 接收邮件:Mail还可以用于接收电子邮件。

你可以使用以下命令检查新邮件:```mail```这将显示所有新邮件的列表。

你可以使用数字来查看特定邮件的内容,例如`mail 1`将查看第一封邮件的详细信息。

要删除指定的邮件,可以在邮件列表中使用`d`命令,然后按照提示操作。

5. 邮件管理:Mail提供了一些命令和快捷键来管理邮件。

例如:- `d`:删除选定的邮件- `u`:标记选定的邮件为未读- `s`:保存选定的邮件到一个文件- `/`:搜索邮件列表中的关键词这些命令使得邮件的管理变得更加方便。

Linux1 邮件服务器 配置sendmail.cf

Linux1 邮件服务器  配置sendmail.cf

Linux1 邮件服务器配置sendmail.cfsendmail.cf文件是sendmail每次启动时要读取的配置文件。

它包含了sendmail 启动时必须的信息。

它列出了所有重要文件的位置,指定了这些文件的缺省权限。

包含了一些影响sendmail行为的选项。

更重要的是,它还包含了地址重写(rewriting addresses)规则。

sendmail.cf文件是按行组织的。

每一个配置命令行都是由命令加上特定参数构成的,例如命令V的参数是一个数字,而F命令的参数则是字母w,再加上绝对路径,如图9-35中第70、91行所示。

图9-35 sendmail.cf配置命令行提示在对sendmail.cf文件进行配置时,必须保证每个配置命令行只能有一个命令,且位于该命令行行首(不存在空格),否则配置将不生效。

在该文件中如果行首的第一个字符为“#”,表示该行为注释;如果第一个字符为空格则表示该行为上一行的延续。

除此之外,行首的第一个字符均为命令,但是命令同变量或值之间没有间隔。

这种格式便于sendmail进行分析,但令很难使用户读懂。

下面介绍一下sendmail.cf配置文件中的命令。

1.D(定义宏)命令D定义宏并为其赋值。

当宏被定义之后,它就负责提供提供其存储的值给sendmail.cf文件中其他的命令使用或者直接提供给sendmail使用。

宏的名字可以是任何单字符,小写的用于sendmail内部宏,用户创建的宏只能使用大写字母作为名字。

一些sendmail的内部宏也在sendmail.cf文件里定义。

例如在配置文件中的第148、149两行定义了宏D和内部宏n,如图9-36所示。

图9-36 定义宏D和内部宏n那么宏D的值为,宏n的值为MAILER-DEAMON。

但若要使用宏的值时,还必须在宏的名字前面加上符号“$”,以这种形式来引用它的值。

例如图9-37配置文件中第150行设置。

图9-37 应用宏的值如果宏w的值为主机名moon,此时宏j的值就为,这便是本主机的全称名(FQDN)。

linux下实现两台不同域名的邮件服务器互发邮件

linux下实现两台不同域名的邮件服务器互发邮件

若有疑问,联系我,帮你答疑!实现两台不同域名的邮件服务器互相发送邮件一、实验环境两台linux服务器(Red Hat Enterprise Linux),主机名分别是RHEL1和RHEL2,一台物理机win7IP:RHEL1:192.168.1.51/24 gateway:192.168.1.1RHEL2:192.168.1.52/24 gateway:192.168.1.1Win7:192.168.1.104/24 gateway:192.168.1.1域:RHEL1:RHEL2:邮件客户端:Outlook 2010两台linux的防火墙、selinux都已关闭二、主机名的修改先在RHEL1上修改:要做三处修改,很重要!(1)[root@RHEL1 ~]# hostname (2)[root@RHEL1 ~]# vi /etc/sysconfig/networkNETWORKING=yesNETWORKING_IPV6=yesHOSTNAME=GATEWAY=192.168.1.1(3)[root@RHEL1 ~]# vi /etc/hosts127.0.0.1 localhost.localdomainlocalhost::1 localhost6.localdomain6 localhost6192.168.1.51 RHEL1在RHEL2上做类似修改全部修改完毕,重启!三、在RHEL1上配置DNS服务器(1)安装bind[root@RHEL1 ~]# mkdir /mnt/cdrom[root@RHEL1 ~]# mount /dev/hdc /mnt/cdrommount: block device /dev/hdc is write-protected, mounting read-only[root@RHEL1 ~]# cd /mnt/cdrom/Server[root@RHEL1 Server]# find -name "bind*"./bind-9.3.4-10.P1.el5.i386.rpm./bind-chroot-9.3.4-10.P1.el5.i386.rpm./bind-devel-9.3.4-10.P1.el5.i386.rpm./bind-libbind-devel-9.3.4-10.P1.el5.i386.rpm./bind-libs-9.3.4-10.P1.el5.i386.rpm./bind-sdb-9.3.4-10.P1.el5.i386.rpm./bind-utils-9.3.4-10.P1.el5.i386.rpm[root@RHEL1 Server]# rpm -ivh bind-9.3.4-10.P1.el5.i386.rpm(依次安装上面几个RPM包)最后安装:[root@RHEL1 Server]# rpm -ivh caching-nameserver-9.3.4-10.P1.el5.i386.rpm (2)在RHEL1上自定义正向和反向区域[root@RHEL1 Server]# cd /var/named/chroot/etc/[root@RHEL1 etc]# ll婊璁?16-rw-r--r-- 1 root root 405 06-12 18:16 localtime-rw-r----- 1 root named 1195 2009-01-06 named.caching-nameserver.conf-rw-r----- 1 root named 955 2009-01-06 named.rfc1912.zones-rw-r----- 1 root named 113 06-14 10:18 rndc.key[root@RHEL1 etc]# cp -p named.caching-nameserver.confnamed.conf[root@RHEL1 etc]# vinamed.conf修改为如下内容(红色出为修改过的):options {listen-on port 53 { any; };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";// Those options should be used carefully because they disable port// randomization// query-source port 53;// query-source-v6 port 53;allow-query { any; };};logging {channeldefault_debug {file "data/named.run";severity dynamic;};};viewlocalhost_resolver {match-clients { any; };match-destinations { any; };recursion yes;include "/etc/named.rfc1912.zones";};保存退出[root@RHEL1 etc]# vi named.rfc1912.zones添加以下内容:zone "" IN {type master;file ".hosts";allow-update { none; };};zone "1.168.192.in-addr.arpa" IN {type master;file ".rev";allow-update { none; };};保存退出(3)建立正向和反向区域数据库文件[root@RHEL1 etc]# cd /var/named/chroot/var/named[root@RHEL1 named]# cp -p localhost.zone .hosts[root@RHEL1 named]# cp -p named.local .rev[root@RHEL1 named]# vi .hosts修改为以下内容:$TTL 86400@ IN SOA . . (42 ; serial (d. adams)3H ; refresh15M ; retry1W ; expiry1D ) ; minimumIN NS .IN MX .ns IN A 192.168.1.51mail IN A 192.168.1.51[root@RHEL1 named]# vi .rev修改反向区域数据库文件为以下内容:$TTL 86400@ IN SOA . . ( 1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; MinimumIN NS .IN NS .51 IN PTR .51 IN PTR .52 IN PTR .52IN PTR .(4)配置DNS客户端[root@RHEL1 named]# vi /etc/resolv.conf修改为:search nameserver 192.168.1.51重启DNS服务:设置开机启动,执行以下命令[root@RHEL1 named]# ntsysv用空格键选中named进程,tab键切换“确定”按钮保存设置!四、安装sendmail[root@RHEL1 named]# cd /mnt/cdrom/Server[root@RHEL1 Server]# find -name "sendmail*"./sendmail-8.13.8-2.el5.i386.rpm./sendmail-cf-8.13.8-2.el5.i386.rpm./sendmail-devel-8.13.8-2.el5.i386.rpm./sendmail-doc-8.13.8-2.el5.i386.rpm[root@RHEL1 Server]# rpm -ivh sendmail-8.13.8-2.el5.i386.rpm(依次安装以上各个RPM包)在RHEL2上安装sendmail:[root@RHEL2 ~]# mkdir /mnt/cdrom[root@RHEL2 ~]# mount /dev/hdc /mnt/cdrommount: block device /dev/hdc is write-protected, mounting read-only [root@RHEL2 ~]# cd /mnt/cdrom/Server[root@RHEL2 Server]# find -name "sendmail*"./sendmail-8.13.8-2.el5.i386.rpm./sendmail-cf-8.13.8-2.el5.i386.rpm./sendmail-devel-8.13.8-2.el5.i386.rpm./sendmail-doc-8.13.8-2.el5.i386.rpm[root@RHEL2 Server]# rpm -ivh sendmail-8.13.8-2.el5.i386.rpm(依次安装以上各个RPM包)五、在RHEL1上建立RHEL2的DNS服务增加区域[root@RHEL1 Server]# cd /var/named/chroot/etc/[root@RHEL1 etc]# vi named.rfc1912.zones添加以下记录:zone "" IN {type master;file ".hosts";allow-update { none; };};创建.hosts的区域数据库文件[root@RHEL1 etc]# cd /var/named/chroot/var/named[root@RHEL1 named]# ll婊璁?44drwxrwx--- 2 named named 4096 06-14 10:50 data-rw-r----- 1 root named 198 2009-01-06 localdomain.zone-rw-r----- 1 root named 195 2009-01-06 localhost.zone-rw-r----- 1 root named 427 2009-01-06 named.broadcast-rw-r----- 1 root named 1892 2009-01-06 named.ca-rw-r----- 1 root named 424 2009-01-06 named.ip6.local-rw-r----- 1 root named 426 2009-01-06 named.local-rw-r----- 1 root named 427 2009-01-06 named.zerodrwxrwx--- 2 named named 4096 2004-07-27 slaves-rw-r----- 1 root named 244 06-14 10:41 .hosts-rw-r----- 1 root named 451 06-14 10:43 .rev[root@RHEL1 named]# cp -p .hosts .hosts[root@RHEL1 named]# vi .hosts修改为以下内容:$TTL 86400@ IN SOA . . (42 ; serial (d.adams)3H ; refresh15M ; retry1W ; expiry 1D ) ; minimumIN NS .IN MX 10 .ns IN A 192.168.1.52mail IN A 192.168.1.52保存退出,重启DNS服务:[root@RHEL1 named]# service named restart六、在RHEL2上修改DNS客户端配置文件,使指向192.168.1.51[root@RHEL2 Server]# vi /etc/resolv.conf修改为以下内容:search nameserver 192.168.1.51保存退出七、验证DNS的配置[root@RHEL1 named]# nslookup> Server: 192.168.1.51Address: 192.168.1.51#53Name: Address: 192.168.1.51> 192.168.1.51Server: 192.168.1.51Address: 192.168.1.51#5351.1.168.192.in-addr.arpa name = .51.1.168.192.in-addr.arpa name = .> Server: 192.168.1.51Address: 192.168.1.51#53Name: Address: 192.168.1.52> 192.168.1.52Server: 192.168.1.51Address: 192.168.1.51#5352.1.168.192.in-addr.arpa name = .52.1.168.192.in-addr.arpa name = .经验证,DNS可以正向、反向解析DNS配置得到验证!八、编辑两台sendmail服务器的宏配置文件sendmail.mc在RHEL1上:[root@RHEL1 named]# cd /etc/mail[root@RHEL1 mail]# vi sendmail.mc找到下面一行:DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl 修改为:DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl [root@RHEL1 mail]# m4 sendmail.mc>sendmail.cf在RHEL2上:做与上面相同的修改[root@RHEL2 mail]# m4 sendmail.mc>sendmail.cf九、编辑local-host-names数据库文件在RHEL1上:[root@RHEL1 mail]# vi local-host-names修改为:在RHEL2上:[root@RHEL2 mail]# vi local-host-names修改为:十、编辑access数据库文件在RHEL1上:[root@RHEL1 mail]# vi access修改为:Connect:localhost.localdomainRELAYConnect:localhostRELAYConnect:127.0.0.1 RELAYConnect:192.168.1 RELAYConnect: RELAYConnect: RELAYConnect: RELAYConnect:RHEL1 RELAY保存退出[root@RHEL1 mail]# makemap hash access.db<access重启sendmail[root@RHEL1 mail]# servicesendmail restart在RHEL2上:[root@RHEL2 mail]# vi access修改为:Connect:localhost.localdomainRELAYConnect:localhost RELAYConnect:127.0.0.1 RELAYConnect:192.168.1 RELAYConnect: RELAYConnect: RELAYConnect: RELAYConnect:RHEL2 RELAY保存退出[root@RHEL2 mail]# makemap hash access.db<access重启sendmail[root@RHEL2 mail]# servicesendmail restart十一、配置dovecot服务,开启pop3服务在RHEL1上:安装提供dovecot服务的rpm包[root@RHEL1 ~]# cd /mnt/cdrom/Server[root@RHEL1 Server]# rpm -ivh perl-DBI-1.52-2.el5.i386.rpm[root@RHEL1 Server]# rpm -ivh mysql-5.0.22-2.1.i386.rpm[root@RHEL1 Server]# rpm -ivh postgresql-libs.7.4.6-1.RHEL4.2.i386.rpm[root@RHEL1 Server]# rpm -ivh dovecot-1.0-1.2.rc15.el5.i386.rpm配置[root@RHEL1 Server]# cd /etc[root@RHEL1 etc]# vidovecot.conf找到#protocols = imapimaps pop3 pop3s一行修改为protocols = imapimaps pop3 pop3s保存退出,启动dovecot服务,设置开机启动[root@RHEL1 etc]# service dovecot start[root@RHEL1 etc]# ntsysv空格键选中ntsysv进程,tab键切换保存退出在RHEL2上:[root@RHEL2 ~]# cd /mnt/cdrom/Server/[root@RHEL2 Server]# rpm -ivh perl-DBI-1.52-2.el5.i386.rpm[root@RHEL2 Server]# rpm -ivh mysql-5.0.22-2.1.i386.rpm[root@RHEL2 Server]# rpm -ivh postgresql-libs.7.4.6-1.RHEL4.2.i386.rpm [root@RHEL2 Server]# rpm -ivh dovecot-1.0-1.2.rc15.el5.i386.rpm[root@RHEL2 Server]# cd /etc[root@RHEL2etc]# vidovecot.conf找到#protocols = imapimaps pop3 pop3s一行修改为protocols = imapimaps pop3 pop3s[root@RHEL2etc]# service dovecot start[root@RHEL2etc]# ntsysv十二、测试RHEL1、RHEL2、win7之间的连通性分别在RHEL1和RHEL2上添加用户zhangsan,lisi,并创建密码[root@RHEL1 ~]# useraddzhangsan[root@RHEL1 ~]# passwdzhangsan[root@RHEL2 etc]# useraddlisi[root@RHEL2 etc]# passwdlisi是否能互相ping通[root@RHEL1 ~]# ping 192.168.1.52PING 192.168.1.52 (192.168.1.52) 56(84) bytes of data.64 bytes from 192.168.1.52: icmp_seq=1 ttl=64 time=0.850 ms64 bytes from 192.168.1.52: icmp_seq=2 ttl=64 time=0.258 ms……[root@RHEL1 ~]# ping 192.168.1.104(104为物理机win7的IP)PING 192.168.1.104 (192.168.1.104) 56(84) bytes of data.64 bytes from 192.168.1.104: icmp_seq=1 ttl=64 time=0.456 ms64 bytes from 192.168.1.104: icmp_seq=2 ttl=64 time=0.320 ms……[root@RHEL2 etc]# ping 192.168.1.51PING 192.168.1.51 (192.168.1.51) 56(84) bytes of data.64 bytes from 192.168.1.51: icmp_seq=1 ttl=64 time=8.38 ms64 bytes from 192.168.1.51: icmp_seq=2 ttl=64 time=0.347 ms……[root@RHEL2 etc]# ping 192.168.1.104PING 192.168.1.104 (192.168.1.104) 56(84) bytes of data.64 bytes from 192.168.1.104: icmp_seq=1 ttl=64 time=0.372 ms64 bytes from 192.168.1.104: icmp_seq=2 ttl=64 time=0.369 ms……C:\Users\guoyin>ping 192.168.1.51正在Ping 192.168.1.51 具有32 字节的数据:来自192.168.1.51 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.51 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.51 的回复: 字节=32 时间<1ms TTL=64……C:\Users\guoyin>ping 192.168.1.52正在Ping 192.168.1.52 具有32 字节的数据:来自192.168.1.52 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.52 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.52 的回复: 字节=32 时间<1ms TTL=64……在win7上打开C:\windows\system32\drivers\etc\hosts添加以下两条主机记录:192.168.1.51 192.168.1.52 C:\Users\guoyin>ping 正在Ping [192.168.1.51] 具有32 字节的数据: 来自192.168.1.51 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.51 的回复: 字节=32 时间<1ms TTL=64……C:\Users\guoyin>ping 正在Ping [192.168.1.52] 具有32 字节的数据: 来自192.168.1.52 的回复: 字节=32 时间<1ms TTL=64来自192.168.1.52 的回复: 字节=32 时间<1ms TTL=64……经测试,ping ip和域名都能ping通!十三、在outlook上互发邮件验证(1)在outlook上建立两个邮件账户(步骤略)账户信息如下:zhangsanlisi(2)发送测试邮件先用zhangsan@给lisi@发送一份测试邮件,结果显示:zhangsan的”已发送邮件”如下,说明zhangsan给lisi发送成功再看lisi的收件箱中,显示如下,说明lisi收到了zhangsan发来的邮件再用lisi@给zhangsan@发送一封测试邮件,结果如下:lisi的“已发送邮件”中显示如下,说明lisi给zhangsan发送邮件成功同样,在zhangsan的收件箱中可以看到lisi发来的邮件,说明lisi给zhangsan发送成功综上:邮件测试工作完成。

SMTP服务器的安装与配置

SMTP服务器的安装与配置

实验一、SMTP服务器的安装与配置1.实验目的通过对Sendmail服务器系统的安装与配置实验,加深对 SMTP协议的理解,掌握Sendmail邮件服务器的安装与配置方法,为将来从事网络工程建设打下基础。

2.实验要求下载Sendmail服务器源代码,在Linux 环境下,编译生成执行代码,并进行安装和配置,然后创建二个测试帐号,分别在本机和网络中其它计算机上使用测试帐号发送邮件,测试Sendmail服务器系统工作是否正常。

3.实验步骤3.1 实验准备1、系统要求●系统配置建议CPU 为PIII 900MHZ以上, 内存128MB以上,磁盘可用空间100MB以上,具有10M/100M网卡,操作系统采用 Red Hat 6.0 版本或更高版本。

●编译器环境系统必须装有ANSI-C编译器,推荐使用来自Free Software Foundation (FSF)的GNU C compiler (GCC)。

2、下载源代码Sendmail最新版本的源代码可以从或其镜像站点下载,本书附带的光盘上包括了 sendmail 8.13.0版本的原代码。

3、源代码解包将下载的安装包sendmail-8.13.0.tar.gz复制到某一个用户目录下(下面以/usr/src/目录为例介绍),然后用以下命令解压:$ cd /usr/src$ tar xvfz sendmail-8.13.0.tar.gz将会在/usr/src/目录下创建/sendmail-8.13.0子目录,该目录下包含sendmail的所有的源代码和相关文档。

3.2 安装设置首先用超级用户在/etc下创建mail目录(如果原来安装过sendmail,则可先把原来的mail目录备份:# mv mail mail.bak):# cd /etc# mkdir mail进入安装包所在目录:# cd /usr/src/sendmail-8.13.0# cd cf/cf编辑generic-linux.mc.mc 文件,在该文件中间增加以下三行,将避免在发送邮件时对发送地址和接收地址进行DNS解析:FEATURE (accept_unresolvable_domains)FEATURE (nocanonify)define( ‘confDONT_PROBE_INTERFACES' )选择与安装机器上操作系统(这里选LINUX)相同的配置文件:# cp generic-linux.mc sendmail.mc生成配置文件sendmail.cf,submit.cf ,并复制到安装目录/etc/mail:# make install-cf3. 3 编译# cd /usr/src/sendmail-8.13.0# make3. 4 安装把编译后的执行文件sendmail 复制到/usr/sbin/, 把配置文件sendmail.cf,submit.cf,statistics,helpfile 等拷贝到目录/etc/mail # make install安装完成后,可以清除编译生成的中间文件(.o),以释放磁盘空间:$ make clean3. 5 配置Sendmail 的配置文件放在/etc/mail/sendmail.cf中, 配置文件比较复杂,不过一般只需要修改几个地方就可以了,其他选项都使用默认设置。

sedmail配置过程

sedmail配置过程

实验步骤一、准备工作1、服务器端ip:192.168.1.1DNS:192.168.1.1主机名:www hostname wwwvi /etc/sysconfig/network本机名改为:www创建DNS解析安装bind和caching-nameserver包并进行相关设置如:域名为注意两个解析文件的位置二、配置sendmail1、安装sendmail所需软件包rpm -ivh sendmail*.rpm--force --nodeps如:m4之类的2、默认工作mulu/etc/mail/3、配置local-host-names添加域名4、设置access添加被允许服务的网段如:192.168.1 RELAY 并且生成新的访问kumakemap hash access.db < access5、设置别名文件:/etc/aliases看自己喜欢命名6、创建邮件用户1)、创建mailuser组groupadd mailuser2)、创建用户并将其加入mailuser组如:useradd -g mailuser -s /sbin/nologin tom3)、为其设置密码passwd tom7、配置sendmail.mc 文件,启用邮件用户认证功能第48\49行去掉注释dnl第105行将127.0.0.1改为0.0.0.0保存退出8、应用改动m4 sendmail.mc > sendmail.cf9、试启动sendmail服务service sendmail start 测试25端口netstat -ntpl | grep 2510、安装pop3和imap4协议应用软件为dovecot默认没有安装,建议采用图形方式安装如:system-config-packages否则,只能用rpm安装rpm -ivh dovecot*.rpm编辑配置文件,添加pop3 pop3s友情提示用空格分离,不要用table键然后,启动service dovecot start 测试110端口netstat -ntpl | grep 110客户端测试请用outlook三、web方式使用sendmail服务器端1、准备环境禁用SElinuxvi/etc/sysconfig/selinux将SELINUX=enforcing改为= disabled禁用后,要重启主机再安装mysql和所有的perl 软件包2、安装openwebmail软件3、建立dbm.conf文件vi/var/www/cgi-bin/openwebmail/e tc/dbm.conf内容:dbm_ext.dbdbmopen_ext .dbdbmopen_haslock no保存退出4、初始化openwebmail/var/www/cgi-bin/openwebmail /openwebmail-tool.pl --init5、启动apache网页服务器service httpd start6、客户端访问打开浏览器/cgi-bin/op enwebmail/openwebmail.pl按要求输入用户名和密码。

linux 发送邮件方法

linux 发送邮件方法

linux 发送邮件方法Linux 发送邮件方法在Linux系统中,我们可以使用各种工具来发送邮件。

本文将介绍如何使用命令行和邮件客户端来发送邮件,以及如何配置SMTP服务器和邮件检查程序。

一、使用命令行发送邮件1. 安装发送邮件的工具首先,需要安装sendmail或者Postfix来发送邮件。

在大多数Linux发行版中,sendmail或者Postfix已经预装了,如果没有安装,可以使用包管理工具进行安装。

2. 配置SMTP服务器在开始之前,我们需要配置SMTP服务器。

在大多数情况下,ISP(互联网服务提供商)会提供SMTP服务器的配置信息。

您可以在网上搜索相关信息或咨询ISP获取相关配置信息。

3. 编写邮件内容在发送邮件之前,需要先编辑邮件内容。

您可以使用文本编辑器(如vi、nano等)在终端中创建新文件,并在文件中编写您的邮件内容。

请确保邮件内容清晰、简洁,以提高阅读体验。

4. 使用命令行发送邮件发送邮件的命令行工具有两个常用的选项,分别是mail和sendmail。

具体使用哪一个取决于您的系统配置和个人偏好。

如果您使用的是mail命令,请使用以下命令发送邮件:mail -s [主题] [收件人邮箱] < [邮件内容文件名]如果您使用的是sendmail命令,请使用以下命令发送邮件:sendmail [收件人邮箱] < [邮件内容文件名]请注意,其中[主题]是您邮件的主题,[收件人邮箱]是您要发送给的邮箱地址,[邮件内容文件名]是您保存邮件内容的文件名。

5. 输入邮件密码当您运行发送命令时,系统可能会提示您输入SMTP服务器的用户名和密码。

请按照提示输入正确的用户名和密码,以便成功发送邮件。

二、使用邮件客户端发送邮件除了命令行工具,您还可以使用邮件客户端发送邮件。

1. 安装邮件客户端Linux系统提供了多种邮件客户端,您可以根据需求选择适合自己的客户端。

一些常用的邮件客户端有Thunderbird、Evolution和Claws Mail。

推荐-搭建双sendmail服务器实现邮件互发 精品

推荐-搭建双sendmail服务器实现邮件互发 精品

搭建sendmail邮件服务器1 要求有两台服务器192.169.25.1 192.169.25.252 ,分别在两台服务器上搭建sendmail服务器,在192.169.25.1上搭建DNS服务器,实现两台邮件服务器能相互发送邮件2 步骤2.1配置好两台服务器的主机名,不仅要使用hostname 命令修改,还要修改/etc/hosts 和/etc/sysconfig/network 中的主机名,切记两台sendmail的主机名不能一样,否则发送邮件会报错”loop back me (?MX problems) “ 因为邮件服务器不能是发送到其他服务器还是就在本地发送邮件。

配置如图:192.169.25.1192.169.25.2522.2在192.168.25.1上配置DNS服务器,需要注意的是每个MX记录都要有对应的A记录指向正确的服务器IP地址,一定要配置好反解,否则邮件有可能邮件已经发送但是接受方却没接收到。

/var/named/chroot/etc/named.conf配置域pxy. 的数据文件/var/named/chroot/var/named/pxy..zone配置域ehome. 的数据文件/var/named/chroot/var/named/ehome..zone配置反解192.168.25数据文件/var/named/chroot/var/named/192.168.25.rev3测试DNS服务器,测试必须成功,否则不能进行下一步的配置,如图的检测结果为成功192.168.25.1192.168.25.2524 sendmail 的安装和配置3.1安装包yum install sendmail* -yyum install m4 -yyum install dovecot -yyuminstall cyrus-sasl* -yyum install procmail -y3.2修改配置文件/etc/mail/sendmail.mc ,这是sendmail的主配置文件,该配置文件有效配置如下其中标记部分是需要修改的或去掉注释的,其他是系统默认就存在的。

linux sendmail配置详解

linux sendmail配置详解

sendmailMUA (mail user agent 邮件用户代理),用于用户端发送邮件或者阅读邮件 linux有mutt这个工具MTA (mail tranfer agent 邮件传输代理),相当于一个邮局,server端的软件,主要的功能有,接收MUA发来的邮件和把邮件发送给下一个MTA,可以说是一个邮件路由(mail router),server端的软件就属于MTA,现在开源的有sendmail,postfix,qmail等MDA (mail devilery agent 邮件投递代理),主要是将MTA所接受的邮件,依照邮件的目的地将此邮件放到本机账号下或者是给下一个MTA,一般就是指mail 这样的命令邮件的协议:发信: SMTP (simple mail tranfer protocol 简单邮件传输协议)端口号TCP的25端口,在发信时,MUA会主动连接MTA的port 25,然后经由SMTP协议发送出去,SMTP分为接受SMTP和发送SMTP,它不管两端主机的配置或者系统等,只要两边SMTP协议OK就可以发送邮件收信: POP (post office protocol 邮局协议),来连接到MTA,以读取或者下载邮件,现在常用的版本是POP3,端口为110IMAP (internet message access protocol 网络报文件协议),能在下载邮件前先下载邮件头信息,以可以让用户选择性下载端口 143软件包yum install sendmail*yum install dovecotsendmail.i386 --邮件服务器端 MTA sendmail-cf.i386 --配置文件包sendmail-devel.i386 --开发包sendmail-doc.i386 --文档包dovecot.i386 --(鸽舍),pop邮件服务端 MDAm4.i386 --处理配置文件的包端口: smtp (25) pop3 (110) imap (143)协议: TCP服务启动脚本:/etc/init.d/sendmail/etc/init.d/dovecot配置文件:/etc/mail/sendmail.cf --sendmail邮件服务启动时读取的主配置文件/etc/mail/sendmail.mc --管理员修改sendmail服务器功能时的配置文件/etc/mail/local-host-names --配置支持发送邮件时使用短域名形式/etc/mail/virtusertable --虚拟用户列表/etc/aliases --用户别名/etc/mail/access --邮件中继/etc/init.d/sendmail restart[root@li ~]# netstat -ntl |grep 25 --看到默认是只监听了127.0.0.1的回环地址tcp 0 0127.0.0.1:25 0.0.0.0:* LISTEN--发送邮件方法一:[root@li ~]# mail -s "mail" root@ --用此命令发送邮件 -s 后接邮件主题1111 --写邮件内容. --“." 点号表示结束Cc: --直接回车退出[root@li ~]# mail -s 'yyyy' a@ < /etc/grub.conf --还可以这样把/etc/grub.conf的内容直接发送给a用户--查看邮件方法一:cat /var/mail/rootcat /var/spool/mail/root --查看这两个一样的这样是可以查看到刚才发送的邮件,因为一个是自己发送给自己用的127.0.0.1这个回环地址,这种情况不需要DNS的MX支持--发送邮件方法二:[root@li ~]# telnet 127.0.0.1 25 --对smtp协议进行验证Trying 127.0.0.1...Connected to localhost.localdomain (127.0.0.1).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 11:30:09 +0800helo --定义来访者,可以用help去查看支持哪些命令集,用help+命令来看单个命令如何使用250 Hello localhost.localdomain [127.0.0.1], pleased tomeet youmail from:aa@ --定义一个发送者,这里可以随便定义250 2.1.0 aa@... Sender okrcpt to:a@ --定义接收者,这里是我本机的a用户250 2.1.5 a@... Recipient okdata --表示下面要写邮件内容354 Enter mail, end with "." on a line by itself4444444444 --随便写上你要发送的邮件的内容. --"." 点号表示结束250 2.0.0 o4T3U9l1026581 Message accepted for deliveryquit --quit退出,有时候一次退不出,就多敲几次quit221 2.0.0 closing connectionConnection closed by foreign host.yum install muttmutt --是一个在unix-like系统下小巧但强大的基于文本的一个能发送和阅读邮件的工具(MUA)--查看邮件方法二:直接在root用户下使用mutt命令,可以看到root用户的收信箱如果要看普通的邮件,就要先su - 普通用户名切换到普通用户再使用mutt命令查看--发送邮件方法三:[root@li ~]# mutt a@ --可以直接使用这样的命令发送给a@,会提示用户写内容,还有附件等功能--发送邮件方法四:[root@li ~]# cat /etc/rc.local |sendmail -v a@-------------------------下面先把DNS的MX记录给配置好[root@li mail]# vim/var/named/chroot/var/named/data/.zone$TTL 86400@ IN SOA . . ( 2010051605606036086400)IN NS .IN MX 0 . --MX是邮件交换记录,0是代表优先级别,可以写多个,数字越小优先级越高li IN A 10.1.1.35pop IN A 10.1.1.35smtp IN A 10.1.1.35/etc/init.d/named reloadvim /etc/resolv.conf --DNS指向改为本机[root@li mail]# nslookup --验证MX记录的方法> set type=mx> Server: 10.1.1.35Address: 10.1.1.35#53 mail exchanger = 0 . --看到这样的信息表示成功最好把时间同步也配好[root@li mail]# echo 'while :; do ntpdate 10.1.1.1> /dev/null 2>/dev/null; sleep 10; done'>> /etc/rc.local--每十秒同步一次10.1.1.1,放到/etc/rc.local里,开机自动运行把邮件客户端软件claws-mail拷过去装好ls /share/soft/soft/mail_client/tar xvf /share/soft/soft/mail_client/claws-mail-3.5.0.tar.gz -C/usr/src/tar xvf /share/soft/soft/mail_client/libetpan-0.57.tar.gz -C /usr/src/ cd /usr/src/libetpan-0.57/./configure ;make ;make installcd /usr/src/claws-mail-3.5.0/./configure ;make ;make install例一:让smtp协议监听所有端口vim /etc/mail/sendmail.mcDAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl --把127.0.0.1改为0.0.0.0,或者是把中间那一小段去掉保存退出m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf --如果没有装m4.i386这个包,就需要使用m4命令去生成sendmail.cf配置文件,装了就不需要,重启sendmail服务自动生成/etc/init.d/sendmail restart[root@li claws-mail-3.5.0]# netstat -ntl|grep 25tcp 0 00.0.0.0:25 0.0.0.0:* LISTEN[root@li claws-mail-3.5.0]# telnet 10.1.1.35 25 --对本机的IP(非回环地址)做smtp协议的测试是可以做的,如果只监听127.0.0.1,就不能这样用IP测试Trying 10.1.1.35...Connected to (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 13:47:01 +0800helo 250 .................例二:用claws-mail收发邮件用claws-mail 发送一封邮件给本机用户,能写,但点收信时会报连接到:110失败原因检验:[root@li /]# nslookup --先查看DNS,能解析Server: 10.1.1.35Address: 10.1.1.35#53Name: Address: 10.1.1.35netstat -ntl |grep 110 --再查看端口,发现没有110端口,表示pop3协议没有配置所以要去配置dovecot服务[root@li /]# vim /etc/dovecot.confprotocols = imap imaps pop3 pop3s --在20行找到有一行注释,打开注释,或者写一行,表示支持pop3和imap协议/etc/init.d/dovecot restart --重启服务后,就可以看到监听143和110端口打开了[root@li /]# netstat -ntlup |grep 143tcp 0 0 :::143 :::* LISTEN 21674/dovecot[root@li /]# netstat -ntlup |grep 110tcp 0 0 :::110 :::* LISTEN 21674/dovecot然后就可以收邮件了例三:使用支持短域名来发送邮件[root@li /]# mail -s '222' a@ --使用短域名222222.Cc:[root@li /]# tail /var/mail/a --查看时看不到,表示不支持短域名[root@li /]# tail /var/mail/root --可以看到扔到root的邮箱去了配置方法:[root@li /]# vim /etc/mail/local-host-names --写上短域名--注意的是写的域名,最好是DNS能解析,否则测试失败/etc/init.d/sendmail reload再用短域名发送并测试发现是可以成功的例四:邮件别名,邮件转发,邮件群发[root@li /]# vim /etc/aliases加上a: b --表示发送给a用户的邮件,发给了b用户,a用户自己收不到c: d,e,f --表示发送c用户的邮件,发给了d,e,f三个用户,a用户自己收不到salegroup: :include:/etc/mail/salegroup --还可以这样写,把一些用户分组,注意/etc/mail/salegroup是不存在的,要手动建立并把这个组的成员写进去,一行一个用户;测试时发给的用户名要写成salegroup,例如:mail -s '7777' salegroup@/etc/init.d/sendmail reload例五:邮件的虚拟账号,虚拟用户表格[root@li /]# vim /etc/mail/virtusertablea@ b@ --把b@的账号虚拟成a@账号@ c --所有发往域的邮件都会发到本地的c用户的mailbox/etc/init.d/sendmail reload例五:邮件中继保持上面的配置不变的情况下,用另一台电脑做测试[root@dns ~]# telnet 10.1.1.35 25 --另一台电脑测试35这台服务器上的smtp 协议Trying 10.1.1.35...Connected to 10.1.1.35 (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 15:39:36 +0800helo 250 Hello [10.1.1.218], pleased to meet youmail from:sdfsa@250 2.1.0 sdfsa@... Sender okrcpt to:sfsadfa@550 5.7.1 sfsadfa@... Relaying denied. --可以看到中继拒绝[root@li /]# vim /etc/mail/access --默认是只允许127.0.0.1中继Connect:10.1.1.218 OK --非常信任的主机可以用OKConnect:10.1.1 RELAY --表示允许10.1.1.0网段中继FROM: REJECT --表示从来的邮件都拒绝TO: discard --到的邮件丢弃--reject和discard的区别,discard是直接丢弃,reject还要返回一个错误或者警告我在这里加上了Connect:10.1.1 RELAY/etc/init.d/sendmail reload再用刚才的另一台电脑来测试(要是10.1.1.0网段,因为上面我只允许这个网段relay)[root@dns ~]# telnet 10.1.1.35 25Trying 10.1.1.35...Connected to 10.1.1.35 (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 15:51:35 +0800helo dns.lu.con250 Hello [10.1.1.218], pleased to meet youmail from:sfsafa@250 2.1.0 sfsafa@... Sender okrcpt to:sdfsadf@250 2.1.5 sdfsadf@... Recipient ok --这次测试没有报relay deny的错误------------------------------------------------------------------- 使用smtp验证yum install cyrus-sasl*vim /etc/mail/sendmail.mc --把下面三行注释打开TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnldefine(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnlDAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl/etc/init.d/sendmail restart/etc/init.d/dovecot restart/etc/init.d/saslauthd restart[root@li /]# telnet 10.1.1.35 25Trying 10.1.1.35...Connected to (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 16:42:54 +0800ehlo --注意这里是ehlo 不是 helo Hello [10.1.1.35], pleased to meet you 250-ENHANCEDSTATUSCODES250-PIPELINING250-8BITMIME250-SIZE250-DSN250-ETRN250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN --看到这里有login plain验证信息表示支持smtp验证250-DELIVERBY250 HELP验证:[root@li /]# telnet 10.1.1.35 25Trying 10.1.1.35...Connected to (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 16:45:12 +0800helo 250 Hello [10.1.1.35], pleased to meet youmail from:fsfafa@250 2.1.0 fsfafa@... Sender ok --这里没有要求验证原因:是因为smtp验证默认只是在587端口,而不是25端口,所以你还是直接telnet 10.1.1.35 25 就避开了使用smtp验证vim /etc/mail/sendmail.mc把下面这句DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl改为DAEMON_OPTIONS(`Port=25, Name=MSA, M=Ea')dnl然后还要DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl --把这名注释掉,注意注释时用dnl,不用#--表示强制使用smtp验证/etc/init.d/sendmail restart[root@li /]# telnet 10.1.1.35 25Trying 10.1.1.35...Connected to (10.1.1.35).Escape character is '^]'.220 ESMTP Sendmail 8.13.8/8.13.8; Sat, 29 May 2010 16:55:58 +0800helo 250 Hello [10.1.1.35], pleased to meet you mail from:sfsafsa@530 5.7.0 Authentication required --现在就会看到需要验证auth login --开始验证334 VXNlcm5hbWU6a --输入用户名,会报错,因为这里是用base64位编码501 5.5.4 cannot decode AUTH parameter aauth login334 VXNlcm5hbWU6YQ== --这就是a的base64位编码334 UGFzc3dvcmQ6MTIz --这是123的base64位编码235 2.0.0 OK Authenticated --验证成功,可以发送邮件了mail from:sdfasfas@250 2.1.0 sdfasfas@... Sender okrcpt to:b@250 2.1.5 b@... Recipient okdata354 Enter mail, end with "." on a line by itselflast test.250 2.0.0 o4T8twFU025598 Message accepted for deliveryquit221 2.0.0 closing connectionConnection closed by foreign host.cat /var/mail/b 是可以看到发送的邮件---------------用claws-mail来验证点设置--目前账号的偏好设置--发送--把SMTP鉴权(SMTP AUTH)前面的勾打上--鉴权方式选PLAIN--用户ID和密码写上本机的一个普通名和其密码就OK再发送信件等都是经过了SMTP验证的。

Sendmail服务器配置

Sendmail服务器配置

sendmail-cf/m4/cf.m4包含进来
......
define('confDEF_USER_ID',"8:12")dnl //指定sendmail使用的用户ID为8,组ID为12
define('confTO_CONNECT','lm')dnl //设置等待连接的最大时间为1分钟
define('confTRY_NULL_MX_LIST',true)dnl //若MX记录指向本机,sendmail
根据简单、直观的sendmail.mc模板来生成 sendmail.cf文件,从而无需直接编辑sendmail.cf文件。 也可以直接通过修改sendmail.mc模板来达到定制 sendmail.cf文件的目的。创建sendmail.cf文件的步骤如 下:
1. 备份原有sendmail.cf文件
Linux网络操作系统
Sendmail服务器配置
1.1 生成Sendmail配置文件 Sendmail的配置十分复杂。它的配置文件是sendmail.cf,位于/etc/mail
目录下。由于sendmail.cf的语法深奥难懂,很少有人直接去修改该文件来 配置sendmail服务器。所以一般通过m4宏处理程序来生成所需的 sendmail.cf文件。创建的过程中需要一个模板文件,系统默认为 /etc/mail/sendmail.mc。
# cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.BAK 2. 生成sendmail.cf文件 根据sendmail.mc模板产生sendmail.cf配置文件,导出到
/etc/mail/目录下:

在linux下配置邮件服务器

在linux下配置邮件服务器

在linux下配置邮件服务器1.配置思路:配置DNS,进行DNS解析。

他的目的是解析邮件服务器的域名。

2.配置sendmail。

配置sendmail的目的是配置邮件服务器,进行邮件的发送和传输。

3.实验过程。

(1)[root@soft8 etc]# cat resolv.conf //配置域名解析。

search //域名是nameserver 10.10.10.2 //ip地址是10.10.10.2[root@soft8 etc]# cat named.conf //在文件最后添加下面几句话##########################################zone "" IN {type master;file ".hosts";allow-update { none; };};zone "10.10.10.in-addr.arpa" IN {type master;file "10.10.10.rev";allow-update { none; };};include "/etc/rndc.key";[root@soft8 etc]# cd /var/named[root@soft8 named]# ls10.10.10.rev localhost.zone named.ca named.local .hosts[root@soft8 named]# cat .hosts //添加这个文件,文件内容如下:$TTL 86400@ IN SOA . (42 ; serial3H ; refresh15M ; retry1W ; expiry1D ) ; minimumIN NS .IN MX 5 .www IN A 10.10.10.2//注:上面的每一行的域名后面都有一个“。

”点,别忘了。

Linux1 邮件服务器 配置与测试邮件服务器

Linux1 邮件服务器  配置与测试邮件服务器

Linux1 邮件服务器配置与测试邮件服务器在家庭或企业网络中,都离不开电子邮件系统,而电子邮件系统始终都离不开邮件服务器,因为邮件服务器构成了电子邮件系统的核心。

(1)在一个网络中,有一台安装了“bind-9.3.3”(邮件服务器需要DNS的支持)和“se ndmail”的“RedHatEnterprisesLinux5.4”服务器,其“IP”是:“192.168.0.9”。

(2)在终端中,输入“vi /var/named/chroot/etc/named.conf”命令(打开“DNS”主配置文件),并按【回车】键,如图9-91所示。

图9-91 打开配置文件(3)在已打开的DNS主配置文件中,依次按下“G”和“a”键,切换到最末行,并进入插入模式,写入如图9-92所示内容。

图9-92 写入相应内容(4)在该配置文件中,依次按下“Esc”和“:”键(切换到末行模式),输入“wq”命令(保存并退出),并按【回车】键,如图9-93所示。

图9-93 保存并退出(5)输入“vi /var/name/chroot/var/named/slyx.zone”命令(创建并打开正向区域文件),并按【回车】键,如图9-94所示。

图9-94 创建并打开正向区域文件(6)在已打开的正向区域文件中,按“a”键,进入插入模式,写入如图9-95所示内容。

图9-95 写入内容(7)在该区域文件中,依次按下“Esc”和“:”键(切换到末行模式),输入“wq”命令(保存并退出),并按【回车】键,如图9-96所示。

图9-96 保存并退出(8)在终端中,输入“vi /var/name/chroot/var/named/slyx.rev”命令(创建并打开反向区域文件),并按【回车】键,如图9-97所示。

图9-97 创建并打开反向区域文件(9)在已打开的反向区域文件中,按“a”键,并进入插入模式,写入如图9-98所示内容。

图6-99 写入内容(10)在该区域文件中,依次按下“Esc”和“:”键(切换到末行模式),输入“wq”命令(保存并退出),按【回车】键,如图9-99所示。

linux中mail的用法

linux中mail的用法

linux中mail的用法摘要:1.Linux 中mail 概述2.mail 的基本用法3.使用mail 发送邮件4.使用mail 接收邮件5.邮件过滤和自动处理6.总结正文:Linux 是一个强大的操作系统,它提供了许多命令行工具,其中之一就是mail。

mail 是一个用于发送和接收邮件的命令行工具,它可以让用户在终端中方便地处理电子邮件。

mail 的基本用法包括创建邮件、发送邮件、接收邮件和阅读邮件。

用户可以使用mail 命令的选项和参数来定制邮件的发送和接收。

例如,用户可以使用“-s”选项来设置邮件的主题,使用“-c”选项来指定邮件的抄送人。

使用mail 发送邮件非常简单。

用户只需要在终端中输入“mail”命令,然后指定收件人的电子邮件地址即可。

例如,要向用户“*******************”发送邮件,用户可以在终端中输入“mail examp**************”。

使用mail 接收邮件也很容易。

用户只需要在终端中输入“mail”命令,然后指定要接收邮件的电子邮件账户。

例如,要接收用户“*******************”的邮件,用户可以在终端中输入“mail*******************”。

除了发送和接收邮件外,mail 还提供了许多高级功能,如邮件过滤和自动处理。

用户可以使用mail 命令的“-f”选项来过滤邮件,例如,只接收带有特定主题的邮件。

用户还可以使用mail 命令的“-a”选项来自动处理邮件,例如,自动将带有特定关键词的邮件转发给其他用户。

总的来说,mail 是Linux 中一个非常有用的命令行工具,它可以让用户在终端中方便地处理电子邮件。

Linux1 邮件服务器 安装Sendmail

Linux1 邮件服务器  安装Sendmail

Linux1 邮件服务器安装Sendmail免费版本的Sendmail官方网站是,用户可以在上面下载最新版本的源代码包进行编译安装。

而对于Red Hat Enterprise Linux5.4的用户来讲也可以使用安装光盘上自带的RPM包进行安装。

在使用RPM安装Sendmail之前,首先需要在终端界面下使用-qa命令参数查看系统是否安装有Sendmail及所需宏文件编辑器m4,如图9-7所示。

图9-7 查看是否安装Sendmail所需软件由图9-7所示,可看出默认情况下Sendmail及m4已经安装了。

但其它与Sendmail相关的软件是没有被安装的,其中sendmail-cf分布在系统的第2张光盘中,而sendmail-doc和sendmail-devel两个软件包则分布在系统的第3张光盘。

这里,首先将系统的第2张光盘放入光驱中,然后使用mount命令将此光盘挂载到一个指定的目录(如,/tmp)下,如图9-8所示。

图9-8 挂载第2张光盘到/tmp目录将光盘挂载到指定的目录后,接着可在终端下输入mount命令,查看光盘是否挂载成功,如图9-9所示。

图9-9 查看光盘是否挂载成功从图9-9所示的最后一行输出结果可查看到系统的第2张光盘已被成功挂载到/tmp目录下。

然后可以使用find搜索命令,在该系统光盘中查找Sendmail的sendmail-cf软件包,如图9-10所示。

图9-10 查找sendmail-cf软件包由图9-10输出结果可知,已成功查找到sendmail-cf软件包,其路径为/tmp/Server/sendmail-cf-8.13.8-2.e15.i386.rpm。

接下来,就可以使用rpm工具对sendmail-cf软件包进行安装。

安装软件包时,使用的语法为“rpm –vih 软件包的绝对路径”。

如图9-11所示。

图9-11 安装Sendmail-cf软件包当sendmail-cf软件包安装完成后,为了确保正确无误,此时可通过在终端下输入“rpm –qa|grep sendmail”命令,并按【回车】键查看软件包安装情况,如图9-12所示若在输出中,能够查看到已安装的sendmail-cf软件包时,则证明该软件包已成功安装。

在Linux上使用Shell脚本实现邮件发送

在Linux上使用Shell脚本实现邮件发送

在Linux上使用Shell脚本实现邮件发送邮件是我们日常生活中重要的沟通工具之一,而在Linux系统中,我们可以通过编写Shell脚本来实现自动化的邮件发送。

本文将介绍如何使用Shell脚本在Linux上实现邮件发送的方法。

一、Shell脚本编写准备在开始编写Shell脚本之前,我们首先需要确保系统已经安装了邮件发送的相关组件,通常情况下,邮件发送需要使用到sendmail命令。

我们可以通过以下命令来检查系统是否已经安装了sendmail:```which sendmail```如果返回sendmail的安装路径,则说明系统已经安装了sendmail组件。

如果未安装,我们可以通过以下命令来安装sendmail:```sudo apt-get install sendmail```安装完成后,我们可以创建一个新的Shell脚本文件,以便后续编写实现邮件发送的代码。

二、编写Shell脚本实现邮件发送在Shell脚本文件中,我们可以使用sendmail命令来实现邮件发送。

例如,我们可以编写以下代码实现发送一封简单的邮件:```shell#!/bin/bashto="*********************"subject="测试邮件"body="这是一封测试邮件"echo -e "To: $to\nSubject: $subject\n\n$body" | sendmail -t```在上述代码中,我们首先定义了邮件的收件人(to)、主题(subject)和正文内容(body)。

然后,使用echo命令将邮件内容传递给sendmail命令,并通过管道符号将输出重定向到sendmail命令中。

请注意,上述代码中的邮件正文内容(body)可以根据实际需求进行修改,甚至可以读取外部文件来获取邮件内容。

三、可选配置项除了基本的邮件发送功能,我们还可以通过添加一些可选配置项来进一步定制我们的邮件发送。

Linux1 邮件服务器 Sendmail文件

Linux1 邮件服务器  Sendmail文件

Linux1 邮件服务器Sendmail文件Sendmail是配置Sendmail邮件服务器的关键,里面包括许多配置文件,且各个功能都有所不同。

主要包括以下几个:●/etc/mail/sendmail.cf sendmail的主配置文件。

●/etc/mail/access 文件继访问控制。

●/etc/mail/domaitable 域名映射。

●/etc/mail/local-host-name 本地计算机别名。

●/etc/mail/mailertable 为特定的域指定特殊的路由规则。

●/etc/mail/virtusertable 虚拟域配置。

其中,sendmail.cf文件是Sendmail最主要的配置文件,没有它Sendmail就无法运行。

Sendmail文件一向以其内容较长、费解、难以配置而著称。

如果查看里面的内容就会发现它和其它服务器的配置文件截然不同,没有任何的可读性,因此除非真的熟悉其语法原则,否则不建议用户直接对其进行编辑。

Sendmail提供一个宏处理器m4,用户可以先编辑一个相对简单的m4宏配置文件,然后用m4宏处理器把这个文件转换成为Sendmail的配置文件。

在Red Hat Enterprise Linux5.4的/etc/mail目录下,存放着默认的m4宏配置文件sendmail.mc,对于满足一般需求的邮件服务器来讲,用户只需在终端下输入“vi /etc/mail/sendmail.mc”命令,然后按【回车】键进入sendmail.mc文件的编辑界面,对文件进行简单的修改即可满足需求。

此文件的内容如图9-34所示。

图9-34 默认的m4宏文件内容下面来详细的讲解一下这个配置文件。

第1行divert(-1),代表这一行开始一直到divert(0)的部分将在m4进行处理时被忽略掉,不会出现在生成的配置文件中,一般会在这两行之间加入一些版本信息等内容。

文件中有的行是以字符串dnl开头,dnl的作用是注释从它开始到下一行开始的所有字符,即注释部分;还有的行是以dnl结尾,因为m4宏处理器是不识别行的,所以在一行的结尾处需要用dnl注释后面的空格和换行符,以免在生成配置文件中出现不必要的空行。

Linux下使用mail命令发送邮件

Linux下使用mail命令发送邮件

Linux下使⽤mail命令发送邮件因为需要经常备份⽹站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这⾥以CentOS为例,使⽤mail命令来进⾏外部邮件的发送。

mail命令的语法如下:1. Usage: mail [-iInv] [-s subject] [-c cc-addr] [-b bcc-addr] to-addr ...2. [-- sendmail-options ...]3. mail [-iInNv] -f [name]4. mail [-iInNv] [-u user]使⽤mail命令发送邮件,有如下三种⽅式:1、直接使⽤shell当编辑器1. mail -s "Hello from by shell" admin@2. hello,this is the content of mail.3. welcome to 第⼀⾏是输⼊的命令,-s表⽰邮件的主题,后⾯的admin@则是邮件的接收⼈,输⼊完这⾏命令后回车,会进⼊邮件正⽂的编写,我们可以输⼊任何⽂字,⽐如上⾯的两⾏。

当邮件正⽂输⼊完成后,需要按CTRL+D结束输⼊,此时会提⽰你输⼊Cc地址,即邮件抄送地址,没有直接回车就完成了邮件的发送。

2、使⽤管道进⾏邮件发送1. echo "hello,this is the content of mail.welcome to " | mail -s "Hello from by pipe" admin@使⽤管道直接敲⼊这⾏命令即可完成邮件的发送,其中echo后的是邮件正⽂。

3、使⽤⽂件进⾏邮件发送1. mail -s "Hello from by file" admin@ < mail.txt使⽤上⾯的命令后,我们就可以把mail.txt⽂件的内容作为邮件的内容发送给admin@了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告
专业:计算机科学与技术班级:
学号:姓名:
课程名称:linux 系统应用
学年:2013 -2014 第二学期实验时间: 年月日
实验名称:电子邮件服务器的配置与应用
实验目的和要求:
先配置好DNS,对linux下的邮件服务器进行配置,然后创建2个用户,在windows下实现邮件的发送与接收。

实验软硬件要求:
Vmware Windows xp Fedora 6 Outlook 2003
实验内容、方法和步骤
1、linux下,DNS服务器要配置成功;
2、linux,sendmail服务器要配置成功;
3、linux,在终端进行配置及对相关服务器的开启;
4、windows下,使用outlook进行邮件的发送与接收。

实验结果(可附页)
小结:这次实验做了几次都没有成功过,都是在由于一些小的步骤没有看清楚,但在同学的帮助下,还是搭建了起来,最后完成指定的目标。

实现在相windows xp下邮件发送与接收功能
评定成绩:批阅教师:年月日
实验步骤:
1.修改文件、etc/mail/sendmail.cf,添加一行Addr=19
2.168.
3.124,如下图:
2、编辑/etc/mail/access.db,创建/etc/mail/access文件,内容如下:
3.在终端执行makemap hash access.db<access命令
4.在文本/etc/mail/local-host-names,添加如下图:
5.创建新文本/etc/mail/aliases,内容如下:
6. 生成别名数据库:
7.打开/etc/mail/sendmail.mc:
将dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl前面的注释去掉,改成:TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl,如下图:
8.将DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl改成: DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
9. 打开/ etc/dovecot.conf中的#protocols = imap imaps pop3 pop3s注释去掉,改成如下图所示:
10. 剩下的步骤就按照下面在终端配置就可以了,创建test1和test2这2个用户,设置密码都是123456
11.重启sendmail和dovecot服务:
12. 验证:
13. 在linux终端配置完后,在windows系统进行outlook配置:(1)在宿主机xp下查看一下DNS:
(2)Outlook下配置新账户test1,test2(下面以test1为例)
(3)Outlook 下test1 发送邮件给 test2
(4)Outlook 下test2 发送邮件给 test1。

相关文档
最新文档