FTP服务配置和使用

news2024/11/25 22:42:11

FTP介绍

FTP(文件传输协议20、21端口)是典型的C/S架构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输协议。FTP是客户端和服务器之间的连接是可靠的保证。

FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard(也就是Active,主动方式),一种是Passive(也就是PASV,被动方式)。Standard模式FTP的客户端发送PORT命令到FTP,Passive模式FTP的客户端发送PASV命令到FTP serve

FTP服务器默认使用TCP协议的20、21端口与客户端进行通信

  • 20端口用于建立数据连接,并传输文件数据

  • 21端口用于建立控制连接,并传输FTP控制命令

安装

centos上的安装命令,yum源仓库可以使用

yum install vsftpd -y

查看软件所在目录

whereis vsftp

卸载命令

rpm -e vsftpd

启动vsftpd并添加对外端口21

启动服务

systemctl start vsftpd

设置开机启动

chkconfig vsftpd on

开放端口

firewall-cmd --permanent --add-port=21/tcp

重启防火墙

systemctl restart firewalld

查看所有开放端口的命令

firewall-cmd --list-ports

创建ftp用户

一般情况,安装vsftp默认支持普通用户访问可以使用ftp服务

创建用户

useradd -d /data/web/images -g ftp -s /sbin/nologin webftp

删除可以使用

 userdel webftp

设置密码

 passwd webftp

ftp服务使用

查看ftp服务状态
在这里插入图片描述

修改ftp配置文件,重启服务

systemctl restart vsftpd

修改vsftp配置文件目录

vim /etc/vsftpd/vsftpd.conf

配置匿名访问,重启ftp服务

anonymous_enable=YES    #开启匿名用户访问,默认已开启
local_enable=YES        #开放服务器的写权限(若要上传必须开启)。默认已开启        
local_umask=022         #设置匿名用户所上传数据的权限掩码(反掩码)
anon_upload_enable=YES    #允许匿名用户上传文件,默认是注释的,需要取消注释
anon_mkdir_write_enable=YES    #允许匿名用户创建(上传)目录,默认是注释的,需要取消注释
anon_other_write_enable=YES    #允许其他删除,重命名、覆盖等操作

也可以添加     anno_root=【路径】  修改匿名用户登陆的默认根目录

配置用户访问

anonymous_enable=NO    #关闭匿名用户访问,默认已开启
local_enable=YES        #开放服务器的写权限(若要上传必须开启)。默认已开启        
local_umask=077         #设置仅宿主用户有上传数据的权限掩码(反掩码)
chroot_local_user=YES   #将访问禁锢在用户的宿主目录中102行
allow_writeable_chroot=YES  #允许被闲置的用户主目录具有写权限
local_root=/var/ftp
 
#anon_mkdir_write_enable=YES    注释  #允许匿名用户创建(上传)目录,默认是注释的,需要取消注释
#anon_other_write_enable=YES    注释  #允许其他删除,重命名、覆盖等操作

vsftpd 一般配置修改

anonymous_enable=NO    #禁用匿名登录
chroot_local_user=YES
chroot_list_enable=NO

当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。
allow_writeable_chroot=YES    # 允许 chroot 用户具备写权限
# 被动模式使用端口范围
pasv_min_port=30000
pasv_max_port=30100

使用user_list用户列表文件

vim /etc/vsftpd/user_list
//末尾添加list用户

vim /etc/vsftpd/vsftpd.conf

userlist_enable=YES #启用user_list用户列表文件
userlist_deny=NO #设置白名单,仅允许user_list用户列表文件的用户访问默认为YES,为黑名单,禁用

注释root用户然后重启ftp服务,可以使用去root访问ftp服务
vim /etc/vsftpd/user_list
在这里插入图片描述

需要在/etc/vsftpd/user_list文件中把root那一行删除或者注释掉

/etc/vsftpd/ftpusers文件中的root也注释掉

然后重启vsftpd就可以了
systemctl restart vsftpd.service
systemctl status vsftpd.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/46853.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

集合框架----源码解读LikedHashSet篇

1.官方介绍 Hash表和链表实现了Set接口,具有可预测的迭代顺序。该实现与HashSet的不同之处在于它维护了一个贯穿其所有条目的双向链表。该链表定义了迭代顺序,即元素插入集合的顺序(插入顺序)。注意,如果一个元素重新插入到集合中&#xff0c…

Git---idea中git的基本操作

idea中使用git仓库 idea中配置git仓库: 首先idea配置git仓库的位置 配置完成之后,有两种创建仓库的方式 从本地配置git仓库: idea本身设置好的,直接下一步就好 从远程克隆仓库: 如果远程仓库没有的话可以绑定完…

如何从 FastReport VCL 中将报表导出为PNG格式?

FastReport VCL是用于在软件中集成商务智能的现代解决方案。它提供了可视化模板设计器,可以访问最受欢迎的数据源,报告引擎,预览,将过滤器导出为30多种格式,并可以部署到云,Web,电子邮件和打印中…

openvswitch group hash实现代码分析

代码分析 ovs版本是2.11.0,linux版本是linux-3.10.0-693.21.1.el7。 只拿ovs实现的group hash和dp_hash举例分析代码,通过一个点一个功能切入代码,漫无目的看代码是很难看懂的,必须带着一个疑问看代码,点多了全面开花…

降低点云密度的几种方法(含python代码)

本文只是对学习过程中的点云密度降采样的几种方法做一个记录,原文参考知乎Python点云数据处理(四)点云下采样 - 知乎 (zhihu.com) 本文介绍python点云数据处理中的点云下采样算法和关键点算法以及在点云工具箱软件中的实现。由于点云的海量和无序性,直接…

Java基于springboot+vue的房屋出租租房系统 前后端分离

伴随着全球信息化发展,行行业业都与计算机技术相衔接,计算机技术普遍运用于各大行业,房屋出租管理系统便是其中一种。实施计算机系统来管理可以降低大学生租房管理的成本,使整个大学生租房的发展和服务水平有显著提升。 本论文主要…

umask 设置文件权限掩码

我们在创建文件或者目录时,看到的权限往往和我们设置的不一样,原因就在于创建文件时要受到 umask的影响。 目录 一、实际情景介绍 二、文件权限掩码 1、什么是权限掩码? 2、权限掩码的作用过程 3、设置权限掩码的两种方式 (1) umask 命…

【java基础系列】14- Java的内部类与常用类

Java的内部类与常用类 1、内部类 1.1 内部类的分类 成员内部类静态内部类局部内部类匿名内部类 1.2 什么是内部类? 概念:在一个类的内部再定义一个完整的类。特点: 编译之后可生成独立的字节码文件。内部类可直接访问外部类的私有成员&a…

【HIT-OSLAB-实验报告】

文章目录前言实验 0 环境的搭建实验原理&材料实验流程建议实验1 输出硬件参数实验内容基础知识实验代码实验结果实验2 实现系统调用实验内容whoami()评分标准基础知识实验代码实验结果实验3 进程运行轨迹的跟踪实验内容基础知识实验代码实验结果结合自己的体会 从程序设计者…

Elasticsearch

一、Spring Data 1、简介 Spring Data 是一个用于简化数据库、非关系型数据库、索引库访问,并支持云服务的开源框架。Spring Data 可以极大的简化JPA的写法,可以在几乎不用写实现的情况下,实现对数据库的访问和操作。除了 CRUD 之外&#xff…

作业-11.29

将txt中的单词转到数据库中 #include <stdio.h> #include <sqlite3.h> #include <stdlib.h> #include <string.h> void do_insert(sqlite3* db, int id, char word[], char jieshi[]); void txt_todatabase(sqlite3* db); int main(int argc, const ch…

DevExpress FMX Data Grid全面编辑和定制

DevExpress FMX Data Grid全面编辑和定制 FMX数据网格(CTP)FireMonkey(FMX)的高性能数据网格组件&#xff0c;具有集成的主细节和数据分组支持。它被优化并构建为与RAD Studio/Delphi/CBuilder一起使用。它支持Windows、Android和macOS平台。 DevExpress FMX数据网格功能强大&a…

redis介绍和理解

官网 介绍: https://www.bilibili.com/video/BV1Fd4y1T7pD/?spm_id_from333.337.search-card.all.click&vd_source4c263677a216945c0d21ca65ee15a5f9 Redis是一个key value的数据库&#xff0c;基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库。 https://ww…

【Java+LeetCode训练】binarySearch源码解析

二分搜索Arrays.binarySearch(int[] a,int key)源码分析【LeetCode】209. 长度最小的子数组解法1&#xff1a;前缀和 暴力解法解法2&#xff1a;前缀和 二分搜索序&#xff1a;使用Arrays工具类中的binarySearch方法进行二分搜索时&#xff0c;我们知道搜索成功会返回其下标&…

数字化餐饮| 刘大厨湘菜馆进杭州,开场及巅峰

盼了几年的刘大厨辣椒炒肉终于来杭州了&#xff0c;但我却没有吃到&#xff0c;小钱对雨科网说&#xff1a;驱车三十里&#xff0c;排队三小时都没吃上&#xff0c;原来他们是每天10点开始放号&#xff0c;11点开餐&#xff0c;去的晚就吃不到。 5月20日&#xff0c;刘大厨在杭…

5G无线技术基础自学系列 | 5G上行物理信道和信号

素材来源&#xff1a;《5G无线网络规划与优化》 一边学习一边整理内容&#xff0c;并与大家分享&#xff0c;侵权即删&#xff0c;谢谢支持&#xff01; 附上汇总贴&#xff1a;5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 5G上行的物理信道包括PRACH、PUCCH、PU…

产品经理要不要考PMP?进化你能力的阶梯!(附:新版考纲及教材)

产品经理和项目经理看起来是毫不相关的两个专业&#xff0c;那么产品经理要不要考PMP呢&#xff1f;其实是非常有必要的。 以前去面试产品经理&#xff0c;HR只会问1个问题&#xff1a;会用axure吗&#xff1f;一开始对产品经理的定义就是设计产品原型的。能设计产品原型&…

【附源码】计算机毕业设计JAVA中小学教务管理平台

【附源码】计算机毕业设计JAVA中小学教务管理平台 目运行 环境项配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; JAVA …

【北京迅为】RK3568开发板android11系统固件讲解

脚本里面写入这些内容&#x1f446;&#xff0c; apt-get install uuid 后面就是包名&#xff0c;比如说安装了这些内容uuid 在安装之前先执行这个命令增加下载源&#x1f447; 这里会提示&#xff0c;需要输入 回车继续&#xff0c;还是输入 Ctrl-c取消 当然要输入回车继续…

51单片机学习笔记4 新建工程及点亮LED实战

51单片机学习笔记4 新建工程及点亮LED实战一、使用keil新建工程二、项目设置1. 点击魔术棒&#xff0c;钩选Output-Create Hex File2. 设置仿真器三、编写代码1. 尝试编译代码2. 点亮LED的代码3. GPIO引脚介绍4. GPIO内部结构P0端口&#xff1a;P1 端口四、软件仿真一、使用kei…