乌班图快速创建ftp

需求:乌班图22.04安装配置ftp,然后配置一个用户,用户名deviceftp密码aaaa,并且设置端口为60021,并且限制在/app/deviceftp目录下,不允许匿名登录

在Ubuntu 22.04上安装和配置FTP服务器的步骤如下:

  1. 安装FTP服务器

    • 你可以使用vsftpd(非常安全的FTP守护进程),它是一个稳定、安全且快速的FTP服务器。
    • 安装命令:sudo apt-get install vsftpd
  2. 配置FTP服务器

    • 编辑vsftpd的配置文件:sudo nano /etc/vsftpd.conf
    • 在文件中进行以下设置:
      • 禁用匿名登录:确保anonymous_enable=NO
      • 启用本地用户登录:local_enable=YES
      • 允许用户上传文件:write_enable=YES
      • 设置用户根目录:chroot_local_user=YES
      • 添加或取消注释:user_sub_token=$USERlocal_root=/app/$USER
    • 保存并关闭文件。
  3. 添加FTP用户

    • 添加用户:sudo adduser deviceftp
    • 按提示设置密码(例如,你指定的aaaaa)。
    • 将用户的主目录设置为/app/deviceftpsudo usermod -d /app/deviceftp deviceftp
  4. 创建并设置目录

    • 创建目录:sudo mkdir -p /app/deviceftp
    • 设置目录权限:sudo chown deviceftp:deviceftp /app/deviceftp
    • 设置适当的读写权限。
  5. 更改FTP端口

    • 再次编辑vsftpd配置文件:sudo nano /etc/vsftpd.conf
    • 更改端口,添加或修改:listen_port=60021
    • 保存并关闭文件。
  6. 重启FTP服务

    • 重启vsftpd服务以应用更改:sudo systemctl restart vsftpd
  7. 配置防火墙(如果需要)

    • 如果你的服务器运行了防火墙,你需要允许FTP端口(在这里是60021):
      • sudo ufw allow 60021/tcp
    • 启用防火墙:sudo ufw enable(如果尚未启用)
  8. 测试FTP连接

    • 你可以使用FTP客户端软件,如FileZilla,来测试设置。
    • 确保使用新配置的端口60021以及创建的用户凭据进行连接。

请注意,FTP协议本身不是加密的,因此可能不适合传输敏感数据。如果需要安全传输,考虑使用SFTP或FTPS。

要通过命令行测试FTP服务器连接,你可以使用ftplftp命令。这里是如何使用它们的步骤:

使用 ftp 命令

  1. 安装 ftp 客户端(如果尚未安装):

    sudo apt-get install ftp
    
  2. 连接到FTP服务器:

    • 使用命令 ftp -p [服务器IP] 60021 来连接服务器。
    • 在提示时输入用户名和密码(在这个例子中是 deviceftpaaaaa)。
  3. 测试命令:

    • 登录后,你可以使用FTP命令如 ls, put, get 等来测试。
    • 例如,输入 ls 查看远程目录列表。
  4. 退出FTP:

    • 完成测试后,输入 byequit 来退出FTP会话。

使用 lftp 命令

lftp 是一个更强大的FTP客户端,支持FTP、FTPS和SFTP。

  1. 安装 lftp 客户端(如果尚未安装):

    sudo apt-get install lftp
    
  2. 连接到FTP服务器:

    • 使用命令 lftp -u deviceftp -p 60021 [服务器IP] 来连接服务器。
    • 输入密码(aaaaa)。
  3. 测试命令:

    • lftp命令行中,同样可以使用如lsputget等命令来测试服务器。
  4. 退出lftp:

    • 使用命令 exit 退出。

请确保你使用的是服务器的正确IP地址。如果你在本地机器上测试,这通常是127.0.0.1localhost。如果服务器位于你的本地网络之外,请确保使用正确的外部IP地址,并且所需端口在任何网络防火墙和路由器上都已开放。

错误信息 “500 OOPS: vsftpd: refusing to run with writable root inside chroot()” 表明 vsftpd 配置中有一个安全限制。在启用了 chroot 隔离的情况下,vsftpd 不允许用户的根目录是可写的。这是为了增加服务器的安全性。

要解决这个问题,你有两个选择:

选项 1: 修改用户的根目录权限

这个选项涉及改变/app/deviceftp目录的权限,使其变为不可写。

  1. 更改目录权限:
    执行以下命令使根目录变为只读:

    sudo chmod a-w /app/deviceftp
    
  2. 创建一个子目录供上传和下载:
    你可能还需要在/app/deviceftp下创建一个子目录,以便deviceftp用户可以上传和下载文件:

    sudo mkdir /app/deviceftp/upload
    sudo chown deviceftp:deviceftp /app/deviceftp/upload
    

选项 2: 调整 vsftpd 配置以允许可写的根目录

如果你确实需要让根目录是可写的,可以通过在vsftpd配置中添加一个设置来允许这种行为。

  1. 编辑 vsftpd 配置文件:

    sudo nano /etc/vsftpd.conf
    
  2. 添加或取消注释配置:
    在配置文件中添加以下行:

    allow_writeable_chroot=YES
    
  3. 重启 vsftpd:
    保存文件并重启 vsftpd 服务:

    sudo systemctl restart vsftpd
    

完成这些步骤后,再次尝试使用 lftp 连接并执行 ls 命令,看看问题是否得到解决。记住,选项 2 降低了安全性,因此如果你的FTP服务器不是面向公网或安全性要求不高,可以考虑使用这个选项。如果安全性很重要,则建议使用选项 1。

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

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

相关文章

自注意力机制Self-attention(1)

目录: 自注意力机制Self-attention(1) 自注意力机制Self-attention(2) 本文是对李宏毅老师的课程进行了整理。 视频地址为: https://www.bilibili.com/video/BV1Wv411h7kN?p23 1 问题引入 问&#xff1a…

id门禁卡复制到手机_手机NFC有哪些功能?怎么设置手机门禁卡?别浪费了手机的NFC功能...

NFC功能早前都运用一些手机旗舰机中,随着手机技术的发展,现在有许多的手机都有NFC的功能,那手机中的NFC只是个摆设吗?NFC不仅仅有不依靠数据网络、安全稳定的特点,其实还有许多你不知道的功能!比如可以用来…

自注意力机制Self-attention(2)

目录: 自注意力机制Self-attention(1) 自注意力机制Self-attention(2) 1 内容回顾 以b2b^2b2的计算过程为例来说明: query: q1Wqa1q^1 W^q a^1q1Wqa1, q2Wqa2q^2 W^q a^2q2Wqa2, q3Wqa3q^3 …

python 打印xml文档树_Python构建XML树结构的方法示例

本文实例讲述了Python构建XML树结构的方法。分享给大家供大家参考,具体如下:1.构建XML元素#encodingutf-8from xml.etree import ElementTree as ETimport sysrootET.Element(color) #用Element类构建标签root.text(black) #设置元素内容treeET.ElementT…

风格迁移模型测试效果

1 模型简介 Selfie2anime模型:动漫风格,训练集主要针对人物头像;对应论文为:U-gat-it: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation Hayao模型&a…

黑白棋级别预测

1 当前成果 上图是对于AI级别为40级以下的对局结果统计图,横坐标是对于AI级与当前模型预测级别的差值,纵坐标是玩家的胜率。由图中可以看出,玩家胜率符合预测。当AI级别比预测级别高时,玩家胜率越来越低,反之玩家胜率会…

python3源代码是什么_如何用inspect查找python3源代码?

我们在学习的时候喜欢去写代码,或者进行代码的测试,在源代码的查看的进行的不多。大概很多是写完就放在一边,如果不是下次需要使用,也不会知道写的是否正确,还有没有可以修改或者改进的地方。所以,对于源代…

python元编程_python元编程详解(3)

今天转载一片非常精彩的文章供大家欣赏:参考文章链接.python开发者门户一个很好的学习python的网站,大家有时间可以多看看。下面正式开始今天的内容:在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk&a…

风格迁移--U-GAT-IT模型(ICLR 2020)

1 论文简介 论文题目: U-gat-it: Unsupervised generative attentional networks with adaptive layer-instance normalization for image-to-image translation 论文代码:https://github.com/taki0112/UGATIT 论文数据集:https://github.co…

毕业大论文到底怎么写?

本文主要写给本科生的,研究生也可以作为参考。 1 题目 题目建议控制在25字以内,能突出显示自己的主要工作即可。 “问题方法”式。比如:恶意流量检测的矩阵分解算法研究,问题是恶意流量检测,方法为矩阵分解&#xf…

麻雀优化算法_多种智能优化算法应用案例分享-附代码

1.智能优化算法应用:基于灰狼算法的Otsu图像多阈值分割智能优化算法应用:基于灰狼算法的Otsu图像多阈值分割-附代码_Jack旭的博客-CSDN博客​blog.csdn.net2.智能优化算法应用:基于灰狼算法的二维Otsu图像阈值分割智能优化算法应用&#xff1…

Transform机制(1)

本文是对李宏毅老师的课程进行了整理。 视频地址为: https://www.bilibili.com/video/BV1Wv411h7kN?p35 1 引入 Transform的应用场景 2 基本原理 Transform机制由编码器(Encoder)和解码器(Decoder)构成。 编码器…

python神经网络调节参数_神经网络进阶-用python实现一个完整的神经网络框架并在CIFAR10数据集上调参...

上一个博客中讲解了用python实现一个简单的两层神经网络,我们是把所有的网络层都直接写在了类中。但是作为一个神经网络框架,网络的结构应该是可以由使用者自定义的,这样一来也就不用为每个网络结构都重写所有代码,我们把每一层模…

CGCKD2021大会报告整理(1)--宽度学习

本文先把这次听陈俊龙老师的报告截图发出来,后面再来整理宽度学习的基本原理。

java根据逗号拆分_Excel技巧—超实用的字符串拆分小技巧

点赞再看,养成习惯;当断不断,反受其乱。微信搜索【亦心Excel】关注这个不一样的自媒体人。本文GitHub https://github.com/hugogoos/Excel已收录,包含Excel系统学习指南系列文章,以及各种Excel资料。我们每天都在Excel…

动漫变身调研报告

1 问题描述 由于手机等移动设备计算资源有限,导致目前风格迁移模型无法在手机等移动设备上实现高分辨率图像的风格转换。 2 竞品调研 为了了解已有产品中对动漫变身技术的使用情况,通过调研,我们发现了在醒图 APP (抖音&#x…

网站维护页面_营销型企业网站有哪些功能?

营销型企业网站是企业进行网络营销的一个利器,现在也越来越多企业重视做一个营销型网站。因为网站是客户和企业在网络上互相沟通的一个平台。所以营销型网站的功能也是运营人员在运营的过程中非常重视的体验,今天牛商网就和你说说营销型企业网站有哪些功…

如何写研究周报?

本文适合准备做研究的本科生或者研究生,目前还是一个初稿,请多提宝贵建议,我会及时更新。 1 为什么要写研究周报? 锻炼自己的文档整理能力;理清自己的思路;研究周报不是写给导师看的,而是写给…

python自动打卡程序_使用Python实现平台自动打卡

众所周知,人的懒惰是技术发展的一大动力。现在正处疫情期间,因为我总是忘记及时健康打卡而导致被年级群通报,故干脆写了个Python脚本来自动打卡。若之后我的身体状态、所在地等信息都没有改变的话,这个脚本就能帮我完成一个小任务…