当前位置: 首页 > news >正文

建立虚拟用户的账号数据库并为vsftpd服务器添加虚拟用户支持的脚本

脚本如下

#!/bin/bash

# 检查是否以 root 用户运行
if [ "$EUID" -ne 0 ]; then
    echo "不是root运行个毛呢。"
    exit 1
fi

# 安装所需软件包
yum install -y vsftpd db4-utils

# 备份原始配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

# 创建虚拟用户账号文件
cat <<EOF > /etc/vsftpd/virtual_users.txt
testuser1
testpassword1
testuser2
testpassword2
EOF

# 生成虚拟用户数据库文件
db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db
chmod 600 /etc/vsftpd/virtual_users.db

# 创建 PAM 认证文件
cat <<EOF > /etc/pam.d/vsftpd.vu
auth       required     pam_userdb.so db=/etc/vsftpd/virtual_users
account    required     pam_userdb.so db=/etc/vsftpd/virtual_users
EOF

# 修改 vsftpd 配置文件
cat <<EOF > /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd.vu
guest_enable=YES
guest_username=ftp
user_sub_token=\$USER
local_root=/var/ftp/\$USER
userlist_enable=YES
tcp_wrappers=YES
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
EOF

# 创建虚拟用户映射的系统用户目录
mkdir -p /var/ftp/testuser1
mkdir -p /var/ftp/testuser2
chown -R ftp:ftp /var/ftp

# 重启 vsftpd 服务
systemctl restart vsftpd
systemctl enable vsftpd

echo "虚拟用户账号数据库已建立,vsftpd 服务器已添加虚拟用户支持。"
echo "虚拟用户: testuser1, testuser2"
echo "对应密码: testpassword1, testpassword2"    

相关文章:

  • vcd波形转仿真激励
  • JS自动装箱(Auto-boxing)机制深度解析
  • 基于ESP32和TinyUSB实现虚拟U盘功能的完整指南
  • Android实践开发制作小猴子摘桃小游戏
  • Qt 线程和 QObjects
  • [新闻.AI]国产大模型新突破:阿里开源 Qwen2.5-VL-32B 与 DeepSeek 升级 V3 模型
  • rosbag|ROS中.bag数据包转换为matlab中.mat数据类型
  • [250325] Claude AI 现已支持网络搜索功能!| ReactOS 0.4.15 发布!
  • libc2.27版本下的tcache
  • 【CXX-Qt】2.2 生成的 QObject
  • java项目之基于ssm的高校共享单车管理系统(源码+稳定)
  • 数据结构与算法-数据结构-线段树1(单点修改,区间查询):最大数,你能回答这些问题吗
  • XSS漏洞靶场
  • C++对象数组的使用
  • Web前端之UniApp、Taro、ReactNative和Flutter的区别
  • Python Django系列—多数据库
  • 信息集译码算法(ISD)
  • C++11QT复习 (五)
  • Lambda 和 Stream 从 0 到 1,从基础到实战
  • Go 语言当中的反射机制
  • 广西大兴建设有限公司网站/网站展示型推广
  • 网站风格定位有哪些/seo流量的提升的软件
  • 外贸自建站平台怎么选/seo优化排名教程
  • wordpress banner文字/seo关键词排名优化app
  • 九江县建设规划局网站/平台推广方式方法是什么
  • 网站建设及维护费算业务宣传费/建设官网的网站首页