网配实验———Linux下的FTP服务器

2019-11-20  本文已影响0人  f109

本次实验任务:

1、建立一台Linux下的FTP服务器,IP地址为192.168.XX.16(XX为学号后两位)。
2、允许匿名访问FTP服务器;匿名用户访问的根目录为/var/ftp/doc
3、匿名用户不能上传文件,只可以下载文件的权限;
4、FTP服务器能够接受最大的连接数为100,同一IP的连接数为2;
5、允许本地用户访问FTP服务器;设定本地用户test被约束在自己的主目录;

大致思路

1.下载所需的vsftpd包
2.设置静态ip
3.配置匿名权限
4.创建test用户、配置用户权限

具体实现

1.安装vsftpd包

确保联网的情况下安装vsftpd包:
Ubuntu系统:sudo apt-get install vsftpd
CentOS系统: yum install vsftpd

安装完成后来熟悉一下有关vsftpd的指令:
启动:
systemctl start vsftpd 或者 service vsftpd start
重启:
systemctl restart vsftpd 或者 service vsftpd restart
查看状态:
systemctl status vsftpd 或者 service vsftpd status

安装完成之后查看状态


如果显示Active:active(running)表示成功运行

后续每次修改了配置文件(vsftp.conf)之后重启然后可以通过查看状态来检查是否出现了错误如果出现了Active:failed极大可能是拼写错误。

2.设置静态IP

经过前面多次实验,此环节自行解决

3.配置匿名用户权限

vsftpd.conf是vsftpd守护进程将读取该文件,作为vsftpd的主配置
配置之前先根据需求创建/var下的ftp文件夹以及ftp下的doc文件夹(建议在文件夹中创建测试文件)

Ubuntu系统下vsftpd.conf文件在/etc目录下
CentOS系统下vsftpd.conf文件在/etc/vsftpd目录下

编辑vsftpd.conf文件如下:

anonymous_enable=YES           #允许匿名用户访问
anon_world_readable_only=YES   #允许匿名用户浏览和下载文件
anon_root=/var/ftp/doc         #匿名用户访问的根目录
max_clients=100                 #最大连接数
max_per_ip=2                   #同一ip连接数
CentOS系统 Ubuntu系统
保存并退出后重启vsftpd service vsftpd restart 并查看状态service vsftpd status
如果运行失败就返回查看编辑时是否出了拼写错误(此处应该以管理员身份运行
如果成功运行就可以在浏览器中通过输入ftp://192.168.XX.16访问/var/ftp/doc文件夹下的资源

4.创建test用户,编辑用户权限

根据任务需求需要,首先要先创建一个test用户

以XXXXXX为用户目录创建tets用户:
useradd -d  XXXXXX -m test
设置test的密码:
passwd test
先创建test用户并指定其目录,再设置test用户的密码

创建完成后继续配置vsftpd.conf文件
红框之内从上到下依次为:

local_enable=YES             #允许系统的真实用户可以登录FTP
chroot_local_user=NO         #绑定所有用户的根目录(此处为否,为了单独设置test用户而没有进行批量处理)
chroot_list_enable=YES       #使用列表进行限制:是
allow_writeable_chroot=YES   #允许写入

#最后一条 根据系统类型选择
#CentOS:
chroot_list_file=/etc/vsftpd/chroot_list
#Ubuntu:
chroot_list_file=/etc/vsftpd.chroot_list
CentOS系统 Ubuntu系统

最后一条是在设置限制列表文件,在该文件中添加了用户名后使用该用户账号访问ftp服务器就会被约束在自己的主目录
所以最后的操作就是在限制列表文件中添加test,保存并退出

限制列表文件:
CentOS: /etc/vsftpd/chroot_list
Ubuntu: /etc/vsftpd.chroot_list

重启服务即可进行测试

上一篇下一篇

猜你喜欢

热点阅读