AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 785933
Accepted
puck
puck
Asked: 2024-11-01 04:36:16 +0800 CST2024-11-01 04:36:16 +0800 CST 2024-11-01 04:36:16 +0800 CST

使 pure-ftp 仅接受虚拟用户

  • 772

我在 Debian(Raspberry Pi)上安装了 pure-ftpd,找到了配置文件并设法进行了基本配置,禁止匿名登录,创建虚拟用户,调用pure-pw mkdb并重新启动服务器。但我无法使用此用户登录。
相反,我可以使用普通 Linux 用户登录。
我想拒绝普通用户并只接受虚拟用户。

我发现我应该使用指定应接受哪些登录的参数来启动服务器-l。这听起来很棒 - 如果我能够找到服务器启动的位置就好了。在 init.d 和其他已知(对我而言)的地方中没有任何东西可以自动启动守护进程。据我所知,我没有执行任何操作来激活守护进程,这一定是在安装过程中发生的。
如果有人能告诉我 pure-ftpd 在哪里启动,也许这可以解决我的两个问题。

我想知道为什么很多东西可以在配置文件中配置,但像接受哪些用户这样的基本配置必须以完全不同的方式来设置。原因是什么?

对于只接受与系统用户无关的专用用户的 ftp 服务器来说,pure-ftpd 不是最好的选择吗?

为什么选择 FTP?

我想将图像从我的智能手机传输到内部网络中的 Raspberry Pi,而不能从外部访问。因此 FTP 似乎是一个不错的选择,尤其是因为我期望一个被描述为“为安全而设计”的服务器也能提供加密传输。
在原始配置下,它似乎对每个 Linux 用户开放,这让我有点怀疑它的安全性。

为什么是这个 FTP 服务器?

我也尝试过其他 FTP 服务器,但我不喜欢它们与普通用户绑定。我不想添加系统用户并为他们分配主目录。我只想添加两个可以访问一个目录并以该目录用户的身份保存文件的 FTP 用户。我(还)不确定这是否可行,我正在一步一步地进行,目前我正停留在虚拟用户上。
文档不难找到,但大多数文档对我来说似乎不完整。在这种情况下,它们都告诉如何添加虚拟用户,但我不得不搜索一段时间,直到我发现我必须激活它。但没有关于在哪里激活它的评论。

ftp
  • 1 1 个回答
  • 22 Views

1 个回答

  • Voted
  1. Best Answer
    Marcus Müller
    2024-11-01T06:22:43+08:002024-11-01T06:22:43+08:00

    我想知道为什么很多东西可以在配置文件中配置,但像接受哪些用户这样的基本配置必须以完全不同的方式来设置。原因是什么?

    就是这么写的。一般来说,“为什么 XYZ 软件可以做 A,而不是技术上同样可行的 B?”的答案就像“为什么作者把他的书写成了 A,而不是 B”:这是一个有意识或无意识的决定,没有人能够用该软件做 B。

    在这种情况下,这是一个设计决策(我不同意,但您选择 pure-ftpd 可能正是因为他们的设计决策):

    Pure-FTPd 致力于保持操作简单,并将旋钮数量保持在最低限度。

    几乎所有内容都可以使用命令行开关进行设置,因此不需要配置文件。

    所以,这就是为什么上游 pure-ftpd 端的一个配置文件中的内容不一致的原因。

    必须添加命令行选项才能完成您想要的操作(这显然是错误的,但只有那些必须打包软件并帮助成千上万的用户运行软件的人才能理解,而软件作者自己却不明白)是一个坏主意;因此,在 debian 中,使用了“包装器” PERL 脚本,该脚本读取其自己的配置文件,然后根据用户的需要调用 pure-ftpd。

    它从 /etc/init.d/pure-ftpd 启动,它是 pure-ftpd-common debian 软件包的一部分,如果您正确安装了 pure-ftpd(即通过操作系统的软件包管理器apt install pure-ftpd),您应该已经获得了该软件包。如果您没有通过该软件包安装它,那么您可以设置自己的守护进程启动机制!(不要这样做。使用发行版软件包。)

    该脚本是 /usr/bin/pure-ftpd-wrapper(一开始可能会读取可用的配置选项,但不要修改它!),它会读取 /etc/pure-ftpd/conf 目录中的所有文件以进行常规配置,并读取 /etc/pure-ftpd/auth 中的所有文件以进行身份​​验证配置。因此,您会在 /etc/pure-ftps/{conf,auth} 中找到 /usr/bin/pure-ftpd-wrapper 中提到的设置作为文件名。

    我认为这是否构成了“易于使用的 FTP 服务器”?不。但如果您确实需要 FTP(老实说,我不是 FTP 服务器专家),它可能仍然是一个明智的选择;人们通常更喜欢(至少根据我在这里看到的帖子,我的经验)ProFTP 或 vsftp。我个人认为现在是 2024 年了,我看到 FTP 在重要部署中的唯一用途是恶意软件和盗版软件分发,因此,我认为如果您要使用虚拟用户进行复杂的设置, FTP可能太过 1970 年代,无法满足您的需求,您最好使用 SFTP / webdav / S3 兼容协议……这些协议不会拖延五十年的兼容性(FTP 实际上比互联网还要古老。它比互联网协议早三年)。我认为即使是 SMB 也会更明智,而且现在可以通过正确加密和保护在互联网上工作。与 FTP 不同的是,所有这些协议都支持适当的编码支持、支持继续中断的传输、更好的目录列表……

    • 1

相关问题

  • FTP将文件从一个linux下载到另一个

  • 为什么 lftp 镜像操作会随着时间的推移而变慢?

  • 将文件和文件夹推送到 ftp 上的特定文件夹

  • 检查文件是否已通过 FTP 正确传输

  • 如何使用 lftp 将特定文件同步到远程 FTP 服务器?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve