- 浏览: 261369 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
aliang032:
php socket 编程建使用http://www.work ...
PHP Socket 编程 -
大秦布衣:
不错的教程 简明额要 不过要是完善百度的照片就更好了
Git入门教程 -
bravelinw:
这个问题网上有很多个版本,有的还弄得很深邃,还是lz的看到了问 ...
(leopard)MySQL #2002 - 服务器没有响应 -
sunnylocus:
很有感触,我也是刚刚做项目经理,沟通能力是做PM的基本要求,希 ...
面试了一位项目经理后我的感想 -
artoy:
看来,对技术人员也有与对销售人员相同的要求,
面试了一位项目经理后我的感想
Fedora 6架设Sendmail邮件服务器
(解决php发邮件NObody跟域名是localhost.domain问题)
弄了差不多一个星期,基本弄懂基本的东西,架设过程中,参考网上无数文章,现做一个综合,并在重要的地方给予提醒
一:安装必要的软件
(1)查询 rpm -qa sendmail m4
有结果显示证明已经安装了必要的软件,没有显示请使用yum install sendmail 命令进行安装(可以上网的情况下)或者利用系统盘进行安装(有光盘的话,iso文件也可以)
(2)安装关联的套件
sendmail-dev, sendmai-doc sendmail-cf
推荐使用yum 安装(yum install sendmai*或者挂载光盘进行安装 rpm -ivh sendmail-*)
(3)安装成功以后
vi /etc/mail/local-host-names 打开这个文件 然后在里面加入你想发邮件的时候用到的域名(可以是虚拟的,但不推荐使用现存 的,有侵权的嫌疑~ 也容易发生错误) 例如
[root@localhost named]# cat /etc/mail/local-host-names
# local-host-names - include all aliases for your machine here.
ltest.com
test.com就是你想要填的~~~
(4)重建sendmail.cf
sendmail.cf是sendmail的配置文件,通过修改sendmail.mc文件进行修改,
DaemonPortsOptions=Port=smtp,Addr=127.0.0.1, Name=MTA 更改为:
DaemonPortsOptions=Port=smtp,Addr=yourip或者0.0.0.0, Name=MTA
或者把这一行用dnl注释掉(就是在这一行前面加入dnl 然后空格 dnl的意思,按照linux系统管理手册的解释就是delete to next lin的意思 有位仁兄解释为 do not load 看上去也正确,倒是是那个意思我就不管了,明白意思就好了)
然后m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf(重建sendmail.cf或者可以先备份,各人喜欢~~)
(5)修改用户认证
还是上面那个文件vi /etc/mail/sendmail.mc 进入到里面以后找到
48行 dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
49行 dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
#刪掉上面兩行前面的 dnl
#注意:TRUST_AUTH_METH、define 前面不要留有空格
112行 dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
#前面加上 dnl, 把這行註解起來(dnl = do not load)
#或改成下面這樣也可以
DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl
注:上面修改用户认证这一段是引用我转载的一篇文章的:
(6)修改端口
dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
去掉行首的注释符,并且将内容修改成Port=25:
DAEMON_OPTIONS(`Port=25, Name=MSA')dnl
在smtp的默认端口(25)上进行认证,而不是587端口。这样就强制所有使用该邮件服务器(就是我们现在架设的这个服务器)进行邮件转发的用户在认证后才能发邮件了。
再次运行m4程序
# m4 /etc/mail/sendmail.mc > /etc/sendmail.cf
用m4重新生成sendmail.cf文件
(7)添加邮件用户
建立用户帐号
[root@localhost named]# groupadd mailuser
[root@localhost named]# adduser -g mailuser -s /sbin/nologin mike
[root@localhost named]# adduser -g mailuser -s /sbin/nologin john
[root@localhost named]# passwd mike
[root@localhost named]# passwd john 密码由你自己喜欢 用户也随你喜欢添加几个(这一段引用另一篇转载的文章)
(8)访问控制
5,访问控制设置
更改/etc/mail/accesss文件,增加:
[root@localhost named]# cat /etc/mail/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.
#
# by default we allow relaying from localhost...
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
ltest.com RELAY(这个就是你自己填到local-host-names里面的名字,一定要写[其实我也不肯定,不过我是写了 因为我最近时间比较紧迫,没有进行验证,希望看了的朋友帮忙验证一下])
完成后makemap hash /etc/mail/access.db < /etc/mail/access进行数据库更新。
(9)重启服务
[root@localhost named]# service sendmail restart
看到
关闭 sm-client: [确定]
关闭 sendmail: [确定]
启动 sendmail: [确定]
启动 sm-client: [确定]
就正确了(后面两个是确定就可以了,因为如果服务还没有启动 的华 关闭服务会事失败的)
(10)测试服务器
[root@localhost named]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 localhost.localdomain ESMTP Sendmail 8.13.1/8.13.1; Sat, 17 Mar 2007 12:54:47 +0800
ehlo localhost(用户输入)
250-localhost.localdomain Hello localhost.localdomain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN ---认证应该生效
250-DELIVERBY
250 HELP
quit(用户输入 退出telnet)
221 2.0.0 localhost.localdomain closing connection
Connection closed by foreign host.
看见这些信息就代表成功了
然后就可以使用php的邮件类(网上很多,不好意思,没办法传上来,或者有需要的话,过些时候我会把我用 的粘贴上来)在server (邮件服务器这个变量)填上"localhost" 用户邮箱(本服务器[刚弄好这个])就填刚刚添加上去的用户名+在local-host-names填上的域名就可以在收件人那里显示了(尽管可能是虚拟的)例如mike@test.com密码就是刚刚用户的密码(这是需要验证的smtp邮件程序) port就是25 这样你就可以用你刚刚架好的这台服务器进行邮件的发送了!
希望我说得明白,如果大家有什么不明白的话 欢迎留言或者给我些email。我自己弄这个邮件服务器弄了一个多星期,可以说算是很失败的了,没办法,我基础不扎实,有被逼着帮人家做网站,只好这样边学边摸索了,网上很多文章都有说在linux里面架设服务器,但是就是没教我们怎么用服务器(可能他们觉得不用说吧!又或者只是我太笨了,呜呜呜呜) 为什么有些地方我要特别提一下呢? 因为那些地方正是使用php发送邮件显示出来的不足的地方:(1)使用mail()函数发送邮件的话,是很简单, 问题是收件人显示是nobody 这样经过上面在local-host-name以及/etc/mail/accesss 里面的设定就可以解决这个问题了!还有这样就不用利用雅虎或者其他的服务器做中转站发邮件了(虽然没问题,关于方法我有转载,有兴趣了解的欢迎浏览) 我为什么一定要把自己的电脑作服务器呢?? 呵呵 说白了 很简单 ,就是客户要求!没办法,他要怎样就怎样咯,就好像他要用ubutun做服务器一样(个人感觉不大好,不过我没有深入了解过,知道的朋友也欢迎告诉我一声,很乐意了解!)
发表评论
-
使用Passenger在Dreamhost上面部署Rails应用
2009-09-06 20:15 0Wanstrath tweet 关于在Dreamh ... -
Fedora8 安装 VNC
2009-09-02 15:19 1344在服务器端(如192.168.0.2): 1. yum ... -
install xdmcp
2009-09-01 17:35 1189apt-get/yum install icewm apt ... -
linux下解压命令大全
2009-09-01 17:27 1026.tar 解包:tar xvf FileName.tar ... -
如何定制bash提示符?
2009-08-31 17:49 4120我们常用的bash提示符一般是这样的:[username@ho ... -
HOWTO setup Freenx on Fedora
2009-08-25 18:12 1304http://fedoranews.org/contribut ... -
在Fedora 10下面配置SVN服务器
2009-08-21 18:24 1982在Fedora 10下面配置SVN服务器 subversio ... -
用telnet收发邮件
2009-08-21 02:13 2397以163邮箱为例→→→→→→→telnet收邮件 ... -
XAMPP for Linux 的安装及配置
2009-08-20 12:55 4062XAMPP for Linux 的安装及配置 1. 下载xa ... -
编程获取Linux的cpu占用率和mem使用情况
2009-08-11 11:24 5376Linux下提供top、ps命令查看当前cpu、mem使用情况 ... -
查看linux服务器的系统信息
2009-08-10 16:14 1509新接手了几台linux的服 ... -
Fedora 11硬盘安装
2009-08-09 18:49 2941下载了Fedora 11 DVD ISO镜 ... -
如何在Linux中踢出用户
2009-08-09 15:28 6320如何在Linux中踢出用户 ... -
基于bsd watch监控用户操作记录
2009-08-09 14:35 1192基于bsd watch监控用户操作记录 前几日看到bs ... -
linux传统网络配置命令与ip高级路由命令
2009-08-09 13:41 1414经过一段时间的研究 ... -
Linux 添加用户(User)和用户组(Group)
2009-08-06 02:29 5258通过修改用户(User)和 ... -
在linux下定时执行PHP脚本
2009-08-05 10:18 1644在linux下定时执行PHP脚本(定 ... -
error while loading shared libraries: libstdc++.so.5: cannot open shared object
2009-08-04 20:49 4498error while loading shared libr ... -
Linux各常用目录简介及功能
2009-08-03 01:19 938目录树可以分为小的部 ... -
新手入门 图文安装Fedora Core 4.0教程(虽然旧,但是对新手还是可参考的)
2009-07-27 19:37 1459安装前的准备工作 要下载四张ISO,都是哪四张盘呢? ...
相关推荐
Fedora Linux系统Samba服务器架设及配置 本文将详细介绍 Fedora Linux 系统中 Samba 服务器的架设和配置过程。Samba 服务器是一种基于 SMB/CIFS 协议的文件和打印服务,允许 Windows 客户端访问 Linux 服务器上的...
Fedora配置FTP服务器 本文将详细介绍如何在Fedora操作系统中配置FTP服务器,以便实现Windows下的访问、下载和上传。实验环境为Fedora 10,VMware 6.0.2虚拟机和Windows 7。 一、实验目的及要求 在Linux环境下使用...
2. **文件共享与网络服务**:Fedora 6 提供了设置网络服务的能力,如文件共享、打印机共享、Web服务器和目录服务。这些功能使得Fedora能够作为家庭或办公室网络中的中心节点,方便不同设备间的协作和数据交换。 3. ...
Fedora 下配置 TFTP 服务器步骤 TFTP(Trivial File Transfer Protocol)是用于下载远程文件的最简单网络协议,它基于 UDP 协议实现。...通过以上步骤,可以成功地配置 TFTP 服务器在 Fedora 15 系统下。
如何配置sendmail或postfix电子邮件服务器;如何配置和加固FTP服务器;如何设置Fedora或RHEL成为一台Web服务器;如何使用LDAP来创建共享地址簿;如何设置DHCP和NIS服务来为网络上的客户端工作站发布信息;如何在...
FTP 服务器是一种网络服务器,允许用户通过 Internet 上传和下载文件。常见的 FTP 服务器软件有 ftpd、oftpd、vsftpd 和 pure-ftpd 等。在 Fedora 中,我们可以使用 vsftpd 服务器软件来搭建 FTP 服务器。 vsftpd ...
linux 电子邮件服务器 iRedMail
在本教程中,我们将探讨如何在Fedora 7操作系统上构建一个基于Postfix的Extmail邮件服务器。Fedora 7自带了Apache、PHP和MySQL,这些是构建邮件服务器所必需的基础组件。不过,为了实现邮件服务功能,我们需要手动...
在IT行业中,Fedora 9 是一款历史悠久的Linux发行版,而TFTP(Trivial File Transfer Protocol)服务器则是一个简洁的文件传输协议服务,常用于网络设备配置、系统更新和远程启动等场景。本篇文章将深入讲解如何在...
本文将详细介绍如何配置 Fedora 8 服务器上的关键服务,包括 FTP、Web、DHCP、Sendmail 和 DNS。 一、FTP 服务配置(vsftp) VSFTP 是一个安全且易于管理的 FTP 服务器软件。配置步骤如下: 1. **设置 SELinux ...
通过以上步骤,我们成功地在Fedora系统中创建并配置了一个Samba服务器,实现了Linux与Windows系统间的文件共享功能。在实际应用中,还需根据具体场景对权限、安全性和网络配置进行进一步优化,以满足不同业务需求。
Fedora Func是一个基于Python的开源工具,它允许管理员通过单一接口执行远程命令,实现对服务器集群的批量操作。Func的主要设计目标是简化系统管理,提高效率,减少人为错误,并确保系统的一致性。 1. **Func的工作...
在Linux环境下配置Sendmail与Openwebmail以搭建邮件服务器是一项涉及邮件传输代理(MTA)配置、DNS设置和Web邮件界面集成的技术工作。下面将详细阐述这一过程中涉及的关键知识点。 1. Sendmail邮件服务器:Sendmail...
Fedora Core 6着重于开发者的体验,提供了丰富的开发工具和最新的软件库,同时也是一个稳定的服务器平台。 在安装Fedora Core Linux6的过程中,有几个关键步骤和知识点需要了解: 1. **系统要求**:在安装前,确保...
安装环境:Fedora 1.安装xinetd yum install xinetd 2.安装tftp server yum install tftp tftp-server 3.更改tftp配置文件 /etc/xinetd.d/tftp vi /etc/xinetd.d/tftp,打开tftp文件,设置tftp的跟目录,开启...
通过硬盘安装Fedora 8,可以方便地在现有操作系统之外创建一个新的Linux环境,实现双系统共存。这种方式尤其适用于那些希望在不改变现有Windows系统的情况下体验Linux的用户。 #### 二、安装前的准备工作 ##### 1....
根据提供的标题、描述、标签及部分内容,我们可以了解到用户在寻找Fedora 14的不同版本镜像文件,并且分享了一些下载链接。接下来,我们将详细介绍Fedora 14的几个关键概念和知识点。 ### Fedora 14简介 Fedora 14...
Fedora Core 6 安装 部署说明文档
Fedora 8 VMware 安装教程 Fedora 8 VMware 安装...通过本教程,用户可以掌握 Fedora 8 的安装方法和基本设置,并且可以熟悉 VMware 软件的使用。同时,本教程还可以帮助用户了解 Linux 系统的基本知识和设置方法。