当前位置: > Linux服务器 > ftp >

FTP服务器之pure-ftpd常见问题及解决方法

时间:2016-04-01 21:36来源:linux.it.net.cn 作者:IT
1.    pureftp的认证方式

       系统认证方式有LDAPConfigFile  MySQLConfigFile PGSQLConfigFile PureDB ExtAuth PAMAuthentication UnixAuthentication等。启用其中一个认证时,就只能使用该认证了。如果同时启用两个,将会根据配置先后而失效;失效认证方式的原有用户就无法登陆了,但如果允许匿名用户登录,匿名的是可以登录的。此外,发现pureDB和MysqlConfig认证方式时可以共存的。

2.    MysqlConfigFile认证

        在搭建时,疏忽了Mysql数据的账户密码加密方式,在配置pure-mysql config时也没注意,一度导致Mysql创建的虚拟账户出现 530 Login authentication failed,登陆pureftp失败的情况。因此一定要确保两边的加密方式要统一,我上篇博客均采用md5加密。此外,在此还有可能mysql模块导致的530错误的原因是,没有给pureftp虚拟账户数据库用户授权,即没执行如:

 
1
2
mysql> grant all privileges on pureftpd.* to 'pureftpuser'@'%' identified by 'pureftpuser';
mysql> flush privileges;

在这里,我提醒大家出现错误先去vi /var/log/messages  看下ftp标签所报错误,对症下药。

3.    pureftp的磁盘配额不是实时的;

4.    pureftp的上传下载速度不是非常准备,这方面比vsftp要差些;

5.    开启pureftp时报421错误

        比如:421 Unknown authentication method: puredb:/usr/local/pureftpd/etc/pureftpd.pdb
        或者是:421 Unknown authentication method:  mysql :/usr/local/etc/pureftpd-mysql.conf
        这是由于在编译时未加入对应参数导致的,这也说明--with-everything并不是把所有的模块都加进去了。

6.    pureftp的编码问题

         pureftp支持RFC2640,可以有效解决Windows和Linux下的编码问题。在编译时加上--with-rfc2640,在配置档上加上

 
1
2
3
4
5
6
7
# UTF-8 support for file names (RFC 2640)
# Define charset of the server filesystem and optionnally the default charset
# for remote clients if they don't use UTF-8.
# Works only if pure-ftpd has been compiled with --with-rfc2640
 
 FileSystemCharset      UTF-8
 ClientCharset          gb2312

    但不能完全解决乱码的问题,你可通过filezilla上的字符集自定义设定对应的字符来有效解决乱码问题。如下图

7.    防火墙问题

        老生常谈的防火墙设置,一定要小心自己的PassivePortRange      50000 51000 端口开放段,还有pureftp默认是开启主动模式与被动模式的。

8.    530 Sorry, but I can’t trust you    

        这个是由于MinUID导致的,记得小于你设置值的UID用户是不允许登陆的;

 
1
2
3
4
# Minimum UID for an authenticated user to log in.
 
#最小UID限制
MinUID                      100

9.    为什么ftp只能下载却不能上传

原因:你对应ftp账户的关联目录文件没有写权限。

 
1
chmod  777  yourftphomedirectory
好了,就记录这么多!


(责任编辑:IT)
------分隔线----------------------------