hmailserver自行设置密码
2010-09-07一直想让用户能自行修改hmailserver的用户密码,网上只说squirrelmail有个插件可以修改,squirrelmail太丑了点吧,都不好意思拿出手,其实hmailserver自带了修改密码的工具的,那就是webadmin啦,你不会以为它只是给你管理hmailserver的一个web后台吧?当然,老夫以前一直这么认为,后来发现它同样可以让用户来设置自己的相关信息的。
一直想让用户能自行修改hmailserver的用户密码,网上只说squirrelmail有个插件可以修改,squirrelmail太丑了点吧,都不好意思拿出手,其实hmailserver自带了修改密码的工具的,那就是webadmin啦,你不会以为它只是给你管理hmailserver的一个web后台吧?当然,老夫以前一直这么认为,后来发现它同样可以让用户来设置自己的相关信息的。
我真的看不懂,到此一游好了!
我怎么发现hmailserver可能有后门呢?
我把它的服务一起动,就显示开始有外部链接开始连我的服务器。服务器连接数一下就上去了。
服务器停了,马上就下来了。
有点不敢用了。。。。。
昨天刚说右后门。今天我的服务器被arp攻击了。结果机房的人让我重装系统。
呜。。。。,不知道跟装hmailserver有啥关系没。。。。
害怕中。。。。
希望用hmailserver的朋友们都自查一下~~
我已经用于正式办公环境几个月了,有些小的问题,但也没你说的那么夸张
请问下啊~你说的这个设置在哪啊?没找到啊
请问大侠如何实现的,我现在也正在为这个问题烦恼,我看到phpwebadmin内config.php内最后一行说的是用户登录权限的设置,0 是所有用户都可以登录,可是设置后重新启动服务也不起作用,不知道大侠所说的在哪里设置,请指点
默認直接就可以啊,怎麼回事
地址是http://x.x.x.x/phpwebadmin 么?
我用其他用户登录,他一直提示 不正确的用户名或密码
只有管理员可以进入
就这个,只用输入用户名,不用输入整个邮件地址
你说的这个config.php最后一个开关我看了,那个是限制用户是否允许编辑规则的,设置为0表示允许所有人修改规则,很显然是不对的,默认2就行了
我的怎么除了管理员其余人登录都说用户名密码不对呢,是数据库没挂接上还是没问题,呀。郁闷
你这个问题很奇怪了,反正我没有改任何东西都可以
貌似我的也不行,用建立的邮件用户无法登陆,只有ADMIN用户可以登陆
在http://x.x.x.x/phpwebadmin里用非ADMIN帐号登没问题。
不过,用户名要使用格式:username@yourdomain 或者
在hMailserver administrator tools ->高级->右边的“默认域名”中填入:yourdomain(例如:foo.com)
正确
折腾了一段时间,总算对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,加入本地激活和启动权限即可。
祝大家好运。
之前看过这个,那是pro版的,如果是lite版就没有这个功能了
在网上找了N久,结果就还是回到您的博客上来了。hmail搞好了,也用了蛮久,不错。
但是郁闷的就是用户自己无法更改密码。使用的是hmail-5.3.3-B1879。自带webmail,可以正常使用webmail收发邮件,但是用户自己在设置更改密码,保存后,提示设置更改,可是注销后,仍然要用旧密码登录。楼主这也没有说清楚啊~求教了!
没遇到过你这个问题,不过我在搞mailarchiva的时候出现过修改密码失败这种问题,后来我把mailarchiva删了重新来过就好了,你可以参考一下。
重做啊?痛苦哦….
没让你重做hmailserver,只是重设webadmin
天啊~~天理何在?重新设置了webmail也是一样!!在数据库里面看,通过页面更改密码的确是保存到了数据库中的。但是在页面登陆的时候就是不顶事。
看了一下hm官方论坛关于用户密码的加密方法,可以自己弄个密码修改程序的。
密码加密算法是随机产生一个6位数的SALT,用这个SALT加上密码(如abcde),然后将这个值SALTabcde进行SHA256加密,得到64位密码串,再将这个密码串前面加上SALT保存到数据中。官方论坛上可以搜到php做的密码修改程序,看了下挺晕头的。还是用.net的类库SHA256加密比较简单,呵呵。
@zawdrola,能看到数据库里密码已经变动了么?难道页面缓存还对这个有影响么
@simeoz,老兄研究的挺透彻的,其实我觉得这个不算难,只是我不会,官网论坛里能找到别人做的改mysql密码的文件,参考一下再结合webadmin的某些类库应该是可以搞定这个的。
页面上更改的数据,其实是保存在Webmail的数据库里面的,在安装Webmail的时候是要求创建的,这个数据库是MYSQL和安装hMailserver默认使用的MS的SQLCE的数据库并不一致。当用户使用自己的邮件帐号登入的时候webmail更改密码的时候其实是更改了mysql的对应帐号的密码,但是在webmail上使用的确实sqlce中的密码,也就是hmailserver中的帐号密码。
@simeoz老兄提供了一种思路,可惜没有时间去研究啊。
@zawdrola:
密码是保存在数据库里的,无论你使用什么数据库。hmailserver在安装里只能是使用一个数据库,并不会同时使用MYSQL和SQLCE两种数据库的。webmail验证用户时也是会去读hmailserver的数据库密码的。
.net的密码修改程序我已经完成了,修改也没问题。修改后通后afterlogic webmail登录也正常。现在就是没办法将修改密码的连接放入afterlogic webmail里,因为afterlogic webmail页面生成的代码都用js生成的,看得我好头大。
这个是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;
}
@simeonz,兄台高人那,我之前也想给afterlogic加个链接,瞧了半天愣是没搞定,就放弃了
用 cube吧,可以修改密码的
@honlan
因为在windows系统下,hmailserver及webmail客户端均使用同一个数据库MS SQL,管理比较方便。而cube不支持MS SQL,所以只能放弃了
帐户密码的修改代码(C#),可以到这里http://blog.csdn.net/simeonzheng/article/details/7387522 看下
使用MS SQL或MYSQL,邮箱帐号是存在数据里的,是可以修改的,不过数据库的密文是加密的,加解密方法可以参考这里:http://cpdns.com/?p=9