2009-12-31 09:17:00 WInScar 阅读数 11562
  • micropython基础入门(esp32/esp8266单片机开发)

    micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。 同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。 能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。 为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。 为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。 为记录单片机传输过来的数据, 本教程会教大家入门数据库。 本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。 micropython版本是 2019年6月发布的1.11; 更多内容请看视频列表。 学习这门课程之前你需要至少掌握: 1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。 本视频使用到的零件与淘宝上大致价格:     1: 超声波传感器(3)     2: MAX9814麦克风放大模块(8)     3: DHT22(15)     4: LED(0.1)     5: 8路5V低电平触发继电器(12)     6: HX1838红外接收模块(2)     7:红外发射管(0.1),HX1838红外接收板(1)     other: 电表, 排线, 面包板(2)*2,ESP32(28)

    364 人正在学习 去看看 陈恩棋

Debian下配置邮件服务器全过程

 

1.安装虚拟机

现有系统是windows xp系统,在该系统下原先已经安装了VM 5.5。在配置过程中发现VM 5.5的许多配置过程稍显复杂,尤其是网络配置过程比较艰辛,所以选择了VM 6.5进行安装。安装过程中需要用到的序列码可以上网查找。

安装完成之后需要为后续安装的虚拟系统做准备。最主要的是虚拟连接的配置,这里就着重介绍下虚拟连接的配置过程。

在默认情况下,在虚拟机安装成功之后,系统会自动添加两个虚拟连接:VMNET1VMNET8。我们对它们的IP地址和网关暂时先不进行配置。先打开虚拟机,在菜单Edit下点开Virtual network editor。在summary标签下我们可以看到虚拟机建立的虚拟连接,它们有各自的作用。这里以NAT为例介绍配置过程。

点开NAT标签,在VMnet host下拉框内选择VMnet8(选择其他也可以,只是在后期的配置过程中有所不同)。点击应用了之后,可以看到普通情况下不可修改的Gateway ip address,记录下来。之后一路确定退出。然后回头在系统网络连接里修改VMnet8IP地址,子网掩码以及网关。将网关改成刚刚记录的那个网关,子网掩码自动生成,IP地址改成与该网关同网段的IP即可(不得与网关重IP)。

到此这个步骤结束。

 

2.安装debian操作系统

上网下载debian操作系统的镜像文件debian-503-i386-netinst.iso。该文件可在debian的官方网站上找到。这个镜像文件是精简版,不推荐安装,如果网络允许,可以考虑安装debian-503-i386-CD1.iso。这个镜像文件有650M左右,自带的工具可以基本满足前期配置系统的要求。以下就对虚拟机下利用镜像debian-503-i386-CD1.iso文件安装debian开始介绍:

VM下利用镜像进行安装就是在前期在虚拟机内设置好要安装的系统标识,以及各方面配置之后(注意:网络适配器选择NAT模式),启动虚拟系统,点击右下角的光驱,将其置为ISO模式。重启。这是就可进入安装界面。选择install graphic。之后一路按照提示安装完毕。

 

3.配置debian的网络设置

安装完毕后,进入系统,打开应用程序-->系统工具-->网络工具。在这里查看以太网卡(eth0)的IPV4协议下IP地址,子网掩码,广播域是否正常。通常情况下,这里出现的IP地址,会是与上述的网关同网段,与VMnet8不同的IP地址。

以上若正常,再打开系统-->系统管理-->网络。在这里查看系统内部使用的DNS服务器。在DNS标签下的DNS服务器内部,添加一个DNS服务器,IP202.106.46.151。这里要注意,切忌要使用该IP地址,某些其他的DNS服务器曾测试不能使用。设置完毕后保存,随意保存为一个名字。

然后在XP系统下,拨号上网,回到debian内部,测试网络是否连通。若出现问题,请检查上述配置是否都按要求配置完成,尤其是VMnet8下的IP及网关配置。若能浏览网页,则说明网络设置成功。(若无法联网,可以使用ping命令来测试与XP虚拟连接的连通性)

 

4.配置Sources.list文件

配置该文件的目的是使得后期安装必须使用的软件时,可以使得操作系统自己根据文件中所给的网址进行查找,不需要人为再下载软件包,这样工作量就少了许多。该文件的具体配置如下:

进入终端,输入命令

#su //进入管理员模式

#cd /etc/apt

#vim sources.list

这时进入vim编辑器,对文件进行编辑

将文件中所有内容删除,输入如下内容:

Deb http://ftp.de.debian.org/debian lenny main

保存退出

至此,sources.list文件配置完毕。

 

5.下载并安装邮件服务器所需软件包

在用debian-503-i386-CD1.iso安装的情况下,系统内部是不会自带postfix,dovecot等用以配置邮件服务器的软件包,所以我们需要进行安装。由于前面已经配置使系统可以上网,并且配置好了sources.list文件。这里我们直接输入如下命令从网上下载进行安装:

#sudu apt-get install postfix libsasl2-2 sasl2-bin libsasl2-modules dovecot-imapd dovecot-pop3d dovecot-common

接下来,系统会检查网络进行连接,下载并安装软件包等。安装过程中会询问关于邮件服务器的设置,此处由于要提供对外网的邮件接受发送服务,所以选择internet site。这中间任何一个软件包的安装都不能出错,如果出错请根据提示进行检查安装,否则会影响后期配置。

在安装完成之后,我们进入配置阶段。

 

6.配置邮件服务器

  首先,停掉这三项服务:

  sudo /etc/init.d/saslauthd stop

  sudo /etc/init.d/postfix stop

  sudo /etc/init.d/dovecot stop

  

  接下来,修改postfix的配置文件/etc/postfix/main.cf

  由于采用了sasl做认证,同时用dovecot作为pop3imapsmtp的服务,所以需要修改postfix的配置文件以适应需求。

  在/etc/postfix/main.cf文件中增加以下信息以支持sasl认证和dovecot服务。

  smtpd_sasl_type = dovecot

  smtpd_sasl_path = private/auth

  smtpd_sasl_auth_enable = yes

  smtpd_sasl_local_domain = yourdomain.com

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

  smtpd_sasl_security_options = noanonymous

  另外main.cf中的以下两个参数

  myhostname = yourhostname

  mydestination = yourdomain.com, localhost.localdomain, localhost

  分别代表了你的服务器信息,myhostname是你当前主机名,mydestination其中的yourdomain.com则是邮件服务器名。

  修改完毕后保存该文件。

  

  接下来,修改/etc/dovecot/dovecot.conf文件

  修改参数protocols

  protocols = pop3 imap

  设置参数disable_plaintext_auth

  disable_plaintext_auth = no

  找到auth default,将auth default改名为auth default2

  然后在这行前面增加如下信息

auth default {

mechanisms = plain login

passdb pam {

}

userdb passwd {

}

socket listen {

client {

path = /var/spool/postfix/private/auth

mode = 0660

user = postfix

group = postfix

}

}

}

  注意:这里的每个‘{’前都有个空格。

  然后保存该文件。

  接下来,修改sasl配置文件。

  debian默认的安装配置中sasl并不会自动启动,需要修改/etc/default/saslauthd文件。

  将其中的START=no修改为START=yes

  修改

  OPTIONS="-c -m /var/run/saslauthd"

  为

  OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

  然后保存该文件。

  在启用sasl的情况下postfix运行需要sasldb2文件在postfixchroot环境中。

  同时为了保证saslauthd能和postfix通讯,需要作如下的修改。

  删除位于/va/run目录下的saslauthd目录,然后创建一个指向/var/spool/postfix/var/run/saslauthd的符号连接。

  sudo rm -r /var/run/saslauthd/

  sudo mkdir -p /var/spool/postfix/var/run/saslauthd

  sudo ln -s /var/spool/postfix/var/run/saslauthd /var/run

  sudo chgrp sasl /var/spool/postfix/var/run/saslauthd

  sudo adduser postfix sasl

  另外postfix在运行的时候需要将/etc/sasldb2文件拷贝到chroot环境中。

  修改/etc/init.d/postfix文件,修改其中的FILES变量,在其中增加etc/sasldb2

  完成以上工作后启动三个服务。

  sudo /etc/init.d/saslauthd start

  sudo /etc/init.d/postfix start

  sudo /etc/init.d/dovecot start

  然后新增用户

  adduser username

  至此,邮件服务器的配置成功。

 

7.配置squirrelMail

在终端输入命令以下载安装squirrelMail

命令如下:

#apt-get install squirrelmail

之后会提示安装,安装成功后我们进入配置阶段。

打开squirrelmail的配置工具,在终端输入:

1.#/usr/share/squirrelmail/config/conf.pl

2.Command>>d

3.设置IMAP服务器类型名为:dovecot

4.Command>>2

5.domain改成yourdomainnamesendmail or SMTP改成SMTP

6.Command>>s

Squirrelmail的基本配置完成,现在可以通过浏览器查看网页邮箱了。在这之前,还需要配置下apache2。配置如下:

#cd /etc/apache2

#vim apache2.conf

然后在打开的文件内部添加下面这一行

Include /etc/squirrelmail/apache.conf

#/etc/init.d/apache2 restart

至此,配置结束

 

8.测试

利用命令

#adduser username

在服务器内部添加几个用户,利用这几个用户来测试邮件服务器是否配置成功。

打开浏览器,输入网址http://yourdomainname/squirrelmail 进行测试。

 

9.附加注意

 

  配置完上述的服务器只是个开始,后面的所有调试部分是最需要配置者自行进行研究的部分。在上述配置完成后,后续的调试极少有直接成功的,在不成功的情况下,希望大家自行利用各种工具和手段进行故障排除和问题解决。下面给出一些建议:

  1.查询系统邮件日志文件:/var/log/mail.log

  2.查询各种配置文件:/etc/postfix/main.cf    /etc/dovecot/dovecot.conf    /etc/apache/apache.conf    ……

  3.谷歌,雅虎,百度……

 

  我个人在ubuntu上重新配置邮件服务器的时候,就遇到了些问题,通过以上的这些方式得到了解决。比较重要的是对各种配置文件内各配置项的理解和掌握,大多情况下,是因为配置不当,导致了我们希望的功能无法完成。
  在 dovecot.conf 添加了如下一句:

    mail_location = mbox:~/mail:INBOX=/var/mail/%u

  在 main.cf 注释掉了如下这句:

    mailbox_command = procmail -a "$EXTENSION"

2018-05-09 17:56:20 MOU_IT 阅读数 1929
  • micropython基础入门(esp32/esp8266单片机开发)

    micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。 同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。 能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。 为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。 为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。 为记录单片机传输过来的数据, 本教程会教大家入门数据库。 本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。 micropython版本是 2019年6月发布的1.11; 更多内容请看视频列表。 学习这门课程之前你需要至少掌握: 1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。 本视频使用到的零件与淘宝上大致价格:     1: 超声波传感器(3)     2: MAX9814麦克风放大模块(8)     3: DHT22(15)     4: LED(0.1)     5: 8路5V低电平触发继电器(12)     6: HX1838红外接收模块(2)     7:红外发射管(0.1),HX1838红外接收板(1)     other: 电表, 排线, 面包板(2)*2,ESP32(28)

    364 人正在学习 去看看 陈恩棋

1、设置主机名
    通常,个人电脑使用单个名字来作为主机名。比如,你的Linux系统的主机名可能是linux,Debian, Ubuntu等。FQDN (Fully Qualified Domain Name) 由两个部分组成,节点名和域名。例如,mail.linuxdashen.com
就是FQDN形式的主机名。mail是节点名,linuxdashen.com是域名。面向互联网的服务器一般使用FQDN形式的主机名。邮箱服务器也应该使用FQDN形式的主机名。FQDN将会出现在smtpd横幅中(smtpd banner),这是Postfix向其他SMTP服务器表明自己身份的方式。如果你的SMTP服务器不用FQDN来表明自己的身份,那么收件人的SMTP服务器可能会拒收邮件。有些SMTP服务器甚至会查询DNS,验证FQDN是否真的解析为你的服务器IP。
  查看当前的主机名:hostname -f
  设置好主机名:hostnamectl set-hostname  your_hostname(例如:mail.yourdomain.com)

2、到域名提供商设置A记录、MX记录、PTR记录

(1)A记录:
  用来指定主机名(或域名)对应的IP地址记录。
  如:A  mail.yourdomain.com            <IP地址>
         A  www.yourdomain.com           <IP地址>
         A  mail222.yourdomain.com      <IP地址>

(2)MX记录:
      mx记录的作用是给寄信者指明某个域名的邮件服务器有哪些。它告诉全世界的SMTP服务器,你的邮箱服务器mail.yourdomain.com负责yourdomain.com的邮件发送和接收。邮箱服务器的常见DNS名字是mail.yourdomain.com。如果一个域名有多个邮箱服务器,那么可以设置多个MX记录,并设置优先级。优先级用数字表示,数字越小表示优先级越高。
      例如,当Internet上的某用户要发一封信给user@baidu.com 时,该用户的邮件系统通过DNS查找baidu.com这个域名的MX记录,如果MX记录存在,用户计算机就将邮件发送到MX记录(MX优先级数字越小优先级越高)所指定的邮件服务器上。   
  如:M mail.yourdomain.com(A记录主机名加域名) yourdomain.com1(优先级)
         M mail222.yourdomain.com(A记录主机名加域名)    yourdomain.com2(优先级)

(3)PTR记录:

       它将IP地址转换成主机名,与A记录刚好相反。这种解析被称为反向DNS解析(rDNS)。很多SMTP服务器会查找对方SMTP服务器的PTR记录,得到一个主机名,然后与对方SMTP声称的主机名作比较,如果两者一致,就接收邮件,反之不接收邮件或放进垃圾箱。为了不让你的邮件被拒收或放进垃圾箱,你应该为你的服务器IP设置PTR记录。
   例如:v=spf1 mx:mail.yourdomain.com ip4:<IP> ~all

(4)NS记录:

        为某个域名的解析指定域名服务器DNS

(5)CNAME记录:
     CNAME (Canonical Name)记录,通常称别名指向。在这里,您可以定义一个主机别名,比如设置mail.mydomain.com,用来指向一个主机www.mydomain.com那么以后就可以用mail.mydomain.com来代替访问www.mydomain.com了

3、安装postfix
(1)安装:apt-get install postfix -y  
      安装过程中需要输入域名比如:xxx.com
(2)查看版本:postconf mail_version
(3)编辑配置文件:vim /etc/postfix/main.cf
      myhostname = mail.example.com
      mydestination = $myhostname, localhost.$mydomain, $mydomain
(4)重启服务:systemctl restart postfix
(5)使用netstat来查看Postfix的监听情况:netstat -lnpt
        Postfix的master进程监听TCP 25号端口。
(5)查看开放的端口:nmap <your-server-ip>
(6)发送邮件:echo "test email" | sendmail yourmail.com (这里可能会发不出去,因为很多大型邮件服务器会为了避免垃圾邮件,会根据你的IP来反解析你的域名,而反解析的功能需要向你的服务器提供商申请。但是这里向本地邮件服务器的其它用户发送会成功。)
(7)卸载:apt-get --purge remove  postfix

4、安装邮件客户端mailutils
(1)安装:apt-get install mailutils
(2)发邮件:mail yourmail.com
       输入主题和正文后,按Ctrl+D来发送邮件。
(3)要查看收件箱,输入mail就行了。
(4)查看邮件保存的目录:postconf mail_spool_directory
     每个用户的邮件保存在/var/spool/mail<username>和/var/mail/<username>文件中
     Postfix的收发日志保存在/var/log/mail.log文件中。
     Postfix本身的运行错误日志保存在/var/log/mail.err文件中。
参考:https://blog.csdn.net/oolocal/article/details/52861583
          https://www.cnblogs.com/pinganzi/p/8252863.html

2017-02-05 02:06:57 weixin_34240657 阅读数 182
  • micropython基础入门(esp32/esp8266单片机开发)

    micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。 同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。 能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。 为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。 为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。 为记录单片机传输过来的数据, 本教程会教大家入门数据库。 本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。 micropython版本是 2019年6月发布的1.11; 更多内容请看视频列表。 学习这门课程之前你需要至少掌握: 1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。 本视频使用到的零件与淘宝上大致价格:     1: 超声波传感器(3)     2: MAX9814麦克风放大模块(8)     3: DHT22(15)     4: LED(0.1)     5: 8路5V低电平触发继电器(12)     6: HX1838红外接收模块(2)     7:红外发射管(0.1),HX1838红外接收板(1)     other: 电表, 排线, 面包板(2)*2,ESP32(28)

    364 人正在学习 去看看 陈恩棋

第一步

#apt-get update

#apt-get upgrade

#apt-get install postfix libsasl2-2 sasl2-bin libsasl2-modules dovecot-imapd dovecot-pop3d dovecot-common

第二步

配置邮件服务器

首先,停掉这三项服务:

  #postfix stop

  #service dovecot stop

  

  接下来,修改postfix的配置文件/etc/postfix/main.cf

  由于采用了sasl做认证,同时用dovecot作为pop3、imap和smtp的服务,所以需要修改postfix的配置文件以适应需求。

  在/etc/postfix/main.cf文件中增加以下信息以支持sasl认证和dovecot服务。

  smtpd_sasl_type = dovecot

  smtpd_sasl_path = private/auth

  smtpd_sasl_auth_enable = yes

  smtpd_sasl_local_domain = yourdomain.com

smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

  smtpd_sasl_security_options = noanonymous

  message_size_limit = 10240000

  另外main.cf中的以下两个参数

  myhostname = yourhostname

  mydestination = yourdomain.com, localhost.localdomain, localhost

  分别代表了你的服务器信息,myhostname是你当前主机名,mydestination其中的yourdomain.com则是邮件服务器名。

  修改完毕后保存该文件。

  

  接下来,修改/etc/dovecot/dovecot.conf文件

  修改参数protocols为

  protocols = pop3 imap

  修改mail_location为

  mail_location = mbox:~/mail:INBOX=/var/mail/%u (这里需要注意dovecot设置的邮件类型为mbox,而postfix默认邮件格式也能是Maildir。如果这里设置的为mail_location=mail:~/Maildir,会出现收件箱里没有东西)

  设置参数disable_plaintext_auth为

  disable_plaintext_auth = no

  找到auth default,将auth default改名为auth default2。

  然后在这行前面增加如下信息

auth default {

mechanisms = plain login

passdb pam {

}

userdb passwd {

}

socket listen {

client {

path = /var/spool/postfix/private/auth

mode = 0660

user = postfix

group = postfix

}

}

}

  注意:这里的每个‘{’前都有个空格。

  然后保存该文件。

  接下来,修改sasl配置文件。

  debian默认的安装配置中sasl并不会自动启动,需要修改/etc/default/saslauthd文件。

  将其中的START=no修改为START=yes。

  修改

  OPTIONS="-c -m /var/run/saslauthd"

  为

  OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"

  然后保存该文件。

  在启用sasl的情况下postfix运行需要sasldb2文件在postfix的chroot环境中。

  同时为了保证saslauthd能和postfix通讯,需要作如下的修改。

  删除位于/va/run目录下的saslauthd目录,然后创建一个指向/var/spool/postfix/var/run/saslauthd的符号连接。

  sudo rm -r /var/run/saslauthd/

  sudo mkdir -p /var/spool/postfix/var/run/saslauthd

  sudo ln -s /var/spool/postfix/var/run/saslauthd /var/run

  sudo chgrp sasl /var/spool/postfix/var/run/saslauthd

  sudo adduser postfix sasl

  另外postfix在运行的时候需要将/etc/sasldb2文件拷贝到chroot环境中。

  修改/etc/init.d/postfix文件,修改其中的FILES变量,在其中增加etc/sasldb2

  完成以上工作后启动三个服务。

   #postfix start

#service dovecot start

  然后新增用户

  adduser username

  至此,邮件服务器的配置成功。

 查询系统邮件日志文件:/var/log/mail.log
 

启动Postfix 和 Dovecot

首先检查系统中是否安装了sendmail,一般情况都有sendmail,这里要先将sendmail服务关闭,或者是卸载sendmail

#service sendmail stop #关闭sendmail服务

#chkconfig sendmail off #关闭开机自动运行sendmail服务

#postfix start #打开postfix服务

#chkconfig postfix on #开机自动运行postfix服务(我设置后开机任旧不会自动运行postfix)

#service dovecot start #打开dovecot服务

#chkconfig dovecot on #开机自动运行dovecot服务

将postfix加入到root的组:

#usermod -G root postfix

检查服务是否开启,如果服务打开会显示如下结果

#nmap localhost

PORT STATE SERVICE

22/tcp open ssh

25/tcp open smtp

110/tcp open pop3

如果没有安装nmap命令,可以使用netstat命令

#netstat -nlt

添加邮件服务器用户并分配邮箱
首先添加邮件服务器用户

#adduser username //添加用户

#passwd username //设置密码

由于前面设置mail_location=mbox:~/mail:INBOX=/var/mail/%u,所以,所创建的用户目录下有具有mail目录,如果不存在该目录,如下操作

#telnet ip地址 110

#user username

+OK

#pass password

+login

#chmod 700 /home/username/Maildir //很重要

2017-07-03 15:06:21 qq_27657429 阅读数 2128
  • micropython基础入门(esp32/esp8266单片机开发)

    micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。 同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。 能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。 为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。 为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。 为记录单片机传输过来的数据, 本教程会教大家入门数据库。 本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。 micropython版本是 2019年6月发布的1.11; 更多内容请看视频列表。 学习这门课程之前你需要至少掌握: 1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。 本视频使用到的零件与淘宝上大致价格:     1: 超声波传感器(3)     2: MAX9814麦克风放大模块(8)     3: DHT22(15)     4: LED(0.1)     5: 8路5V低电平触发继电器(12)     6: HX1838红外接收模块(2)     7:红外发射管(0.1),HX1838红外接收板(1)     other: 电表, 排线, 面包板(2)*2,ESP32(28)

    364 人正在学习 去看看 陈恩棋

自己搭建邮件服务器有许多好处,比如可以解决隐私问题。自己的邮件服务器只有自己才能查看里面的邮件,再也不用担心电子邮箱提供商比如Gmail、 QQ邮箱、网易邮箱的员工偷看我们的邮件了,或者把我们的邮件提供给政府机构。另外一个好处是发送附件不用担心附件的大小。Gmail的附件不能超过 25M,QQ邮箱的普通附件不能超过20M。有了自己的邮件服务器,我们可以自己限定附件的大小。

在这篇教程中,我将告诉你如何搭建一个简单的Postfix+Dovecot邮件服务器。Postfix是一个MTA,而Dovecot同时实现了MDA和IMAP/POP3服务器两个功能。这篇教程是写给Debian 8 Jessie 用户的,但对其他基于Debian的Linux发行版也有很大的参考价值。在下文中,用domain.com来表示一个域名,你需要将domain.com替换成你自己的域名。完成了所有步骤后,我们的服务器将会有下面的功能:

  • 接收和投递邮件 (Postfix,SMTP协议)
  • 从邮件客户端读取邮件服务器上的邮件 (Dovecot,IMAP协议)
  • 加密连接 (SSL/TLS协议)
  • 用户名和密码验证登录 (PAM)

在开始安装前,我强烈建议读者先阅读电子邮件系统是如何运作的?这篇文章。邮件服务器的搭建比web服务器的搭建要复杂得多,了解电子邮件系统背后的原理对下面进行的复杂配置有很大帮助,对今后管理自己的邮件服务器也有用处。搭建一个完全符合自身要求的Linux邮件服务器是一个艰难的过程,除非你是一个专业的服务器管理员。不过,我将详细解释每一个步骤,只要你了解一些基本的Linux命令,并付出一点时间,成功搭建起来并不是一个问题。

设置DNS MX记录和A记录

首先我们需要在域名注册商网站设置好DNS记录以正确地接收和投递邮件。通常邮件服务器需要设置一个MX记录和一个A记录,形式如下:

@         MX       mail.domain.com
mail      A        12.34.56.78

其中@符号表示主机名为空,相当于domain.com。第一条MX记录指定了domain.com这个域名的邮件服务器主机名。它的意思是:如果收件人邮箱地址@符号后面的域名是domain.com,那么发件人的MTA要将邮件投递到mail.domain.com这个主机。第二条A记录将mail.domain.com解析成IP地址。

例如,我的邮箱地址是xiao@linuxbabe.com,邮箱地址@符号后面的域名是linuxbabe.com。在你给我发邮件时,你的MTA首先查询DNS MX记录,“哦,原来是mail.linuxbabe.com这个主机负责linuxbabe.com的邮件呀”。然后你的MTA将查询mail.linuxbabe.com主机的IP地址,也就是从A记录找到mail.linuxbabe.com主机的IP地址,从而可以投递成功。

MX的全称是 Mail Exchanger, A的全称是 Address, 特指 IP Address。

第二条A记录的IP地址可以与web服务器的IP地址相同,也可以不同。这就是说,我们可以在原有web服务器基础上再搭建一个邮件服务器,也可以在另外一台主机上单独搭建邮件服务器。通常web服务器的DNS记录有两条,形式如下:

@               A          12.34.56.78
www             A          12.34.56.78

第一条A记录表示当我们在浏览器地址栏输入domain.com时,浏览器将连接到12.34.56.78这台主机,第二条A记录表示在浏览器地址栏输入www.domain.com时,浏览器将连接到12.34.56.78

验证DNS记录是否设置正确

在终端中输入下面的命令,寻找domain.com的邮件服务器主机名

dig MX domain.com +short

然后输入下面的命令寻找邮件服务器的IP地址,假设邮件服务器的主机名为mail.domain.com

dig A mail.domain.com +short

如果这条命令显示的IP地址是你服务器的IP地址,那么你的DNS设置就是正确的。

对 dig MX domain.com +short命令输出结果的解释:比如我的输出结果如下:
0 mail.linuxbabe.com.
你会发现邮件服务器主机名前面有一个数字,数字表示这个主机的优先级。有些网站的邮件服务器可能有两三个,数字越低优先级越高。优先级高的邮件服务器接收邮件,其他邮件服务器不接收邮件。但如果优先级高的邮件服务器不在线了,那么发件人的邮件服务器便会把邮件发给下一个优先级的邮件服务器。


你还会发现邮件服务器的主机名后面多了一个小数点。这是因为 dig命令是从 DNS服务器的 zone文件查询信息,zone文件的格式要求 MX对应的邮件服务器主机名要以小数点结束。你在设置 DNS MX记录时不需要加末尾的小数点,因为你是在域名注册商网站编辑 DNS记录,而不是直接编辑 zone文件。末尾的小数点会在你编辑完 DNS MX记录后在 zone文件里自动添加。你在输入 dig A mail.domain.com +short命令时也不需要添加末尾小数点。

获取一个SSL证书

为了邮件的加密传输,我们需要为邮件服务器安装SSL证书。SSL证书分为两种,CA证书和自签证书。CA(Certificate Authority)是浏览器信任的第三方证书签发机构,比如VeriSign。一般情况下CA证书是要花钱买的。自签证书就是自己给自己发一个SSL证书,不过这种证书不太理想。因为浏览器不会信任自签的证书。不过有一个叫Let’s Encrypt的CA机构可以提供免费版本的证书,具体的申请过程请看这篇文章。获得Let’s Encrypt的免费CA证书后,请继续往下看。

安装Postfix

Postfix是一个安全稳定、容易配置的MTA,常见于Unix-like服务器。事实上它是Mac OS X系统默认的MTA。
登录Debain Server,输入下面的命令安装Postfix:

sudo apt-get install postfix

安装过程中会问你邮件服务器的配置类型,如下图。一般情况下,我们需要选择第二个Internet Site。

Selection_023

No configuration 表示不要做任何配置;
Internet Site 表示直接使用本地SMTP服务器发送和接收邮件;
Internet with smarthost 表示使用本地SMTP服务器接收邮件,但发送邮件时不直接使用本地SMTP服务器,而是使用第三方smart host来转发邮件;
Satellite system 表示邮件的发送和接收都是由第三方smarthost来完成。
Local only 表示邮件只能在本机用户之间发送和接收。

在第二个页面填入你的域名,也就是邮箱地址@符号后面的域名,比如,我的邮箱地址是xiao@linuxbabe.com,所以我填的是linuxbabe.com。

Selection_024

选择OK后,postfix便开始安装,并会根据你的选择和填入的信息生成一个配置文件/etc/postfix/main.cf。

Postfix有一个工具叫做 postconf,你可以输入下面的命令查看 Postfix的版本:

sudo postconf mail_version

Postfix安装好后,就可以收发邮件了。如果你的服务器上有一个用户叫user,那么这个用户的邮箱地址就是user@domain.com。你的服务器上肯定有一个用户叫root,所以root的邮箱地址就是root@domain.com。现在你可以在自己的电脑上给你的服务器用户发送一封测试邮件。发完测试邮件后,在服务器上执行命令mail来查看测试邮件的内容。在mail命令行工具中输入reply来回复这封测试邮件。点击此链接学习如何在命令行界面收发邮件。

配置Postfix

不过,到现在,我们只能在服务器上用命令行来收发邮件,我们最终的目的是要能够在自己的桌面上用邮箱客户端来收发邮件。所以我们还需要做下面的配置。postfix有两个主要的配置文件,一个是/etc/postfix/main.cf,另外一个是/etc/postfix/master.cf。

main.cf   myhostname, mydestination, myorigin

首先我们来编辑/etc/postfix/main.cf文件,用你喜欢的文本编辑器打开它:

sudo vi /etc/postfix/main.cf

首先设置文件中第31行myhostname的值。Postfix在接收和发送邮件时,会用myhostname的值向其他SMTP服务器说明自己的身份。myhostname的值要对应域名MX记录的主机名。我的MX记录如下:

@            MX         mail.linuxbabe.com

所以我把myhostname的值设置成mail.linuxbabe.com

myhostname = mail.linuxbabe.com

第35行mydestination的值按照下面的设置。Postfix可以负责多个域名的邮件收发业务。我们就是通过mydetination这个参数来指定这些域名。这篇教程只考虑一个域名的邮件收发业务。Postfix在安装过程中,会自动添加localhost.locadomain和localhost到mydestination的值中,这是为了方便本机用户之间的邮件发送。

mydestination = linuxbabe.com, mail.linuxbabe.com, localhost.linuxbabe.com, localhost

然后第34行设置myorigin的值。前面说过,Postfix可以负责多个域名的邮件业务,我们要指定其中一个域名为myorigin。其实在安装postfix的时候我们已经设置好了。myorigin的值就是System mail name的值。它保存在/etc/mailname 文件中。所以myorigin在/etc/postfix/main.cf的值如下:

myorigin = /etc/mailname

你也可以将它直接设置成域名,如

myorigin = linuxbabe.com

master.cf  启用MSA和SMTPS

Postfix自带了一个MSA。当发件人从邮件客户端发送邮件时,MSA接收邮件客户端的邮件,然后提交给Postfix的MTA模块,MTA再发送给收件人的MTA。

邮件客户端和MSA之间使用SMTP协议。当MSA使用SSL/TLS来加密SMTP协议时,会打开465号端口,这时称协议为SMTPS协议。当MSA使用STARTTLS来加密SMTP时,会打开587号端口。输入下面的命令打开/etc/postfix/master.cf文件:

sudo vi /etc/postfix/master.cf

找到以Submission和SMTPS开头的那两行,去掉前面的#符号。-o 表示选项(option),绿色表示要去掉前面的#符号,如果没有这一行,那么要手动添加。如下:

submission inet n - - - - smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
smtps inet n - - - - smtpd
# -o syslog_name=postfix/smtps
# -o smtpd_tls_wrappermode=yes
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING

submission这一行启用MSA服务,SMTPS这一行启用SMTPS服务。你也可以只启用MSA,不启用SMTPS。因为MSA默认使用STARTTLS加密,SMTPS快要过时了。

25号端口是MTA打开的端口,当其他MTA发来邮件或本地MSA提交邮件要发送出去时,它们要连接到25号端口。465/587号端口是MSA为MUA打开的端口。

main.cf 安装SSL证书

要加密SMTP协议,我们的邮件服务器必须要有一个SSL证书。从StartSLL取得一个证书后,我们要把证书和私钥安装在邮件服务器上。假设证书文件是unified.crt,保存在/etc/ssl/certs/unified.crt。私钥文件是my-private-decrypted.key,保存在/etc/ssl/certs/my-private-decrypted.key。打开/etc/postfix/main.cf文件,从第21行开始,作如下修改:

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/unified.crt
smtpd_tls_key_file=/etc/ssl/private/my-private-decrypted.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_security_level=may
smtpd_tls_protocols = !SSLv2, !SSLv3

前面两行指定证书和私钥的在文件系统中的路径,第三行启用TLS加密,第四行和第五行指定缓存文件。第六行的意思是对方邮件服务器或邮件客户端可以选择加密,也可以不加密。最后一行指定不可以使用SSLv2和SSLv3来加密,只允许TLSv1.0以上版本的加密方式。因为这两种加密方式早就过时了,SSLv2在1994年发布,SSLv3在1996年发布。

重新加载Postfix配置文件

配置完Postfix后,输入下面的命令重新加载Postfix配置文件:

sudo /etc/init.d/postfix reload && sudo postfix reload

安装并配置Dovecot

接下来我们要安装并配置Dovecot。Dovecot是一个IMAP/POP3服务器。有了Dovecot,我们才能在自己的邮件客户端读取我们的邮件。

安装Dovecot

输入下面的命令安装Dovecot核心软件包以及IMAP服务器。我们不安装POP3服务器,因为POP3使用不方便。

sudo apt-get install dovecot-core dovecot-imapd

查看Dovecot的版本:

user@debian:~$ sudo dovecot --version
 2.2.13

配置Dovecot

先备份然后编辑/etc/dovecot/dovecot.conf文件:

sudo mv /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.orig
sudo vi /etc/dovecot/dovecot.conf

现在,把下面的内容粘贴到空白的/etc/dovecot/dovecot.conf文件中。

disable_plaintext_auth = no
mail_privileged_group = mail
mail_location = mbox:~/mail:INBOX=/var/mail/%u
userdb {
      driver = passwd
}
passdb {
     args = %s
     driver = pam
}
protocols = " imap"

第一行启用了明文+TLS验证,第二行告诉dovecot以mail系统组的权限访问邮箱,第三行告诉了dovecot邮箱在文件系统中的路径。userdb和passdb让dovecot以Unix验证方式来验证用户。最后一行让dovecot只启用IMAP服务。

下面,让dovocot添加一个垃圾箱和已发送文件夹。在/etc/dovecot/dovecot.conf文件中添加如下内容:

protocol imap {
      mail_plugins = " autocreate"
}
plugin {
      autocreate = Trash
      autocreate2 = Sent
      autosubscribe = Trash
      autosubscribe2 = Sent
}

然后我们需要让dovecot打开一个Unix Socket,以便和Postfix之间进行验证。在文件中添加如下内容:

service auth {
      unix_listener /var/spool/postfix/private/auth {
      group = postfix
      mode = 0660
      user = postfix
    }
}

最后,配置SSL证书和私钥:

ssl=required
ssl_cert = </etc/ssl/certs/unified.crt
ssl_key = </etc/ssl/private/my-private-decrypted.key

保存文件后退出文本编辑器

为root设置一个别名

根据SMTP RFC的规定,所有的邮件服务器上都必须要有postmaster这个邮箱账号。另外一些人期望你的邮件服务器上有hostmaster, abuse, webmaster这些邮箱账号。在/etc/aliasese这个文件中,系统默认设置了很多个别名。postmaster, nobody, hostmaster等这些都是root的别名,所以当别人往这些邮箱账号发邮件时,会被转发到root的邮箱。

mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root

如果你想将root的邮件转发给另外一个用户,比如username , 那么在/etc/aliases末尾添加下面一行:

root: username

将username更改成你的用户名。保存/etc/aliases文件后,我们需要重新生成一个/etc/aliases.db文件,执行下面的命令:

sudo newaliases

root的邮件被转发后,root邮箱不会保留被转发的邮件。

重启Postfix和Dovecot

输入命令

sudo service postfix restart && sudo service dovecot restart

sudo systemctl restart postfix && sudo systemctl restart dovocot

在邮件客户端测试我们的邮件服务器

重启之后,我们就可以在桌面电脑使用邮件客户端来测试我们的邮件服务器了。推荐使用thunderbird邮件客户端。邮箱的用户名和密码就是服务器的用户名和密码。如下图,thunderbird自动检测到了linuxbabe.com邮件服务器的IMAP和SMTP服务器配置,并能正确收发邮件。

Mail Account Setup_028

总结

在这篇教程中,我们首先安装了Postfix。Postfix是一个MTA,也可以叫做SMTP服务器。安装好Postfix后,我们可以登录服务器收发邮件。然后,我们对Postfix做了一些配置,并启用了MSA模块。MSA可以让我们在邮件客户端发送邮件。接下来我们安装了SSL证书。之后我们安装了Dovecot,Dovecot是一个POP3/IMAP服务器。我们的邮箱客户端连接到POP3/IMAP服务器后便可以查看邮件服务器上接收到的邮件。我们还设置了邮箱账号的别名以方便对邮件的接收和管理。

转载自:

https://www.linuxdashen.com/debian-8-server%E6%90%AD%E5%BB%BApostfixdovecot%E9%82%AE%E4%BB%B6%E6%9C%8D%E5%8A%A1%E5%99%A8

2018-06-15 22:21:26 TX_38381516129 阅读数 478
  • micropython基础入门(esp32/esp8266单片机开发)

    micropython语法和python3一样,编写起来非常方便。如果你快速入门单片机玩物联网而且像轻松实现各种功能,那绝力推荐使用micropython。方便易懂易学。 同时如果你懂C语音,也可以用C写好函数并编译进micropython固件里然后进入micropython调用(非必须)。 能通过WIFI联网(2.1章),也能通过sim卡使用2G/3G/4G/5G联网(4.5章)。 为实现语音控制,本教程会教大家使用tensorflow利用神经网络训练自己的语音模型并应用。 为实现通过网页控制,本教程会教大家linux(debian10 nginx->uwsgi->python3->postgresql)网站前后台入门。 为记录单片机传输过来的数据, 本教程会教大家入门数据库。 本教程会通过通俗易懂的比喻来讲解各种原理与思路,并手把手编写程序来实现各项功能。 micropython版本是 2019年6月发布的1.11; 更多内容请看视频列表。 学习这门课程之前你需要至少掌握: 1: python3基础(变量, 循环, 函数, 常用库, 常用方法)。 本视频使用到的零件与淘宝上大致价格:     1: 超声波传感器(3)     2: MAX9814麦克风放大模块(8)     3: DHT22(15)     4: LED(0.1)     5: 8路5V低电平触发继电器(12)     6: HX1838红外接收模块(2)     7:红外发射管(0.1),HX1838红外接收板(1)     other: 电表, 排线, 面包板(2)*2,ESP32(28)

    364 人正在学习 去看看 陈恩棋

【任务说明】

Postfix 是一种电子邮件服务器,它是由任职于IBM华生研究中心(T.J. Watson Research Center)的荷兰籍研究员Wietse Venema为了改良sendmail邮件服务器而产生的。最早在1990年代晚期出现,是一个开放源代码的软件,postfix想要作用的范围是广大的Internet用户,试图影响大多数的Internet上的电子邮件系统,因此它是免费的。

postfix在性能上大约比sendmail快三倍。一部运行postfix的台式PC每天可以收发上百万封邮件。postfix是sendmail兼容的,从而使sendmail用户可以很方便地迁移到postfix。postfix被设计成在重负荷之下仍然可以正常工作。当系统运行超出了可用的内存或磁盘空间时,postfix会自动减少运行进程的数目。当处理的邮件数目增长时,postfix运行的进程不会跟着增加。

postfix是由十多个小程序组成的,每个程序完成特定的功能。你可以通过配置文件设置每个程序的运行参数。

postfix具有多层防御结构,可以有效地抵御恶意入侵者。如大多数的postfix程序可以运行在较低的权限之下,用户不可以通过网络访问postfix安全性相关的本地投递程序。

某生产加工企业希望在企业网环境中架设一台电子邮件服务器,为本单位用户提供邮件服务。该服务器的地址为192.168.223.250和一个合法的域名mail.yhy.com,并且DNS的MX记录也指向该域名,现规划采用Postfix软件来搭建企业的邮件服务器。

【任务实施】

第1步:配置服务器网络环境

本服务器即是DNS服务器又是邮件服务器,IP地址分别设置为192.168.223.250设置过程如下:

【cd  /etc/sysconfig/network-scripts】进入网卡文件存放目录

【cp ifcfg-eth0 ifcfg-eth0.bak】备份将要编辑的网卡配置文件


【vim /etc/sysconfig/network-scripts/ifcfg-eth0】打开并编辑网卡配置文件

/etc/sysconfig/network-scripts/ifcfg-eth0文件修改内容

第2步:安装和配置DNS服务

(1)【yum -y install -y bind】安装DNS程序

(2)修改/etc/named.conf

【cp  /etc/named.conf  /etc/named.conf.bak】备份将要编辑的DNS主配置文件

im /etc/named.confv打开并编辑DNS主配置文件

改掉以下只针对本服务器提供服务的三行内容,如果不修改的话,DNS服务器只针对本身的查询提供应答,不对其他客户端提供域名解析服务。

listen-on port 53 { 127.0.0.1; };

listen-on-v6 port 53 { ::1; };

allow-query     { localhost; };

修改后的内容如图11-1所示保存退出

 

图11-1 /etc/named.conf文件内容截图

(3)修改/etc/named.rfc1912.zones

【vim /etc/named.rfc1912.zones】打开并编辑named.rfc1912.zones文件,在此文件中定义解析的域名yhy.com以及提供域名解析正向查找区域文件为yhy.com.zone 

/etc/named.rfc1912.zones文件中添加如图11-2所示的内容。

 

图11-2  /etc/named.rfc1912.zones文件内容修改截图

(4)创建正向查找区域文件yhy.com.zone

【cp -p /var/named/named.localhost  /var/named/yhy.com.zone 】复制样本区域文件yhy.com.zone一定记得带-p参数连带权限一并复制。

【vim  /var/named/yhy.com.zone】编辑正向查找区域文件

添加如图11-3所示的内容,保存退出,当发送@yhy.com的邮件转发到pop.yhy.com服务器上。

 

图11-3/var/named/yhy.com.zone文件内容修改截图

为了防止权限问题,需要确保该文件所属组为named

【chown :named /var/named/yhy.com.zone】

(5)启用DNS服务

【service named start】

如果出现出现Generating /etc/rndc.key错误,解决方法就是运行下面的命令导入key:

【rndc-confgen -r /dev/urandom –a】

 (6)修改防火墙设置

【vim /etc/sysconfig/iptables】

增加两行,允许53端口和953端口通过防火墙


重启防火墙服务

【service iptables restart】


第3步:安装和配置相关邮件服务

安装相关邮件服务

【yum -y install postfix dovecot mailx】


第4步:配置postfix服务

【vim /etc/postfix/main.cf】编辑/etc/postfix/main.cf配置文件。

修改为如下内容(计算机名和域名根据情况修改)

queue_directory = /var/spool/postfix   #列队目录 

command_directory = /usr/sbin # 控制命令文位置 

daemon_directory = /usr/libexec/postfix  #后台管理程序位置 

data_directory = /var/lib/postfix

mail_owner = postfix  #设置邮件及邮件队列的所有者 

myhostname = pop.yhy.com  #必须是完整的主机名 

mydomain = yhy.com

myorigin = $myhostname

myorigin = $mydomain

inet_interfaces = all # 让postfix服务监听的端口 

inet_protocols = all

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

unknown_local_recipient_reject_code = 550

mynetworks = 0.0.0.0/0  #允许内部用户匿名SMTP连接请求范围 

alias_maps = hash:/etc/aliases # 别名数据库查询 

alias_database = hash:/etc/aliases # 别名数据库 

home_mailbox = Maildir/

debug_peer_level = 2   #排错相关 

debugger_command =

PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin

ddd $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail.postfix  #sendmail目录 

newaliases_path = /usr/bin/newaliases.postfix   #newaliases目录 一个命令 重建别名数据库

mailq_path = /usr/bin/mailq.postfix   #mailq工具所在目录

setgid_group = postdrop    #所有者组

html_directory = no

manpage_directory = /usr/share/man   #man目录

sample_directory = /usr/share/doc/postfix-2.6.6/samples   #模版目录

readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES #说明文件目录

smtpd_sasl_type = dovecot

smtpd_sasl_path = private/auth

smtpd_sasl_auth_enable = yes #是否开启sasl验证

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, permit #反垃圾邮件相关

broken_sasl_auth_clients = yes

第5步:设置postfix在服务器中运行

【service postfix restart】启动postfix服务


【chkconfig postfix on】设置postfix服务开机后自动启动

第6步:配置dovecot服务

(1)配置dovecot接收邮件服务器主配置文件

【vim /etc/dovecot/dovecot.conf】编辑/etc/dovecot/dovecot.conf文档。

将以下两行的#去掉,修改为如下内容

 

 

 

具体修改内容如图11-4所示。

 

图11-4 dovecot主配置文件修改内容截图

(2)配置认证方式

【vim /etc/dovecot/conf.d/10-auth.conf】打开编辑10-auth.conf认证方式文件将以下两行内容前面的注释符号去掉

(3)配置文件夹位置

【vim /etc/dovecot/conf.d/10-mail.conf】打开编辑10-mail.conf文件配置邮件的存放位置将以下一行前面注释符号去掉

 (4)配置认证

【vim /etc/dovecot/conf.d/10-master.conf】打开编辑10-master.conf文件

将以下内容的前两行的注释符号去掉,然后增加后面两行内容,修改后的内容如下

 

5)配置pop3

【vim /etc/dovecot/conf.d/20-pop3.conf】打开编辑20-pop3.conf文件,将以下内容前面 注释“#去掉,修改后的内容如下:

第7步:重启相关服务

【service dovecot restart】重启dovecot服务

【chkconfig dovecot on】设置dovecot服务开机自动启动

第8步新增邮件用户

(1)创建yang3 和li4 都不允许本地登录

【useradd -s /sbin/nologin yang3】创建yang3用户并指定不可用的shell(登录环境

【useradd -s /sbin/nologin  li4】创建li4用户并指定不可用的shell

(2)设置123456为两个用户的初始密码:

【echo 123456 | passwd --stdin yang3】设置yang3密码为123456

【echo 123456 | passwd --stdin li4】设置li4密码为123456

当看到有“successfully”字样时,表示密码设置成功。

第9步:配置防火墙

【iptables –F】   清空防火墙

【service iptables save】 保存防火墙配置

第10步:测试相关服务

没有更多推荐了,返回首页