如何给postfix添加用户和密码
1配置postfix a /etc/postfix/maincf 配置mydomian(域名),myhostname,myorigin,inet_interfaces=all(其他关闭),mynetworks-style,mydestination,mynetworks,relay_domains,home_mailbox 配置主机名和域名mydomainmyhostname 设置由本机寄出的邮件所使用的域名或主机名称myorigin 设置postfix服务监听的网络接口inet_interfaces 设置可接受邮件的主机名称和域名mydestination 设置可以转发哪些网络的邮件mynetworks 设置可以转发哪些网域的邮件relay_domains=sinacnb验证:telnetlocalhost25mailfrom:sun@baiducom(发件人任意)rcptto:user1@mail1991syjcom(收件人创建的名字和设置好的域名)data(输入信息)(结束输入)quit(离开)2配置dovecotyuminstall-ydovecot a配置文件:a vim/etc/dovecot/dovecotconf (protocols=imappop3) b vim/etc/dovecot/confd/10-authconf (disable_plaintext_auth=no) cvim/etc/dovecot/confd/10-mailconf (mail_location=maildir:~/Maildir)地址要和postfix服务器配置文件中的home_mailbox地址一致 dvim/etc/dovecot/confd/10-sslconf (ssl=yes) evim/etc/pamd/dovecot (查看pam认证文件)b验证:[root@CentOS6~]#telnetlocalhost110Trying::1ConnectedtolocalhostEscapecharacteris'^]'+OKDovecotreadyuseruser1+OKpass123+OKLoggedinlist+OK4messages:1472245834644464retr3+OK464octetsReturn-Path:X-Original-To:syj@mail1991syjcomDelivered-To:syj@mail1991syjcom3邮件客户端的配置 a关闭防火墙,selinux b设置收发邮件服务器我这里是用的foxmail看我的截图这样就可以了
关于查看端口状态:
你应该可以得到服务器的IP地址吧,得不到也没关系,应该有域名才对。
然后使用你的本机telnet你的服务器25端口,看是否有数据返回
具体做法是运行->CMD->输入命令telnet xxxcom 25
如果你使用的是win7系统,没有安装telnet系统功能的话,可以到以下位置打开:
控制面板->程序和功能->(左侧列表最下方)打开或关闭windows功能->Telenet客户端->打勾后确定
待安装好后,重启cmd,重新尝试第一个操作
如果迟迟保持在“正在连接”状态好一会,而后出现“无法打开到主机的连接。在端口 25:连接失败,那证明服务器没有开通25口,如果你用的是VPS,端口好像可以自行配置,毕竟是Linux系统,我不太会配置,你自行找相关的方法,如果是虚拟服务器,那就不行了,不过你可以再弄个企业邮局,或者使用申请的其它邮箱,比如网易的、新浪的、gmail的等等,依然可以使用邮件功能,但就不能使用PHP内置的mail函数了。
具体使用远程SMTP服务器来发送邮件的方法,你可以参考我以前回答的问题,你也可以使用现有的许多mail类库实现
我以前回答过的问题:http://zhidaobaiducom/question/478821120htmloldq=1
另外,使用telnet功能不顺手,可以百度一款专业端口刺探软件:superscan
搭建邮箱服务器首先要选择一款邮件服务器软件,比较常用的邮件服务器软件有:Winmail、Exchange、Mdaemon、Winwebmail、Imail、Coremail、U-Mail、TurboMail、iGENUS、Icewarp、易邮、金笛、MagicMail等。
然后根据邮箱的用户量来决定服务器的配置,用户量大的服务器硬件要求就要高,硬件要求就越高,例如1000用户的企业邮箱的配置:
Dell PowerEdge R710 × 2,16G内存,CPU一块,500G SAS 硬盘 6块
软件要求:
CentOS 53以上版本 Mysql 51以上版本。
具体根据企业的不同情况进行配置,这需要多年的邮箱运营经验。
硬件需求:
500用户左右的,一个四核CPU,4G内存,硬盘看给用户分配多少空间了。如果用户数多,硬件配置也相应提升。
以exchange2007为例
处理器 Intel Pentium 800 MHz 或更快的32位处理器
支持Intel 64位扩展内存技术的基于x64 体系结构的处理器
支持AMD64平台的AMD 64位处理器
内存 最小:2GB
推荐:每服务器2GB以及每个邮箱5MB
页面文件大小等于服务器内存容量加10MB
硬盘 安装Exchange的处理器
驱动器至少有 12 GB 可用空间
安装UM语言包,需要增加500MB空间
系统驱动器上至少有 200 MB 可用空间
只要挂到互联网上就可以实现邮件互发 。
linux系统,主要分debian系和redhat系,还有其它自由的发布版本。
1、debian系主要有Debian,Ubuntu,Mint等及其衍生版本;
2、redhat系主要有RedHat,Fedora,CentOs等,
3、其它有Slackware,Gentoo,Arch linux,LFS,SUSE等。
4、如果开发用,推荐redhat系,业内公司的服务器多用centos,考虑到平时使用,那么就选择fedora,可以选择最新的发行版。
5、如果简单用加开发,可以选择debian系,推ubuntu,mint。
6、如果是技术狂型,那么就推荐Gentoo,Arch linux,LFS,Slackware等。
好用的linux系统:Debian、Linux Mint、Manjaro、ubuntu、solus。
1、Linux Mint
Mint最大的特点就是极其符合windows用户的操作习惯,甚至贴心地准备了更新管理器、开始菜单、Office等用户在windows上喜闻乐见的功能。
mint是一个真正的开箱即用的发行版本。它完善到你完成安装后甚至不用再添加别的软件,就可以畅快开始使用。相比ubuntu,在各个方面都做得更好。
2、Manjaro
由于基于Arch,它获得了惊人数量的软件库。安装很多软件时,你不需要百度,不需要到处找,一个命令就全部ok了。另外,它的易用性也是它极大的优势。相比上面的系统,它在简洁性上完胜。另外更棒的是,它提供了直接可用的QQ。
3、ubuntu
社区支持非常完善,可以在ASK UBUNTU社区里询问一切关于linux的问题,大部分问题都能得到热心的解答。另外,ubuntu作为一个成熟的系统,被广泛地应用,软件数量能与Arch匹敌了。
是个好的操作系统,但不是一个好的个人操作系统。Unity桌面的性能很低,并且不是很稳定,常常卡死。
4、solus
非常简洁快速,几乎所有评论中都提到了它神奇的开机速度。由于它是新兴的发行版本,设计概念也是比较前卫的,不会存在冗余代码的问题。另外,它的包管理器也是全新设计的,安装应用速度非常快。
5、Debian
精简而稳定,它是数万人共同努力的成果。它的deb包高度集中,依赖性问题出现的很少。当然,它也拥有最大的支持社区。
由于它是完全自由的操作系统,因此没有专业的技术支持。另外它的更新周期很长,软件库里很多软件也显得老旧了。
邮件服务器是一个比较麻烦的功能,尤其对于初学者而言。我们ecshop模板堂整理一下设置步骤给大家参考
参考以上。
邮件服务:我们一般选择其他smtp服务
ssl : 默认就行
发送邮件服务器地址(smtp):输入smtp126com 如果是qq邮箱的话输入 smtpqqcom
服务器端口:默认就行
邮件发送账号:你邮箱地址 比如ecmoban@126com 如果是qq邮箱就输入qq邮箱地址 比如12345@qqcom
账号密码:你邮箱登陆的密码
邮件回复地址:与邮件发送账号一样
然后邮件地址:自己随便输入一个测试下
注意服务器必须支持openssl模块,要是不支持联系空间商开通
以上教程 ecshop 模板堂 提供
常见Linux版本有哪些?CentOS是什么?
Linux是GNU/Linux的缩写,通常指各种Linux发行版的通称。
常见的Linux厂家主要有Redhat/Novell等。
Redhat有两大Linux产品系列,其一是免费的Fedora Core系列
主要用于桌面版本,提供了较多新特性的支持。
另外一个产品系列是收费的Enterprise系列,这个系列分成:AS/ES/WS等分支。
Advanced Server,缩写即AS。AS在标准Linux内核的基础上,
做了性能上的增强,并提高了可靠性,集成了众多常见服务器的驱动程序。
可轻松识别IBM/DELL/HP等常见机架式服务器的磁盘阵列卡等设备。
AS主要版本2x/3x/4x,也就是我们所说的AS3/AS4
每一个版本还有若干个升级,例如最早推出的AS4后,遇到了一些更新
此时就会发布AS4 Update1,以后还会陆续有AS4 Update2/Update3等出现
简称AS4u1/AS4u2/AS4u3等。这和微软的发布形式也是非常类似的,
微软的Windows NT4 从SP1出到SP6,Windows2000从SP1出到SP4。。。。
AS这些Update版本所包含的主要程序包版本都有一定差别,最好不要混用
否则很容易出现问题。Prima和Plesk的安装包,对于各种发行版都有了针对性的设计
在下载页面上,通常都会标识出来,支持哪些版本和哪些update的系统。
ES,是AS的精简版本。他与常见的AS系列的区别是,AS支持到4路以上CPU,
而ES只能支持两路CPU。AS和ES在大多数程序包上并无区别,
只在内核等少数软件包上有差异。
AS和ES的售价差别比较大,通常ES用在随服务器一同购买的OEM版本中
例如购买DELL服务器,搭配的Linux会是ES系列。
如果要搭配AS系列,则需要多花数千元。
WS,是ES的进一步简化版,主要针对企业内部的桌面办公市场,国内较少采用。
Redhat的Fedora Core Linux和Enterprise Linux,都需要遵循GNU协议
即需要发布自己的源代码。
所以,对于免费的Fedora Core Linux,从Redhat网站上可以直接下载ISO刻盘,
还能下载到SRPM的ISO,即程序包源码光盘。
对于收费的Enterprise Linux系列,是一款商业产品,所以网站上不能下载到ISO文件,
需要购买正式授权方可。
由于Enterprise Linux也需要遵循GNU协议,故必须发布源代码。
所以在Redhat的网站上,可以获得AS/ES/WS系列的SRPM源码ISO文件。
这些文件可以被自由的下载,修改代码,重新编译使用。
一个名为Community Enterprise Operating System的项目诞生了。
他的缩写既是CentOS。CentOS社区将Redhat的网站上的所有源代码下载下来,
进行重新编译。重新编译后,由于AS/ES/WS是商业产品,
必须将所有Redhat的Logo和标识改成自己的CentOS标识。
比如将AS4原版的SRPM源码编译后,就成为了CentOS 40。
AS4Update1的源码编译后,就成为了CentOS41。
AS4Update2的源码编译后,就成为了CentOS42。
同理,CentOS的3x/4x都对应着相应的版本。
所以我们说,CentOS就是Redhat的AS/ES/WS的免费版本。
使用CentOS,可以获得和AS/ES相同的性能和感受。
CentOS除了提供标准的编号1~4或者1~5的若干张ISO以外,
还提供了最小化1CD的Server光盘。用Server光盘安装好的系统,
就是一个最小化的Linux内核加上常用的httpd/mysql等包
不包含Xwindows桌面等对于服务器无用的软件。
Prima、Plesk、Virtuozzo和都可以安装在CentOS上。
Monit是什么?
Monit是
一个跨平台的用来监控Unix/linux系统(比如Linux、BSD、OSX、Solaris)的工具。Monit特别易于安装,而且非常轻量级(只
有500KB大小),并且不依赖任何第三方程序、插件或者库。然而,Monit可以胜任全面监控、进程状态监控、文件系统变动监控、邮件通知和对核心服务
的自定义动作等场景。易于安装、轻量级的实现以及强大的功能,让Monit成为一个理想的后备监控工具。
我
已经在一些机器使用Monit几年了,而且我对它的可靠性非常满意。甚至作为全面的监控系统,对任何Linux系统管理员来说Monit也是非常有用和强
大的。在这篇教程中,我会展示如何在一个本地服务器部署Monit(作为后备监控系统)来监控常见的服务。在部署过程中,我只会展示我们用到的部分。
在Linux安装Monit
Monit已经被包含在多数Linux发行版的软件仓库中了。
Debian、Ubuntu或者Linux Mint:
$ sudo aptitude install monit
Fedora或者CentOS/RHEL:
在CentOS/RHEL中,你必须首先启用EPEL或者Repoforge软件仓库
# yum install monit
Monit
自带一个文档完善的配置文件,其中包含了很多例子。主配置文件在/etc/monitconf(Fedora/CentOS/RHEL
中),或者/etc/monit/monitrc(Debian/Ubuntu/Mint
中)。Monit配置文件有两部分:“Global”(全局)和“Services”(服务)。
Global Configuration: Web Status Page (全局配置:Web状态页面)
Monit可以使用邮件服务来发送通知,也可以使用HTTP/HTTPS页面来展示。我们先使用如下配置的web状态页面吧:
Monit监听1966端口。
对web状态页面的访问是通过SSL加密的。
使用monituser/romania作为用户名/口令登录。
只允许通过localhost、myhostmydomainro和在局域网内部(19216800/16)访问。
Monit使用pem格式的SSL证书。
之后的步骤,我会使用一个基于Red Hat的系统。在基于Debian的系统中的步骤也是类似的。
首先,在/var/cert生成一个自签名的证书(monitpem):
# mkdir /var/certs # cd /etc/pki/tls/certs # /make-dummy-cert monitpem # cp monitpem /var/certs # chmod 0400 /var/certs/monitpem
现在将下列代码片段放到Monit的主配置文件中。你可以创建一个空配置文件,或者基于自带的配置文件修改。
set httpd port 1966 and SSL ENABLE PEMFILE /var/certs/monitpem allow monituser:romania allow localhost allow 19216800/16 allow myhostmydomainro
Global Configuration: Email Notification (全局配置:邮件通知)
然后,我们来设置Monit的邮件通知。我们至少需要一个可用的SMTP服务器来让Monit发送邮件。这样就可以(按照你的实际情况修改):
邮件服务器的机器名:smtpmonitro
Monit使用的发件人:monit@monitro
邮件的收件人:guletz@monitro
邮件服务器使用的SMTP端口:587(默认是25)
有了以上信息,邮件通知就可以这样配置:
set mailserver smtpmonitro port 587 set mail-format { from: monit@monitro subject: $SERVICE $EVENT at $DATE on $HOST message: Monit $ACTION $SERVICE $EVENT at $DATE on $HOST : $DESCRIPTION Yours sincerely, Monit } set alert guletz@monitro
就像你看到的,Monit会提供几个内部变量($DATE、$EVENT、$HOST等),你可以按照你的需求自定义邮件内容。如果你想要从Monit所在机器发送邮件,就需要一个已经安装的与sendmail兼容的程序(如postfix或者ssmtp)。
Global Configuration: Monit Daemon (全局配置:Monit守护进程)
接下来就该配置Monit守护进程了。可以将其设置成这样:
在120秒后进行第一次检测。
每3分钟检测一次服务。
使用syslog来记录日志。
如下代码段可以满足上述需求。
set daemon 120 with start delay 240 set logfile syslog facility log_daemon
我们必须定义“idfile”,Monit守护进程的一个独一无二的ID文件;以及“eventqueue”,当monit的邮件因为SMTP或者网络故障发不出去,邮件会暂存在这里;以及确保/var/monit路径是存在的。然后使用下边的配置就可以了。
set idfile /var/monit/id set eventqueue basedir /var/monit
测试全局配置
现在“Global”部分就完成了。Monit配置文件看起来像这样:
# Global Section # status webpage and acl's set httpd port 1966 and SSL ENABLE PEMFILE /var/certs/monitpem allow monituser:romania allow localhost allow 19216800/16 allow myhostmydomainro # mail-server set mailserver smtpmonitro port 587 # email-format set mail-format { from: monit@monitro subject: $SERVICE $EVENT at $DATE on $HOST message: Monit $ACTION $SERVICE $EVENT at $DATE on $HOST : $DESCRIPTION Yours sincerely, Monit } set alert guletz@monitro # delay checks set daemon 120 with start delay 240 set logfile syslog facility log_daemon # idfile and mail queue path set idfile /var/monit/id set eventqueue basedir /var/monit
现在是时候验证我们的工作了,你可以通过运行如下命令来验证存在的配置文件(/etc/monitconf):
# monit -t Control file syntax OK
如果monit提示任何错误,请再检查下配置文件。幸运的是,错误/警告信息是可以帮助你发现问题的,比如:
monit: Cannot stat the SSL server PEM file '/var/certs/monitpem' -- No such file or directory /etc/monit/monitrc:10: Warning: hostname did not resolve 'smtpmonitro'
一旦你确认配置文件没问题了,可以启动monit守护进程,然后等2到3分钟:
# service monit start
如果你使用的是systemd,运行:
# systemctl start monit
现在打开一个浏览器窗口,然后访问https://<monit_host>:1966。将<monit_host>替换成Monit所在机器的机器名或者IP地址。
如果你使用的是自签名的SSL证书,你会在浏览器中看到一个警告信息。继续访问即可。
你完成登录后,就会看到这个页面。
在这个教程的其余部分,我们演示监控一个本地服务器和常见服务的方法。你会在官方wiki页面看到很多有用的例子。其中的多数是可以直接复制粘贴的!
Service Configuration: CPU/Memory Monitoring (服务配置:CPU、内存监控)
我们先来监控本地服务器的CPU、内存占用。复制如下代码段到配置文件中。
check system localhost if loadavg (1min) > 10 then alert if loadavg (5min) > 6 then alert if memory usage > 75% then alert if cpu usage (user) > 70% then alert if cpu usage (system) > 60% then alert if cpu usage (wait) > 75% then alert
你可以很容易理解上边的配置。最上边的check是指每个监控周期(全局配置里设置的120秒)都对本机进行下面的操作。如果满足了任何条件,monit守护进程就会使用邮件发送一条报警。
如果某个监控项不需要每个周期都检查,可以使用如下格式,它会每240秒检查一次平均负载。
if loadavg (1min) > 10 for 2 cycles then alert
Service Configuration: SSH Service Monitoring (服务配置:SSH服务监控)
先检查我们的sshd是否安装在/usr/sbin/sshd:
check file sshd_bin with path /usr/sbin/sshd
我们还想检查sshd的启动脚本是否存在:
check file sshd_init with path /etc/initd/sshd
最后,我们还想检查sshd守护进程是否存活,并且在监听22端口:
check process sshd with pidfile /var/run/sshdpid start program "/etc/initd/sshd start" stop program "/etc/initd/sshd stop" if failed port 22 protocol ssh then restart if 5 restarts within 5 cycles then timeout
我
们可以这样解释上述配置:我们检查是否存在名为sshd的进程,并且有一个保存其pid的文件存在(/var/run/sshdpid)。如果任何一个
不存在,我们就使用启动脚本重启sshd。我们检查是否有进程在监听22端口,并且使用的是SSH协议。如果没有,我们还是重启sshd。如果在最近的5
个监控周期(5x120秒)至少重启5次了,sshd就被认为是不能用的,我们就不再检查了。
Service Configuration: SMTP Service Monitoring (服务配置:SMTP服务监控)
现在我们来设置一个检查远程SMTP服务器(如192168111102)的监控。假定SMTP服务器运行着SMTP、IMAP、SSH服务。
check host MAIL with address 192168111102 if failed icmp type echo within 10 cycles then alert if failed port 25 protocol smtp then alert else if recovered then exec "/scripts/mail-script" if failed port 22 protocol ssh then alert if failed port 143 protocol imap then alert
我
们检查远程主机是否响应ICMP协议。如果我们在10个周期内没有收到ICMP回应,就发送一条报警。如果监测到25端口上的SMTP协议是异常的,就发
送一条报警。如果在一次监测失败后又监测成功了,就运行一个脚本(/scripts/mail-script)。如果检查22端口上的SSH或者143端
口上的IMAP协议不正常,同样发送报警。
0条评论