ubuntu安装vsftpd

1. 安装并启动

bash 复制代码
apt update
apt install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd

2. 准备目录

bash 复制代码
mkdir -p /opt/ftp
chmod 755 /opt/ftp

3. 创建 FTP 用户

建议不要直接用 root 登录 FTP。

bash 复制代码
useradd -d /opt/ftp -s /usr/sbin/nologin ftpuser
passwd ftpuser
chown ftpuser:ftpuser /opt/ftp

如果后面登录报 530 Login incorrect,再检查 /etc/shells 里是否有 /usr/sbin/nologin,没有就补一行。

4. 修改配置

bash 复制代码
cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
nano /etc/vsftpd.conf

关键配置改成这样:

ini 复制代码
listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
allow_writeable_chroot=YES
local_root=/opt/ftp
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40100

保存后重启:

bash 复制代码
systemctl restart vsftpd

5. 放行端口

如果有防火墙:

bash 复制代码
ufw allow 21/tcp
ufw allow 40000:40100/tcp
ufw reload

6. 测试

bash 复制代码
ftp 127.0.0.1

输入用户名 ftpuser 和刚才设置的密码。登录后根目录就是 /opt/ftp。

注意

  • 如果提示 500 OOPS: writable root inside chroot,把 /opt/ftp 权限改成 755,或者把 allow_writeable_chroot=YES 确认已开启。
  • 如果这台机器在公网,FTP 是明文传输,长期用建议改用 SFTP,直接用 SSH 账号登录,不需要额外装服务。

相关推荐
木子欢儿3 小时前
openconnect Linux客户端安装 以及开机自启和登录
linux·运维·服务器
..Dauntless..3 小时前
【Linux】文件系统(一)
linux·运维·服务器
九零HTTP4 小时前
10月21号-CSDN配菜-IP池的5个坑
服务器·数据库·tcp/ip
程序员-King.4 小时前
【ROS1】Noetic 开发工作流程与常用命令
c++·ubuntu·ros
SHENGWEI胜为4 小时前
交换机端口显示正常,终端却获取不到 IP 地址?从 DHCP 流程定位故障
服务器·网络·测试工具·缓存·通信工程
极光通讯4 小时前
液冷服务器对内存和SSD的适配要求:高密度部署下的散热与信号完整性
运维·服务器
IMPYLH6 小时前
Linux 系统备份与镜像
linux·服务器·网络
淘气包海鸟7 小时前
水声网络框架
网络·ns3·水
aaa最北边7 小时前
Linux 上的交叉编译
linux·运维·服务器