银河麒麟桌面操作系统搭建FTP服务器

news/2025/1/15 17:48:08/

一、操作环境

服务端:银河麒麟桌面操作系统V10

客户端:银河麒麟桌面操作系统V10

二、服务器配置

说明:以下命令均在终端执行。鼠标点击桌面右键,在终端中打开。

操作步骤:

(一)安装vsftpd软件

sudo apt-get install vsftpd

系统会提示输入密码,请输入开机密码。

如下图所示,表示vsftpd安装成功。但是,作者在安装的时候遇到了一个错误:有不满足的依赖关系。解决方法放在了文末。

(二)设置开机启动

sudo systemctl enable vsftpd

(三)启动FTP服务

systemctl start vsftpd

查看其运行状态

systemctl status vsftpd

(四)创建FTP用户

创建用户名:ftpadmin

sudo useradd -d /home/ht/ftp/ftp_root -m ftpadmin

useradd命令的-d-m参数分别用于指定用户的主

目录和自动创建该目录。如果创建失败,则自行在对应目录创建文件夹。

设置用户名密码:ftp123456

sudo passwd ftpadmin

之后就输入密码ftp123456即可。

设置文件目录权限。

sudo chmod -R 777 /home/ht/ftp/ftp_root

(五)修改配置文件

sudo pluma /etc/vsftpd.conf

按下面内容进行修改:

listen=NO # 阻止 vsftpd 在独立模式下运行
listen_ipv6=YES # vsftpd 将监听 ipv6 而不是 IPv4,您可以根据您的网络情况设置
anonymous_enable=NO # 关闭匿名登录
local_enable=YES # 允许本地用户登录
write_enable=YES # 启用可以修改文件的 FTP 命令
local_umask=022 # 本地用户创建文件的 umask 值
dirmessage_enable=YES # 当用户第一次进入新目录时显示提示消息
xferlog_enable=YES # 一个存有详细的上传和下载信息的日志文件
connect_from_port_20=YES # 在服务器上针对 PORT 类型的连接使用端口 20(FTP 数据)
xferlog_std_format=YES # 保持标准日志文件格式
pam_service_name=ftp # vsftpd 将使用的 PAM 验证设备的名字

最后一个行的pam_service_name=ftp是重点,V10系统的值是ftp,SP1的值是vsftpd,不能出错。

在配置文件最后增加访问白名单参数,添加以下信息:

userlist_deny=NO
userlist_enable=YES
userlist_file=/etc/vsftpd.allowed_users

保存退出文件。

(六)新建白名单列表

sudo pluma /etc/vsftpd.allowed_users

输入ftpadmin后保存退出。

(七)重启服务

systemctl restart vsftpd

三、客户端连接测试FTP服务器

1.打开浏览器,在地址栏输入:ftp://服务端IP

服务器端测试可以输入:ftp://localhost

出现如下登录窗口,说明FTP服务部署成功,可以用输入用户名和密码登录FTP。

2.除了用浏览器访问FTP服务器,还可以使用“FTP客户端”来访问。可以到软件商店搜索安装该软件。

3.在使用过程中,可以设置下载限速,以防止把带宽占满,影响使用。

4.若服务拒绝连接,可以尝试打开 安全中心 / 网络保护 / 应用程序联网,关闭。

四、解决安装错误

作者在安装时遇到一个错误:有不满足的依赖关系。这意味着我们安装的软件包需要其他特定的软件包作为依赖,而这些依赖没有在系统上正确安装或者更新到合适的版本。

按照以下步骤解决这个问题:

1.更新系统软件源:

sudo apt-get update

2.修复依赖关系:

sudo apt-get -f install

3.如果依然解决不了问题,继续执行以下命令:

安装缺失的依赖:

sudo apt-get install -f

清理不需要的包:

sudo apt-get autoremove
sudo apt-get autoclean


http://www.ppmy.cn/news/1563073.html

相关文章

[Git] 如何理解及基础操作

什么是 Git Git 是一种版本控制器,能够帮助你记录文件的历史和变化过程,并支持多人协同作业。过去,人们通常会通过复制文件的方式来保存版本: “报告-v1”“报告-v2”“报告-最终版”“报告-突破版” 这样的方式带来了突出的问…

利用Java爬虫获取淘宝商品描述item_get_descAPI接口

一、引言 在电子商务领域,商品描述是消费者了解商品详情的重要信息来源,对于商家的销售和消费者的购买决策都具有关键影响。淘宝作为国内领先的电商平台,其商品描述数据具有极高的价值。虽然淘宝开放平台提供了API接口,但这些接口…

【AJAX详解】

AJAX详解 AJAX(Asynchronous JavaScript and XML)是一种创建交互式网页应用的网页开发技术。它允许在不重新加载整个页面的情况下,通过后台与服务器交换数据并更新部分网页内容。这提供了更流畅的用户体验,因为用户不需要等待整个…

springmvc前端传参,后端接收

RequestMapping注解 Target({ElementType.METHOD, ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Documented Mapping public interface RequestMapping {String name() default "";AliasFor("path")String[] value() default {};AliasFor(&quo…

Java Web开发进阶——WebSocket与实时通信

WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,广泛应用于需要实时数据交换的应用程序中。它能够实现服务器与客户端之间的双向通信,避免了传统 HTTP 请求/响应的延迟。结合 Spring Boot,开发实时通信应用变得更加高效与简便。 1. …

【IPy模块01】Python运维模块之IP 地址、网段的基本处理

实用的IP地址处理模块IPy IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能、可扩展性等方面,在这个过程当中,免不了要计算大量的IP地址,包括网段、网络掩码、广播地址…

聊聊AI Agent

什么是AI Agent? AI Agent指的是一种使用人工智能技术的自主实体,它能够感知环境、做出决策,并采取行动以实现特定目标。AI Agent的核心思想是它能够独立运作,基于输入信息做出有根据的决策,并通过学习算法不断提高自…

数组排序------冒泡排序

要求:给定一个数组,让数组升序(降序)排序 思路: 假设升序排序: ①:将数组中相邻元素从前往后依次进行比较,如果前一个元素比后一个元素大&#xf…