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

  • 相关阅读:
    WML
    CocoaPods install 安装
    刷新控件,审核
    UIImageView
    课堂练习——返回一个一维整数数组中最大子数组的和
    团队与题目介绍
    学习进度条05
    软件工程结对作业02
    课堂练习——返回一个整数数组中最大子数组的和
    学习进度条04
  • 原文地址:https://www.cnblogs.com/new-journey/p/10114223.html
Copyright © 2011-2022 走看看