【问题标题】:One Line FTP Server单线 FTP 服务器
【发布时间】:2011-10-12 06:43:44
【问题描述】:

很多时候我都使用了这个命令,它会在当前目录打开一个临时的 HTTP 服务器:

python3 -m http.server

现在我需要接收文件,有没有打开ftp服务器的单行命令?

我只是在寻找一个命令行 ftp 服务器,没有配置文件,没有守护进程。

我在 One line ftp server in python 中尝试过 Twisted,但用户没有发送文件的权限...

【问题讨论】:

  • 您能稍微澄清一下您的问题吗?您只是在寻找命令行 ftp 服务器还是其他东西?
  • 我只是在寻找一个命令行 ftp 服务器。

标签: linux bash ftp


【解决方案1】:

如果您正在寻找 Python 解决方案,请查看pyftpdlib

您可以使用例如安装它点子:

pip install pyftpdlib

然后像这样运行它:

python -m pyftpdlib

这会在本地主机上运行匿名可写 FTP 服务器,默认为端口 2121,从当前目录(即从您启动它的任何位置)提供文件。要登录,请使用 anonymous 作为用户名和密码。

显然,这是非常不安全的,因此您必须考虑到这一点 - 如果您想要的不仅仅是玩具或其他可以在开发中使用的东西,请使用其他人提到的适当的 FTP 服务器。

【讨论】:

【解决方案2】:

这是使用NodeJSftp-srv 模块)的解决方案

npx ftp-srv ftp://0.0.0.0:2121 --root .

这将启动一个 FTP 服务器,侦听所有接口上的 TCP 端口 2121,它使用当前目录作为根目录(这实际上是默认值,因此对于这种特殊情况,可以省略 --root .)并接受所有登录。 (npx 下载模块并使用提供的选项运行其主脚本。)

您可能还想查看--pasv_url 选项以启用被动模式。

更多详情请见https://www.npmjs.com/package/ftp-srv#cli

Options:
  --help             Show help                                         [boolean]
  --version          Show version number                               [boolean]
  --credentials, -c  Load user & pass from json file                    [string]
  --username         Blank for anonymous                  [string] [default: ""]
  --password         Password for given username                        [string]
  --root, -r         Default root directory for users                   [string]
  --read-only        Disable write actions such as upload, delete, etc
                                                      [boolean] [default: false]
  --pasv_url         URL to provide for passive connections             [string]
  --pasv_min         Starting point to use when creating passive connections
                                                        [number] [default: 1024]
  --pasv_max         Ending port to use when creating passive connections
                                                       [number] [default: 65535]

【讨论】:

    【解决方案3】:

    一个常用的命令行 ftp 服务器是vsftpd。这也是 Ubuntu、CentOS、Fedora、NimbleX 和 RHEL Linux 上的默认 ftp 服务器。

    【讨论】:

    • 你能举个例子说明如何使用vsftpd作为单行符吗?根据我的经验,它配置了一个(可能相当复杂的)配置文件并作为系统服务/守护进程运行。
    【解决方案4】:

    Openssh 有一个 SFTP 服务器,配置非常简单。

    仅供参考,普通 FTP 比 HTTP 更复杂。小心:)

    【讨论】:

      猜你喜欢
      • 2011-06-27
      • 2016-11-26
      • 1970-01-01
      • 2010-09-27
      • 1970-01-01
      • 2013-03-31
      • 2013-03-20
      • 1970-01-01
      • 2011-04-29
      相关资源
      最近更新 更多