smtp服务器搭建(实现本地通讯)

1安装postfix

1)下载安装包
   sudo apt-get install postfix
2)配置服务器

选择确定。

选择IneternetSite(通过SMTP发送和接收邮件),然后确定

输入邮件后缀名,比如如果你想设置你的邮箱地址为[email protected],则此处系统邮件名称填写为example.com

3)安装syslog

进入到/var/log/
        cd /var/log/
查看是否安装syslog
       ls mail*
如果有mail.err、mail.warn、mail.info、mail.log等文件,说明你的系统中已经安装上了syslog,无需再安装了。
否则安装syslog:
sudo apt-get install rsyslog
另外,postfix也使用了第三方模块cyrus-sasl实现smtp的验证服务,需要的时候可以参考别的文档。

2测试

2.1  Mailutils方式

1)下载mailutils

sudo apt-get install mailutils

2)发送邮件

echo “邮件内容” | mail 收件人邮箱

eg:echo “hello”|mail [email protected]

3)查看发送结果

进入到/var/mail目录下,用ls命令查看是否有新建的文件,比如root或其他登录用户名相同的文件夹。如果有,用vi等查看命令打开就可以看到刚才发送的邮件。

如果没有,发送/usr/lib/sendmail –bp指令,若为

Mail queue is empty

说明邮件已经发送成功。否则,可以看到阻塞的邮件及原因。

如果邮件发送成功但是没有接收到,请查看/etc/postfix/main.cf文件是否正确。

2.2  Telnet方式

1)连接到本地

telnet localhost 25

如果正常,您将会看到以下来自 IMC 的类似响应:

220 xxx ESMTP Postfix

2)键入以下命令开始进行通讯:

      HELO  : ***@***

例如HELO :[email protected]。其中,HELO和冒号之间一定要有空格。您应看到如下类似响应:

250 XXX

键入以下命令来通知 IMC 邮件源于何处:

MAIL FROM: ***@***

例如MAIL FROM:[email protected]。您应得到如下类似响应:

250 2.1.0 OK

键入以下命令来通知 IMC 邮件的目标地址。

RCPT TO: ***@***

例如RCPT TO:[email protected]。您应看到如下类似响应:

250 2.1.5 OK

键入以下命令以通知 IMC 您已准备好发送数据:

DATA

您应看到如下类似响应:

354 End data with <CR><LF>.<CR><LF>

键入以下命令以添加主题行:

Subject: test message

然后按两次 Enter 键。该命令看不到任何响应。

 

键入以下命令来添加邮件正文:

This is a test message

您将看不到来自该命令的响应。

正文输入完毕回车换行,然后在空行处键入句号“.”,然后按 ENTER 键。您应看到如下类似响应:

250 2.0.0 Ok: queued as E4618143EE8

可以通过quit指令退出。没有问题的话,你可以在log终端中看到postfix发送邮件的log了。查看结果可以参照mailutils中的查看方法

注:

1、通过telnet,可测试邮件系统是否发送成功,在测试期间,通过

tail -f /var/log/mail*

监控邮件发送log,可明确知道发送的问题在哪。

3 postfix配置说明

postfix最重要的配置文件位于 /etc/postfix/main.cf ,在配置完成后,可通过

sudo /etc/init.d/postfix reload

重新加载配置文件生效。

postfix几个比较重要的配置:

  • myorigin

myorigin参数指明发件人所在的域名。如果你的用户的邮件地址为[email protected],则该参数指定@后面的域名。缺省 地,postfix使用本地主机名作为myorigin,但是建议你最好使用你的域名,因为这样更具有可读性。比如:安装postfix的主机为 mail.domain.com则我们可以这样指定myorigin:

myorigin = domain.com

当然我们也可以引用其他参数,如:

myorigin = $mydomain
  • mydestination

mydestination参数指定postfix接收邮件时收件人的域名,换句话说,也就是你的postfix系统要接收什么样的邮件。比如:你的用户的邮件地址为[email protected], 也就是你的域为
domain.com, 则你就需要接收所有收件人为[email protected]的邮件。与myorigin一样,缺省地,postfix使用本地主机名作为mydestination。如:

mydestination = $mydomain
mydestination = domain.com
  • notify_classes

在postfix系统中,必须指定一个postfix系统管理员的别名指向一个用户,只有这样,在用户遇到问题时才有报告的对象,postfix也 才能将系统的问题报告给管理员。notify_classes参数就是用来指定向postfix管理员报告错误时的信息级别。共有以下几种级别:

  1. bounce:将不可以投递的邮件的拷贝发送给postfix管理员。出于个人隐私的缘故,该邮件的拷贝不包含信头。
  2. 2bounce:将两次不可投递的邮件拷贝发送给postfix管理员。
  3. delay:将邮件的投递延迟信息发送给管理员,仅仅包含信头。
  4. policy:将由于UCE规则限制而被拒绝的用户请求发送给postfix管理员,包含整个SMTP会话的内容。
  5. protocol:将协议的错误信息或用户企图执行不支持的命令的记录发送给postfix管理员。同样包含整个SMTP会话的内容。
  6. resource:将由于资源错误而不可投递的错误信息发送给postfix管理员,比如:队列文件写错误等等。
  7. software:将由于软件错误而导致不可投递的错误信息发送给postfix管理员。

缺省值为:

notify_classes = resource, software
  • myhostname

myhostname 参数指定运行postfix邮件系统的主机的主机名。缺省地,该值被设定为本地机器名。你也可以指定该值,需要注意的是,要指定完整的主机名。如:

myhostname = mail.domain.com
  • mydomain

mydomain参数指定你的域名,缺省地,postfix将myhostname的第一部分删除而作为mydomain的值。你也可以自己指定该值,如:

mydomain = domain.com
  • mynetworks

mynetworks 参数指定你所在的网络的网络地址,postfix系统根据其值来区别用户是远程的还是本地的,如果是本地网络用户则允许其访问。你可以用标准的A、B、C类网络地址,也可以用CIDR(无类域间路由)地址来表示,如:

192.168.1.0/24
192.168.1.0/26
  • inet_interfaces

inet_interfaces 参数指定postfix系统监听的网络接口。缺省地,postfix监听
所有的网络接口。如果你的postfix运行在一个虚拟的ip地址上,则必须指定其监听的地址。如:

inet_interfaces = all
inet_interface = 192.168.1.1

smtp服务器搭建(实现本地通讯)

时间: 2024-10-22 05:53:01

smtp服务器搭建(实现本地通讯)的相关文章

Vsftpd3.0--FTP服务器搭建之本地用户篇

2017年4月10日 19:23 FTP服务在工作中是经用到的一种工具,可以实现上传下载等功能.那么今天我们来聊一聊FTP服务器使用本地用户登录的实现模式. 既然是本地用户,就少不了要创建本地用户,下面我们创建2个用户: 第一步:创建用户 第一次创建一个本地可登录的用户 第二次创建一个nologin用户,即此用户不可登录系统,但仍可以登录FTP 注意:加完用户后要为用户设置密码否则无法登录FTP 看一下2个用户的家目录 这里2个用户的家目录的所有者都是有写权限的. 第二步:编辑vsftpd.co

如何搭建svn本地服务器,管理本地的代码

搭建svn本地服务器,下面是具体的步骤介绍. 一.准备工作 1.下载svn服务器端:Subversion. 到官方网站(http://s version.tigris.org/)下载最新的服务器安装程序.目前最新的是1.8.9版本. 注意:不要下载源码.源码里面没有bin文件夹.源码需要自己在unix,或者linux,或者cygwin等环境下编译,这关系另一个课题.为了简化,直接下载安装版本. 2.获取客户端程序:TortoiseSVN 从官方网站http://tortoisesvn.net/d

Linux搭建smtp服务器+laravel5.2发邮件配置

/** * 这里主要是想通过自己搭建smtp服务器,配置laravel5.2框架,实现邮箱发邮件功能, * 主要内容是搭建smtp服务器,laravel5.2发邮件顺手提一下 */ /** * 1.laravel5.2通过Mail实现发邮件的功能 * 2.搭建自己的smtp服务器 * 3.修改mail的配置,将主机和账号修改为自己的smtp代理服务器 * * 相关技术基础(php基础知识.laravel5.2框架的简单操作.Linux运维基础知识) */ /** * 1.laravel5.2通过

linux-第十二课时笔记-[FTP服务器搭建]-[本地FTP]-[02]

FTP本地服务器搭建 yum安装vsftpd服务: [[email protected] ~]# yum -y install vsftpd 创建本地两个用户: [[email protected] ~]# useradd test1 [[email protected] ~]# useradd test2 [[email protected] ~]# echo "123" | passwd --stdin test1 &> /dev/null [[email prote

搭建yum本地源_阿里云CentOS服务器初始化设置

CentOS服务器初始化设置其实不分阿里云或其它服务器了,操作配置过程与步骤也差不多一.挂载硬盘 1.磁盘分区 fdisk -l #查看设备,一般可以看到设备名为/dev/xvdb fdisk /dev/xvdb #对磁盘进行分区 输入n #创建新分区 输入p #创建主分区 输入1 #创建第一个主分区 输入w #保存并执行以上命令,创建分区 待上面的命令执行完成之后,使用fdisk -l查看,会看到类似 /dev/xvdb1的分区 说明分区成功. 2.磁盘格式化 mkfs.ext4 /dev/x

[ 搭建Redis本地服务器实践系列 ] :序言

说起来,是在一个气候适宜的下午,虽然临近下班,不过办公室里还是充满了忙碌的身影,不时的还会从办公区传来小伙伴们为了一个需求而激烈争论的声音,自从入了互联网这个行业,说实话,也就很少休息了,当然了也不全然是因为工作压力大,相比倒更加觉得是自己内心潜在的危机意识在不断的促使自己,往前走,在这个时局不断变化的时代,不进步就意味着倒退.不过忙归忙,该休息,还是得休息,亦或许是因为周五的缘故,哈哈哈,给自己一点时间,回溯总结下最近一周的得失. 前段时间一直忙于项目的进度,都是新项目,不过因为公司基建服务的

[ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis

上一章 [ 搭建Redis本地服务器实践系列一 ] :图解CentOS7安装Redis 详细的介绍了Redis的安装步骤,那么只是安装完成,此时的Redis服务器还无法正常运作,我们需要对其进行一些配置,这个章节我们重点来讲解下如何对Redis配置文件进行配置才能顺利的启动Redis服务. 要了解Reids的配置项,我们需要先来认识一个脚本文件redis_init_script,从名字我们就能看出来,他就是Redis的初始化脚本,那么这个脚本文件长什么样子,里面有什么内容,又该怎么找到他呢?哈哈

[ 搭建Redis本地服务器实践系列三 ] :图解Redis客户端工具连接Redis服务器

上一章 [ 搭建Redis本地服务器实践系列二 ] :图解CentOS7配置Redis  介绍了Redis的初始化脚本文件及启动配置文件,并图解如何以服务的形式来启动.终止Redis服务,可以说我们的Redis本地服务器已基本搭建完成,那可能就有小伙伴要问了,什么叫基本搭建完成,原因是此时的Redis服务虽然已经可以正常启\停,但是客户端还无法远程连接到Redis并执行响应的操作.若要实现远程客户端正常连接,我们仍需要对Redis启动配置文件进行一些设置,这个章节我们重点来讲解下如何对Redis

搭建https本地服务器:如何得到被所有客户端认可的ssl证书

https,作为http的加密版,作用还是很大的:能够提升网站搜索权重,让你的网站更安全,而且如果你的网站没有使用https的话,将无法作为移动设备原生应用的api接口.可见掌握为网站启用https的技能还是很有用的. 当之前没接触过https的新人看到搭建https本地服务器这个需求,大部分心里都会暗想,不就是多了个s嘛,配置改一下不就完事了.如果你这样想,那么你很可能马上就会叫苦连天:怎么这么麻烦??步骤这么繁琐??不就是http加一个s吗?? 首先先明确一点,申请ssl证书不需要掌握它的原