算出来明明就不是2:6:1嘛!!!是4.3:13:2!!为什么一定写成2:6:1???升怎么算出来样算最简

[保留] vsftp1.2+mysql4.1+pam_mysql0.5在RedHat AS4(32bit)下好像是有bug - ChinaUnix.net
[保留] vsftp1.2+mysql4.1+pam_mysql0.5在RedHat AS4(32bit)下好像是有bug
http://www.chinaunix.net 作者:&&发表于: 10:07:35
小弟最近在研究在AS4在用VSftp和MySQL通过PAM-MySQL做虚拟用户,结果怎么登陆都不成功。
[color=Black]vsftpd.conf[/color]
guest_enble=yes
guest_username_vsftpguest
pam_service_name=vsftpvu
MySQL数据库配置我用vsftpguest本地登陆验证过了,肯定不会有问题.
[color=Black]/etc/PAM.d/vsftptvu[/color]
auth&required&pam_mysql.so&user=vsftpdguest&passwd=i52serial0&host=localhost&db=vsftpdvu&table=users&usercolumn=name&passwdcolumn=passwd&crypt=2&
  account&required&pam_mysql.so&user=vsftpdguest&passwd=i52serial0&host=localhost&db=vsftpdvu&table=users&usercolumn=name&passwdcolumn=passwd&crypt=2
关健问题就出在PAM_MySQL上,如果用PAM_MySQL0.5中的pam_mysql.so,测试时会在/var/log/messege里显示
&&PAM_MySQL:MySQL&err&Client&does&not&support&authentication&protocal&requested&by&considr&upgrading&MySQL&client
而如果用PAM_MySQL0.6则根本就没有任何的显示.&PAM_MySQL0.7更是MAKE不了。
看来我只能改用pureftp才能解决问题,郁闷ing............................
高手指教!!![&本帖最后由&lingniao&于&&12:13&编辑&]
& 回复于: 21:30:45
PAM_MySQL0.7&MAKE不了,报什么错?你是怎么做的,能否说说?
crypt=2,用这种认证方式时,你的表里的password是怎么生成的。
仔细看看源代码里的INSTALL和README文件
& 回复于: 14:51:46
mysql&-p&
  mysql&create&database&&
  mysql&use&&
  mysql&create&table&users(name&char(16)&binary,passwd&char(16)&binary);&
  mysql&insert&into&users&(name,passwd)&values&('xiaotong',password('qqmywife'));&
  mysql&insert&into&users&(name,passwd)&values&('xiaowang',password('ttmywife'));&
  mysql&quit&
 然后,授权vsftpguest可以读vsftpvu数据库的users表。执行以下命令:&
  &mysql&-u&root&mysql&-p&
  mysql&grant&select&on&vsftpvu.users&to&vsftpguest@localhost&identified&by&'i52serial0';&
  mysql&quit&
&&然后我用vsftpguest本地登陆,
&&&&&&mysql&-pi52serial0&vsftpdvu&
  mysql&select&*&from&&
  成功,列出xiaotong、xiaowang和加密后的密码&
我参考的文章是http://www.21ds.net/article/_32//356_1.html
且做了少许改动。vsftpdguest改成vsftpguest,vsftpdvu改成vsftpvu,
我认为文章中少了一句话在/etc/vsftpd/vsftp.conf/中,于是我加入pam_service_name=vsftpvu,并把原来的pam_service_name注释掉。
& 回复于: 15:12:46
请仔细看源代码里的README文件。
使用crypt=2时,&pam-mysql加密密码的password函数和你在sql语句用户的password函数算法是不一样的
& 回复于: 19:25:52
[root@ASserver&pam_mysql-0.7pre3]#&make
/bin/sh&./libtool&--mode=compile&gcc&-DHAVE_CONFIG_H&-I.&-I.&-I.&-I/usr/include/security&-I/usr/include&&&&-g&-O2&-I/usr/local/mysql/include/mysql&&&&-c&pam_mysql.c
&gcc&-DHAVE_CONFIG_H&-I.&-I.&-I.&-I/usr/include/security&-I/usr/include&-g&-O2&-I/usr/local/mysql/include/mysql&-c&pam_mysql.c&&-fPIC&-DPIC&-o&.libs/pam_mysql.o
In&file&included&from&pam_mysql.c:124:
/usr/include/md5.h:27:&syntax&error&before&"UINT4"
/usr/include/md5.h:30:&syntax&error&before&'}'&token
/usr/include/md5.h:38:&syntax&error&before&"PROTO_LIST"
/usr/include/md5.h:39:&syntax&error&before&"PROTO_LIST"
/usr/include/md5.h:41:&syntax&error&before&"PROTO_LIST"
/usr/include/md5.h:43:&syntax&error&before&"PROTO_LIST"
make:&***&[pam_mysql.lo]&Error&1
这是MAKE&0.7pre3时的错误信息
还有我认为pam-mysql和mysql里所用的password函数应该是一样的才对,不然开发者还让我们怎么用这个模块呢?
& 回复于: 11:00:24
试试这样编译
#&./configure&--with-openssl
#&make&install
引用:原帖由&lingniao&于&&19:25&发表
我认为pam-mysql和mysql里所用的password函数应该是一样的才对,不然开发者还让我们怎么用这个模块呢?
试试就知道了
& 回复于: 20:33:38
厉害啊,老大,真的是这样!!!,高手,佩服佩服。。。。。。。
& 回复于: 21:30:12
不过呢,偶现在又有新的问题,我在make&编译vsftpd-2.0.3的时候,如果改动builddeps.h中undef&&VSF_BUILD_SSL为define&VSF_BUILD_SSL,那么就会出错
/usr/local/vsftpd-2.0.3#make
gcc&-c&ssl.c&-O2&-Wall&-W&-Wshadow&-idirafter&dummyinc
In&file&included&from&/usr/include/openssl/ssl.h:179,
from&ssl.c:26:
/usr/include/openssl/kssl.h:72:18:&krb5.h:&No&such&file&or&directory
In&file&included&from&/usr/include/openssl/ssl.h:179,
from&ssl.c:26:
/usr/include/openssl/kssl.h:134:&syntax&error&before&"krb5_enctype"
/usr/include/openssl/kssl.h:136:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:137:&syntax&error&before&'}'&token
/usr/include/openssl/kssl.h:149:&syntax&error&before&"kssl_ctx_setstring"
/usr/include/openssl/kssl.h:149:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:150:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:151:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:151:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:152:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:153:&syntax&error&before&"kssl_ctx_setprinc"
/usr/include/openssl/kssl.h:153:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:155:&syntax&error&before&"kssl_cget_tkt"
/usr/include/openssl/kssl.h:155:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:157:&syntax&error&before&"kssl_sget_tkt"
/usr/include/openssl/kssl.h:157:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:159:&syntax&error&before&"kssl_ctx_setkey"
/usr/include/openssl/kssl.h:159:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:161:&syntax&error&before&"context"
/usr/include/openssl/kssl.h:162:&syntax&error&before&"kssl_build_principal_2"
/usr/include/openssl/kssl.h:162:&syntax&error&before&"context"
/usr/include/openssl/kssl.h:165:&syntax&error&before&"kssl_validate_times"
/usr/include/openssl/kssl.h:165:&syntax&error&before&"atime"
/usr/include/openssl/kssl.h:167:&syntax&error&before&"kssl_check_authent"
/usr/include/openssl/kssl.h:167:&syntax&error&before&'*'&token
/usr/include/openssl/kssl.h:169:&syntax&error&before&"enctype"
In&file&included&from&ssl.c:26:
/usr/include/openssl/ssl.h:909:&syntax&error&before&"KSSL_CTX"
/usr/include/openssl/ssl.h:931:&syntax&error&before&'}'&token
ssl.c:&In&function&`ssl_init':
ssl.c:46:&warning:&declaration&of&`options'&shadows&a&global&declaration
/usr/include/openssl/ssl.h:925:&warning:&shadowed&declaration&is&here
make:&***&[ssl.o]&Error&1
请问这该如何是好???
& 回复于: 09:34:05
用rpm命令检查有没有安装这个包&krb5-devel
rpm&-qa&|grep&-i&krb5-devel
没有的话,安装这个包后再试
& 回复于: 20:22:11
部分rpm&-ql&krb5-devel的显示如下&,我在想是不是这个软件包的目录和vsftpd要示的有点区别?
[root@ASserver&root]#&rpm&-ql&krb5-devel
/etc/profile.d/krb5.csh
/etc/profile.d/krb5.sh
/usr/kerberos
/usr/kerberos/bin
/usr/kerberos/bin/krb5-config
/usr/kerberos/bin/sclient
/usr/kerberos/include
/usr/kerberos/include/asn.1
/usr/kerberos/include/com_err.h
/usr/kerberos/include/gssapi
/usr/kerberos/include/gssapi/gssapi.h
/usr/kerberos/include/gssapi/gssapi_generic.h
/usr/kerberos/include/gssapi/gssapi_krb5.h
/usr/kerberos/include/kerberosIV
/usr/kerberos/include/kerberosIV/des.h
/usr/kerberos/include/kerberosIV/kadm.h
/usr/kerberos/include/kerberosIV/krb.h
/usr/kerberos/include/kerberosIV/krb_err.h
/usr/kerberos/include/kerberosIV/mit-copyright.h
/usr/kerberos/include/krb5.h
/usr/kerberos/include/libpty.h
/usr/kerberos/include/mit-sipb-copyright.h
/usr/kerberos/include/port-sockets.h
/usr/kerberos/include/profile.h
/usr/kerberos/lib/libcom_err.a
/usr/kerberos/lib/libcom_err.so
/usr/kerberos/lib/libdes425.a
/usr/kerberos/lib/libdes425.so
/usr/kerberos/lib/libdyn.a
/usr/kerberos/lib/libdyn.so
/usr/kerberos/lib/libgssapi_krb5.a
& 回复于: 09:57:29
我的RH&as&4上得到的结果和你的不一样
krb5-devel的年点文件在/usr/include下
try&
ln&-s&/usr/kerberos/include/krb5.h&/usr/include/krb5.h
& 回复于: 14:43:38
还是不行,我在想可能是我安装系统的系统开发包什么的没有装全。不管他了,我系统已经重装,再试ing...
还有就是我今天才想起来,我以前的系统是AS3,2.4的内核。现在是AS4,2。6的内核了。看看怎么样。[&本帖最后由&lingniao&于&&14:45&编辑&]
& 回复于: 10:07:33
create&table&users(name&char(16)&binary,passwd&char(16)&binary);&
你如果出现用&crypt=2&验证不能通过的情况,那么问题就是出现在这里。
你创建这个table的时候passwd只用了16个char,实际上&password算出来的数字有40个char,所以一定会出现验证不能通过的问题.
我就奇怪了为什么网上的文章都写是16个char呢,应该是41&或者40才对啊。
不信你自己验证一下。
SELECT&ENCRYPT('mypass'),&PASSWORD('mypass'),&MD5('mypass');
[&本帖最后由&wolfg&于&&10:15&编辑&]
& 回复于: 22:45:19
很神奇,如果insert的时候不用passwd()函数,采用明文存储,而pam验证文件仍crypt=2时,居然神奇般的通过了。
char(40)还是一样,进不去。
这是为啥呢,我真是被搞晕了!!!!!!
& 回复于: 22:58:15
引用:原帖由&lingniao&于&&22:45&发表
很神奇,如果insert的时候不用passwd()函数,采用明文存储,而pam验证文件仍crypt=2时,居然神奇般的通过了。
char(40)还是一样,进不去。
这是为啥呢,我真是被搞晕了!!!!!!&
应该是char(41),你可以用这个sql语句看一下password函数生成密码的长度
select&password('123');
不妨设大一点,比如char(64)或者char(48)
至于,crypt=2时明码可以登录,我觉得不大可能,我可以也试验一下看看。[&本帖最后由&wolfg&于&&21:29&编辑&]
& 回复于: 23:39:59
是我错了,我把crypt写成了cryt.
可是,要是crypt=2,还是进不去(我把passwd字段大小设成多少都不起作用),只能用crypt=0,或者不写,或者错写:)
而且我还做了试验:
create&table&cool(id&char(64)binary);
insert&into&cool(id)values(password(''));
select&*&from&
显示
+------------------+
|&id&&&&&&&&&&&&&&&|
+------------------+
|&19bf&|
+------------------+
1&row&in&set&(0.00&sec)
明明就是16个字符嘛!!!
我晕..............................................[&本帖最后由&lingniao&于&&00:04&编辑&]
& 回复于: 20:14:21
你的mysql和pam_mysql的版本是多少?
你看我试验的结果:
引用:mysql&&select&password('');
+-------------------------------------------+
|&password('')&&&&&&&&&&&&&&&&&&&&|
+-------------------------------------------+
|&*6B5EDDE567F4F95DBD14B8ADDD2A&|
+-------------------------------------------+
1&row&in&set&(0.14&sec)
& 回复于: 16:48:52
[root@RHEL4&~]#&rpm&-qa|grep&mysql
mysql-4.1.7-4.RHEL4.1
mod_auth_mysql-2.6.1-2.1
php-mysql-4.3.9-3.1
mysql-bench-4.1.7-4.RHEL4.1
libdbi-dbd-mysql-0.6.5-10.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
mysql-devel-4.1.7-4.RHEL4.1
mysql-server-4.1.7-4.RHEL4.1
pam_mysql还是用你的方法编译的0.7pre
mysql&&select&password('');
+------------------------+
|&password('')&|
+------------------------+
|&19bf&&&&&&&|
+------------------------+
1&row&in&set&(0.00&sec)
吐血!!!!!!!!!!!!!!!!!!!!!!!1[&本帖最后由&lingniao&于&&17:05&编辑&]
& 回复于: 09:28:08
/doc/refman/4.1/en/password-hashing.html
看看mysql的manual里的说明
& 回复于: 10:07:35
虽然这个贴子有三年的悠久历名了,但不知道现在回复这个贴子,版主(管理员)会不会封我的ID(以前在其他论坛被封过)?
小生刚从win转到linux,在网上找到那篇“无错版vsftpd+mysql+pam_mysql配置虚拟用户方法”的教程。
出现的问题也是lingniao一样的。
在baidu,google上找了几天也没找到适合我的处理方法。
我也把krb5.h做了链接,在./configure后也加了--with-openssl,都不行。
不知道论坛里的哪位朋友整理了真正“无错版的vsftpd+mysql+pam_mysql配置虚拟用户方法”的教程。
还希望能共享给小生学习一下。
在此先谢过了。:em21:[&本帖最后由&zhxd&于&&10:16&编辑&]
原文链接:
转载请注明作者名及原文出处观察:1+2=3=2^2-1,1+2+2^2=7=2^3-1,1+2+2^2+2^3=15=2^4-1…(1)计算:1+2+2^2+2^3+…+2^63;(2)如果2^32的值约为4.3*10^9,把(1)题的结果用科学计数法表示出来,并判断它是几为整数.是 并判断它是几【位】整_百度作业帮
观察:1+2=3=2^2-1,1+2+2^2=7=2^3-1,1+2+2^2+2^3=15=2^4-1…(1)计算:1+2+2^2+2^3+…+2^63;(2)如果2^32的值约为4.3*10^9,把(1)题的结果用科学计数法表示出来,并判断它是几为整数.是 并判断它是几【位】整数
撒旦就凙徃l
1.1+2^2^2+2^3+...2^63-=2^64-12.2^64-1=(2^32)^2-1=(4.3×10^9)^2-1=18.49×10^18-1=1.849×10^19-1是20位整数.
其他类似问题
(1)1+2+2^2+2^3+…+2^63=2^64-1(2) 2^64-1=(4.3*10^9)^2-1
=1.849*10^19-1应该是20位整数
(1)1+2+2^2+2^3+…+2^63=2^64-1 (2) 2^64-1=2^32*2^32 -1= 4.3*10^9*4.3*10^9-1=18.49×10^19是20位整数
扫描下载二维码课时特训六年级下数学22页解比例怎么做(就只要2.3.4题)前面的几点几是大题与小题2.1 4:9=x:122.3 3.2分子13=x分子3.93.4 7x=4.3.根据下题列出比例4.马力要给一张长方体图片配置一个画框,已知图_百度作业帮
课时特训六年级下数学22页解比例怎么做(就只要2.3.4题)前面的几点几是大题与小题2.1 4:9=x:122.3 3.2分子13=x分子3.93.4 7x=4.3.根据下题列出比例4.马力要给一张长方体图片配置一个画框,已知图片长是48厘米,长与宽的比是3:2.该画框的周长至少需要多少厘米?
dd09227辟岸
前三个题根据比例的基本性质(两个内项的积等于两个外项的积)进行解比例.最后一题,先根据比例求出长方形的宽,再求周长.48:x=3:2
x=32周长 (48+32)X2=160厘米
其他类似问题
扫描下载二维码}

我要回帖

更多关于 计算器音乐怎么调出来 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信