# auto_Install_Vsftpd **Repository Path**: ye_lang/auto-install-vsftpd ## Basic Information - **Project Name**: auto_Install_Vsftpd - **Description**: CentOS7下一键配置vsftpd服务(以虚拟用户登录) 1、支持自定义安装(目录,端口.用户等) 2、支持快速创建虚拟用户 3、【删除虚拟用户】功能未编写 - **Primary Language**: Shell - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2023-02-09 - **Last Updated**: 2024-07-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: 一键安装, vsftpd, linux运维, CentOS ## README # auto_Install_Vsftpd #### 介绍 linux下一键安装及配置vsftpd服务 ,通过执行`install.sh`脚本,脚本会根据参数区域的值执行安装和配置vsftp服务,安装后会创建一个默认ftp用户wangxf密码wangxf@2023 1、支持自定义安装(更改脚本内参数值) 2、支持快速创建ftp虚拟用户,每个用户间相互独立 #### 特性 1、当前编写环境Centos7.9 测试环境Centos7.9(无yum)/redhat8.4(有yum) 已通过 2、自带vsftp3.0.2版本,安装会先使用本机yum进行安装,然后升级到安装包中的版本,安装vsftp是否成功取决于系统是否配置yum或者依赖条件是否满足,若安装失败请手动处理依赖问题 3、当前配置使用虚拟用户方式访问ftp(安全性更高),每个用户在指定的ftp根目录下有自己独立的文件夹作为根目录,且具备上传/下载/删除等完全权限,若需修改,请根更改【/etc/vsftpd/virtual_user_conf/】目录下对应用户的文件内的权限配置 #### 脚本执行过程: > 1、创建ftp映射账号 > 2、安装vsftpd > 3、根据参数编辑配置vsftp.conf文件 > 4、检查防火墙状态 关:跳过/开:配置 > 5、配置Selinux 关:跳过/开:配置 > 6、创建虚拟用户列表 > 7、创建虚拟用户并创建对应配置文件 > 8、利用db_load创建虚拟用户信息数据文件 > 9、配置pam文件 > 10、更改/etc/services文件中ftp端口 > 11、注册开机启动 > 12、注册ftpuseradd命令 #### 软件架构 软件架构说明 #### 安装教程 1、将下载好的仓库上传到服务器,并执行unzip 解压 2、进入解压目录,执行`chmod -R a+x ./*`授予执行权限 3、执行`./install.sh`开始安装(配置参数可使用默认配置,修改请查看下方使用说明,) #### 使用说明 1、自定义安装 自定义安装即自己指定参数后执行`./install.sh`进行安装,脚本中#set parameter部分参数,详解如下 > #ftp虚拟用户,即后续用来登录ftp的账号,该用户不会在操作系统上创建,后续可用通过快捷命令增加更多用户) > ftp_user='wangxf' > #ftp虚拟用户的密码 > ftp_user_passwd='test@2023' > #ftp根目录,后续所有用户都会以此为根进行存放 > ftpDir=/data/ye_lang > #ftp映射账号,即所有的虚拟用户会映射到该用户,脚本会自动创建该用户并禁止登录操作系统 > ftp_maps_user='ye_lang' > #ftp映射账号的密码 > ftp_maps_user_passwd='ye_lang@2023' > #ftp控制端口 > ftp_listen_port=21 > #ftp数据传输端口 > ftp_data_port=20 > #ftp被单模式最小端口 > pasv_min_port=30010 > #ftp被单模式最小端口 > pasv_max_port=30090 2、新增ftp虚拟用户 执行`ftpuseradd`命令 根据提示输入用户名和密码,脚本会自动创建该ftp虚拟用户的配置文件和ftp家目并在家目录下创建一个【虚拟用户名.md】的文件,然后自动重启ftp服务,等待完成后即可使用新用户登录ftp 3、删除ftp虚拟用户 功能未编写 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request