linux下ftp服务阶段实验(1)
实验1.配置只允许匿名用户可以上传和下载,并且具备可以删除和改名权限的vsftpd服务器,本地用户不能登陆
1.修改vsftpd主配置文件
[root@localhost vsftpd]# vim vsftpd.conf
anonymous_enable=YES #启用匿名访问
local_enable=NO #禁用本地系统用户
write_enable=YES #启用写入权限
download_enable=YES #允许下载文件
anon_mkdir_write_enable=YES #允许创建目录
anon_other_write_enable #开放其他写入权
anon_upload_enable=YES #允许上传文件
2.重启vsftpd服务
[root@localhost ~]# service vsftpd restart
Shutting down vsftpd: [FAILED]
Starting vsftpd for vsftpd: [ OK ]
3.用户登录验证
[root@localhost vsftpd]# ftp 192.168.1.88
Connected to 192.168.1.88 (192.168.1.88).
220 (vsFTPd 2.2.2)
Name (192.168.1.88:root): root
530 Permission denied.
Login failed.
ftp> #root用户登录失败,不允许本地用户登录
[root@localhost var]# !ftp
ftp 192.168.1.88
Connected to 192.168.1.88 (192.168.1.88).
220 (vsFTPd 2.2.2)
Name (192.168.1.88:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX. #匿名用户登录成功
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> mkdir a
550 Create directory operation failed.
#唉~发现竟然不可以创建文件,通过提示知道是权限问题,可以刚刚在配置文件中已经给了写权限,那么就是ftp服务器的根目录不允许写入,那退出去看下
[root@localhost ~]# ll -ld /var/ftp drwxr-xr-x. 4 root root 4096 Jul 30 05:20 /var/ftp
#果然没有写权限,一般这种情况大家也许都会想,那给other加给写的权限不就行了么,那好,我们试试
4.实验调试
[root@localhost ~]# chmod o+w /var/ftp/ #给服务器根目录添加写权限 [root@localhost ~]# !ftp
ftp 192.168.1.88
Connected to 192.168.1.88 (192.168.1.88).
220 (vsFTPd 2.2.2)
Name (192.168.1.88:root): ftp
331 Please specify the password.
Password:
500 OOPS: vsftpd: refusing to run with writable anonymous root
Login failed. #登录失败
ftp> #这次连登录都失败了,根据提示可知ftp根目录的other加了w(写权限)后不允许匿名登录,那怎么办呢?其实我们可以稍微做点改变,既然根目录不能改,那我们就在根目录下新建个文件并加上w权限看看。
[root@localhost ~]# chmod o-w /var/ftp #去掉ftp服务根目录的其他用户的写权限 [root@localhost ~]# mkdir /var/ftp/test [root@localhost ~]# chmod o+w /var/ftp/test/ #在根目录下面新建一个文件夹test并加上w权限
5.再次登录验证
[root@localhost ~]# !ftp
ftp 192.168.1.88
Connected to 192.168.1.88 (192.168.1.88).
220 (vsFTPd 2.2.2)
Name (192.168.1.88:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files. #成功登录
ftp> cd test #进入test目录
ftp> pwd
257 "/test"
ftp> mkdir a
257 "/test/a" created #创建文件夹成功
ftp> ls
drwx------ 2 14 50 4096 Jul 29 21:39 a
ftp> rename a b #可以重命名
ftp> ls
drwx------ 2 14 50 4096 Jul 29 21:39 b
ftp> !ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
ftp> put user_list #上传成功
ftp> rename user_list 123
350 Ready for RNTO.
250 Rename successful.
ftp> get 123 #下载成功
local: 123 remote: 123
227 Entering Passive Mode (192,168,1,88,221,161).
150 Opening BINARY mode data connection for 123 (361 bytes).
226 Transfer complete.
361 bytes received in 3.5e-05 secs (10314.29 Kbytes/sec)
ftp> !ls
123 ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh
转载于:https://blog.51cto.com/su92wei/1262188