debian 13 安装配置ftp 创建用户admin可以访问 /mnt/Data/

1. 安装 vsftpd

首先,更新系统软件包列表并安装 vsftpd。

复制代码
sudo apt update
sudo apt upgrade
sudo apt install vsftpd

2. 创建用户并设置目录

我们需要创建 admin 用户,并将其主目录指向或关联到 /mnt/Data/

  • 创建用户:

    复制代码
    sudo adduser admin

    (按提示设置密码,其他信息可直接回车跳过)

  • 配置权限: 为了让 admin 能够读写该目录,你需要确保权限正确。如果 /mnt/Data/ 已经是挂载点:

    复制代码
    sudo chown admin:admin /mnt/Data/
    sudo chmod 755 /mnt/Data/

3. 配置 vsftpd

复制代码
# 1. 运行模式设置
# -----------------------------------------------
# 启用独立守护进程模式
listen=YES
# 如果不需要 IPv6,建议关闭以减少资源占用
listen_ipv6=NO

# 2. 访问控制
# -----------------------------------------------
# 禁止匿名用户登录
anonymous_enable=NO
# 允许本地系统用户登录(如 admin)
local_enable=YES
# 允许执行写入操作(上传、删除、创建目录)
write_enable=YES
# 设置上传文件的默认权限掩码(022 对应目录 755,文件 644)
local_umask=022

# 3. 目录限制 (Chroot)
# -----------------------------------------------
# 将用户锁定在其主目录内,增强安全性
chroot_local_user=YES
# 允许在被锁定的根目录下拥有写权限(解决 Debian/Ubuntu 常见的登录错误)
allow_writeable_chroot=YES
# 强制指定 FTP 登录后的起始目录
local_root=/mnt/Data/

# 4. 传输模式与防火墙 (被动模式)
# -----------------------------------------------
# 启用被动模式(对 NAT 环境和现代防火墙更友好)
pasv_enable=YES
# 限制被动模式使用的端口范围,便于在防火墙开洞
pasv_min_port=40000
pasv_max_port=50000

# 5. 日志与本地化
# -----------------------------------------------
# 开启传输日志
xferlog_enable=YES
# 日志存放路径
vsftpd_log_file=/var/log/vsftpd.log
# 使用本地时间而非 GMT 时间
use_localtime=YES

# 6. 其他优化
# -----------------------------------------------
# 禁止显示服务器版本信息,防止漏洞探测
ftpd_banner=Welcome to My Private FTP Service.
# 启用目录信息提示(如果目录下有 .message 文件)
dirmessage_enable=YES
  • 重启服务

    复制代码
    sudo systemctl restart vsftpd
  • 开放防火墙端口 (如果你使用了 ufw):

    复制代码
    sudo ufw allow 20,21/tcp
    sudo ufw allow 40000:50000/tcp
相关推荐
运维全栈笔记5 分钟前
Vue + Spring Boot 前后端分离项目部署笔记(若依 RuoYi-Vue 3.9.2)
运维·服务器·vue.js·spring boot·笔记·开源·开源软件
Data_Journal5 小时前
用于网页抓取的 Node-unblocker
大数据·开发语言·数据库·python·scrapy
涤生大数据5 小时前
一次“没有运行日志”的DolphinScheduler任务失败排查
大数据·数据库·人工智能·状态模式
专注API从业者5 小时前
告别人工盯品!借助 Open Claw 搭建电商商品自动化监控与数据分析系统(完整可运行源码)
大数据·运维·数据库·数据分析·自动化
viskaz6 小时前
数据库迁移流程学习
数据库
auspicious航6 小时前
PostgreSQL写入慢全攻略:原因排查与性能调优实战
数据库·postgresql
IvorySQL7 小时前
PostgreSQL 日报|逻辑复制行过滤致数据丢失(8 月 21 日)
数据库·postgresql
爱喝水的鱼丶7 小时前
SAP-ABAP:ABAP 用户出口参数传递与上下文获取:SAP 标准数据读取与交互逻辑实现
运维·性能优化·交互·sap·abap·经验交流·出口
IT大白鼠7 小时前
PentestGPT作为AI运维编排工作流自动化底座的技术架构与应用价值评估
运维·人工智能·自动化·pentestgpt
重生之我是Java开发战士7 小时前
【Java EE】事务与事务的传播机制
数据库·java-ee