CentOS 7 搭建 FTP 服务器:vsftpd 安装配置


头像
鲨仁不wink
原创
发布时间: 2026-08-03 17:25:16 | 阅读数 0收藏数 0评论数 0
封面
本文详解CentOS 7搭建vsftpd FTP服务器的完整流程,涵盖安装配置、用户权限设置及安全加固。
1

关闭防火墙


// 查看防火墙状态
systemctl status firewalld.service
// 停止防火墙
systemctl stop firewalld.service
2

安装ftp


# 安装ftp服务器
yum install -y vsftpd
# 安装客户端
yum install -y ftp lftp
# 启动服务
sudo systemctl start vsftpd
#查看运行状态
sudo systemctl status vsftpd
3

创建用户以及ftp目录

# 创建用户 ftpuser,指定家目录为 /data/ftp
sudo useradd -d /data/ftp -s /sbin/nologin ftpuser

# 设置密码
sudo passwd ftpuser

# 创建目录并设置权限
sudo mkdir -p /data/ftp
sudo chown -R ftpuser:ftpuser /data/ftp
sudo chmod 755 /data/ftp
4

修改配置文件

# 备份配置文件
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
# 删除配置文件
sudo rm -rf /etc/vsftpd/vsftpd.conf
# 写入配置文件
sudo tee /etc/vsftpd/vsftpd.conf > /dev/null << 'EOF'
# ==================== 基础访问控制 ====================
anonymous_enable=NO # 禁用匿名访问
local_enable=YES # 允许本地系统用户登录
write_enable=YES # 开放写入权限
local_umask=022 # 新建目录755,文件644
dirmessage_enable=YES # 进入目录时显示提示信息
local_root=/data/ftp # 指定用户主目录/FTP根目录

# ==================== 日志记录 ====================
xferlog_enable=YES # 启用传输日志
xferlog_std_format=YES # 使用标准日志格式
xferlog_file=/var/log/xferlog # 日志存储路径

# ==================== 连接与端口 ====================
connect_from_port_20=YES # 主动模式使用20端口
port_enable=YES # 允许主动模式(PORT)
pasv_enable=YES # 允许被动模式(PASV)
pasv_min_port=64000 # PASV模式最小端口
pasv_max_port=65000 # PASV模式最大端口
listen=NO # 关闭IPv4独立监听
listen_ipv6=YES # 开启IPv6监听(兼容IPv4)

# ==================== 安全加固 ====================
chroot_local_user=YES # 限制用户在主目录内活动
chroot_list_enable=NO # 不启用例外列表
allow_writeable_chroot=YES # 允许chroot目录可写(解决500 OOPS报错)
ascii_upload_enable=NO # 禁止ASCII上传(防DoS攻击)
ascii_download_enable=NO # 禁止ASCII下载(防DoS攻击)
tcp_wrappers=YES # 启用TCP Wrappers主机访问控制

# ==================== 认证与用户管理 ====================
pam_service_name=vsftpd # PAM认证模块名称
userlist_enable=YES # 启用用户白名单机制
userlist_deny=NO # NO=仅允许白名单用户登录
EOF


#配置用户以及环境配置
echo "ftpuser" >> /etc/vsftpd/user_list
grep -q '/sbin/nologin' /etc/shells || echo '/sbin/nologin' >> /etc/shells

# 重启服务使配置生效
systemctl restart vsftpd
5

连接使用

打开命令提示符(CMD),输入 ftp <服务器IP地址> 并按回车键建立连接,随后根据提示依次输入用户名和密码即可登录。

阅读记录0
点赞0
收藏0
禁止 本文未经作者允许授权,禁止转载
猜你喜欢
评论/提问(已发布 0 条)
头像
评论 评论
收藏 收藏
分享 分享
pdf下载 下载
pdf下载 举报