利用vsftp 搭建 ftp 服务
# 安装 vsftp
sudo apt-get install vsftpd
# 启动
sudo systemctl start vsftpd
# 使用服务
sudo systemctl enable --now vsftpd# 配置 vsftp
sudo vi /etc/vsftpd.conf# 允许本地用户登录
local_enable=YES
# 开启上传写入权限
write_enable=YES
# 用户禁锢在自家家目录(不能跳出到/、/etc)
chroot_local_user=YES
# 被动模式端口范围
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000
# 禁止匿名用户
anonymous_enable=NO
# 日志
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log创建对应的用户
# 创建用户ftpuser,家目录/ftpdata /sbin/nologin:禁止 ssh 远程登录,只能 FTP 登录
useradd -d /ftpdata -s /sbin/nologin ftpuser
# 设置密码
passwd ftpuser
# 创建目录并授权
mkdir -p /ftpdata
chown ftpuser:ftpuser /ftpdata/upload
chmod 755 /ftpdata1、500 OOPS: vsftpd: refusing to run with writable root inside chroot()
修改当前用户的根目录为只读
# 修改用户根目录权限
chmod a-w /ftpdata
# 或者
chmod 755 /home/username或者在配置文件中增加
allow_writeable_chroot=YES
2、550 Permission denied.
先检查路径是否存在并具备权限,再检查配置是否开启了写权限<code>allow_writeable_chroot=YES</code>
3、vsftpd 530 Login incorrect
echo "/sbin/nologin" >> /etc/shells
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。