Ubuntu 上的 FTP 服务器

Ubuntu 上的 FTP 服务器

我正在为我的无头服务器寻找一个 FTP 服务器应用程序,它是具有公共 IP 地址的公共虚拟机。我已经将范围缩小到 3 个,至少从我读过的内容来看,它们是最熟练的。

  • vsftpd
  • proftpd
  • pure-ftp

我一直在研究这三个问题,但我主要担心的是,我需要一个可以上传但在登录后看不到文件夹/目录内容的帐户。

我们之前一直filezilla在 Windows 服务器上使用服务器,但不得不迁移到 Ubuntu。我之前没有安装过这些应用程序,我想知道它们是否支持在 Ubuntu 上使用。如果支持,我该如何设置?

答案1

我在用着vsftpd 在内部服务器上,所以我只能回答这个问题……

vsftpd基本上有两个参数来控制其目录列表/etc/vsftpd.conf

dirlist_enable
    If set to NO, all directory list commands will give permission denied.

    Default: YES

dirmessage_enable
    If enabled, users of the FTP server can be shown messages when they 
    first enter a new directory. By default, a directory is scanned for
    the file .message, but that may be overridden with the configuration 
    setting message_file.

    Default: NO (but the sample config file enables it) 

download_enable
    If set to NO, all download requests will give permission denied.

    Default: YES 

因此,就你的情况而言,你绝对应该添加:

dirlist_enable=NO

至少,根据您的使用情况,还要禁用下载和目录消息。(这就是我添加该download_enable参数的原因,它实际上并不控制任何目录列表)

来源:man vsftpd.conf

尽管如此,在公共服务器上,我不会ftp再允许标准运行,但会使用类似sftp

答案2

如果您已在此计算机上设置 OpenSSH,则所有用户帐户都内置有 sftp。大多数现代 ftp 客户端都内置了对 sftp 的支持。它也比常规 ftp 更安全,并且使用加密的开销很小。事实上,在我的本地网络上,sftp 比 ftp 更快。试一试,它与 ssh 在同一个端口上运行,甚至在使用 ssh-key 登录时也可以工作。

尝试一下,您还可以节省运行另一个进程的资源。

答案3

ProFTPD功能不错,确实是一个不错的选择。它具有原生的 FTP over SSH 支持,如果您需要加密,这非常棒。

所有文件都可以找到这里

The Webalizer它还具有通过ftpweblog脚本分析日志和消息的良好功能

答案4

proftpd:

apt-get install proftpd

然后选择:proftpd(服务器模式)

nano /etc/proftpd/proftpd.conf
--> ipv6 should be off
--> default root (should be inlined)(no #)
--> Require Valid Shell off (should be inlined) (no #)

nano /etc/proftpd/modules.conf
--> LoadModule mod_tls_memcache.c should be outlined (with #)
service proftpd restart

现在您必须添加一些用户并将adduser他们的默认主目录设置为您选择的 ftp 路径 (var/ftp),并将其默认登录外壳设置为/bin/false以下/etc/passwd示例:

beeberst:x:1164:33::/var/www/beeberst:/bin/false

相关内容