Ubuntu上的FTP服务器


12

我正在寻找无头服务器的FTP服务器应用程序,该服务器是具有公共ip地址的公共虚拟机。。我将其范围缩小到3,至少从我读过的最熟练的人开始。

  • vsftpd
  • proftpd
  • pure-ftp

我一直在研究这3个,但我主要关心的是我需要一个帐户,该帐户可以上载但登录后看不到文件夹/目录的内容。

我们曾经filezilla在Windows服务器上使用服务器,但是不得不迁移到Ubuntu。我以前没有安装过这些应用程序,我想知道其中是否有任何一个在Ubuntu上支持此应用程序。如果他们这样做,我将如何进行设置?

Answers:


7

我在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

说了这么多,在公共服务器上,我将不再允许standard ftp运行,而是使用sftp


ty我会试一试!
ErocM

如果你确实需要FTP到外部服务器上运行,vsftpd是您最佳的选择(这就是为什么我使用内部服务器上的一个:你永远不知道什么时候该用例的变化。) ;-)它有助于做man vsftpd.conf,而你正在首次配置...
Fabby 2015年

6

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

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


2
+1使用FTP的唯一原因是出于遗留原因,即您期望客户端无法处理SFTP。
pzkpfw

1

ProFTPD具有不错的功能,实际上是一个不错的选择。它具有基于SSH的本地FTP支持,如果您希望加密,那就太棒了。

所有文件都可以在这里找到

它还具有很好的功能,可以通过The Webalizerftpweblog脚本分析日志和消息


0

我以前在服务器上安装了VsFTPd,但由于我的Windows设计器在上载和全部操作(他使用的是notepad ++及其内置的FTP客户端)时经常出现中断,因此我不得不使用ProFTPd。现在,我没有任何抱怨。至于清单,您可以在这里找到更多详细信息。


0

proftpd:

apt-get install proftpd

然后选择:proftpd(servermode)

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/bin/false/etc/passwd一个示例中将其默认homedir设置为所选的ftp-path(var / ftp),并将其default-loginshell设置为:

beeberst:x:1164:33::/var/www/beeberst:/bin/false
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.