CentOS7搭建安全FTP服务器指南

搭建方案

我将采用Centos7加vsftpd进行搭建,并使用虚拟用户认证,在一定程度上保证安全
vsftpd 是 "very secure FTP daemon" 的缩写,是一款基于GPL发布的、运行在类UNIX系统上的FTP服务器软件,具有安全、稳定、高速的特点。

服务器配置

这是我用的云服务器配置,1个核心2G内存

连接服务器

使用ssh工具远程服务器,一般IP就是主机名,登入用户就root,权限比一般用户高,端口服务器的控制台会写

输入密码(控制台会写或要求自己设置)
|

连接上是这样的

安装vsftpd

使用yum安装vsftpd

bash 复制代码
yum install -y "vsftpd*"

安装报错

解决办法换yum(这里是阿里yum)一条一条执行,最后一条是看看换成与否

bash 复制代码
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
yum repolist | awk '/repolist/{print$2}' | sed 's/,//'

换完重新安装,下图是安装完成

配置vsftpd

  1. 创建用户/密码文件
bash 复制代码
vi /etc/vsftpd/vsftpd_vuser.txt

写完用cat看看是这样的,一个用户一个密码的写,还有其他用户也是一样的写在这个文件

  1. 生成用户/密码数据库文件
bash 复制代码
db_load -T -t hash -f /etc/vsftpd/vsftpd_vuser.txt /etc/vsftpd/db_yonhu_mima.db
  1. 添加虚拟用户映射账号(这个用户不允许登入系统)

"GML"这个替换成要分享的ftp目录,"YON"这个是用户

要分享的ftp目录建议放这里/var/ftproot/

bash 复制代码
useradd -d "$GML" -s /sbin/nologin "$YON"
chown -R "$YON":"$YON" "$GML"
chmod 755 "$GML"
  1. 为虚拟用户建立PAM

这里是2段命令

bash 复制代码
touch /etc/pam.d/vsftpd.vu

echo "#%PAM-1.0
auth       required     pam_userdb.so db=/etc/vsftpd/db_yonhu_mima
account    required     pam_userdb.so db=/etc/vsftpd/db_yonhu_mima
" > /etc/pam.d/vsftpd.vu
  1. 修改vsftpd配置文件
bash 复制代码
vi /etc/vsftpd/vsftpd.conf

$YON 填步骤3的映射虚拟账号

有就修改没有就添加到末尾

模板:

anonymous_enable=NO

guest_enable=YES

guest_username=$YON

pam_service_name=vsftpd.vu

virtual_use_local_privs=YES

user_config_dir=/etc/vsftpd/vuser_conf

在这个目录 /etc/vsftpd/vuser_conf/创建与第一步的用户同名的文件,可以单独控制用户权限

bash 复制代码
vi /etc/vsftpd/vuser_conf/user1

允许下载文件

anon_world_readable_only=NO

download_enable=YES

禁止上传文件

anon_upload_enable=NO

write_enable=NO

禁止创建目录

anon_mkdir_write_enable=NO

禁止删除和重命名

anon_other_write_enable=NO

如果需要,设置用户的根目录(可选)

local_root=/var/ftproot

访问ftp服务

windows访问在此电脑地址栏输入 ftp://服务器ip

Linux访问 ftp 服务器ip

相关推荐
程序猿编码13 分钟前
一个授予普通进程ROOT权限的Linux内核级后门:原理与实现深度解析
linux·运维·服务器·内核·root权限
小夏子_riotous17 分钟前
openstack的使用——9. 密钥管理服务Barbican
linux·运维·服务器·系统架构·centos·云计算·openstack
梦想的旅途21 小时前
自动化运营如何防封?解析 API 协议下的拟人化风控算法
运维·自动化
AC赳赳老秦2 小时前
OpenClaw text-translate技能:多语言批量翻译,解决跨境工作沟通难题
大数据·运维·数据库·人工智能·python·deepseek·openclaw
w6100104662 小时前
CKA-2026-Service
linux·服务器·网络·service·cka
andeyeluguo2 小时前
docker总结
运维·docker·容器
w6100104662 小时前
cka-2026-etcd
运维·服务器·etcd·cka
航Hang*2 小时前
VMware vSphere 云平台运维与管理基础——第5章:VMware vSphere 5.5 高级特性
运维·服务器·开发语言·windows·学习·虚拟化
Mapleay2 小时前
Ubuntu 源的重要性!之 libgmp-dev 无法安装
linux·服务器·windows
Benszen2 小时前
Linux容器:轻量级虚拟化革命
java·linux·运维