在CentOS-7.9配置vsftpd服务

news2025/1/19 17:24:08

文章目录

  • 一 vsftpd简介
  • 二 环境准备
  • 三 服务部署
    • 3.1 安装软件
    • 3.2 编写配置文件
    • 3.3 用户授权
    • 3.4 启动服务
    • 3.5 文件传输测试
      • 3.5.1 Windows到Linux
      • 3.5.2 filezilla
      • 3.5.3 从Linux到Linux

一 vsftpd简介

FTP是 File Transfer Protocol 文件传输协议的简称。
VSFTP是 Very Security FTP 的缩写,即非常安全的文件传输协议。

VSFTP服务器用户的实现有以下三种形式:

匿名用户模式:默认安装时,系统支持允许匿名用户访问,默认为FTP用户,客户端登陆时输入的用户是anonymous,对应的服务器工作目录是 /var/ftp 。
本地用户模式:在文件 /etc/passwd 中的用户登录。
虚拟用户模式:用户名和口令保存在数据库文件中,只能访问FTP服务器提供的资源。

FTP的文件传输模式:

ASCII模式:适合文本传输。如果文件包含简单的ASCII码文本,在跨操作系统传输时,会将文件解析成客户端可以存储的文本文件格式;如果是非文本文件,解析很可能出错。要切换该模式,在客户端命令行输入 ascii 即可。
二进制模式:适合程序、数据库、字处理文件和压缩文件的传输。要切换该模式,在客户端命令行输入 bin 即可。

FTP的两种工作模式:

主动模式:客户端通过命令端口M发送请求,与服务端的21端口建立连接;当客户端需要传输数据时,便在通道M发送PORT命令给服务端,PORT包括了客户端接收数据的数据端口N;服务端通过数据端口20连接到客户端指定的数据端口N发送数据。
被动模式:客户端通过命令端口M发送请求,与服务端的21端口建立连接;当客户端需要传输数据时,便在该通道M发送PASV命令给服务端;服务端随机打开一个数据端口X,并通过PORT命令告诉客户端让其连接X端口;客户端打开数据端口N连接服务端的数据端口X,然后进行数据传输。

由此可见,主动模式和被动模式是对于服务端来说的。前者是服务端主动开放20端口,进行数据传输;后者是服务端随机开放端口,等待客户端的主动连接,被动接受数据传输的工作。

二 环境准备

参数第一个主机第二个主机
IP10.0.0.10010.0.0.101
主机名canwaycanway02
操作系统版本CentOS Linux release 7.9.2009 (Core)CentOS Linux release 7.9.2009 (Core)
内核3.10.0-1160.el7.x86_643.10.0-1160.el7.x86_64
作用VSFTP服务端VSFTP客户端
selinux关闭关闭
防火墙firewalld关闭关闭

三 服务部署

3.1 安装软件

此处选择最简单的yum安装方式,前提是检查yum源配置是否无误。

yum install -y vsftpd

3.2 编写配置文件

首先对原配置文件进行备份,防止误操作后无法还原。

[root@canway ~]# cd /etc/vsftpd/
[root@canway vsftpd]# cp vsftpd.conf vsftpd.conf.bak

然后开启FTP上传下载的记录日志。
删掉下面两个参数的前面的#号,去掉注释,使其生效。

xferlog_enable=YES
xferlog_file=/var/log/xferlog

接着允许匿名用户对服务端进行上传文件,创建目录和写入文件。

anon_upload_enable=YES
anon_mkdir_write_enable=YES

3.3 用户授权

匿名用户登录模式下,在客户端登录到服务端后,服务端访问的用户是ftp用户,而ftp用户的默认主目录是 /var/ftp/pub ,该目录的属主用户是 root ,因此ftp用户没有权限在该目录下进行访问与文件的创建(传输),所以需要授权。

chown -R ftp /var/ftp/pub

3.4 启动服务

接着启动vsftpd服务,使其开机自动启动,并检查服务状态。

[root@canway vsftpd]# systemctl start vsftpd
[root@canway vsftpd]# systemctl enable vsftpd
[root@canway vsftpd]# systemctl status vsftpd

经过检查,服务启动成功。
在这里插入图片描述

3.5 文件传输测试

接着尝试通过匿名用户的模式进行文件传输。

3.5.1 Windows到Linux

在本地Windows主机,使用 Windows+R 键,打开cmd命令

在这里插入图片描述

然后将需要上传到 10.0.0.100 服务端的文件放在当前目录下,我要传输的文件名是 test.txt

在这里插入图片描述

接着输入用户名anonymous和空密码,即可登录到服务端。

在这里插入图片描述

匿名用户登陆系统后,默认的初始位置在 /var/ftp 目录下。

在这里插入图片描述

接着进入 /var/ftp/pub 目录下,将Windows的test.txt文件传输到该目录下。

在这里插入图片描述
检查文件是否传输成功。

在这里插入图片描述

3.5.2 filezilla

在Windows中,除了cmd命令,也可以通过filezilla这个第三方软件进行传输。
此处使用普通用户连接到服务端进行文件传输。

首先创建用户user01,并设置密码123456.

[root@canway pub]# useradd user01
[root@canway pub]# echo 123456|passwd user01 --stdin
Changing password for user user01.
passwd: all authentication tokens updated successfully.

接着给用户授权,让其可以在 /var/ftp/pub 目录下创建文件。

[root@canway pub]# chown -R user01 /var/ftp/pub/

然后打开 filezilla 软件,输入主机IP,用户名,密码,即可连接。

在这里插入图片描述

然后用鼠标,将文件拖拽至相应的目录,即可进行文件传输。

3.5.3 从Linux到Linux

与Windows到Linux的命令基本一致,不过要首先检查一下客户端是否有ftp命令。

在这里插入图片描述

如果没有该命令,只需要yum安装即可。

yum install -y ftp

接着使用ftp命令与服务端建立连接,进行文件传输即可。

在这里插入图片描述

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

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

相关文章

【QT】史上最全最详细的QSS样式表用法及用例说明

目录1. Qt样式表语法2. 选择器2.1 可设置样式的部件2.2 选择器类型2.3 子控件2.4 伪状态3. 属性列表4. 冲突解决5. qss示例1. Qt样式表语法 Qt样式表支持各种属性、伪状态和子控件,可以自定义小部件的外观。 selector { attribute: value }selector:选择器&#xf…

Android Gradle 学习笔记(四)构建块基本单元掌握

本篇主要学习 Gradle 构建脚本的三个基本组建成: project 项目task 任务property 属性 我将会重点介绍 Task,因为它是所有基础中的基础, project 的知识更多和实战有关(例如模块化),而 property 本身不过…

新手怎么快速学会并上手SQL语言?收藏版

SQL可以说是程序员、数据库管理员DBA、数据分析师等需要做数据处理和分析岗位最常用的程序语言了。 尤其是一些岗位,工作中并非以数据库为核心,只是偶尔用些数据不需要深度学习,不得不自己去做一些取数的事情,只要学会通过SQL取数…

PS_高低频和中性灰——双曲线

高低频 高低频磨皮:把皮肤分成两个图层,一层是纹理层也就是皮肤的毛孔。 一层是皮肤光滑层没有皮肤细节。 高频”图层为细节层,我们用图章工具修高频 “低频”图层为颜色层,我们用混合画笔修低频 原理:修颜色亮度光影…

用户投稿——详解我了解的 TDengine 以及它所在的时序数据库“战场”

作者:大数据模型本篇文章出自 2022 年“用 TDengine,写 TDengine”征文投稿活动。因为工作的关系,最近几年我接触到过各种国产数据库,唯独对 TDengine 念念不忘。在众多数据库中,TiDB 一枝独秀,OceanBase 出…

渗透中超全的Google hack语法

inurl:Login 将返回url中含有Login的网页intitle:后台登录管理员 将返回含有管理员后台的网页intext:后台登录 将返回含有后台的网页inurl:/admin/login.php 将返回含有admin后台的网页inurl:/phpmyadmin/index.php 将返回含有phpmyadmin后台的网页site:http://baidu.com inur:…

OpenStack手动分布式部署Keystone【Queens版】

目录 Keystone简介 1、登录数据库配置(在controller执行) 1.1登录数据库 1.2数据库里创建keystone 1.3授权对keystone数据库的正确访问 1.4退出数据库 2、数据库导入Keystone表(在controller执行) 2.1安装httpd mod_wsgi 2.2备…

nn.Conv2d与nn.Conv3d介绍

nn.Conv2d 1)输入的维度为: 2)输出的维度为: 其中,Cout是由参数out_channels((int) – 卷积产生的通道数)决定。 Hout和Wout计算如下: 3)在池化层的计算: …

Windows服务器使用cwRsync实现同步

软件分为客户端和服务器端 实现目的:将服务端C:\tongbu目录中的文件定时同步到客户端C:\target目录中去。 cwRsyncServer(服务端)配置步骤 1.双击运行wRsyncServer_4.1.0_Installer.exe。 2.这里创建的账户是操作系统的,创建的…

canvas初体验

canvas介绍 Canvas 最初由Apple于2004 年引入,用于Mac OS X WebKit组件,为仪表板小部件和Safari浏览器等应用程序提供支持。后来,它被Gecko内核的浏览器(尤其是Mozilla Firefox),Opera和Chrome实现&#x…

webpack实现静态资源缓存

一、配置缓存 我们使用 webpack 来打包我们的模块化后的应用程序,webpack 会生成一个可部署的/dist目录,然后把打包后的内容放置在此目录中。只要/dist目录中的内容部署到 server 上,client(通常是浏览器)就能够访问此…

OKR之剑·总结篇01:如何开好一场OKR复盘会

作者:vivo 互联网平台产品研发团队 本文是《OKR 之剑》系列之总结第 1 篇—— OKR复盘是OKR生命周期中的重要环节,起着承上启下的重要作用。本篇将和你一起探讨什么是OKR复盘、为什么要进行OKR复盘,接着向你展示团队在OKR复盘方面的实践和改…

【MyBatis】代理开发核心配置文件介绍(二)

🚗MyBatis学习第二站站~ 🚩起始站:MyBatis概述&环境搭建(一) 🚩本文已收录至专栏:数据库学习之旅 👍希望您能有所收获 一.Mapper代理开发 (1) 引入 在上一篇中我们有提到一点,MyBatis可以…

Linux原来是这么管理内存的(最透彻的一篇)

Linux 内存管理模型非常直接明了,因为 Linux 的这种机制使其具有可移植性并且能够在内存管理单元相差不大的机器下实现 Linux,下面我们就来认识一下 Linux 内存管理是如何实现的。 基本概念 每个 Linux 进程都会有地址空间,这些地址空间由三…

堆的概念和结构以及堆排序

前言 普通的二叉树是不适合用数组来存储的,因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结 构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储,需要注意的是这里的堆和操作系统 虚拟进程地址空间中的堆是两回事&#xff0c…

Sofa-jraft的Rpc调用服务端分析

在sofa-jraft中,关于RPC的服务端是RpcServer在RpcServer中的init方法中:初始化了连接事件监听器,这个里面就是一个map,然后可以添加事件监听的处理器,初始化userProcessors, codec 是一个编码和解码器的工厂&#xff0…

VPS使用ProxySU搭建节点服务器

本文所有教程及源码、软件仅为技术研究。不涉及计算机信息系统功能的删除、修改、增加、干扰,更不会影响计算机信息系统的正常运行。不得将代码用于非法用途,如侵立删! VPS使用ProxySU搭建节点服务器 环境 contos8win10 64位ProxySU 4.1.7 服…

02-mysql高级-

文章目录mysql高级1,约束1.1 概念1.2 分类1.3 非空约束1.4 唯一约束1.5 主键约束1.6 默认约束1.7 约束练习1.8 外键约束1.8.1 概述1.8.2 语法1.8.3 练习2,数据库设计2.1 数据库设计简介2.2 表关系(一对多)mysql高级 今日目标 掌握约束的使用 掌握表关系…

自动化测试——css元素定位

文章目录一、css定位场景二、css相对定位的优点三、css的调试方法1、表达式中含有字符串:表达式中的引号一定和外面字符串的引号相反四、css基础语法1、标签定位2、class定位特别注意:当class类型的属性值包含多个分割值,$(.s_tab s_tab_1z9n…

快捷式~node.js环境搭建

1、安装包官网下载:Node.js (nodejs.org) 2、安装完成后修改环境变量 在上面已经完成了 node.js 的安装,即使不进行此步骤的环境变量配置也不影响node.js的使用 但是,若不进行环境变量配置,那么在使用命令安装 node.js全局模块 …