搭建FTP服务,实现三种方式的访问:1.匿名访问;2,本地用户访问;3虚拟用户访问。
2018-07-11 00:14
856 查看
FTP服务(File Transfer Protocol,文件传输协议)是典型的C/S结构 的应用层协议,需要由服务端软件,客户端软件两部分共同实 现文件传输功能。既可以在局域网使用,又可以在广域网使 用。
在Windows系统中,常见的FTP服务器软件包括FileZilla Sener, Serv-U等,而在linux系统中,vsftpd是目前在linux/UNIX领域 应用 十分广泛的一款FTP服务软件
本次实验主要讲解vsftpd,在虚拟机上以redhat6.5为服务端,Windows7为客户端。
FTP传输模式
文本模式:ASCII模式,以文本序列传输数据
二进制模式:Binary模式,以二进制序列传输数据(更适合传输 程序,图片等非纯文本文件的传输)
FTP用户的类型
匿名用户:anonymous或ftp
本地用户:帐号名称,密码等信息保存在passwd,shadow文件 中
虚拟用户:使用独立的账号/密码数据文件
首先在服务端redhat6.5上面挂载光盘,用rpm安装vsftpd的软件包,并开启服务。
1)匿名访问配置
进入vsftpd的配置文件进行相关设置,赋予匿名用户上传文件,创建文件目录,以及其他写入权限(重命名等)。更改好设置保存并退出
开启ftpd服务,关闭防火墙,关闭增强型功能
在ftp站点创建一个文件并写入内容,修改站点权限,赋予普通用用读写执行权限
进入客户端(Windows7,前提两者能够互联互通),打开运行程序,匿名访问FTP服务,并上传下载文件
可以在C盘看到下载的文件,
把刚才的文件重命名,在上传到ftp服务端
在linux服务端查看vsftpd站点内容,可以看到刚刚上传的文件
2)本地用户登录
在Windows7系统的客户端使用本地用户张三进行登录访问FTP服务,并上传文件,可以看到本地用户登录的默认位置为用户的家目录,如果不进行高级别的安全设置,本地用户可以自由切换目录。
1)禁锢宿主目录(家目录)
若我们对本地用户只是采用vsftpd服务配置文件的默认设置,则用户将能够随意地切换到服务器的/var,/etc,/boot等宿主目录以外的文件夹,这样一来便存在很大的安全隐患。因此我们需要添加“chroot_local_user”配置项,将所有的本地用户禁锢在其宿主目录下
修改好配置文件,再重启vsftpd服务,然后从客户端用本地用户进行登录,测试一下是否被禁锢在宿主目录,可以看到用户已经被禁锢在宿主目录,而不能随意进行切换目录
2)黑白名单(使用user_list用户列表文件)
首先查看一下user_list文件,里面有两行注释,代表的含义分别为白名单和黑名单,系统默认设置该用户列表文件为黑名单。
那么我们把用户加入到这个列表文件里,则该用户就无法使用服务端提供的FTP服务
把用户zhangsan加入该列表文件,进行验证一下(每次修改完配置文件需要重启服务)
进入客户机使用zhangsan登陆不上,而使用lisi用户则可以,
我们也可以根据该列表文件的注释将其变成白名单(仅允许该列表文件内的用户访问FTP服务)
修改配置文件,添加设置“userlist_deny=NO”,然后保存修改设置并退出,重启服务,进入客户端进行验证。
进入客户机使用lisi登陆不上,而使用lzhangsan用户则可以,此时该列表文件变成了白名单。
3,虚拟账户
在实际工作环境,为了安全考虑我们往往会使用虚拟账户。
首先要在/etc/vsftpd目录下建立虚拟用户帐户,加入两个用户lisa和tom
然后将该虚拟用户帐户转换成数据库文件
修改权限,不让其他人看到虚拟账户的内容,并建立vuser用户,指定家目录/opt/vuser,并不使用shell登录
编辑pam认证模块支持虚拟用户的登录
对vsftpd配置文件进行编辑设置:开启虚拟用户,使用pam认证登录
设定好之后,保存并退出,重启服务。再进入客户端用lisa用户进行登录,并上传一个文件。
打开服务端查看虚拟用户vuser的家目录/opt/vuser,可以看到刚刚上传的文件,
再进入客户端用tom用户进行登录,并上传一个文件。
打开服务端查看虚拟用户vuser的家目录/opt/vuser,可以看到刚刚上传的文件,
我们可以看到lisa和tom上传的文件显示的所有者,所属组都不是本用户,而是一个虚拟用户vuser。这样安全性就提高了。
我们还可以给虚拟用户里面的单个用户配置不同的权限。
修改vsftpd配置文件,添加“user_config_dir=/etc/vsftpd/vu_dir”(单独用户配置文件夹)配置设定。
在配置文件夹里创建用户配置文件,给tom单独设置权限,然后重启服务。
在客户机分别用这两个用户进行登录访问ftp服务,并各自上传一个文件,查看它们的权限,有何不同。
在虚拟用户vuser的家目录下可以看到各自上传的文件,它们的权限不同。
在Windows系统中,常见的FTP服务器软件包括FileZilla Sener, Serv-U等,而在linux系统中,vsftpd是目前在linux/UNIX领域 应用 十分广泛的一款FTP服务软件
本次实验主要讲解vsftpd,在虚拟机上以redhat6.5为服务端,Windows7为客户端。
FTP传输模式
文本模式:ASCII模式,以文本序列传输数据
二进制模式:Binary模式,以二进制序列传输数据(更适合传输 程序,图片等非纯文本文件的传输)
FTP用户的类型
匿名用户:anonymous或ftp
本地用户:帐号名称,密码等信息保存在passwd,shadow文件 中
虚拟用户:使用独立的账号/密码数据文件
首先在服务端redhat6.5上面挂载光盘,用rpm安装vsftpd的软件包,并开启服务。
1)匿名访问配置
进入vsftpd的配置文件进行相关设置,赋予匿名用户上传文件,创建文件目录,以及其他写入权限(重命名等)。更改好设置保存并退出
开启ftpd服务,关闭防火墙,关闭增强型功能
在ftp站点创建一个文件并写入内容,修改站点权限,赋予普通用用读写执行权限
进入客户端(Windows7,前提两者能够互联互通),打开运行程序,匿名访问FTP服务,并上传下载文件
可以在C盘看到下载的文件,
把刚才的文件重命名,在上传到ftp服务端
在linux服务端查看vsftpd站点内容,可以看到刚刚上传的文件
2)本地用户登录
在Windows7系统的客户端使用本地用户张三进行登录访问FTP服务,并上传文件,可以看到本地用户登录的默认位置为用户的家目录,如果不进行高级别的安全设置,本地用户可以自由切换目录。
1)禁锢宿主目录(家目录)
若我们对本地用户只是采用vsftpd服务配置文件的默认设置,则用户将能够随意地切换到服务器的/var,/etc,/boot等宿主目录以外的文件夹,这样一来便存在很大的安全隐患。因此我们需要添加“chroot_local_user”配置项,将所有的本地用户禁锢在其宿主目录下
修改好配置文件,再重启vsftpd服务,然后从客户端用本地用户进行登录,测试一下是否被禁锢在宿主目录,可以看到用户已经被禁锢在宿主目录,而不能随意进行切换目录
2)黑白名单(使用user_list用户列表文件)
首先查看一下user_list文件,里面有两行注释,代表的含义分别为白名单和黑名单,系统默认设置该用户列表文件为黑名单。
那么我们把用户加入到这个列表文件里,则该用户就无法使用服务端提供的FTP服务
把用户zhangsan加入该列表文件,进行验证一下(每次修改完配置文件需要重启服务)
进入客户机使用zhangsan登陆不上,而使用lisi用户则可以,
我们也可以根据该列表文件的注释将其变成白名单(仅允许该列表文件内的用户访问FTP服务)
修改配置文件,添加设置“userlist_deny=NO”,然后保存修改设置并退出,重启服务,进入客户端进行验证。
进入客户机使用lisi登陆不上,而使用lzhangsan用户则可以,此时该列表文件变成了白名单。
3,虚拟账户
在实际工作环境,为了安全考虑我们往往会使用虚拟账户。
首先要在/etc/vsftpd目录下建立虚拟用户帐户,加入两个用户lisa和tom
然后将该虚拟用户帐户转换成数据库文件
修改权限,不让其他人看到虚拟账户的内容,并建立vuser用户,指定家目录/opt/vuser,并不使用shell登录
编辑pam认证模块支持虚拟用户的登录
对vsftpd配置文件进行编辑设置:开启虚拟用户,使用pam认证登录
设定好之后,保存并退出,重启服务。再进入客户端用lisa用户进行登录,并上传一个文件。
打开服务端查看虚拟用户vuser的家目录/opt/vuser,可以看到刚刚上传的文件,
再进入客户端用tom用户进行登录,并上传一个文件。
打开服务端查看虚拟用户vuser的家目录/opt/vuser,可以看到刚刚上传的文件,
我们可以看到lisa和tom上传的文件显示的所有者,所属组都不是本用户,而是一个虚拟用户vuser。这样安全性就提高了。
我们还可以给虚拟用户里面的单个用户配置不同的权限。
修改vsftpd配置文件,添加“user_config_dir=/etc/vsftpd/vu_dir”(单独用户配置文件夹)配置设定。
在配置文件夹里创建用户配置文件,给tom单独设置权限,然后重启服务。
在客户机分别用这两个用户进行登录访问ftp服务,并各自上传一个文件,查看它们的权限,有何不同。
在虚拟用户vuser的家目录下可以看到各自上传的文件,它们的权限不同。
相关文章推荐
- Ubunton下搭建ftp服务器 实现虚拟用户、本地用户、匿名用户的登陆及权限
- 详解vsftp服务器通过匿名用户、本地用户、虚拟用户三种登录方式实现文件传输
- 本地用户访问FTP服务,拒绝匿名用户访问
- [Linux]FTP/VSFTP/配置文件/本地匿名虚拟用户访问/ftp客户端使用
- Samba服务共享(匿名用户访问、本地用户访问、虚拟用户访问)
- 详解CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
- 搭建web服务实现多个虚拟主机.基于主机/用户的访问控制
- CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
- Samba服务(匿名用户访问、本地用户访问、虚拟用户访问)
- CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
- 搭建ftp服务,匿名用户登录可实现文件的上传下载
- FTP匿名用户,本地用户,虚拟用户的搭建与详解
- Ubuntu下同时搭建支持匿名、本地、虚拟用户的ftp服务器
- CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
- CentOS7 FTP服务搭建(虚拟用户访问FTP服务)
- FTP服务器--实现本地用户访问,拒绝匿名用户
- 搭建FTP-----实现基于mysql验证的虚拟用户
- CentOS 6.8 ftp服务安装配置 基于本地用户和虚拟用户
- vsftpd虚拟用户与匿名用户配合使用, Vsftpd使用虚拟用户访问FTP
- golang 简单的实现内 网 穿 透,用户访问本地服务。