今天我给大家介绍一下FTP,那什么是FTP呢?
FTP(file transfer protocol)是缩写,这个协议应该算是一个相当古老的网络协议之一,它最主要的功能就是就行server端与client端之间的档案传送的功能,FTP是以TCP封包的模式进行service与client之间的联机的,这样就可以进行档案的下载与上传。
FTP使用不同等级的使用者身份,分为三种:
1、实体账号(real user)
2、访客(guest)
3、匿名用户(anonymous)
这些不同的用户的权限是不同的其中访客与匿名用户的权限都比较低,这样会使我们的系统更安全,对吧。
好了我们开始今天的实验,还是利用rpm包安装,大家知道它的好处了吧!FTP的rpm包的名是vsftpd,这是一个很好的FTP服务器软件,为什么这么说呢?因为它的全名是(very secure FTP daemon)的意思。
挂载光盘大家没有问题吧?直接进入光盘,写上我们要安装的包名及版本号,敲击回车。
我们还是进入FTP的配置文件目录在/etc/vsftpd/vsftp.conf下
FTP的配置文件比较简单我们简单看一下,配置文件不必修改就可以直接修改,但是我们可以通过修改配置文件来限制一下用户的操作。
我们退出这个文本,启动一下服务service vsftpd start 来验证一下,首先要在linux系统里建一个aa用户,我们在windows系统中打开命令窗口输入我们要用ftp连接的服务器ip,然后用aa用户登陆,如果出现Login successful就证明已经登陆成功了,输入cd ..返回上级目录,可以进去,一个普通用户可以访问我们系统上任何一个文件并下载是不是很不安全,我们来通过修改配置文件来限制一下aa这个用户只能在自己的家目录下,不能访问根目录。
我们看这是ftp的文件存放目录,只有四个文件,进入配置文件
在配置文件的最后输入下图命令,但是vsftpd.chroot_list这个目录是不存在的是需要我们手工建立的,
然后我们建立vsftpd.chroot_list并修改这个目录
把aa这个用户添加进去保存退出
看在这个目录下是不是多了一个文件。
我们重新启动一下服务service vsftpd restart,然后在来登录一下,看直接登录目录直接显示的就是根目录,这个目录不是我们刚才看到的那个根目录,这个事aa用户的家目录,aa用户它是不允许访问其他目录的,限制成功。
我们来看一下其他目录,默认写进ftpuser和user_list这两个文件中的目录是不允许登录的,先来看一下ftpuser这个目录,root是在里面的
我们再来看一下user_list这个文件,root也在这个文件中
那这两个文件有什么区别呢?只要写进ftpuser这个文件的用户在任何情况下都不能访问,而user_list这个文件是可以通过配置文件修改的,我们来修改一下配置文件,加入下图文本
重新启动服务,然后在ftpuser这个文件中把root这个用户注释掉,root用户就可以访问了。记住只要修改配置文件都必须重启服务。
在前面我们提到了匿名用户,那匿名用户可不可以登陆呢?匿名用户登陆的密码是什么呢?
你们用户是可以登陆的,密码是空或是一个标准邮箱地址,我们来试一下,可以登陆但是匿名用户不可以在目录在创建和修改文件及目录,那怎么才能实现这一点呢?还是修改配置文件。
在配置文件中加入anon_upload_enable=YES(允许上传)anon_mkdir_write_enable=YES(允许创建目录)anon_other_write_enable=YES(允许删除和改名)这三句话重启服务即可。
那大家是不是要问,匿名用户在上传中上传的文件会在哪个目录呢?我们可以在/var下创建一个名为ftp的目录,在这个目录下可以上传。好了实验结束了,希望大家可以把这个实验圆满完成。O(∩_∩)O~
ftp是windows向linux共享的方法,下篇博文中我将介绍linux向windows共享的方法,samba文件共享服务。
转载于:https://blog.51cto.com/liuyonglei/149598