每天进步一点点

hmailserver自行设置密码

2010-09-07
/分类: 邮件服务器 / 浏览次数: 2,889 / 34个评论 发表评论

一直想让用户能自行修改hmailserver的用户密码,网上只说squirrelmail有个插件可以修改,squirrelmail太丑了点吧,都不好意思拿出手,其实hmailserver自带了修改密码的工具的,那就是webadmin啦,你不会以为它只是给你管理hmailserver的一个web后台吧?当然,老夫以前一直这么认为,后来发现它同样可以让用户来设置自己的相关信息的。

34 则回应给 “hmailserver自行设置密码”

  1. 秦大少 说道:

    我真的看不懂,到此一游好了!

  2. bjm 说道:

    我怎么发现hmailserver可能有后门呢?
    我把它的服务一起动,就显示开始有外部链接开始连我的服务器。服务器连接数一下就上去了。
    服务器停了,马上就下来了。
    有点不敢用了。。。。。

  3. bjm 说道:

    昨天刚说右后门。今天我的服务器被arp攻击了。结果机房的人让我重装系统。
    呜。。。。,不知道跟装hmailserver有啥关系没。。。。
    害怕中。。。。
    希望用hmailserver的朋友们都自查一下~~

  4. Dagai 说道:

    我已经用于正式办公环境几个月了,有些小的问题,但也没你说的那么夸张

  5. oTUo 说道:

    请问下啊~你说的这个设置在哪啊?没找到啊

  6. 鸟行天下 说道:

    请问大侠如何实现的,我现在也正在为这个问题烦恼,我看到phpwebadmin内config.php内最后一行说的是用户登录权限的设置,0 是所有用户都可以登录,可是设置后重新启动服务也不起作用,不知道大侠所说的在哪里设置,请指点

  7. 大概是个博客 说道:

    默認直接就可以啊,怎麼回事

  8. 鸟行天下 说道:

    地址是http://x.x.x.x/phpwebadmin 么?
    我用其他用户登录,他一直提示 不正确的用户名或密码
    只有管理员可以进入

  9. Dagai 说道:

    就这个,只用输入用户名,不用输入整个邮件地址

  10. Dagai 说道:

    你说的这个config.php最后一个开关我看了,那个是限制用户是否允许编辑规则的,设置为0表示允许所有人修改规则,很显然是不对的,默认2就行了

  11. 鸟行天下 说道:

    我的怎么除了管理员其余人登录都说用户名密码不对呢,是数据库没挂接上还是没问题,呀。郁闷

  12. dagai 说道:

    你这个问题很奇怪了,反正我没有改任何东西都可以

  13. askiv 说道:

    貌似我的也不行,用建立的邮件用户无法登陆,只有ADMIN用户可以登陆

  14. 原木 说道:

    在http://x.x.x.x/phpwebadmin里用非ADMIN帐号登没问题。
    不过,用户名要使用格式:username@yourdomain 或者
    在hMailserver administrator tools ->高级->右边的“默认域名”中填入:yourdomain(例如:foo.com)

  15. Greg 说道:

    折腾了一段时间,总算对hmailserver有所了解了,无论是设置还是反垃圾、反病毒。前几天用上了afterlogic的webmail,asp.net版的,因为服务器是windows server 2008 r2,所以不想搞php环境。本人使用webmail主要的原因还是希望用户能更改密码。反复搞了很多次,最后看到一篇文章,跟大家分享。Integration with hMailServer (WebMail Pro 5 .NET)
    http://www.afterlogic.com/wiki/Integration_with_hMailServer_(WebMail_Pro_5_.NET)
    事实上用Webmail也是可以修改密码的,只要你懂英文,会操作dcom权限,就差不多了。页面上的instructions针对的是xp和2003,如果你使用iis 7-7.5,一般是添加IIS_IUSRS组到hmailserver,加入本地激活和启动权限即可。
    祝大家好运。

  16. 大概是个博客 说道:

    之前看过这个,那是pro版的,如果是lite版就没有这个功能了

  17. zawdrola 说道:

    在网上找了N久,结果就还是回到您的博客上来了。hmail搞好了,也用了蛮久,不错。
    但是郁闷的就是用户自己无法更改密码。使用的是hmail-5.3.3-B1879。自带webmail,可以正常使用webmail收发邮件,但是用户自己在设置更改密码,保存后,提示设置更改,可是注销后,仍然要用旧密码登录。楼主这也没有说清楚啊~求教了!

  18. 大概是个博客 说道:

    没遇到过你这个问题,不过我在搞mailarchiva的时候出现过修改密码失败这种问题,后来我把mailarchiva删了重新来过就好了,你可以参考一下。

  19. zawdrola 说道:

    重做啊?痛苦哦….

  20. 大概是个博客 说道:

    没让你重做hmailserver,只是重设webadmin

  21. zawdrola 说道:

    天啊~~天理何在?重新设置了webmail也是一样!!在数据库里面看,通过页面更改密码的确是保存到了数据库中的。但是在页面登陆的时候就是不顶事。

  22. simeoz 说道:

    看了一下hm官方论坛关于用户密码的加密方法,可以自己弄个密码修改程序的。
    密码加密算法是随机产生一个6位数的SALT,用这个SALT加上密码(如abcde),然后将这个值SALTabcde进行SHA256加密,得到64位密码串,再将这个密码串前面加上SALT保存到数据中。官方论坛上可以搜到php做的密码修改程序,看了下挺晕头的。还是用.net的类库SHA256加密比较简单,呵呵。

  23. 大概是个博客 说道:

    @zawdrola,能看到数据库里密码已经变动了么?难道页面缓存还对这个有影响么

  24. 大概是个博客 说道:

    @simeoz,老兄研究的挺透彻的,其实我觉得这个不算难,只是我不会,官网论坛里能找到别人做的改mysql密码的文件,参考一下再结合webadmin的某些类库应该是可以搞定这个的。

  25. zawdrola 说道:

    页面上更改的数据,其实是保存在Webmail的数据库里面的,在安装Webmail的时候是要求创建的,这个数据库是MYSQL和安装hMailserver默认使用的MS的SQLCE的数据库并不一致。当用户使用自己的邮件帐号登入的时候webmail更改密码的时候其实是更改了mysql的对应帐号的密码,但是在webmail上使用的确实sqlce中的密码,也就是hmailserver中的帐号密码。

  26. zawdrola 说道:

    @simeoz老兄提供了一种思路,可惜没有时间去研究啊。

  27. simeonz 说道:

    @zawdrola:
    密码是保存在数据库里的,无论你使用什么数据库。hmailserver在安装里只能是使用一个数据库,并不会同时使用MYSQL和SQLCE两种数据库的。webmail验证用户时也是会去读hmailserver的数据库密码的。
    .net的密码修改程序我已经完成了,修改也没问题。修改后通后afterlogic webmail登录也正常。现在就是没办法将修改密码的连接放入afterlogic webmail里,因为afterlogic webmail页面生成的代码都用js生成的,看得我好头大。

  28. simeonz 说道:

    这个是hmailserver密码加密里SHA256加密方法,encoding一定要用utf8的,网上一般是用unicode的,产生的加密结果是不同的。
    private string GetSHA256(string text)
    {
    byte[] hashValue;
    byte[] message = Encoding.UTF8.GetBytes(text);

    SHA256Managed hashString = new SHA256Managed();
    string hex = “”;

    hashValue = hashString.ComputeHash(message);
    foreach (byte x in hashValue)
    {
    hex += String.Format(“{0:x2}”, x);
    }
    return hex;
    }

  29. 大概是个博客 说道:

    @simeonz,兄台高人那,我之前也想给afterlogic加个链接,瞧了半天愣是没搞定,就放弃了

  30. honlan 说道:

    用 cube吧,可以修改密码的

  31. simeonz 说道:

    @honlan
    因为在windows系统下,hmailserver及webmail客户端均使用同一个数据库MS SQL,管理比较方便。而cube不支持MS SQL,所以只能放弃了

  32. simeonz 说道:

    帐户密码的修改代码(C#),可以到这里http://blog.csdn.net/simeonzheng/article/details/7387522 看下 :)

  33. cpdns 说道:

    使用MS SQL或MYSQL,邮箱帐号是存在数据里的,是可以修改的,不过数据库的密文是加密的,加解密方法可以参考这里:http://cpdns.com/?p=9

发表评论