FTP服务器 | AI生成和翻译
要在 Ubuntu 上设置 FTP 服务器,以便从 iPad 或其他设备访问文件(比如 /var/www/movies/ 目录中的 .mkv 文件),可以使用 vsftpd(Very Secure FTP Daemon),这是一个轻量级且安全的选项。以下是针对你的设置量身定制的分步指南:
前提条件
- 你使用的是 Ubuntu(例如,截至 2025 年 3 月 15 日,版本为 22.04 或 24.04)。
- 你拥有 sudo 权限。
- 你的 Nginx 服务器位于
192.168.1.27,文件存放在/var/www/movies/。
步骤 1:安装 vsftpd
- 更新软件包列表:
sudo apt update - 安装 vsftpd:
sudo apt install vsftpd -y - 验证安装:
sudo systemctl status vsftpd- 应显示
active (running)。如果没有,请启动它:sudo systemctl start vsftpd sudo systemctl enable vsftpd # 开机自启
- 应显示
步骤 2:配置 vsftpd
默认配置文件是 /etc/vsftpd.conf。我们将对其进行调整以实现基本访问。
- 备份原始配置:
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak - 编辑配置:
sudo nano /etc/vsftpd.conf进行以下更改:
- 启用本地用户:
local_enable=YES - 允许文件上传(可选,如果你需要上传文件):
write_enable=YES - 将用户限制在其主目录中(可选,为了安全):
chroot_local_user=YES - 指向你的电影目录(可选,参见步骤 3 的用户设置):
- 默认情况下,用户访问其主目录。我们稍后会调整这一点。
保存(
Ctrl + O,回车,Ctrl + X)。 - 启用本地用户:
- 重启 vsftpd:
sudo systemctl restart vsftpd
步骤 3:设置 FTP 用户
你可以使用现有用户或创建一个新用户来访问 /var/www/movies/。
选项 1:使用现有用户
如果你想使用当前的 Ubuntu 用户(例如 user):
- 检查你的用户名:
whoami - 设置密码(如果需要):
sudo passwd user # 将 "user" 替换为你的用户名 - 链接到电影目录:
- 默认情况下,该用户的主目录(例如
/home/user/)是 FTP 根目录。要访问/var/www/movies/,可以创建一个符号链接:ln -s /var/www/movies/ /home/user/movies - 或者,调整权限(安全性较低):
sudo chown -R user:user /var/www/movies
- 默认情况下,该用户的主目录(例如
选项 2:创建专用 FTP 用户
为了更好的安全性:
- 添加用户:
sudo adduser ftpuser- 按照提示设置密码和详细信息。
- 将主目录设置为电影目录:
sudo usermod -d /var/www/movies ftpuser sudo chown -R ftpuser:ftpuser /var/www/movies - 限制访问(如果设置了
chroot_local_user=YES):- 确保
/var/www/movies对ftpuser可写:sudo chmod -R 755 /var/www/movies
- 确保
步骤 4:打开防火墙端口
FTP 默认使用端口 20 和 21。
- 在 UFW 中允许 FTP:
sudo ufw allow 21/tcp sudo ufw allow 20/tcp sudo ufw status- 应显示
20/tcp ALLOW和21/tcp ALLOW。
- 应显示
- 重启 vsftpd:
sudo systemctl restart vsftpd
步骤 5:从 iPad 测试 FTP
你需要在 iPad 上安装一个 FTP 客户端应用。
推荐的 iPad 应用:FileZilla 或 FE File Explorer
- FileZilla(免费):
- 从 App Store 安装(搜索 “FileZilla”)。
- 打开 FileZilla。
- 点击 New Site 或 Connect。
- 输入:
- 主机:
192.168.1.27 - 用户名:
ftpuser(或你的用户名) - 密码:[你的密码]
- 端口:21(默认)
- 主机:
- 点击 Connect。
- FE File Explorer(免费,含应用内购买):
- 从 App Store 安装。
- 点击 + > FTP。
- 输入与上述相同的信息。
- 连接。
从 FTP 流式传输
- 大多数 FTP 应用允许你浏览文件。要流式传输
.mkv文件:- 在应用中点击
.mkv文件。 - 如果无法直接播放,请下载流媒体应用如 VLC for Mobile(参见之前的回复),然后使用其 Network Stream 选项并输入 FTP URL:
ftp://ftpuser:password@192.168.1.27/yourfile.mkv
- 在应用中点击
步骤 6:验证访问
- 从你的 iPad 通过 FTP 应用连接到
192.168.1.27。 - 你应该能看到
/var/www/movies/的内容(例如yourfile.mkv)。 - 点击预览或流式传输(取决于应用)。
故障排除
- 连接被拒绝:检查
sudo ufw status并确保端口 20/21 已打开。验证 vsftpd 是否正在运行(sudo systemctl status vsftpd)。 - 权限被拒绝:确认用户拥有或可以读取
/var/www/movies/(ls -l /var/www/movies/)。 - 404 或没有文件:确保目录路径与用户的主目录或符号链接设置匹配。
最后说明
- 安全性:对于本地网络,此设置没有问题。对于外部访问,请考虑通过启用
vsftpd.conf中的 SSL 来使用 FTPS(加密的 FTP)。 - Nginx 与 FTP:你已经通过 Nginx 使用 HTTP 进行流式传输——FTP 增加了文件管理功能。如果 FTP 设置感觉多余,可以在 iPad 上使用 VLC 进行 HTTP 流式传输。
你的 iPad 现在拥有了访问 Ubuntu 服务器文件的 FTP“魔法”!如果遇到任何问题,请告诉我。