Ftp服务部署

一、安装 vsftpd

bash 复制代码
# Centos 安装 vsftpd
sudo yum install vsftpd -y

# Ubuntu 安装 vsftpd
sudo apt update
sudo apt install vsftpd -y

# 设置开机自启
sudo systemctl enable vsftpd

# 启动服务
sudo systemctl start vsftpd

# 查看服务状态(确认是否运行)
sudo systemctl status vsftpd

二、核心配置(匿名 / 本地用户模式)

安装完之后在/etc/vsftpd/路径下会存在几个配置文件

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问FTP 服务器(黑名单)

/etc/vsftpd/user_list:指定允许使用vsftpd 的用户列表文件(白名单)

/etc/vsftpd/chroot_list:指定允许使用vsftpd 的用户列表文件(控制名单下的目录能不能离开ftp根目录)

1.vsftpd.conf具体配置如下

bash 复制代码
anonymous_enable=NO  #允许匿名用户访问为了安全选择关闭
local_enable=YES   # 允许本地用户登录
write_enable=YES   # 是否允许写入
local_umask=022  # 本地用户上传文件的umask
dirmessage_enable=YES #为YES则进入目录时显示此目录下由message_file选项指定的文本文件(,默认为.message)的内容
xferlog_enable=YES #开启日志

xferlog_std_format=YES #标准格式
connect_from_port_20=YES
xferlog_file=/var/log/xferlog   #ftp日志目录

idle_session_timeout=6000 #设置客户端连接时间

data_connection_timeout=1200 #设置数据连接时间 针对上传,下载
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list #设置为YES则下面的控制有效
chroot_list_enable=YES #若为NO,则记录在chroot_list_file所指定的文件(默认是/etc/vsftpd.chroot_list)中的用户将被chroot在登录后所在目录中,无法离开.如果为YES,则所记录的用户将不被chroot.这里YES.
chroot_local_user=YES
userlist_deny=NO #若设置为YES则记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户将无法login,并且将检察下面的userlist_deny选项
userlist_enable=YES #若为NO,则仅接受记录在userlist_file选项指定文件(默认是/etc/vsftpd.user_list)中的用户的login请求.若为YES则不接受这些用户的请求.
userlist_file=/etc/vsftpd/user_list #白名单
chroot_list_enable=YES
local_root=/var/ftp/pub #根目录
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

2.创建 FTP 本地用户并添加到user_list和chroot_list中去

bash 复制代码
# 创建用户 ftpuser
sudo useradd ftpuser

# 设置用户密码
sudo passwd ftpuser

# 授权目录权限
chmod 777 /var/ftp/pub
相关推荐
2301_809051141 天前
Linux 网络编程 学习笔记
linux·网络·学习
wanhengidc1 天前
服务器租用有何优点
运维·服务器·安全·web安全
ZGi.ai1 天前
人工审查节点:让自动化工作流多一步人工把关
运维·人工智能·自动化·人机协同·智能体工作流·人工审查
坤昱1 天前
cfs调度类深入解刨——最新内核细节分析2
linux·服务器·cfs·cfs调度·eevdf调度·eevdf·kernel 7.1
艾莉丝努力练剑1 天前
【Linux:文件】Ext系列文件系统进阶
linux·运维·服务器·c++·文件系统·文件io·ext
海市公约1 天前
Linux核心基础命令与权限管理实战指南
linux·运维·服务器·vim·权限管理·系统监控·命令行
eggcode1 天前
【Qt学习】Linux(ARM架构)在线安装Qt6.x
linux·qt·学习·arm
wkd_0071 天前
Ubuntu 22.04 Samba 连接故障排查记:从“用户名或密码错误”到 NTLM 版本不兼容
linux·运维·ubuntu
企服AI产品测评局1 天前
Agent适配信创环境实测:企业级自动化如何实现国产操作系统与数据库全兼容?
运维·数据库·人工智能·ai·chatgpt·自动化
mixboot1 天前
Linux 进程工作目录查看利器:pwdx 命令详解
linux·运维·服务器