自己很少使用pureftp,一般都是使用vsftp软件搭建ftp,对这个还比较熟悉。今天有seo的同时让我给一个ftp帐号给,我查看公司服务器ftp使用的pureftp软件,我了解过这个东东,添加一个虚拟用户比vsftpd麻烦多了,如果使用web界面添加用户是很轻松的
pureftp可以修改配置文件支持使用系统用户登录,但是共享的目录需要是系统用户的家目录,如果需要增加其他用户登录该目录,难道需要把新添加的用户的家目录指定到共享目录,那样是不是会导致原本的用户无法登录。自己也没有去深入了解。在这里建议没有使用过pureftp的朋友,推荐使用web界面管理是很轻松的
今天遇到一些几个问题:
我想通过web界面登录到管理界面,出题是我不知道管理员密码,问程序开发部门,他们也搞忘记了,我首先想到的是在数据库建立一个管理员,因为pureftp帐号是通过数据库来管理的。
我进入数据库,我的操作是不修改以前管理员帐号密码,添加新管理员帐号,为什么这么做呢,就是防止添加帐号失效,数据无法恢复,我添加新帐号就算失效也不影响正常工作。我添加新帐号的命令如下:
mysql> insert into admin values("yunweiadmin",password("oracle"));
Query OK, 1 row affected, 1 warning (0.00 sec)
按照上面的命令是不应该有问题的,大家也看到了有一个警告,我仍未不是出错就没有问题,但是不是这样的,我到web界面去登录,提示登录失败,我就纠结了,咋个办呢,命令又没有错,那咋办,那就必须知道警告到时什么导致的:
mysql> SHOW WARNINGS\G;
*************************** 1. row ***************************
Level: Warning
Code: 1265
Message: Data truncated for column 'Password' at row 1
1 row in set (0.00 sec)
ERROR:
No query specified
通过查看警告知道了原来是password的字符长度不够,自动裁剪了,导致密码不正确,现在就解决修改表列的属性了:
mysql> alter table admin modify column Password char(250);
以为这样就正确了,我再次通过上面插入数据的命令执行,数据库没有报错了,就再次进入web界面登录,提示还是密码错误,后面就查了一些资料才发现pureftp的管理员密码是使用md5加密的,通过password加密是行不通的:
mysql> select md5("oracle");
+----------------------------------+
| md5("oracle") |
+----------------------------------+
| a189c633d9995e11bf8607170ec9a4b8 |
+----------------------------------+
1 row in set (0.00 sec)
通过md5获取了oracle字符md5的加密字符串,修改上面的新添加的帐号的密码:
mysql> update admin set password='a189c633d9995e11bf8607170ec9a4b8' where username="yunweiadmin";
到这里已经算是成功新添加pureftp帐号了