Linux下的FTP服务

一、什么是FTP协议?

ftp:// ##文件传输协议

ftp(文件传输协议)是Internet上常用的最老的网络协议之一,ftp系统提供了通过网络与远程服务器进行传输的简单方法。ftp服务器包的名称为vsftpd,它代表Very Secure File Transfer Protocol Damon,服务器名称也叫做vsftpd。
默认配置文件让anonymous用户(匿名用户)只能下载位于chroot目录中的内容。
/var/ftp/这意味着远程ftp客户端能以anonymous用户或ftp身份连接到服务器(无需密码),并从ftp服务器上的/var/ftp/目录下载文件(其本地ftp用户可以读取这些文件)

二、实验环境

  1. 查看虚拟机网络
    在这里插入图片描述
  2. 更改主机名(此做法的目的是方便实验)
    在这里插入图片描述
  3. 挂载镜像
    在这里插入图片描述
  4. 搭建yum源,并且通过查看yum仓库看是否搭建成功
    在这里插入图片描述
  5. 执行getenforce命令
    在这里插入图片描述
    在这里插入图片描述
    注意: 每次编辑完文件退出保存后需要重启系统
    在这里插入图片描述
    三、ftp服务的基本信息
软件安装包vsftpd
默认发布目录/var/ftp
默认发布目录的子目录/var/ftp
协议接口21/tcp
服务配置文件/etc/vsftpd/vsftpd.conf

四、搭建ftpd服务并进行测试

  1. 搜索ftp服务的安装包
    在这里插入图片描述
  2. 安装vsftpd服务与lftp客户端
    在这里插入图片描述
  3. 开启服务并查看状态
    在这里插入图片描述
  4. rpm -ql vsftpd查看盖服务的安装目录
    在这里插入图片描述
    在这里插入图片描述
  5. rpm -qc vsftpd查看服务的配置文件
    在这里插入图片描述
  6. 在火墙中添加ftp服务
    在这里插入图片描述
  7. 检测ftp服务器是否搭建成功
    在这里插入图片描述

五、vsftpd服务下匿名用户和本地用户的相关配置

必须熟记的重要报错:

530用户认证失败
550服务本身功能未开放
553本地文件系统权限过小
500文件系统权限过大

温馨提示:所有的操作都是在配置文件/etc/vsftpd/vsftpd.conf中设定,并且设定后需要重启vsftpd服务

匿名用户登陆限制:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anonymous_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd                   

在这里插入图片描述
当配置文件anonymous_enable=YES时,如下所示:
在这里插入图片描述
在这里插入图片描述
当配置文件anonymous_enable=NO时,如下所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
匿名用户上传:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      write_enable=YES
                      anon_upload_enable=YES
[root@ftp ~] # systemctl restart vsftpd 
[root@ftp ~] # chgrp ftp /var/ftp/pub
[root@ftp ~] # chmod 775 /var/ftp/pub                  

在这里插入图片描述
由上图发现链接失败,进入配置文件,如下所示:
在这里插入图片描述
更改配置文件:
在这里插入图片描述
修改用户组以及用户权限如下:
在这里插入图片描述
上传检测,如图所示:
在这里插入图片描述
匿名用户家目录修改:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_root=/directory
[root@ftp ~] # systemctl restart vsftpd                 

更改前如下图所示:
在这里插入图片描述更改配置文件并且新建目录,在目录下新建文件,操作如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过上面的ls查看,出现了新建立的文件,所以用户家目录更改成功

匿名用户上传文件默认修改权限:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_umask=xxx
[root@ftp ~] # systemctl restart vsftpd                  

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

匿名用户建立目录:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_mkdir_write_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd         

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

匿名用户下载:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_world_readable_only=YES|NO
[root@ftp ~] # systemctl restart vsftpd                  

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

匿名用户删除:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_other_write_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd                

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

最大上传速率:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      anon_max_rate=102400        ###最大上传速率为100k,字节为单位
[root@ftp ~] # systemctl restart vsftpd                  

在系统中截取一段数据如下图所示:
在这里插入图片描述
不限制上传速度,如图所示:
在这里插入图片描述
进入配置文件进行配置如下:
在这里插入图片描述
在这里插入图片描述
限制上传速度,如图所示:
在这里插入图片描述

匿名用户使用的用户身份修改:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      chown_uploads=YES
                      chown_username=student
                      chown_upload_mode=0644
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
进入配置文件加入如下图所示参数:
在这里插入图片描述
在这里插入图片描述

最大链接数:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                     max_clients=2
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本地用户登陆限制:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      local_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本地用户写权限限制:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                      write_enable=YES|NO		    #ftp是否对登陆用户可写
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本地用户家目录修改:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                     local_root=/directory
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

限制本地用户浏览/目录:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                    chroot_local_user=YES
                    chmod u-w /home/*
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本地用户黑名单建立:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                    chroot_local_user=NO
                    chroot_list_enable=YES
                    chroot_list_file=/etc/vsftpd/chroot_list
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本地用户其白名单建立:

[root@ftp ~] # vim /etc/vsftpd/vsftpd.conf
                    chroot_local_user=YES
                    chroot_list_enable=YES
                    chroot_list_file=/etc/vsftpd/chroot_list
[root@ftp ~] # systemctl restart vsftpd    

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
六、ftp虚拟用户的设定

<1> 编辑虚拟帐号和密码
在这里插入图片描述
在这里插入图片描述
注意:帐号和密码间必须换行,且帐号和密码前不能有空格,虚拟帐号必须不存在。

<2> 将文本文件加密载入数据库
在这里插入图片描述
注释: -T表示转换类型,-t hash 表示哈希加密,-f表示文件转换类型
<3> 创建pam认证文件
在这里插入图片描述
在这里插入图片描述
<4> 更改vsftpd配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
<5> 结果,如下图所示:
在这里插入图片描述
<6> 虚拟帐号家目录独立设定,编辑配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
<7> 建立虚拟用户的家目录以及子目录,并展示结果:
在这里插入图片描述
在这里插入图片描述
<8> 虚拟帐号配置独立,首先改变虚拟用户家目录以及子目录权限
在这里插入图片描述
<9> 建立配置目录与配置文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
<10> 结果如下:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_42566251

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值