zoukankan      html  css  js  c++  java
  • ftp的自动部署以及添加虚拟账户的脚本

    #!/bin/bash
    #本脚本为自动化安装vsftp,使用虚拟用户认证登录ftp上传下载文件
    echo ======================================================
    read -p "请输入ftp用户:" ftp_user
    if [ `echo ${#ftp_user}` -eq 0 ];then
    ftp_user=dyc
    fi
    echo ======================================================
    read -p "请输入ftp密码:" ftp_passwd
    if [ `echo ${#ftp_passwd}` -eq 0 ];then
            ftp_passwd=dyc
    fi
    echo ======================================================
    read -p "请输入用户数据存放目录:" ftp_data
    if [ `echo ${#ftp_data}` -eq 0 ];then
            ftp_data=/data/ftp
    fi
    echo ======================================================
    #vsftpd软件
    yum -y install vsftpd
    #生成虚拟用户认证数据文件
    yum -y install db4-utils
    mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak
    #配置vsftpd
    cat > /etc/vsftpd/vsftpd.conf<<EOF
    listen=YES
    anonymous_enable=NO
    dirmessage_enable=YES
    xferlog_enable=YES
    xferlog_file=/var/log/vsftpd.log
    xferlog_std_format=YES
    chroot_list_enable=YES
    chroot_list_file=/etc/vsftpd/chroot_list
    chroot_local_user=YES
    guest_enable=YES
    guest_username=ftp
    user_config_dir=/etc/vsftpd/vsftpd_user_conf
    pam_service_name=vsftpd.vu
    local_enable=YES
    EOF
    cd /etc/vsftpd
    #创建用户文件
    touch /etc/vsftpd/user.txt
    echo $ftp_user >> /etc/vsftpd/user.txt
    echo $ftp_passwd >> /etc/vsftpd/user.txt
    #将用户密码生成密匙文件
    db_load -T -t hash -f user.txt /etc/vsftpd/vsftpd_login.db
    chmod 600 /etc/vsftpd/vsftpd_login.db
    touch /etc/pam.d/vsftpd.vu
    #区别系统是32位还是64位
    if ls -l /|grep -c lib64;then
    echo "auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login">> /etc/pam.d/vsftpd.vu
            echo "account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login">> /etc/pam.d/vsftpd.vu
    else
            echo "auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login">> /etc/pam.d/vsftpd.vu
            echo "account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login">> /etc/pam.d/vsftpd.vu
    fi
    #限制虚拟用户切换目录
    touch /etc/vsftpd/chroot_list
    echo $ftp_user >>/etc/vsftpd/chroot_list
    #配置虚拟用户的配置文件
    mkdir -p /etc/vsftpd/vsftpd_user_conf
    cd /etc/vsftpd/vsftpd_user_conf
    cat > $ftp_user<<EOF
    write_enable=YES
    anon_world_readable_only=NO
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
    EOF
    echo "local_root="$ftp_data>>$ftp_user
    #创建数据目录
    mkdir -p $ftp_data
    chown -R ftp:root $ftp_data
    chmod o+rw $ftp_data
    /etc/init.d/vsftpd restart

    摘自:http://blog.51cto.com/lovesource/1574023

  • 相关阅读:
    linux JAVA JDK环境配置
    逍遥语录
    php常用函数集
    使用uGUI系统玩转标准俄罗斯方块
    Unity3D中uGUI事件系统简述及使用方法总结
    JAVA笔记-如何将百万级数据高效的导出到Excel表单
    简单的异步Socket实现——SimpleSocket_V1.1
    Netty4.x中文教程系列(六) 从头开始Bootstrap
    Unity3D中简单的C#异步Socket实现
    基于Spring框架的简单多数据源切换解决办法
  • 原文地址:https://www.cnblogs.com/new-journey/p/10114223.html
Copyright © 2011-2022 走看看