vsftp管理系统

#!/bin/bash
config_path=/work/ftp/vsftpd_config
cd /work/ftp
cat screen.txt
read -p "请选择您要做的操作:" caozuo   
case $caozuo in    
0)
read -p "请输入共享文件夹名字:" ftpdocument
read -p "请输入原来的账号:" ftpuser
read -p "请输入新的账号:" ftpusernew
read -p "请输入新的密码:" ftppasswdnew
cd /work/ftp
if [  -d $ftpdocument ]
then
   cd ${config_path}/vuser_conf 
   modifile=`grep -rn $ftpdocument ./$ftpuser`
   if [ ! -f $ftpusernew ] || [ "$ftpusernew"x = "$ftpuser"x ]
   then   
       if [ -f $ftpuser ] && [ -n "$modifile" ] 
       then
       mv $ftpuser $ftpusernew >/dev/null 2>&1
       cd ${config_path}
       num=`cat -n vuser_passwd.txt | grep $ftpuser | awk ‘{print $1}‘ | awk ‘NR==1{print}‘`
       num=$(( $num + 1 ))
       sed -i ‘s/‘"$ftpuser"‘/‘"$ftpusernew"‘/g‘ vuser_passwd.txt
       sed -i ‘‘"${num}s"‘/.*/‘"$ftppasswdnew"‘/g‘ vuser_passwd.txt  
       db_load -T -t hash -f /work/ftp/vsftpd_config/vuser_passwd.txt /work/ftp/vsftpd_config/vuser_passwd.db
   echo "`date` administrator change the username $ftpuser with newuser $ftpusernew and new password $ftppasswdnew" >> ${config_path}/adminedit.log
       else 
       echo "共享文件夹初始账号输入错误"
       fi
else
echo "账号已经存在了,请重新输入新账号"
fi
else
  echo "该共享文件夹不存在"
fi
;;
1)
read -p "请输入你想要共享的文件夹名字:" ftpdocument
read -p "请输入账号:" ftpuser
read -p "请输入密码:" ftppasswd
cd /work/ftp
if [ ! -d $ftpdocument ]
then
   mkdir $ftpdocument
   cd /work/ftp/vsftpd_config/vuser_conf
   if [ ! -f $ftpuser ]
   then
   echo $ftpuser>>/work/ftp/vsftpd_config/vuser_passwd.txt
   echo $ftppasswd>>/work/ftp/vsftpd_config/vuser_passwd.txt
   db_load -T -t hash -f /work/ftp/vsftpd_config/vuser_passwd.txt /work/ftp/vsftpd_config/vuser_passwd.db
   cd /work/ftp/vsftpd_config/vuser_conf
   sudo touch $ftpuser
   echo "local_root=/work/ftp/$ftpdocument
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES">>$ftpuser
echo "`date` administrator  build new focument $ftpdocument with user $ftpuser" >> ${config_path}/adminedit.log
    else
    cd /work/ftp
rm -rf $ftpdocument
    echo "该用户名已经存在,请重新输入"
fi
else
   echo "共享文件夹已经存在,请重新输入"
fi 
;;
2)
read -p "请输入你要查询的用户名:" ftpuser
cd ${config_path}
num=`cat -n vuser_passwd.txt | grep $ftpuser | awk ‘{print $1}‘ | awk ‘NR==1{print}‘`
num=$(( $num + 1 ))
cd /work/ftp/vsftpd_config/vuser_conf
   if [  -f $ftpuser ]
   then
   echo "该用户的密码"
   cd ..
   sed -n ‘‘${num}‘,1p‘ vuser_passwd.txt
   echo "该用户对应的共享文件夹"
   cd vuser_conf
   cat $ftpuser | awk ‘NR==1{print}‘ | awk -F  "/" ‘{print $4}‘
   else
   echo "该用户名不存在"
   fi
;;
3)
read -p "请输入你要删除的用户(对应的共享文件夹也会被删除):" ftpuser
cd ${config_path}
num=`cat -n vuser_passwd.txt | grep $ftpuser | awk ‘{print $1}‘ | awk ‘NR==1{print}‘`
cd vuser_conf
if [  -f $ftpuser ]
then
filename=`cat $ftpuser | awk ‘NR==1{print}‘ | awk -F  "/" ‘{print $4}‘`
cd ..
sed -i ‘‘${num}‘d‘ vuser_passwd.txt 
sed -i ‘‘${num}‘d‘ vuser_passwd.txt
cd /work/ftp
rm -rf $filename
cd ${config_path}/vuser_conf
rm -rf $ftpuser
echo "`date` administrator delete the user $ftpuser" >> ${config_path}/adminedit.log
else
echo "该用户名不存在"
fi
;;
4)
cd ${config_path}/vuser_conf
ls -l
;;
5)
cd /var/log
cat vsftpd.log
;;
6)
read -p "请输入你要查询日志的用户名:" ftpuser
cd /var/log
cat vsftpd.log | grep $ftpuser
;;
7)
cat ${config_path}/adminedit.log
;;
*) 
        echo "请重新输入选择的操作" 
;; 
esac

客户端脚本

#!/bin/bash
read -p "please input the ftp user name:" ftpuser
read -p "please input the user password:" ftppasswd
read -p "please input the document name you want to get:" ftpdocument
ftp -i -in << !
open 192.168.100.184
user $ftpuser $ftppasswd
passive
bin
mget $ftpdocument
bye
!
时间: 2024-08-05 16:14:56

vsftp管理系统的相关文章

服务器搭建2 VSFTP搭建FTP服务器

FTP服务器是平时应用最为广泛的服务之一.VSFTP是Very Secure FTP的缩写,意指非常安全的FTP服务.VSFTP功能强大,通过结合本地系统的用户认证模块及其多功能的配置项目,可以快速有效的搭建强大的多用户FTP服务. 首先我们考虑搭建FTP服务需要关注的都有哪些方面?比如我们最经常关注的有:  1.如何添加FTP用户?  2.如何临时冻结某FTP用户?  3.FTP用户登入后的默认目录?是否可以改变?  4.如何锁定FTP用户可访问的目录范围?  5.FTP用户可以有哪些访问权限

阿里云CentOS中vsftp安装、配置、卸载

1--卸载 查看当前服务器中的vsftpdrpm -qa|grep vsftpd 例如结果为:vsftpd-2.2.2-13.el6_6.1.x86_64执行卸载rpm -e vsftpd-2.2.2-13.el6_6.1.x86_64返回:卸载时自动备份vsftp的用户列表文件warning: /etc/vsftpd/vsftpd.conf saved as /etc/vsftpd/vsftpd.conf.rpmsavewarning: /etc/vsftpd/user_list saved

学生管理系统(jsp+mysql)

1.实验目的 通过使用 Java Web 技术设计一个简单的数据库管理系统,了解前台页面和后 台编辑页面的区别,掌握 Web 服务器与 MySQL 数据库的连接和数据库操作的方 法,掌握使用 JSP 编写后台代码的方法. 2.实验内容和要求 开发一个学生管理系统,完成学生信息的查看.增加.删除和修改等功能. 对于客户端增加和修改信息页面,要使用 javascript 进行必要的数据的非空验证. 自行添加一些 css,使得页面和字体更加美观. 3.实验步骤及实验结果 (1)打开 MySQL,新建一

Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限

0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之权限管理系统(2) 功能及实体设计 3 Asp.Net Core 项目实战之权限管理系统(3) 通过EntityFramework Core使用PostgreSQL 4 Asp.Net Core 项目实战之权限管理系统(4) 依赖注入.仓储.服务的多项目分层实现 5 Asp.Net Core 项目实

探讨之医院门诊管理系统

需求:医院为私人医院,规模在50人左右,目前该医院已经接入全市his系统,但是想私下建立一个门诊管理系统,包括挂号,医生就诊,之后的各科室检查,这其中又包括检查项目的缴费,药品的消费,已知该医院没有自己的数据库.怎么实现一个系统,使药品,挂号,就诊检查. 我自己的设想: 建立自己的药品进销存的数据库管理 建立自己的财务系统,这其中包括会计的财务出账,门诊挂号,检查等费用的录入 是否建立工作流程?方便管理,已知每个医生都有一台电脑 请老师和读者给提供一些有价值的建议,谢谢!!!

centos yum安装ftp 及解决vsftp错误500 OOPS: cannot change directory:/home/**

centos yum安装ftp 及解决vsftp错误500 OOPS: cannot changedirectory:/home/**   1.查看服务器有没有安装ftp包 rpm -qa |grep vsftp 2.yum  安装 yum -y install vsftpd 3.启动vsftp的服务 service vsftpd start 4.关闭防火墙 service iptables stop 5.测试匿名访问 修改配置文件 vsftpd.conf [[email protected]

Linux下安装禅道管理系统7.2

提示:禅道是用PHP开发的,只要安装一个MySQL,找一个能跑PHP的web应用服务器,把禅道源代码放到里面,然后按步骤安装就可以了.不一定要用XAMPP,XAMPP只是把PHP环境和MySQL都集成了而已. 禅道简介 禅道项目管理软件(ZenTaoPMS)是一款国产的,基于ZPL协议,开源免费的项目管理软件,它集产品管理.项目管理.测试管理于一体,同时还包含了事务管理.组织管理等诸多功能,是一款功能完备的项目管理软件,完美地覆盖了项目管理的核心流程,是中小型企业项目管理的首选. 禅道项目管理软

自写信息管理系统——C实现

信息管理系统 简介: 该管理系统分为三个权限:学生,老师,管理员 用双向链表实现,文件储存,有账号密码功能. 密码实现MD5加密,较难破解 实现了链表添加,查找,排序,删除等基本操作 共分为6个文件 5个.cpp文件  1个.h文件 下面上代码 : mian.cpp: #include<stdio.h> #include<math.h> #include<string.h> #include<conio.h> #include<stdlib.h>

今天研究了一下手机通信录管理系统(C语言)

题目:手机通信录管理系统 一.题目要求 二.需求分析 三.设计步骤/编写代码 四.上机/运行结果 五.总结 一.题目要求 模拟手机通信录管理系统,实现对手机中的通信录进行管理操作.功能要求: (1)查看功能:A:办公,B:个人,C:商务 (2)增加联系人:录入新数据(姓名,电话,分类,邮箱:weiyang,153********,个人,[email protected]) (3)修改功能:选中某人的姓名,可对其数据进行修改操作 (4)删除功能:选中某人姓名,可对此人的相应数据进行删除,并自动调整