vsftpd 服务器配置和用户

vsftpd 服务器配置和用户

我在使用 vsftpd 服务器时遇到问题,无法在 ubuntu 14.04 上创建具有正确权限的文件夹

是否可以提供清晰的分步教程,介绍如何创建用户并相应地配置文件夹权限和访问权限?

在我的示例中,我想创建 user1。创建一个用于上传的文件夹。user1 应该能够下载和上传到此文件夹,但不能离开此文件夹。只有 user1 才可以连接到 ftp 服务器。

我已经遵循了一些现有的指南,但无法使其正常工作,并且希望清楚地了解 Ubuntu 的用户和访问权限。

提前感谢 Rob

答案1

您没有为严格的 FTP 用户提供 Gnu/Linux 系统上的真实 shell 帐户。

使用以下命令创建ftp用户。

对于您允许访问 FTP 服务器的每个新用户,都必须执行此步骤。

sudo su
mkdir /home/ftp
useradd -d /home/ftp/user1/ -s /dev/null user1 > /dev/null 2>&1
passwd user1

mkdir 命令将在 /home 目录下创建 ftp 目录。

useradd 命令将添加名为 user1 的新用户。

passwd命令将为该用户user1设置密码。

编辑 /etc/shells 文件,添加一个不存在的 shell 名称,如 null。

这个虚假的外壳将会限制 FTP 用户对系统的访问。

sudo su
nano /etc/shells      

内容:

# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash

添加行 /dev/null,如下所示:

# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/dev/null

Control + O,保存文件。Control + X,关闭 nano。

编辑 /etc/passwd 文件并手动添加 /./ 行以将 /home/ftp 目录与用户 user1 应自动 chdir 到的 /user1 目录分开。

sudo su
nano /etc/passwd

改变:

user1:x:504:504::/home/ftp/user1/:/dev/null 
To
user1:x:504:504::/home/ftp/./user1/:/dev/null 

Control + O,保存文件。Control + X,关闭 nano。

该帐户为user1。

第一部分 /home/ftp/ 表示应被视为其新根目录的文件系统。

点 . 将其与应自动更改目录的目录分开。将目录更改为 /user1/。

相关内容