ftp服务器搭建环境:centos6.5,mysql5.6,proftpd1.3.4a。
搭建ftp服务器,通过数据库方式实现虚拟用户验证需要安装和配置proftpd、mysql。
本次搭建使用yum安装proftpd-mysql,这是一个带mysql模块的proftpd,而mysql通过RPM包安装。
proftpd安装和配置参考如下连接:
国外博客,写的比较清晰
https://heker86.wordpress.com/2008/10/21/how-to-install-and-configure-proftpd-with-integrate-the-mysql/
国内博客
http://have23.iteye.com/blog/1450144参数说明连接:
http://blog.chinaunix.net/uid-641896-id-338706.html
这里配置的方式是系统创建ftpgroup组和ftpuser用户,ftpuser用户根目录/home/ftpuser。
ftp服务器创建的所有ftp用户的目录都在/home/ftpuser下。
ftp配置需要注意的几点:
(1)用户目录权限问题:
保证用户目录具有读和执行权限,一般通过chmod a+rx dir(目录)实现。
(2)保证ftp能连接mysql数据库:
需要对非root用户授权,能让它操作数据库。
(3)linux安全问题:
SELinux默认不允许ftp程序切换用户主目录,因此需要打开ftp_home_dir这个权限。
ftp服务器安装完成以后,启动服务,客户端无法登陆,日志信息显示chroot切换不了主目录,出现permission denied错误。类似如下错误:
notice: unable to use '~/' [resolved to '/mnt/ess/media/win/']: Permission denied
chroot to '~/' failed for user 'win': Operation not permitted
error: unable to set default root directory
这时候要考虑修改ftp_home_dir这个权限。
SELinux安全问题,解决方法如下:http://www.elmerzhang.com/2009/09/selinux-vsftp-cannot-change-directory/?utm_source=rss