Skip to content

FTP

FTP(文件传输协议)可用于在树莓派和另一台计算机之间传输文件。尽管使用树莓派 OS的默认程序" sftp-server",具有足够特权的用户可以传输文件或目录,但通常也需要访问受限用户的文件系统。请按照以下步骤设置 FTP 服务器:

安装 Pure -FTPd

首先,在终端中使用以下命令行安装" Pure-FTPd":

`` sudo apt安装纯 ftpd


## 基本配置

我们需要为 FTP 用户创建一个名为 ftpgroup 的新用户组和一个名为 ftpuser 的新用户,并确保此"用户"具有** no **登录特权和** no **主目录:

``
 sudo 组添加 ftpgroup 
sudo useradd ftpuser -g ftpgroup -s/sbin/nologin -d/dev/null

FTP主目录,虚拟用户和用户组

例如,为第一个用户创建一个名为" FTP"的新目录:

`` sudo mkdir /home/pi/FTP


确保目录可以被 ftpuser 访问:

``
 sudo  chown  -R ftpuser:ftpgroup/home/pi/FTP

创建一个名为" upload"的虚拟用户,将该虚拟用户映射到" ftpuser"和" ftpgroup",设置主目录"/home/pi/FTP",并将该用户的密码记录在数据库中:

`` sudo pure-pw useradd上传-u ftpuser -g ftpgroup -d/home/pi/FTP -m


输入此命令行后,将需要该虚拟用户的密码。接下来,通过键入以下内容来建立虚拟用户数据库:

``
 sudo 纯 pw  mkdb

最后但并非最不重要的一点是,通过建立文件/etc/pure-ftpd/conf/PureDB的链接来定义身份验证方法,数字'60'仅用于演示,请使其尽可能小:

`` sudo ln -s/etc/pure-ftpd/conf/PureDB/etc/pure-ftpd/auth/60puredb


重新启动程序:

``
sudo服务 pure -ftpd重新启动

使用 FTP 客户端(例如 FileZilla )对其进行测试。

更详细的配置:

Pure-FTPd的配置简单直观。管理员只需要定义必要的设置,方法是制作带有选项名称的文件,例如" ChrootEveryone",然后键入" yes",然后将所有 FTP 用户都存储在目录"/etc/pure-ftpd/conf"中。锁定在其 FTP 主目录(/home/pi/FTP)中。以下是一些建议的设置:

`` sudo 纳米/etc/pure-ftpd/conf/ChrootEveryone


输入"是",然后按" Ctrl + X"," Y"并按 Enter 。

同样

制作一个名为" NoAnonymous"的文件,然后键入" yes";

制作一个名为" AnonymousCantUpload"的文件,然后键入" yes";

制作一个名为" AnonymousCanCreateDirs"的文件,然后键入" no";

制作一个名为" DisplayDotFiles"的文件,然后键入" no";

制作一个名为" DontResolve"的文件,然后键入" yes";

制作一个名为" ProhibitDotFilesRead"的文件,然后键入" yes";

制作一个名为" ProhibitDotFilesWrite"的文件,然后键入" yes";

制作一个名为" FSCharset"的文件,然后键入" UTF-8";

...

再次重启`pure-ftpd`并应用以上设置。

``
sudo服务 pure -ftpd重新启动

有关 Pure -FTPd和文档的更多信息,请访问[Pure-FTPd]的官方网站(https://www.pureftpd.org/project/pure-ftpd)。