一、邮件服务器(Mail Server)的传输协议

1、简单邮件传输协议(SMTP):Simple Mail Transger Protocol

2、扩展的简单邮件传输协议(ESMTP):Extended Simple Mail Transger Protocol

3、邮局协议(POP3):Post Office Protocol

4、互联网邮件访问协议(IMAP4):Internet Mail Access Protocol

5、简单认证安全层(SASL):Simple Authintication Secure Layer

6、邮件传输代理(MTA):SMTP服务器

sendmail(m4语言),qmail,postfix(模块化设计,与sendmail兼容,安全,效率高)

7、邮件投递代理(MDA):procmail,maildrop

8、邮件检索代理(MRA):pop3,imap4的实现

9、邮件用户代理(MUA):

Outlook Express,Outlook

Foxmail

Thunderbird

Evolution

mutt(文本界面)

10、Webmail:Openwebmail、squirrelmail(小松鼠)、Extmail(Extman)

二、安装Postfix+SASL(courier-authlib)+MySQL

1、安装MySQL

如果没有mysql用户则添加:

# useradd -r mysql -s /sbin/nologin

# tar zxvf mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz -C /usr/local/

# ln -sv /usr/local/mysql-5.6.30-linux-glibc2.5-x86_64 /usr/local/mysql

# chown mysql.mysql -R mysql-5.6.30-linux-glibc2.5-x86_64

创建MySQL的数据文件目录

# mkdir -pv /data/mysql

# chown -R mysql.mysql /data/mysql

初始化数据库

# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

复制MySQL的服务启动脚本到/etc/rc.d/init.d/下

# cp support-files/mysql.server /etc/rc.d/init.d/mysqld

将mysqld添加到服务聊表并设置开机自启动

# chkconfig --add mysqld

# chkconfig mysqld on

MySQL的配置文件:/etc/my.cnf或/etc/mysql/my.cnf-->$MYSQL_Base/my.cnf -->

--defaults-extra-file=/path/to/some_my.cnf -->.my.cnf

如果找到的不同,则合并,如果不同,则以最后一个为准

本人把所有配置文件都删了只留了下面这个文件

# vim /etc/my.cnf

加入如下内容:

[client]

port = 3306

socket = /tmp/mysql.sock

[mysqld]

server_id = 1

log_bin = /data/mysql/mysql_binlog

lower_case_table_names=1

binlog-ignore-db=mysql,test

port = 3306

pid-file=/usr/local/mysql/mysql.pid

socket = /tmp/mysql.sock

skip-external-locking

key_buffer_size = 256M

max_allowed_packet = 1M

table_open_cache = 256

sort_buffer_size = 1M

read_rnd_buffer_size = 4M

thread_cache_size = 8

query_cache_size = 16M

thread_concurrency = 2

datadir = /data/mysql

添加MySQL的到环境变量:

# vim /etc/profile.d/mysql.sh加入如下内容:

export PATH=/usr/local/mysql/bin:$PATH

# source /etc/profile.d/mysql.sh

删除匿名用户:

mysql> drop user ''@'localhost';

mysql> drop user ''@'master.fansik.com';

给root用户添加密码:

mysql> update user set password=password('fanjinbao') where user='root';

mysql> flush privileges;

如果增加密码后还想直接用mysql直接登录那就:

# vim ~/.my.cnf加入:

[mysql]

user = root

password = fanjinbao

socket = /tmp/mysql.sock

导出头文件:

# ln -sv /usr/local/mysql/include/ /usr/include/mysql

导出库文件:

# vim /etc/ld.so.conf.d/mysql.conf加入:/usr/local/mysql/lib

# ldconfig -v

查看是否添加成功:

# ldconfig -p | grep mysql

2、安装postfix

postfix官方网站:http://www.postfix.org/

创建postfix用户和postdrop用户

# groupadd -g 2525 postfix

# useradd -g postfix -u 2525 -s /sbin/nologin -M postfix

# groupadd -g 2526 postdrop

# useradd -g postdrop -u 2526 -s /sbin/nologin -M postdrop

安装postfix

# tar xf postfix-2.10.10.tar.gz

# cd postfix-2.10.10

如果是最小化安装的CentOS系统,需要安装:

# yum -y install libaio* cyrus-sasl-devel db*-devel gcc openssl-devel

# make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/local/mysql/include -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl -DUSE_TLS ' 'AUXLIBS=-L/usr/local/mysql/lib -lmysqlclient -lz -lm -L/usr/lib64/sasl2 -lsasl2 -lssl -lcrypto'

# make

# make install

# postfix start

postfix的配置文件:

master:/etc/postfix/master.cf

mail:/etc/postfix/main.cf

参数 = 值:参数必须写在行的绝对行首,以空白开头的行被认为是上一行的延续

postfix启动脚本及开机自启动设置:http://www.cnblogs.com/fansik/p/5683775.html

postconf:配置postfix

-d:显示默认配置

-n:修改了的配置

-m:显示支持的查找表类型

-A:显示支持的SASL客户端插件类型

smtp状态码:

 1xx:纯信息

2xx:正确

3xx:上一步操作尚未完成,需要继续补充

4xx:暂时性错误

5xx:永久性错误

smtp协议命令:

helo(smtp协议)

ehlo(esmtp协议)

mail from:

rcpt to:

alias:邮件别名

abc@fansik.com postmaster@fansik.com

/etc/aliases-->hash-->/etc/aliases.db

# newaliases

postfix默认把本机的IP地址所在的网段识别为本地网络,并且为之中继邮件

至此,如果你在虚拟中做的测试是无法向外网发送邮件的

Postfix邮件服务器搭建及配置的更多相关文章

  1. 烂泥:Postfix邮件服务器搭建之虚拟用户配置

    virtual_gid_maps = static: virtual_transport = dovecot dovecot_destination_recipient_limit = 1 注意:po ...

  2. 烂泥:Postfix邮件服务器搭建之软件安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb Postfix邮件服务器的搭建需要使用到几个软件,分别是cyrus-sasl.postf ...

  3. 烂泥:Postfix邮件服务器搭建之准备工作

    说实话,Postfix邮件服务器的搭建是一件很麻烦的事情,需要各种软件之间的配置和调试.在写这篇文章之前,我也是搭建测试了不下于10次才算把整个流程给走通,今天刚好有时间把整个搭建过程记录下来. 在正 ...

  4. Postfix 邮件服务器搭建

    搭建服务环境: Centos 6 配置域名hosts: mail.demonC6.com 1.清理系统自带的邮件软件 # rpm -qa | grep sendmail* # rpm -e sendm ...

  5. postfix邮件服务器搭建01-准备篇

    本系列文章主要介绍linux下主流的开源邮件系统postfix的搭建过程,构建一个通过postfix虚拟用户管理的完整的邮件系统, 该系统包括以下组件: 邮件收发端postfix,dovecot, 邮 ...

  6. postfix邮件服务器搭建03-webmail安装篇

    本文接着上文的安装进行,介绍另一个WebMail功能更加人性化的roundcube.当然也可以对已有的postfix邮件系统进行功能完善 1.下载安装roundcube cd /server/tool ...

  7. postfix邮件服务器搭建02-安装篇

    本文接着上文的环境,进行postfix邮件发信端和dovecot邮件收信端的部署,之后部署基于浏览器的extmail图形管理端,使管理员可以通过网页对邮件虚拟用户进行管理,对邮件服务器进行管控 1.p ...

  8. postfix邮件服务器搭建04-终结篇

    本来是计划对postfix做一个全系列的安装文档的,不过在查某个知识点的时候,偶然找到一个已经写好的postfix全系列文章,在全部看完之后惊为天人,我认为:总体上会比我要写的要好,所以我准备借用一下 ...

  9. CentOS6.4下邮件服务器搭建

    CentOS6.4下邮件服务器搭建   linux下邮件服务器的搭建大致分为三个步骤 准备工作(真实的生产环境下需要) 发送服务器安装及配置 (Postfix) 接收服务器安装及配置(dovecot) ...

随机推荐

  1. #1000 A + B (hihoCoder)

    时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 求两个整数A+B的和 输入 输入包含多组数据.每组数据包含两个整数A(1 ≤ A ≤ 100)和B(1 ≤ A ≤ 100) ...

  2. TCP Socket 通讯(客户端与服务端)

    /*----------------------------编译环境:VS2015---------------------------------------*/ /*--------------- ...

  3. 杭电ACM1003

    原题: Max Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  4. linux下用eclipse + GDBserver + JLINK 在线调试(ARM11)

    (一)环境: 目标版:TINY6410 OS:centOS6.5 IDE:eclipse luna CDT:v8.3 GDB:V7.5 (二)环境监理 1.安装cenntos:参考其他相关文章,这里重 ...

  5. jquery mobile 输入框无边框

    现在移动开发为主流的时代,少不了使用jquery mobile.但是偶然应项目要求需要把input输入框做成无边框的,不是特别容易的事,网上找了很多都没有一种靠谱的解决方案,只能自食其力了. < ...

  6. Dapper学习笔记(2)-链接引用

    在研究Dapper源码时发现Dapper NET45类库中的SqlMapper.cs文件前面有个蓝色的箭头图标,发现在Dapper NET45文件夹下根本不存在SqlMapper.cs文件,其文件属性 ...

  7. 添加网络打印机的步骤(xp和win2008)

    1.如题,设置好打印机去的ip地址和子网掩码等信息. 2 .xp不像其他新的系统那么好用那么智能...只能慢慢来 如果是xp,注意,请添加网络打印机的时候选  :添加本地打印机,,记得哦 然后如图 然 ...

  8. Performance Considerations for Entity Framework 4, 5, and 6

    Performance Considerations for Entity Framework 4, 5, and 6 https://msdn.microsoft.com/en-sg/data/hh ...

  9. MySQL主从复制与读写分离

    MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践 Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中, ...

  10. android:ToolBar详解

    android:ToolBar详解(手把手教程) 泡在网上的日子 发表于 2014-11-18 12:49 第 124857 次阅读 ToolBar 42 来源 http://blog.mosil.b ...