FTP之不同用户类型访问服务器

前言

Ftp简称文件传输协议,是专门用来传输文件的,本篇将说明如何建立及配置FTP服务,如何上传和下载文件

一、FTP服务

1.1 什么是FTP

FTP服务是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源,今天就教你用不同类型用户访问FTP服务器

1.2 FTP作用

作用:用于文件的上传和下载。
ftp属于tcp,端口号:20,21.
21:控制层面,用于账户密码验证,权限的验证
20:数据层面,用于文件上传和下载。.

1.3 FTP账户类型

匿名账户:登录名: ftp、anonymous。不验证密码即可登录
系统账户:本身系统已存在的账户、密码作验证。验证方式
虚拟账户:预定 义的 列表账户。(以前系统未创建过的)

1.4 验证方式

1.验证的/etc/passwd和/etc/shadow
2.验证的是用户列表(用户必须是系统创建),相当于白名单.
默认root账户不允许登录。

二、不同用户类型访问服务器

2.1 建立ftp服务器

#任何用户类型访问ftp,服务器都要先安装ftp服务

[ root@server1 ~]# systemctl  stop firewalld          #关闭防火墙
[ root@server1 ~]# setenforce 0                           #关闭核心防护
[ root@server1 ~]# yum -y install vsftpd              #安装ftp服务

2.2 匿名账户访问

服务器设置:
一、编辑配置文件:

[ root@server1 ~]# vi /etc/vsftpd/vsftpd.conf    
添加:
anon_umask=022                           #设置匿名账户的权限为755
anon_other_write_enable=YES              #允许匿名账户的其他写权限
修改:
local_enable=NO                          #不允许本地账户登录
#local_umask=022                         #本地账户的权限为755
anon_upload_enable=YES                   #允许匿名账户上传
anon_mkdir_write_enable=YES              #允许匿名账户新建文件或目录
listen=YES                                              #监听IPV4地址的请求
listen_ipv6=NO                                          #不监听IPV6地址的请求
[ root@server1 ~]# systemctl start vsftpd               #重启ftp服务
[ root@server1 ~j# grep -v “#"/etc/vsftpd/vsftpd.conf / grep -v“^s    #过滤掉#及空行后显示配置文件内容

在这里插入图片描述

二、设置权限,创建文件用来测试匿名用户:

[ root@server1 ~]# cd /var/ftp/ pub                                #进目录创建文件
[ root@server1 pub]# echo "abc123" > a.txt                  #创建a.txt文件内容abc123
[ root@server1 pub]# echo "bcd123" > b.txt                  #创建b.txt文件内容bcd123
[ root@server1 ~]# chown -R ftp.ftp /var/ftp/pub            #设置文件归属
[ root@server1 ~]# chmod -R 755 /var/ftp/pub               #设置文件目录权限
[ root@server1 pub]# ls -lh                                             

在这里插入图片描述

客户机设置:

[ root@client2 ~]# systemctl  stop firewalld          #关闭防火墙
[ root@client2 ~]# yum -y install ftp                      #安装ftp
[ root@client2 ~]# ftp 20.0.0.10                            #连接ftp服务器地址
ftp> cd pub              #默认进入的是 /var/ftp/目录下,需进入pub目录才有权限
ftp> ls -lh                 #查看里面文件
ftp> mkdir 1                           # 创建目录1
ftp> put anaconda-ks.cfg      #上传文件
ftp> ls -lh                               #查看

在这里插入图片描述

服务器查看:

[ root@server1 pub]# ls -lh

在这里插入图片描述

在Window是进行访问ftp服务器
在文件搜索栏输入地址ftp://20.0.0.10 进入 /pub/
可以新建文件夹3,添加文件新建文本文档
在这里插入图片描述

在网页上同样可以访问ftp服务器
同样在搜索栏上输入命令ftp://20.0.0.10 进入/pub/
在这里插入图片描述

ftp服务器进行查看

[root@server1 pub]# ls -lh

在这里插入图片描述

2.3 系统账户访问

服务器建立用户并创建文件

[ root@server1 ~]# useradd lisi
[ root@server1 ~]# passwd lisi
[ root@server1 ~]# useradd zhangsan
[ root@server1 ~]# passwd zhangsan
[ root@server1 ~]# cd / home / zhangsan     #进入目录创建文件
[ root@server1 zhangsan]# vi a1.txt
[ root@server1 zhangsan]# cd /home/lisi
[ root@server1 lisi]# vi a2.txt

客户机创建文件

[ root@client2 ~]# touch ttt
[ root@client2 ~]# vi ttt
[ root@client2 ~]# vi tt2

服务器编辑配置文件:

[ root@server1 ~]# vi /etc/vsftpd/vsftpd.conf    
修改:
#anonymous_enable=YES             #允许匿名账户登录
#anon_upload_enable=YES          #允许匿名账户上传
#anon_mkdir_write_enable=YES   #允许匿名账户新建文件或目录
#anon_other_write_enable=YES   #允许匿名账户的其他写权限
#anon_umask=022                        #设置匿名账户的权限为755
chroot_local_user=YES                 #锁定宿主目录
添加:
allow_writeable_chroot=YES         #允许宿主目录的写权限
[ root@server1 ~]# systemctl start vsftpd                  #重启ftp服务
[ root@server1 ~]# grep -v "#" /etc/vsftpd/vsftpd.conf | grep -v "^$"  #过滤掉#及空行后显示配置文件内容

客户机登录上传下载

[ root@client2 ~]# ftp 20.0.0.10
Name (20.0.0.10: root) : zhangsan
ftp> get a1.txt       #gat:下载文件
ftp> put ttt       #put:上传文件

服务器查看

[ root@server1 ~]# cd / home/zhangsan
[ root@server1 zhangsan]# ls -lh

在这里插入图片描述

客户机查看
在这里插入图片描述

以上为本地用户的上传和下载

第二部分:基于用户列表,限定用户列表里的用户才可以登录服务器

设置本地用户的可登录用户列表

[ root@server1 ~]# vi /etc/vsftpd/user list    #原数据删除
liming     #添加liming账户名

服务器编辑配置文件:

[ root@server1 ~]# vi /etc/vsftpd/vsftpd.conf    
添加
userlist_deny=NO        #只允许用户列表里的用户登录,白名单
[ root@server1 ~]# systemctl start vsftpd         #重启ftp服务

客户机登录

[root@client2 ~]# ftp 20.0.0.10
Name (20.0.0.10: root) : lisi
liming登录失败
[root@client2 ~]# ftp 20.0.0.10
Name (20.0.0.10: root) : liming
ftp> get a1.txt       #gat:下载文件
ftp> put initial-setup-ks.cfg       #put:上传文件

以上为设置用户列表白名单,限定用户登录

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值