Wishlist 0 ¥0.00

使用hMailServer搭建邮件服务器

文/玄魂

前言

对于企业用户而言,拥有属于自己的邮件服务器,在员工管理,内部信息沟通,对外推送消息等方面,都大有益处。

本文没有什么高深的技术内容,只是以windows server 2008 为例,使用HMAILServer,介绍搭建邮件服务器的全过程,供参考。

操作系统:

邮件服务组件:http://www.hmailserver.com/index.php?page=download

1.1 安装邮件服务器组件

选择存储数据的数据库,这里有两种选择,一种是使用嵌入型数据库Microsoft Sql Compact,另一种是自定义数据库。前一种选择,相对来说更轻量,简单,这里我选择自定义方式。

 

 

设置邮件服务管理工具的管理密码,稍后会使用该密码登录管理工具,配置服务器。

因为我们选择了自定义数据库选项,在安装过程中,会提示输入管理密码,配置数据库。

选择下一步:

上图中的两个选项,如果你没有安装过hMailServer,或者安装过想使用新的数据库,选择第一个选项;如果使用已有的hMailServer数据库,选择第二个选项。这里我选择新建数据库。

数据库类型有三个选项,我选择第一个mssqlserver

配置好数据库连接信息。可以选择数据库账户认证或者windows验证。下一步,选择sqlserver的服务程序,此步骤可选。

继续,初始化数据库完成。可以查看运行结果。

 安装完成。

1.2 服务端配置

启动管理工具,输入管理密码,连接到服务端。

 

 

现在要做的第一件事就是添加域,单击“Add Domain”。

展开“Settings”,配置smtpPop3

接下来,配置RFC兼容性。

配置完成后,千万不要忘记 保存。

下面展开“高级”(Advanced),配置ip地址范围。先配置MyComputer

再配置Internet,如下。

1.3 配置mx交互记录

登录你的域名管理后台,添加mx记录,将邮件地址路由到邮件服务器。

1.4 创建账户

回到Domain选项下,选择Accounts->Add,添加一个新账号。

1.5 测试

打开邮件客户端,我使用的是OutLook,打开账户设置。

新建账户。选择电子邮件账户。

手动配置服务器。

配置用户名,服务器地址,密码等信息。

这里要注意,用户名一定要填写完整的邮件地址。

配置完成后,测试首发信,这里我先登录126邮箱,给刚才创建的邮箱账号发信,看是否能在OutLook中接收到,然后再回一封邮件,看是否能在126中接收到。

成功接收到邮件。

再回复一封邮件,126邮箱成接收。

至此,邮件服务器的基本配置完毕。hMailServer还有很多高级配置,包括日志、签名、文件大小限制等,这里就不详细说明了。

HMAILSERVER集成WEB邮件系统(ROUNDCUBE WEBMAIL)

文/玄魂

前言

在上篇文章(使用hMailServer搭建邮件服务器)中,介绍了hMailServer的安装和简单配置。

除了邮件客户端之外,web邮件系统在很多时候还是必须的,比如修改密码,在移动端查看邮件等。

Roundcubemail是一个免费、开源的php开发的web mail 系统。本文介绍如何将RoundcubemailhMailServer集成起来。

1.1 下载与安装

可以在http://roundcube.net/download/选择合适的版本下载,也可以在GitHubhttps://github.com/roundcube/roundcubemail)下载最新版。

下载之后,将压缩包解压到磁盘。

配置web服务器来承载站点,因为是php站点,一般会使用apathe或者nginx,我这里使用的是iis,配置过程就不做说明了。

站点配置好之后,访问站点installer目录下的index.php文件,进入安装界面。

安装界面第一步是检测环境是否符合要求,如果没有问题,点击“下一步”。

第二步是基本配置。

基本配置

product_name”是邮件系统的展示名称,显示在网页的Title上,自行配置即可。

support_url”,系统的技术支持页面,也可以填写mailto链接。

skin_logo”,自定义企业logo,用以替代系统默认的logo

temp_dir”,临时文件的存放路径,必须保证有写权限。

des_key“,加密密码的key

ip_check“,session校验时同时校验ip是否匹配,属于增强的安全特性,选择该选项,客户端如果ip地址变更,会导致用户突然退出。

enable_spellcheck“,是否启用拼写检查。

spellcheck_engine“,拼写检查引擎。

identities_level“,定义用户权限。

debug_level“,调试信息级别。

log_driver“,日志记录方式。

log_dir”,日志记录文件存储路径。

syslog_id”,如果选择日志记录的方式为系统日志,该选项有效,为邮件系统的系统日志分配id

syslog_facility”,系统日志等级,如果选择日志记录的方式为系统日志,该选项有效。

数据库配置

接下来再数据库安装配置组中配置数据库类型,数据库服务器地址,数据库名称、用户名、密码。

IMAP Settings

这里的配置可以参考hMailSer的参数。

default_host”:默认登录域名。

default_port”:默认端口,一般为143

username_domain”,邮件@符号后面的域名。

其他选项默认即可。

SMTP Settings

smtp_server:smtp服务器地址。

smtp_port:填写hMailServer中的配置,默认为25.

smtp_user/smtp_passsmtp验证的用户名密码,根据实现需要填写。

Display settings & user prefs

显示设置和用户使用相关设置部分。

language”:设置语言。

skin”,选择站点的皮肤。

mail_pagesize”:邮件列表页,每页显示的条目数。

addressbook_pagesize”:地址簿每页的条目数。

prefer_html”:是否显示html内容。

preview_pane”:是否预览。

htmleditor”:使用html编辑器的规则。

draft_autosave”:设置自动保存规则。

Mime_param_folding,最好设置成如下图所示,否则可能会产生乱码。

配置完毕之后,点击“Create Config”。

下载生成的两个文件,拷贝到config文件夹下。

点击“continue”。

安装数据库

点击Initalize DataBase,初始化数据库。

测试成功之后,删除installer文件夹。

 

 

1.2 安装插件

Roundcubemail 以插件的形式支持扩展,本身自带了几十种插件在plugins目录下:

添加修改密码插件

现打开main.inc.php 文件,搜索“$rcmail_config['plugins']”,找到:

// List of active plugins (in plugins/ directory)

$rcmail_config['plugins'] = array();

这里我想添加修改密码功能,修改代码如下:

// List of active plugins (in plugins/ directory)

$rcmail_config['plugins'] = array("password");

修改数据库连接串

进入“plugins\password”目录,复制一份config.inc.php.dist文件,修改为config.inc.php,搜索“$rcmail_config['password_db_dsn']”,修改为:

$rcmail_config['password_db_dsn'] = 'mysql://root:yourpassword@localhost/hmailserver';

参数说明:

    @mysql:因为roundcube我用的mysql作为数据存储

    @root:访问数据库的用户(需要具有可读写权限)   

    @youpassword:密码,即你访问数据库的用户密码;我的root用户密码为111111 故为:$rcmail_config['password_db_dsn'] = 'mysql://root:111111@localhost/hmailserver';

    @localhost:本地访问

    @hmailserver:安装hmialserver时的数据库名称;默认的是hmail 我更名为hmailserver

功能:即链接hmailserver数据库

修改更新密码的sql语句

搜索“$rcmail_config['password_query'] ”,找到如下代码:

'SELECT update_passwd(%c, %u)'

修改为:

$rcmail_config['password_query'] = 'UPDATE hm_accounts

 SET accountpassword=md5(%p),accountpwencryption = 2

 WHERE accountaddress=%u

LIMIT 1';

这就是一条简单的update语句,只是密码采用了md5加密;accountpwencryption = 2 表示MD5加密算法;( 不要写错了)

%p表示传入的新密码

%u表示用户名

刷新页面,我们看到页面里有了密码模块,可以修改密码了。

 

windows 2003 远程桌面没有声音解决方法

因为文字太多,我简单概括下(以下操作均在windows server 2003中进行):

  1、新装windows server 2003没有声音,是正常的。想要它有声音,请接着往下看。

  2、首先,检查驱动是否安装(我的电脑——右键——属性——硬件——设备管理——声音视频和游戏控制,如果没有***问号,说明已安装相关驱动)。

  3、确定驱动安装无误后,我的电脑——右键——管理——服务和应用程序——服务,找到windows audio项,设置为启动。(默认为禁止)

  4、接下来点击开始——管理工具——终端服务配置——右键rdp-tcp,选择属性——客户端设置——取消勾选“音频映射”,确定。

  5、重启计算机,ok。

 

--------------------------

远程桌面打开视频,音频是没有声音的,如果要传递声音,在远程桌面(Remote Desktop Connection)的本地资源(Local Resources)选项里,有个远程计算机声音(Remote Comupter sound)的设置,通过设置带到这台计算机(Bring to this computer)这个选项,可以使得在远程服务器上播放的音乐在RDP终端设备的音箱或者Mic上输出,这样对于Thinclient/WinCE等由于系统资源限制或者软件限制以及网络文件访问等限制导致的播放音乐比较麻烦的问题就可以有效解决。而另一个选项留在远程计算机(Leave at remote computer)则是在服务器上播放时声音输出仍旧在远程计算机的音箱或者Mic里。

  这个技术的大致原理呢,在远程计算机上(不管是Win2003的终端服务还是WinXP的远程桌面,实际是都是基于RDP的Windows Terminal Service),在客户段连接上之后,会启用一个Microsoft RDP 音频驱动程序(Microsoft RDP Audio Driver ),这个驱动的工作就是负责接管远程计算机上正在播放的音频,把它压缩之后作为网络流传递到客户端,再由RDP客户端把这个音频网络流发送到本地声卡上作为输出。

  但是,默认情况下,这个选项设置完成之后,在服务器上播放音乐时,却仍旧会提示声音设备没有正常安装或者被别的程序占用或者声音设备工作不正常而导致Meida Player无法播放文件。("Windows Media Player cannot play the file because there is a problem with your sound device. There might not be a sound device installed on your computer, it might be in use by another program, or it might not be functioning properly.")。在检查音量控制时,可以看到Microsoft RDP Audio Driver是显示正常,而在系统的声音和音频设备里也能看到声卡设备都运转正常。

  如果出现这种情况,那么就是由于远程终端服务器的配置导致的。在远程终端服务器上,进入管理工具 -> 终端服务配置 -〉连接-〉RDP-Tcp 右键,属性,客户端设置,最下面有个禁用下列项目,把音频映射的选项清除,确定后退出重新远程登录到远程终端服务器上,再启动Media Player播放音乐,就能在你本机客户端上的耳机里听到音乐飘出来了。

  跟Win2003相反,在Windows XP里,这个选项默认是允许音频重定向到RDP客户端的。但是如果被不小心更改了,因为WinXP里没有终端服务配置这个管理工具,所以要改回来就相当麻烦了,需要在组策略对象编辑器里才能更改。运行-> MMC -> 文件 -> 添加/删除管理单元 -> 添加 -> 组策略对象编辑器 -> 添加 -> 本地计算机 -> 完成 -〉关闭 -> 确定, 回到MMC界面。选择 计算机配置-> 管理模板 -> Windows 组件 -> 终端服务 -> 客户端/服务器数据重定向,允许音频重定向,改成已启用,确定,退出MMC,重新登录即可。

之前使用windows server 2008 R2,都没有用的声音播放的功能,所以一般情况下都不安装声卡驱动,或者装了也没用上,所以也没发现问题。今天正好有个项目需要用声卡播放告警语音,所以需要用到声卡来播放。

结果使用主板厂家提供个的win7_win8声卡驱动,安装上去,发现状态栏上的喇叭图标一直显示叉叉,质询主板厂家技术支持,得到的答复还是比较让人抓狂的,就是让我装win7的系统,WDF。

尝试了用驱动精灵,或者下载声卡原厂驱动也无果后,差点就放弃了。突然一想,可能不是驱动的问题,而是server的问题,果然,baidu了一下,找到了解决的办法:

1. 开启系统服务:Windows Audios和AudioEndpointBuilder。

2. 打开组策略(gpedit.msc),找到管理模板>Windows 组建>远程桌面服务>远程桌面会话主机>设备和资源重新定向>允许音频和视频重定向,双击编辑启用该项。

3. 重启,解决问题


另外,声卡问题解决了,但是软件还可能播放不了声音,因为软件调用的是windows meidia player的控件,而windows server 2008R2默认没有安装wmp。解决办法:

1.打开服务器管理器,选择功能项下的添加功能,并添加“桌面体验”选型,确定,重启即可。

Windows XP 每次开机都自动检测硬盘的解决办法


1、单击左下角的“开始”按钮,弹出的菜单窗口单击“运行”命令

2、在打开的“运行”对话框中输入“regedit”命令,打开注册表编辑器

3、在左侧的注册表树窗口找到以下子项
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager

4、然后在右边窗口找到并双击打开“BootExecute”键值

5、打开的编辑对话框将清空数值数据,单击“确定”,退出注册表编辑器

About Us

Since 1996, our company has been focusing on domain name registration, web hosting, server hosting, website construction, e-commerce and other Internet services, and constantly practicing the concept of "providing enterprise-level solutions and providing personalized service support". As a Dell Authorized Solution Provider, we also provide hardware product solutions associated with the company's services.
 

Contact Us

Address: No. 2, Jingwu Road, Zhengzhou City, Henan Province

Phone: 0086-371-63520088 

QQ:76257322

Website: 800188.com

E-mail: This email address is being protected from spambots. You need JavaScript enabled to view it.