<邮件服务postfix+mysql>MAIL第二篇
环境:本服务是建立在第一篇的基础之上的,最好搭建好第一篇
玩此服务的前提是你的系统装好了msql和postfix服务。
Postfix+mysql主要是把邮件服务的发与mysql结合使用。当然mysql要是一直是在命令行下使用也不是很方便对吧,下面我们来看linux图形化下mysql的使用:
下面的软件包。
phpMyAdmin-2.11.3-all-languages.tar.gz是以php的格式结合Apache通过网页的形式管理mysql。
既然是使用网页管理mysql,当然很定得将这个软件包的目录放到apahce下面,对吧
我直接将软件包下载到/var/www/html下面。自行解压
首先解压这个软件包,这个软件包的名字好长,我们可以改个短点的名字。
# mv phpMyAdmin-2.11.3-all-languages phpmyadmin
切换到这个目录
然后我们查看安装步骤:
[root@rhce phpmyadmin]# vim INSTALL
phpMyAdmin - Installation
-------------------------
安装文件提示让我们去看这2个文件。
Please have a look to the Documentation.txt or
Documentation.html files.
我们打开Documentation.txt文件。
Vim Documentation.txt
找到快速安装Quick Install
第四步:4. Now you must configure your installation. There are two methods that can be
used. Traditionally, users have hand-edited a copy of config.inc.php, but
now a wizard-style setup script is provided for those who prefer a
graphical installation. Creating a config.inc.php file is still a quick way
to get started and needed for some advanced features.英文下面还有这个文件要写入那些东西
这段话的意思:有2中方法:可以使用现有的文件拷贝一个config.inc.php。或是自己创建一个config.inc.php,要是自己创建,下面有你要在文件中写入的内容:
我们拷贝一个:
# cp config.sample.inc.php config.inc.php
然后修改参照第四步,我们虽然是拷贝,但只是模板,内容也要和它提示我们自己创建的一样。
我们打开config.inc.php文件,默认红色部分是空的,我们去快速安装第四部复制下面的代码粘贴到这。
$cfg['blowfish_secret'] = 'ba17c1ec07d65003'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Apache服务有了,我们还需要安装php软件包:
# yum install php php-mysql –y //安装php一个是不够的还有php-mysql。
重启mysql和httpd服务:
之后在浏览器中输入:服务的ip/phpmyadmin 回车就ok了。
之后你会看到下面的界面,可以选择中文。登陆你的mysql数据库。
之后我创建一个westos库和一个date表。库和表名字可以随便,没必要非得照我写的
这个表的结构是由四部分构成:
然后我们在服务添加一个伪用户,就是不可以登陆系统的用户。
# useradd -u 700 -s /sbin/nologin vmail
前面我们登陆数据库使用的是root,它的权限过大,一般只限root登陆本地数据库,我们重新给mysql指定一个email用户对westos库下的所有表有全部的权限。
>grant all on westos.* to email@'%' identified by 'email';
退出重新登录:使用email身份:可以看到它的有效库也只有westos。
在表里插入:
把这几条写入postfix的配置文件main.cf。执行下面的命令就会写入main.cf
[root@redhat ~]# postconf -d | grep virtual
[root@redhat ~]# postconf -e "virtual_mailbox_base = /home/vmail"
[root@redhat ~]# postconf -e "virtual_uid_maps = static:700"
[root@redhat ~]# postconf -e "virtual_gid_maps = static:700"
邮箱的基本配置路径是/home/vmail
发送邮件所使用的虚拟用户uid=700 gid=700
下面我们要配置mysql的文件,使postfix读取文件时,会自动的去读取mysql的数据。
模板的路径:
/usr/share/doc/postfix-2.6.6/README_FILES/ MYSQL_README
Cd /etc/postfix mysql的用户配置文件
vim users.cf
host = localhost
user = email
password = email
dbname = westos
select_field = username “选择一个领域
table = date
where_field = username
为了防止我们书写错误,可以使用命令进行校验:
#postmap -q "test@test.com" mysql:/etc/postfix/users.cf
test@test.com //校验正确会出现相应的内容
只有用户是不够的,我们发邮件还有域、邮箱等
[root@redhat postfix]# cp -p users.cf domain.cf
[root@redhat postfix]# cp -p users.cf mailbox.cf
vim domain.cf
host = localhost
user = email
password = email
dbname = westos
select_field = domain
table = date
where_field = domain
vim mailbox.cf
host = localhost
user = email
password = email
dbname = westos
select_field = maildir
table = date
where_field = username
校验上面文件书写的是否正确
[root@redhat postfix]# postmap -q "test.com" mysql:/etc/postfix/domain.cf
test.com
[root@redhatpostfix]#postmap-q"test@test.com"mysql:/etc/postfix/mailbox.cf
test.com/test/
再将这几天添加到postfix的主配置文件中:
[root@redhat ~]# postconf -e "virtual_mailbox_domains = mysql:/etc/postfix/domain.cf"
[root@redhat ~]# postconf -e "virtual_mailbox_maps = mysql:/etc/postfix/mailbox.cf"
[root@redhat ~]# postconf -e "virtual_alias_maps = mysql:/etc/postfix/users.cf"
要是你的selinux是打开的就要做下面的:
[root@redhat ~]# getsebool -a | grep mysql
allow_user_mysql_connect --> off
mysql_connect_any --> off
[root@redhat ~]# setsebool -P allow_user_mysql_connect on
下面所有做的就是:
切换到/var/lib/mysql
rm -rf mysql.sock //这个文件会记录你mysql之前的操作,我试过不删它重启服务,你测试时邮件依旧收不到
重启mysql服务
Mysql有两种连接方式:
(1)TCP/IP
(2)socket
对mysql.sock来说,其作用是程序与mysqlserver处于同一台机器,发起本地连接时可用。
例如你无须定义连接host的具体IP得,只要为空或localhost就可以。
在此种情况下,即使你改变mysql的外部port也是一样可能正常连接。
因为你在my.ini中或my.cnf中改变端口后,mysql.sock是随每一次 mysql server启动生成的。已经根据你在更改完my.cnf后重启mysql时重新生成了一次,信息已跟着变更
进行测试:
[root@redhat vmail]# mail test@test.com
Subject: nihao
dabendan
.
EOT
[root@redhat vmail]# mailq
Mail queue is empty
[root@redhat vmail]# ls
test.com
<邮件服务postfix+mysql>MAIL第二篇的更多相关文章
- 小白两篇博客熟练操作MySQL 之 第二篇
小白两篇博客熟练操作MySQL 之 第二篇 一. 视图 视图是一个虚拟表,其本质是根据SQL语句获取动态的数据集,并为其命名,用户使用时只需使用名称即可获取结果集, 并可以将其当做表来使用. s ...
- <postfix邮件服务下mysql的升级>
本片服务的环境的红帽的企业版6.5 的,6.3的测试可能会略有不一样,不过方法大致是一样的. 当前系统的postfix的版本为 postfix-2.6.6-2.2.el6_1.x86_64 我们要向使 ...
- Postfix 邮件服务 - postfix服务
postfix 邮件服务 也是基于sendmail (需要关闭或卸载sendmail)postfix 是一个电子邮件服务器,它为了改良sendmail邮件服务器而产生的,并且它的配置文件比sendma ...
- Linux服务器---邮件服务postfix安装
安装postfix postfix是一个快速.易于管理.安全性高的邮件发送服务,可以配合dovecot实现一个完美的邮箱服务器. 1.安装postfix [root@localhost ~]# rpm ...
- mysql优化———第二篇:数据库优化调整参数
摘要 参数调优内容: 1. 内存利用方面 2. 日志控制方面 3.文件IO分配,空间占用方面 4. 其它相关参数 一 摘要 通过参数提高MYSQL的性能.核心思想如下: 1 提高my ...
- MySQL【第二篇】基本命令
一.连接MySQL 登录 mysql 有两种方式: 远程主机:mysql -h主机地址 -u用户名 -p密码 -P端口号 本机:mysql -h主机地址 -u用户名 -p密码 -P端口号 如果端口号是 ...
- Linux 邮件服务搭建
Linux 邮件服务搭建 邮件服务针对,在大型企业使用的比较多,一般小型企业都会买一些邮件服务,或者使用一些免费的邮件服务,达到我们使用的需求,并且不需要自己维护,下面我就来简单安装一下两个邮箱的案例 ...
- postfix 邮件服务的安装及详解
该实验系统:cetnos 6.5 sendmail:性能好,设置复杂,适合老手 qmail:体积小260+k ,模块化.需要做二次开发,适合对邮件性能有要求的 postfix:前身是sendmail, ...
- 工程师技术(二):postfix基础邮件服务、postfix空客户端邮件服务、搭建mariadb数据库系统、配置一个数据库、使用数据库查询
一.postfix基础邮件服务 目标: 本例要求在虚拟机server0上配置 postfix 基础服务,具体要求如下: 1> 监听本机的所有接口 2> 将邮件域和邮件服务主机名都改为 ...
随机推荐
- java中十进制转二进制转换函数
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...
- fcitx的安装_配置
sudo apt-get purger ibus 安装Fcitx:sudo apt-get install im-switch fcitx #修改当前用户的默认输入法, 具体看man im-switc ...
- mysql分表研究
分表是分散数据库压力的好方法. 分表,最直白的意思,就是将一个表结构分为多个表,然后,可以再同一个库里,也可以放到不同的库. 当然,首先要知道什么情况下,才需要分表.个人觉得单表记录条数达到百万到千万 ...
- android 搭建开发环境
法一.直接集成的ADT+ECLIPSE 还有64位的jdk即可 法二.EClipse装好后,下载好SDK,ADT(在线或离线装) sdk下载后,点sdk.exe 文件. 如果更新失败,解决方法如下 C ...
- 关于解决 The processing instruction target matching "[xX][mM][lL]" is not allowed
在处理和保存XML文件时,出现The processing instruction target matching "[xX][mM][lL]" is not allowed 错误 ...
- layer.js,,,分享一个好用的弹出层
基本属性: <!DOCTYPE html> <html> <head> <head> <meta content="text/html; ...
- C#属性(Attribute)用法实例解析
属性(Attribute)是C#程序设计中非常重要的一个技术,应用范围广泛,用法灵活多变.本文就以实例形式分析了C#中属性的应用.具体入戏: 一.运用范围 程序集,模块,类型(类,结构,枚举,接口,委 ...
- iOS 中的加密方式
iOS 中的加密方式 1 加密方式主要有: Base64,MD5,RSA,DES,AES,钥匙串存储,Cookie 2 各加密方式的比较 2.1 Base64 2.1.1 基本原理:采用64个基本的 ...
- hdu-5701 中位数计数(中位数)
题目链接: 中位数计数 Problem Description 中位数定义为所有值从小到大排序后排在正中间的那个数,如果值有偶数个,通常取最中间的两个数值的平均数作为中位数. 现在有nn个数,每个 ...
- Auto Layout 在iOS屏幕适配中的使用
前几天在做iOS屏幕的适配,也就是让同样的UI控件的布局在不同屏幕的iOS设备上面都正确显示,storyBoard就无可避免的用到了Auto Layout.在这个过程中,我发现要熟练掌握Auto La ...