网上好多教程可能有的地方有些差错,参考了网络上的教程和自己实践成功实现centos 6下的ftp配置方法。
据我这几天查资料的情况在centos下一般有四种方法实现ftp用户管理:
1、普通的只安装vsftpd通过centos命令管理ftp用户;
2、通过安装控制面板,如cplanel (付费),Kloxo(免费、自己不搞空间卖,二是安装了会占些内存,测试后就删除了)、Lxadmin等管理mysql、web、ftp、domain、dns等;
3、通过mysql数据库管理vsftp用户;(CentOS 5.5 安装记录 – (6) vsftpd 及虚拟用户)
4、通过Berkeley DB数据库管理用户。(RHEL/CentOS中vsftp安装与配置 .、Vsftpd服务全攻略之高级配置--虚拟用户登录)
查看是否安装vsftpd服务
使用chkconfig –list来查看是否装有vsftpd服务;
chkconfig --list
如果看到的是如下显示的结果:
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
服务全部都是off的,注意这里的off表示的是服务器启动的时候是否会自启动服务,我们使用如下命令来配置其自启动:
chkconfig –level 2345 vsftpd on #2345对应的是上面对应的0-6项
如果你的FTP有问题,可以先卸载,网上查的centos删除方法一般为remove,经实践发现这个命令在centos 6中不能使用。正确删除命令如要删除vsftp服务。
yum erase vsftpd
然后安装vsftpd
yum install vsftpd
开启vsftpd服务
service vsftpd start
添加FTP用户,用户名ftpuser,ftpuser这个用户的主目录/home/ftpuser ,
useradd -d /home/ftpuser -g ftp -s /sbin/nologin ftpuser
这个ftpuser用户的用户组为ftp组,这实际上为一个centos的系统用户,只是不能登录系统。
删除用户为,加上-r 同时删除其目录。
userdel -r ftpuser
修改密码:
passwd ftpuser
防火墙开启21端口
vi /etc/sysconfig/iptables
在REJECT行之前添加如下代码
-A INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
保存和关闭文件,重启防火墙
service iptables start
重启vsftpd服务
service vsftpd restart
设置ftp用户只能访问自己的目录,修改配置文件 vsftpd.conf
vi /etc/vsftpd/vsftpd.conf
主要几项我设置如下,没有的则添加:
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
user_config_dir=/etc/vsftpd/user_conf
修改用户配置文件,限制其是否登录到自己的目录(此处意思我没大搞明白)
参考http://blog.chinaunix.net/space.php?uid=2334648&do=blog&cuid=334305设置如下
让虚拟账户使用不同的主目录,并且又完全权限。
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
pam_service_name=vsftpd
userlist_enable=YES
one_process_model=NO
anon_world_readable_only=NO
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
user_config_dir=/etc/vsftpd/user_conf
user_sub_token=$USER
listen=YES
tcp_wrappers=YES
vi /etc/vsftpd/chroot_list
里面不要添加ftpuser
创建ftpuser用户的配置文件,就是其主目录文件。
mkdir /etc/vsftpd/user_conf
vi /etc/vsftpd/user_conf/ftpuser
在文件中设置ftpuser用户的访问路径,如下:
local_root=/data/www
重启vsftp服务
service vsftpd restart
现在在windows 下应该就可以用熟悉的ftp软件登录。
点击打开linode日本东京机房测试速度
linode日本东京网站
评论前必须登录!
注册