一、备份
cp /etc/ftpd/ftpaccess /etc/ftpd/ftpaccess.bak
其他你需要修改的备份文件也做备份。
二、修改参数
1、建立测试账户
useradd -d /data1/test -m test
命令解释:
建立账户test,账户的目录为/data1/test
如果不存在/data1/test,则建立/data1/test
如果存在,就使用/data1/test作为账户test的目录。
2、修改ftpaccess配置文件,添加
restricted-uid    test
guest-root /data1/test    test
解释:
restricted-uid    test需要限制的用户UID
guest-root 命令把目录(/data1/test)指定给test账户登陆ftp的默认家目录
三、测试
[root@root]:/etc/ftpd#ftp 110.1.28.135
Connected to 110.1.28.135.
220 aisms FTP server ready.
Name (110.1.28.135:root): test
331 Password required
for test.
Password:
230 User test logged
in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257
"/" is current directory.
ftp> ls
200 PORT command successful.
150 Opening ASCII mode data connection
for file list.
a.sql
b.sql
c.sql
d.sql
e.sql
226 Transfer complete.
35 bytes received
in 0.00034 seconds (101.36 Kbytes/s)
ftp> cd ..
550 Permission denied on server.    You are restricted to your account.
ftp> cd /data1
550 /data1: No such file or directory.
ftp> cd /data1
550 /data1: No such file or directory.
ftp> bye
[root@root]:/data1/test#ls
a.sql    b.sql    c.sql    d.sql    e.sql
[root@root]:/data1/test#cd /
[root@root]:/#ls
bin                 cdrom             data1             devices        
export            kernel            lost+found    net                 platform        sbin                test.sh         usr                 vol
boot                data                dev                 etc                 home                lib                 mnt                 opt                 proc                system            tmp                
var                 yl
[root@root]:/#
-----可见/data1、/data目录是存在的,但在ftp中用test登陆提示550 /data1: No such file or directory.,可以确定,已经限制用户test访问test家目录以外的任何目录。
可以确定的是,这样用户只能ftp访问自己在ftpaccess中指定的目录。