CentOS8环境下FTP服务器安装与配置

在本指南中,我们将一步步介绍如何在CentOS 8环境下安装和配置一个FTP服务器。FTP(文件传输协议)是一种网络传输协议,用于在网络中的计算机之间传输文件。虽然现在有更安全的传输方式,如SFTP或FTP over SSL,但FTP因其简单性和广泛的应用支持仍被广泛使用。

一、前提条件

  • 一台运行CentOS 8的服务器
  • 具有sudo权限的用户账户

二、安装步骤

1:安装vsftpd

vsftpd(非常安全的FTP守护进程)是Linux/UNIX环境中使用最广泛的FTP服务器之一。要安装vsftpd,请打开终端并输入以下命令:

sudo dnf install vsftpd

安装完成后,启动vsftpd服务,并设置其开机自启:

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

2:配置vsftpd

vsftpd的主配置文件位于/etc/vsftpd/vsftpd.conf。在进行任何更改之前,建议备份原始配置文件:

sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

接下来,使用您喜欢的文本编辑器编辑配置文件:

sudo nano /etc/vsftpd/vsftpd.conf

确保以下配置行是这样设置的,来确保基本的安全性和功能:

  • anonymous_enable=NO: 禁用匿名登录。
  • local_enable=YES: 允许本地用户登录。
  • write_enable=YES: 允许FTP用户上传文件。
  • chroot_local_user=YES: 限制用户仅能访问其主目录。

保存并关闭文件。

3:配置FTP用户的本地文件存储目录

默认情况下,当您在CentOS 8上创建一个用户时,该用户的主目录将作为其FTP访问的根目录。例如,如果您创建了一个名为ftpuser的用户,其主目录通常位于/home/ftpuser

1)设置用户主目录

当您使用adduser命令创建用户时,用户的主目录会自动创建。例如:

sudo adduser ftpuser

这将创建一个名为ftpuser的用户,并在/home目录下创建一个同名的目录作为其主目录。

2)配置用户主目录权限

为了确保FTP用户可以上传和下载文件,您需要确保其主目录及其子目录具有适当的权限。通常,您需要确保用户对其主目录具有写入权限。

sudo chmod 755 /home/ftpuser

这将设置目录权限,使得ftpuser用户可以读取、写入和执行(进入)其主目录,而其他用户只能读取和执行。

3)配置vsftpd以使用用户主目录

/etc/vsftpd/vsftpd.conf配置文件中,确保以下设置:

  • local_root=/home/ftpuser: 指定FTP用户的根目录。如果未设置,默认使用用户的主目录。
  • user_sub_token=$USER: 在local_root中使用$USER变量来指定每个用户的主目录。

例如,如果您想为每个用户设置其主目录作为FTP根目录,您可以这样设置:

local_root=/home/$USER
user_sub_token=$USER

保存并关闭配置文件。

4)重启vsftpd服务

在更改配置文件后,您需要重启vsftpd服务以应用更改:

sudo systemctl restart vsftpd

4:打开防火墙端口

如果你的服务器运行了firewalld,你需要打开21端口(FTP的标准端口):

sudo firewall-cmd --zone=public --add-service=ftp --permanent
sudo firewall-cmd --reload

5:测试FTP服务器

使用FTP客户端或命令行工具测试FTP服务器是否正常工作。你可以使用ftp命令加上服务器的IP地址来尝试连接:

ftp YOUR_SERVER_IP

输入第3步中创建的FTP用户的用户名和密码。如果一切设置正确,你应该能成功登录,并能够上传和下载文件。

三、完成

恭喜,你现在已经成功在CentOS 8服务器上配置了一个FTP服务器。通过这个简单的设置,你可以轻松地管理文件传输,无论是个人项目还是为你的组织提供FTP服务。记住,出于安全考虑,建议在可能的情况下使用SFTP或FTP over SSL/TLS。

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

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

相关文章

python -【一】基础语法

python 基础语法 一. 基础数据类型 常用的 6 种数据类型 类型描述说明数字(Number)int,float,complex(复数),bool复数:4 3j,j 表示复数字符串(String)文本&#xff1…

小短片创作-理论知识(三)

1、抗锯齿 1.相机移动的时候出现锯齿 2.当1个像素在三角形边缘的时候,可能取值为白色,也可能取值为黑色,表现出来就是闪烁,或锯齿 3.如果我们通过超采样将1个像素变成4个像素进行计算,得到的结果就会更准确&#x…

Codeforces Round 945 (Div. 2) C. Cat, Fox and Double Maximum 题解 贪心 构造

Cat, Fox and Double Maximum 题目描述 Fox loves permutations! She came up with the following problem and asked Cat to solve it: You are given an even positive integer n n n and a permutation † ^\dagger † p p p of length n n n. The score of another …

电脑显示不出网络

你的电脑是否在开机后显示不出网络,或者有网络消失的现象?今天和大家分享我学到的一个办法,希望对大家有用。 分析出现这类现象的原因:可能是电脑网卡松动了,电脑中存在静电流。 解决办法:先将电脑关机&am…

深度学习(一)

深度学习(一) 一、实验目的 掌握前馈全连接神经网络,具体包括: (1) 前馈全连接神经网络的网络结构 (2) 前馈神全连接经网络的工作原理 (3) 前馈全连接神经网络的代码实现 二、实验内容 1. 导入常用工具包 2. 数据导入与数据…

大模型对齐方法笔记二:基于Rank的对齐方法RRHF和PRO

文章目录 RRHFPRO将RLHF嫁接到PRO 参考资料 RRHF RRHF(Rank Responses to align Human Feedback)出自2023年4月的论文《RRHF: Rank Responses to Align Language Models with Human Feedback without tears》,是较早提出的不需要使用PPO来对齐人类偏好的方法。 设…

nginx安装部署问题

记一次nginx启动报错问题处理 问题1 内网部署nginx,开始执行make,执行不了,后面装了依赖的环境 yum install gcc-c 和 yum install -y pcre pcre-devel 问题2,启动nginx报错 解决nginx: [emerg] unknown directive “stream“ in…

Keil5 ~STM32报错Solutions#1

一、error: #268: declaration may not appear after executable statement in block

tar 详细说明

tar命令在Unix和类Unix系统中被广泛用于打包和压缩文件。以下是对tar命令的详细说明: 一、命令概述 tar命令的名称来源于“tape archive”(磁带存档),最初设计用于在磁带上创建备份。现在,它已成为在Unix和类Unix系统…

Thingsboard规则链:Customer Details节点详解

在物联网(IoT)平台Thingsboard的规则引擎体系中,Customer Details节点是一个功能强大的组件,它专为处理与客户(Customer)实体相关的综合信息而设计。这个节点不仅能够读取客户的基本属性,还能提…

【NumPy】全面解析subtract函数:高效数组减法指南

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

GPT-4o:人工智能新纪元的开端

引言 近年来,人工智能领域的发展日新月异,特别是在自然语言处理(NLP)领域,各种生成预训练模型不断推陈出新。自OpenAI发布GPT-3以来,生成预训练模型在文本生成、语言理解等任务中展现了强大的能力。近期&a…

报表中的某个单元格如何绑定实时数据库的统计值?

在报表中绑定实时数据库的统计值通常涉及几个关键步骤。具体方法可能因所使用的报表工具、数据库类型和技术栈而异,但以下是一个一般性的流程: 1. 确定数据源: 首先,你需要明确你的报表要连接哪个数据库或数据源。这可能是关系型…

网工内推 | 国企信息安全工程师,CISP认证优先

01 浙江省公众信息产业有限公司 🔷招聘岗位:安全运营工程师 🔷职责描述: 1. 负责公司内部安全运营平台及其子系统的安全事件管理、事件发现分析、应急响应和系统维护等; 2. 负责风险和漏洞管理,包括漏洞预…

一行命令将已克隆的本地Git仓库推送到内网服务器

一、需求背景 我们公司用gitea搭建了一个git服务器,其中支持win7的最高版本是v1.20.6。 我们公司的电脑在任何时候都不能连接外网,但是希望将一些开源的仓库移植到内网的服务器来。一是有相关代码使用的需求,二是可以建设一个内网能够查阅的…

2019美亚

1.何源是一名 25 岁的客服人员,在一间电讯公司工作。某日,何源在用 iPhone 手机在政府建筑物 中偷拍车牌期间被警员截停,盘问期间警员检查手机相册发现多张车牌图片,何源情绪紧张,趁 警员不被,抢过手机丢入…

模型实战(22)之 C++ - tensorRT部署yolov8-cls 目标分类

C++ - tensorRT部署yolov8-cls 目标分类 在检测应用场景中如果有同等类别不同形态的目标,单纯的目标检测可能达不到实用或者想要的精度,这就需要衔接一步分类python环境下如何直接调用推理模型转换并导出:pt -> onnx ->.engineC++ tensorrt 部署分类模型1.Python环境下…

OrangePi Kunpeng Pro 开发板测评 | AI 边缘计算 大模型部署

0 前言 此次很幸运能够参与 OrangePi Kunpeng Pro 开发板的测评,感谢 CSDN 给予这次机会。 香橙派联合华为发布了基于昇腾的 OrangePi Kunpeng Pro 开发板,具备 8TOPS 的 AI 算力,能覆盖生态开发板者的主流应用场景,具备完善的配…

python规则表达式re模块:笔记0529

Python语言使用printf printf:https://blog.51cto.com/u_16099181/7758801 使用python进行自动化运维脚本编写时经常需要处理远程设备返回到控制字符,比如下面这个例子,控制字符在使用print进行调试输出时因为是非ascii字符不显示&#xff0…

ai写作助手有哪些,5款强大的ai写作工具为你所用

在科技日新月异的时代,人工智能已经悄然走进我们的生活,为我们带来了诸多便利。其中,AI写作助手作为一种创新的工具,正在改变着我们的写作方式。它们不仅能够提供创意灵感,还能帮助我们提高写作效率,让文字…