2011-01-14

完美解决centos5.5上vsftpd编码问题

一直以来 vsftpd 有个讨厌的乱码问题(据说在2.10以上版本就解决了,但我还没有测试),这个问题是这样的:如果服务器是UTF-8的locale,那么从windows上不支持ftp编码设置的客户端(比如ftp.exe)往vsftpd上传带有中文的文件名或者目录,那么在服务器上看到的文件名或者目录都是乱码(当然可以临时修改LC_LANG变量再修改终端的charset解决),更关键的是/var/log/vsftpd.log里也都是不可读的,全是疑问号。

公司里用centos5.5 + vsftpd,今天特地搜了一下,解决了这个问题。

最早应该是linuxsir的网友制作了vsftpd的中文编码补丁,centos5.5上的2.0.5版本的版本在这里  http://www.linuxsir.org/bbs/thread301341-3.html

我根据centos5.5上vsftpd 2.0.5的srpm重新编译了一个rpm包,可以直接从这里下载
http://fileape.com/dl/0jZnsbpdwvsPXcT5
http://www.multiupload.com/9RV57H2LTI

安装后 /etc/vsftpd/vsftpd.conf 添加以下三个选项即可

charset_filter_enable=YES
charset_client=GB2312
charset_server=UTF8

没有评论: