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用户可以读取这些文件)
二、实验环境
- 查看虚拟机网络
- 更改主机名(此做法的目的是方便实验)
- 挂载镜像
- 搭建yum源,并且通过查看yum仓库看是否搭建成功
- 执行getenforce命令
注意: 每次编辑完文件退出保存后需要重启系统
三、ftp服务的基本信息
软件安装包 | vsftpd |
---|---|
默认发布目录 | /var/ftp |
默认发布目录的子目录 | /var/ftp |
协议接口 | 21/tcp |
服务配置文件 | /etc/vsftpd/vsftpd.conf |
四、搭建ftpd服务并进行测试
- 搜索ftp服务的安装包
- 安装vsftpd服务与lftp客户端
- 开启服务并查看状态
- rpm -ql vsftpd查看盖服务的安装目录
- rpm -qc vsftpd查看服务的配置文件
- 在火墙中添加ftp服务
- 检测ftp服务器是否搭建成功
五、vsftpd服务下匿名用户和本地用户的相关配置
必须熟记的重要报错:
530 | 用户认证失败 |
---|---|
550 | 服务本身功能未开放 |
553 | 本地文件系统权限过小 |
500 | 文件系统权限过大 |
温馨提示:所有的操作都是在配置文件/etc/vsftpd/vsftpd.conf中设定,并且设定后需要重启vsftpd服务
匿名用户登陆限制:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanonymous_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd
当配置文件anonymous_enable=YES时,如下所示:
当配置文件anonymous_enable=NO时,如下所示:
匿名用户上传:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confwrite_enable=YESanon_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.confanon_root=/directory
[root@ftp ~] # systemctl restart vsftpd
更改前如下图所示:
更改配置文件并且新建目录,在目录下新建文件,操作如下:
通过上面的ls查看,出现了新建立的文件,所以用户家目录更改成功
匿名用户上传文件默认修改权限:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanon_umask=xxx
[root@ftp ~] # systemctl restart vsftpd
匿名用户建立目录:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanon_mkdir_write_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd
匿名用户下载:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanon_world_readable_only=YES|NO
[root@ftp ~] # systemctl restart vsftpd
匿名用户删除:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanon_other_write_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd
最大上传速率:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confanon_max_rate=102400 ###最大上传速率为100k,字节为单位
[root@ftp ~] # systemctl restart vsftpd
在系统中截取一段数据如下图所示:
不限制上传速度,如图所示:
进入配置文件进行配置如下:
限制上传速度,如图所示:
匿名用户使用的用户身份修改:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confchown_uploads=YESchown_username=studentchown_upload_mode=0644
[root@ftp ~] # systemctl restart vsftpd
进入配置文件加入如下图所示参数:
最大链接数:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confmax_clients=2
[root@ftp ~] # systemctl restart vsftpd
本地用户登陆限制:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.conflocal_enable=YES|NO
[root@ftp ~] # systemctl restart vsftpd
本地用户写权限限制:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confwrite_enable=YES|NO #ftp是否对登陆用户可写
[root@ftp ~] # systemctl restart vsftpd
本地用户家目录修改:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.conflocal_root=/directory
[root@ftp ~] # systemctl restart vsftpd
限制本地用户浏览/目录:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confchroot_local_user=YESchmod u-w /home/*
[root@ftp ~] # systemctl restart vsftpd
本地用户黑名单建立:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confchroot_local_user=NOchroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list
[root@ftp ~] # systemctl restart vsftpd
本地用户其白名单建立:
[root@ftp ~] # vim /etc/vsftpd/vsftpd.confchroot_local_user=YESchroot_list_enable=YESchroot_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> 结果如下:
Linux下的FTP服务相关推荐
- Linux下检测FTP服务并开启FTP服务
Linux下检测FTP服务并开启FTP服务 1. 检测FTP服务是否开启 通过查询提供FTP服务的进程是否存在 Shell代码 ps -ef | grep ftp 并未找到任何包含ftp关键字 ...
- 局域网内Linux下开启ftp服务的“曲折路”和命令复习
今天主要学习了Linux下网络配置以及vsftp(FTP)和samba的服务配置,学习起来,难度也就一般,并没有特别难,可是在可以做实验的时候,却并没有自己想像的那么顺利,可见,很多事情看起来不难,做 ...
- java ftp返回到根目录,Linux下搭建ftp服务,更改根目录到大存储到位置
Linux下ftp服务可以通过搭建vsftpd服务来实现,以CentOS为例,首先查看系统中是否安装了vsftpd,可以通过执行命令 rpm -qa | grep vsftpd 来查看是否安装相应的包 ...
- linux下的FTP服务配置
FTP服务器 FTP:file transport protocol (文件传输协议) 1.ftp协议概述: 主要用于解决远程计算机和本地计算机之间传输文件,是internet上文件传送的基础: 2. ...
- 关于 通过http请求 无法访问Linux下的ftp服务的解决办法!
解决办法: 1.首先进入到NGINX配置文件下面: 然后继续往下: 其中 "server_name"表示的是本机IP 也可设置成 "localhost",&qu ...
- 信创平台下构建FTP服务
FTP服务是网基本服务之一,本文关于信创环境下如何构建基本FTP服务及使用. 一.FTP协议概述 FTP全称是File Transfer Protocol,FTP是在TCP/IP网络和INTERNET ...
- Linux下配置FTP、SSH服务
在虚拟机中的Linux系统下配置FTP服务和SSH服务,配置完后就可以通过SecureCRT软件登录Linux系统. 配置FTP服务: 在Linux终端中输入命令: sudo apt-get inst ...
- Linux系统下安装FTP服务
Linux系统下安装FTP服务 1. 简介 2. 工作原理 3. FTP的安装与配置 1. 下载vsftp安装包 2. 检查是否已经安装了vsftp,后面会介绍怎样卸载 3. 安装vsftpd 4. ...
- 【Linux学习笔记】Linux Centos7.4下的Ftp服务的搭建和使用及加密
Linux Centos7.4下的Ftp服务的搭建和使用 服务简介 一.Ftp服务的安装 1.1.安装ftp服务 1.2.启动ftp服务 1.3.将ftp服务设置为开机启动 1.4.停止ftp服务 二 ...
最新文章
- mysql占用cpu_Mysql占用过高CPU时的优化手段(必看)
- java 基础之 null 与 “”
- 图解C++虚函数 虚函数表
- 写python的c扩展简介
- alink的相關資料收集
- 应该把script标签放在哪里
- Windows Phone 7 XNA触控操作之Gestures
- pytorch学习笔记(三十):RNN反向传播计算图公式推导
- 加速AI计算生态构建,华为昇腾布道西安开发者
- Tensorflow教程2:使用卷积神经网络的图像分类器
- 页面局部ajax文件上传,页面通过ajax实现文件上传功能
- hdu-5064(dp)
- Generative Image Inpainting with Contextual Attention
- 火车头采集器计划任务设置时间间隔无效问题解决
- datetime的时值
- 按键精灵 android版运行异常,按键精灵安卓版 tap、touch命令 不好用的解决办法!...
- jQuery--复制节点clone()详解
- 采样开关的作用计算机控制,计算机控制系统复习要点
- 试解PTA《20211122-函数基础练习》,涉及 高精度加法 和 10进制转换成2-16进制问题,有需要的同学来看看吧;
- oracle程序窗口,oracle窗口函数的使用
热门文章
- SpringCloud学习笔记008---杂七杂八002_spring 注解@Value详解_@Value(quot;#{}quot;)与@Value(quot;${}quot;)的区别
- Java 如何查询硬盘所有文件
- 一步一步写算法(之大数计算)
- c语言有2维结构体没,c语言结构体说明
- 冒泡排序法和选择排序法
- python实现柱状图_python3+PyQt5实现柱状图
- 泰勒公式推导过程_#泰勒#(Taylor)公式真的很难很难吗?
- 水利水电工程与计算机技术应用,水利水电施工中计算机的应用
- 达尔文计算机学校,中国研制出全球神经元规模最大类脑计算机
- ctfshow-萌新-web12( 利用命令执行函数获取网站敏感信息)