`
wbj0110
  • 浏览: 1604864 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Linux系统vsftpd下建立虚拟用户的脚本实现

阅读更多
在添加vsftpd虚拟帐户的时候,需要进行很多步骤的配置,包括建立文件夹,建立用户等等。
这样用一条一条命令实现,很费力气,不如使用脚本来得更快一点。
下面这些是我做的一个建立feixiang这个虚拟帐户的简单脚本。为了让更多人看得懂,我写的很简单,
当然技术也是有限的。你只有把下面的文本保存好,使用chmod u+x filename,然后运行,就OK了。
#!/bin/sh
#添加虚拟的用户帐户!
touch /tmp/ftpuser_list
echo "feixiang
1985731
" >/tmp/ftpuser_list
rm -rf /etc/vsftpd_login.db
db_load -T -t hash -f /tmp/ftpuser_list /etc/vsftpd_login.db
chmod 600 /etc/vsftpd_login.db
touch /etc/pam.d/ftp.vu
echo "auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login" >/etc/pam.d/ftp.vu
#添加本地计算机用户名和密码;
useradd -d /ftp -s /sbin/nologin vsftp
chown -R vsftp.vsftp /ftp
touch /tmp/new_ftppwd
echo "vsftp:1985731" >/tmp/new_ftppwd
chpasswd < /tmp/new_ftppwd
#配置vsftpd.conf全局设置:
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak.00
echo "anonymous_enable=NO
anonymous_enable=NO
#本地帐户配置!
local_enable=YES
local_umask=022
dirmessage_enable=YES
connect_from_port_20=YES
#启用来宾帐号,也就是虚拟用户使用的帐号的权限用户。
guest_enable=YES
guest_username=vsftp
user_config_dir=/etc/vsftpd/user_config_dir
local_root=/www
write_enable=YES
pam_service_name=ftp.vu
userlist_enable=YES
listen=YES
chroot_local_user=YES
tcp_wrappers=YES
#ftp用户日志配置!(双日志方案!)
xferlog_enable=YES
xferlog_std_format=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log" >/etc/vsftpd/vsftpd.conf
#配置虚拟用户名的设置:
mkdir -p /etc/vsftpd/user_config_dir
mkdir -p /www/feixiang
chmod -R 777 /www/feixiang
touch /etc/vsftpd/user_config_dir/feixiang
echo "anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/www/feixiang
anon_mkdir_write_enable=YES" >/etc/vsftpd/user_config_dir/feixiang
#重启vsftpd服务器,就OK了。
service vsftpd restart
#feixiang 这个帐户,就弄好了。
###################################################################
如果你要添加新的虚拟用户,可以在这个文件里面加入新的用户:
/tmp/ftpuser_list然后保存。(注意ftpuser_list的格式。)
feixiang #用户名
1985731  #密码
username #用户名
passwd   #密码
记住中间没有空行和空格。
再使用:
rm -rf /etc/vsftpd_login.db
db_load -T -t hash -f /tmp/ftpuser_list /etc/vsftpd_login.db
就可以添加新的用户了。添加新用户后:不用重启服务,就可以生效了
分享到:
评论

相关推荐

    vsftpd_ftp服务器Linux虚拟用户配置(超详细)

    本教程将详细讲解如何在Linux环境下配置VSFTPD,实现FTP服务器的虚拟用户功能,以便为不同的用户提供独立的权限和目录访问。虚拟用户允许我们通过用户名和密码认证,而这些信息并不直接与系统的实际用户账户对应,...

    使用pam_mysql和VSFTPD实现ftp虚拟账号

    ### 使用pam_mysql和VSFTPD实现FTP虚拟账号 #### 一、VSFTPD的特点...通过以上步骤,我们可以成功地使用pam_mysql和VSFTPD实现基于虚拟账号的FTP服务,不仅增强了安全性,还提供了灵活的用户管理和高性能的服务体验。

    vsftpd-3.0.3-12-arm64.deb

    因此,它被广泛地用于各种Linux系统的FTP服务器的实现。 使用vsftpd_3.0.3-12_arm64.deb软件包,用户可以将FTP服务器配置为按照不同的权限虚拟用户,以及给用户对应的上传、下载权限。vsftpd还提供了插件接口,可以...

    Linux的虚拟用户

    2. **创建用户配置文件**:对于每个虚拟用户,可以在`/etc/vsftpd/user_conf`目录下创建一个单独的配置文件,以指定更具体的权限和设置。 - 例如,可以创建`/etc/vsftpd/user_conf/vuser`文件,并在其中定义该用户...

    Shell脚本搭建FTP服务器(vsftpd)

    总结来说,这个Shell脚本提供了一种自动化搭建FTP服务器(使用vsftpd)的方法,包括安装必要的软件、创建用户数据库、配置PAM和vsftpd服务,以及设定用户权限。这个脚本适用于Ubuntu 13和Linux Mint 15,但对于其他...

    linux一键全自动部署配置vsftp脚本(可自定义多用户,centos7-8/redhat7-8测试通过)

    linux下一键安装及配置vsftpd服务 ,通过执行install.sh脚本,脚本会根据参数区域的值执行安装和配置vsftp服务,安装后会创建一个默认ftp用户wangxf密码wangxf@2023 1、支持自定义安装(更改脚本内参数值) 2、支持...

    linux系统工程师教程.rar

    最后,教程介绍了Linux下的基本编程知识,包括Shell脚本编写、C语言编程基础以及与系统接口交互的方法。这对于进一步开发系统工具或自动化任务是必要的。 通过这个Linux系统工程师教程,学习者可以从零开始逐步成长...

    Linux FTP服务搭建

    第5步,创建虚拟用户目录,根据前文提示,ftpvu1和ftpvu2的家目录分别是/var/ftp/virtual/ftpvu1和/var/ftp/virtual/ftpvu1,在开始启动vsFTPd服务器之前,应该先创建这两个目录: [root@localhost ~]#mkdir /var/...

    Centos下使用vsftpd安装ftp服务v1.2

    创建`/etc/vsftpd/user_conf`目录,并为每个虚拟用户创建单独的配置文件,如`/etc/vsftpd/user_conf/ftpuser`,指定权限。 5. 常见问题及解决方法 5.1 FTP连接不上 检查防火墙设置,确保20(数据连接端口)和21...

    RedHat_Enterprise_Linux6_上安装及配置vsftp

    ### Red Hat Enterprise Linux 6 上安装与配置 vsftpd #### 安装 vsftpd 在 Red Hat Enterprise Linux 6 (RHEL 6) 中安装 vsftpd 需要几个步骤来完成。vsftpd 是一个非常受欢迎且功能强大的 FTP 服务器软件,以其...

    vsftp搭建mysql管理虚拟用户.pdf

    1. Linux系统环境下搭建VSFTP服务:这部分内容介绍了如何在Linux系统中安装VSFTP服务。包括使用rpm包安装和源代码编译安装两种方法。具体使用的是vsftpd-2.2.2-11.el6.i686.rpm包,并通过/etc/init.d/vsftpd脚本启动...

    linux安装脚本和相关文件

    总结,这个"Linux安装脚本和相关文件"压缩包旨在帮助用户便捷地在Linux环境中搭建一套包含数据库、服务治理、缓存、消息队列、文件传输和Web服务的基础架构。通过精心设计的脚本,可以简化安装流程,提高运维效率,...

    Linux服务器操作系统

    8. **远程访问与版本控制**:SSH(Secure Shell)远程登录和文件传输,以及Git或SVN版本控制系统在Linux环境下的使用。 9. **故障排查**:学会阅读和理解系统日志(/var/log),使用strace、gdb等工具进行问题定位...

    操作系统linux篇

    4. **系统管理**:理解Linux用户和组管理,学习系统服务的启动与管理,如使用Systemd或传统的init系统。掌握防火墙配置、软件包管理、更新与安全维护。 5. **网络服务**:设置和管理常见的网络服务,如HTTP服务器...

    virtualmin-vsftpd.wbm.gz

    VSFTPD以其高度的可配置性和安全性著称,支持多种安全特性,如SSL/TLS加密、限制用户权限、强制用户在指定目录下工作等。对于VirtualMin用户而言,集成VSFTPD意味着可以通过Web界面方便地配置和管理FTP服务,包括...

    linux实战VSFTP[归纳].pdf

    在Linux环境中,VSFTPD提供了控制FTP访问的强大功能,包括限制用户权限、使用虚拟用户以及实现chroot隔离等。以下是对VSFTPD配置和使用的详细解释: 1. **安装与启动**: - VSFTPD可以从官方网站下载,然后解压缩...

    Red Hat Linux 网络和系统管理员

    2. **系统管理**: 掌握基本的Linux命令行操作,如文件管理(创建、删除、复制、移动)、权限管理(用户和组、chmod、chown)、进程管理(ps、top、kill、nohup)以及软件包管理(yum、dnf用于安装、更新和卸载软件)...

    Linux课程设计文档

    Linux课程设计的核心目标是让学生掌握在Linux环境下进行网络管理和系统配置的实际技能,同时理解其多用户、多任务特性的优势。通过实践,学生能够提升问题解决能力和系统运维水平,为未来的工作或研究打下坚实基础。...

    vsftp手工编译及配置虚拟用户过程[文].pdf

    这通常涉及编辑`vsftpd.conf`配置文件,启用`virtual_users`和`user_config_dir`等选项,以及创建对应的用户数据库和认证脚本。 总结来说,手工编译和配置VSFTPD涉及下载源代码、解决编译依赖、初步配置、安装以及...

Global site tag (gtag.js) - Google Analytics