欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

開源郵件服務(wù)器 hMailServer 簡(jiǎn)介及其用戶密碼加密算法[轉(zhuǎn)]

admin
2011年2月11日 10:35 本文熱度 5396
這兩天公司給了我一個(gè)任務(wù),讓我給公司和一個(gè)客戶安裝一個(gè)郵件服務(wù)器,需求是:

  1. 免費(fèi),最好是正版;

  2. 支持多域名(因?yàn)楣尽⒖蛻舻膬蓚€(gè)域名同時(shí)用一個(gè)服務(wù)器);

  3. 支持較多用戶;

  4. 運(yùn)行環(huán)境是 windows 平臺(tái)

  這次我找到了一個(gè)比較不錯(cuò)的郵件服務(wù)器:hMailServer,當(dāng)前發(fā)布的服務(wù)器版本是 5.3.3。這個(gè)郵件服務(wù)器是開源的郵件服務(wù)器,用 c 開發(fā)的,數(shù)據(jù)庫支持 ms sql server、MySql、PostgreSQL,提供 SMTP/POP/IMAP 等服務(wù),沒有域名、用戶數(shù)的限制,且支持殺毒軟件、反垃圾郵件等功能。這完全符合了我們的要求。具體的安裝辦法可以參考官方網(wǎng)站的介紹,也可以到這個(gè)頁面看看:用hMailServer架設(shè)自己的高性能免費(fèi)郵件服務(wù)器


  當(dāng)然,這個(gè)服務(wù)器也有些遺憾:



  1. 沒有 web 郵件客戶端;

  2. 沒有中文界面;

  3. 只提供了 php 的 web 管理界面。

  這些缺憾前兩個(gè)很容易解決:



  1. web 郵件客戶端在網(wǎng)上很多,根據(jù)自己的服務(wù)器配置去下一個(gè)安裝一下就行了。當(dāng)然,也可以自己開發(fā)一個(gè);

  2. 中文界面也很好解決,可以自己翻譯,也可以到這里看看:http://www.99wzdh.com/blog/post/7.html

  對(duì)于第三個(gè)缺憾,如果你用 php 服務(wù)器的話,那恭喜你,你可以直接使用這個(gè)服務(wù)器安裝目錄下的:PHPWebAdmin 目錄來管理。但我用的是 java,且對(duì) php 早已忘得一干二凈,但又不想安裝 php,所以只好自己想辦法解決。


  經(jīng)過兩天的研究,我打算自己寫一個(gè)頁面來管理。之所以決定要自己寫程序來管理,是因?yàn)槲野l(fā)現(xiàn),其實(shí)郵件用戶賬號(hào)等各項(xiàng)配置數(shù)據(jù)都保存在數(shù)據(jù)庫中,處理起來非常簡(jiǎn)單。唯一麻煩的就是用戶密碼的加密算法。


  下面先簡(jiǎn)單說一下這個(gè)服務(wù)器的一些主要的數(shù)據(jù)庫表:



  1. 域名表:hm_domains,這個(gè)表保存了服務(wù)器中配置的各個(gè)域名及其相關(guān)屬性;

  2. 郵件賬號(hào)表:hm_accounts,這個(gè)表保存了所有的郵件賬號(hào)的各項(xiàng)信息,如所屬域名、密碼、郵箱大小等;

  3. imap服務(wù)的目錄表:hm_imapfolders,這個(gè)表保存了 imap 服務(wù)的各個(gè)目錄。默認(rèn)情況下,每建立一個(gè)郵件賬戶,系統(tǒng)都會(huì)為這個(gè)用戶添加一個(gè) imap 目錄(收件箱)

  這三個(gè)表就是我們自己寫管理郵件賬戶頁面時(shí),最常用到的表。其它的表,也很簡(jiǎn)單,如果需要的話,看一下,很容易看懂。


  這兩天我遇到的最大麻煩就是,用戶的密碼加密算法。我看了數(shù)據(jù)庫的保存密碼的字段,但不知道是用什么加密算法加密的。到網(wǎng)上找了一圈,都沒有找到直接的答案。但看了一些人的討論后,再自己測(cè)試了一下,最終發(fā)現(xiàn),在表 hm_accounts 中保存的密碼,不同的賬戶是可以使用不同的加密算法來加密的。表中保存密碼的字段是:accountpassword,而這個(gè)密碼所使用的加密算法由后面的一個(gè)字段的值來決定,這個(gè)字段就是:accountpwencryption。當(dāng)前這個(gè)字段的值決定了密碼的不同加密算法,下面是其對(duì)應(yīng)關(guān)系:


0 -> 用明碼來保存密碼,即不對(duì)密碼進(jìn)行加密;


1 -> 使用 Blowfish 來加密密碼。據(jù)介紹,這種加密算法并不安全,和用明碼保存密碼的安全性相差不大;


2 -> 使用 MD5 加密算法來加密密碼;


3 -> 使用 SHA256 加密算法來加密密碼。這也是 hMailServer 官方推薦的加密算法


  知道上述內(nèi)容后,自己寫管理用戶的界面就非常簡(jiǎn)單了,要添加一個(gè)用戶賬號(hào),直接往數(shù)據(jù)庫添加一條記錄即可。


  當(dāng)前默認(rèn)的 hMailServer 的加密算法是(參考:http://cpdns.com/2010/11/hmailserver-users-password-encryption-algorithm/):



  1. 隨機(jī)生成一個(gè)6位長的字符串,假設(shè)生成的隨機(jī)字符串是:8et5p9,假設(shè)密碼是:123456;

  2. 將“隨機(jī)字符串”和“密碼”連起來:8et5p9123456;


  3. 將連起來的新字符串,用SHA256加密,如:hash("sha256","8et5p9123456"),得到的密文是:2dc34747955a3546b0c71459c4be8b56a998aa32bc0f5e546872157d665d14c1


  4. 將“隨機(jī)字符串”與“SHA256加密后的密文”連起來,得到新密文:8et5p92dc34747955a3546b0c71459c4be8b56a998aa32bc0f5e546872157d665d14c1,這就是保存在數(shù)據(jù)庫表中的密碼字段里的值

  文章有點(diǎn)啰嗦,但希望能對(duì)想使用這個(gè)服務(wù)器,并想自己寫程序來管理郵件賬號(hào)的朋友有點(diǎn)幫助。


該文章在 2011/2/11 10:35:40 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲(chǔ)管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved