基本的 Ubuntu FTP 服务器

JPr*_*ers 36 server security ftp

我想在我的 Ubuntu Server 安装上设置一个基本的 FTP 服务器。我一直在玩 VSFTPD,但是在让服务器允许我创建目录和复制文件时遇到问题。我已将系统设置为允许本地用户,但这似乎并不意味着我可以访问创建目录。这可能是我需要更好地了解 Ubuntu 服务器设置以便充分配置此 FTP 服务器的一个实例。最终目标是能够将文件从我的本地 dev 文件夹移动到我的 www 文件夹进行部署。目录也需要能够移动。任何帮助将不胜感激。

Mar*_*ppi 43

我将推荐 PureFTPD,因为在我看来它是最简单和最容易使用的。您需要先安装它:sudo apt-get install pure-ftpd安装后它会自动启动。默认情况下,它使用 PAM 身份验证 - 这意味着它使用系统上已经存在的帐户进行身份验证。您需要做的就是创建一个用户帐户,主目录是您的 www 路径,并为该帐户设置密码。然后,您应该能够与该用户/密码组合连接以上传/下载文件。

像这样的东西:

sudo adduser ftpman --home /var/www/ --ingroup www-data

这将创建ftpman用户并将他放在 Apache 使用的 www-data 组中,并将引导您完成设置脚本的其余部分。一旦定义chmod了 WWW 文件夹,如果您收到关于它已经存在于您创建的用户/组组合的错误。

最后,如果您想锁定该帐户的 SSH 访问,请运行:sudo chsh -s /bin/false ftpman这会将用户 shell 更改为 false。(将 ftpman 替换为您的 ftp 用户)

  • 就我而言,PureFTP 是最容易设置的。 (5认同)
  • 你有一个习惯,总是像老师一样给出完整的解释。惊人的!!! (2认同)

Ben*_*ams 10

在我看来,SFTP 是一种更好的方法。嘿,它的名字里有“安全”这个词,一定更好:)

SFTP 使用 ssh 进行文件传输(与 FTPS 不同,它基本上是 FTP + TLS)。这意味着如果您可以通过 ssh 连接到目标机器,您几乎总是可以通过 SFTP 连接到它,因为它使用相同的身份验证机制,因此根本不必安装和配置不同的服务器守护程序(即没有 pureftpd 或 vsftpd)。只要您的权限设置正确/var/www- 这可能是一个问题sudo chmod g+w /var/www; sudo usermod -g $USER -G www-data $USER- 您应该能够立即使用 SFTP。

现在大多数客户端软件都可以很愉快地执行 SFTP,您还可以scp从开发服务器上的 shell使用来复制内容(scp -R将复制整个文件夹,非常方便)。您甚至可以进一步使用公钥自动登录,这意味着不再需要输入密码:)

  • 提示提示...如果您有 Windows 客户端,他们可以使用 WinSCP http://winscp.net/eng/index.php 来访问 sftp 服务器。 (3认同)

qbi*_*qbi 5

我强烈推荐使用 vsftpd。它是 Linux 中最安全的 FTP 守护进程之一。许多其他人过去有弱点,似乎 FTP 很难以安全的方式实施。

vsftpd 安装后立即启动。Ubuntu 允许本地用户登录。因此,启动您的 FTP 客户端并使用您的系统密码以普通用户身份登录(我的示例使用 lftp):

> lftp 127.0.0.1 ftp
lftp 127.0.0.1:~> user qbi
Password: #typing my password which I also use to log in via GDM
lftp qbi@127.0.0.1:~> ls
drwxr-xr-x 10 1000 1000   4096 2008-07-28 16:32 Desktop
... many more
Run Code Online (Sandbox Code Playgroud)

现在我正在使用某种文件管理器(Nautilus、Shell 等)来创建一个新目录foo并返回到我的 FTP 客户端:

ftp qbi@127.0.0.1:~> ls -l
...
drwxr-xr-x 2 1000 1000   4096 2010-08-09 13:32 foo
Run Code Online (Sandbox Code Playgroud)

目录在那里,我可以cd进入并使用它。如果您有特殊用户,这也是相同的。您还可以在那里创建目录,并且可以立即访问它们。在这里寻找访问权限很重要。


Nat*_*man 5

我虚心推荐一个我从头开始写的 FTP 服务器:JetFTP。这是非常简单的安装和使用。


安装:


使用 JetFTP 很简单 - 只需8021在运行 JetFTP 的计算机上使用登录名和密码连接到端口。