今天没事做..就看了看linux的书..突然想到以前一直都是root账号登录..如果以后真的自己搞服务器要给别人开账号肿么搞?还不能让别人有很多权限...就类似在空间商那里买空间的效果一样
我一般都是用ssh模式登录 ftp也是stfp模式 我开始以为是设置一个账户..然后禁用他不能访问的目录...后来听同学说(专业的),账号分2种.一种是本地账号,一种是虚拟账号
然后就想到了ftp账号 下面讲讲操作经过
首先要在防火墙里面把端口打开..貌似默认是21端口吗(木有查)
打开/etc/sysconfig/iptables文件
- vi /etc/sysconfig/iptables
在REJECT行之前添加如下代码
- -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
保存和关闭文件,重启防火墙
- service iptables start
增加用户cuzn,指向目录/home/wwwroot/cuzn,禁止登录SSH权限。
- useradd -d /home/wwwroot/cuzn -g ftp -s /sbin/nologin cuzn
设置用户口令
- passwd cuzn
配置vsftpd服务器
默认的配置文件是/etc/vsftpd/vsftpd.conf,你可以用文本编辑器打开。
- vi /etc/vsftpd/vsftpd.conf
1、修改/etc/vsftpd/vsftpd.conf
将底下三行
- #chroot_list_enable=YES
- # (default follows)
- #chroot_list_file=/etc/vsftpd.chroot_list
改为
- chroot_list_enable=YES
- # (default follows)
- chroot_list_file=/etc/vsftpd/chroot_list
编辑文件chroot_list:
- vi /etc/vsftpd/chroot_list
内容为ftp用户名,每个用户占一行,如:
cuzn
重新启动vsftpd
- service vsftpd restart
另外,如果觉得以后管理ftp用户名嫌麻烦,可以使用centos官方发布的脚本管理。地址如下:
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
出现的错误
1、500 OOPS: cannot change directory
解决方法:
在终端输入命令:
- setsebool -P ftpd_disable_trans 1
- service vsftpd restart
声明:此文系舞林cuzn(www.wulinlw.org)原创稿件,转载请保留版权