zoukankan      html  css  js  c++  java
  • centos安装FTP脚本

    一键安装脚本 只需要自己设置一下脚本开头的几个字符串参数即可

    #!/bin/bash
    port="38080"
    user="code"
    pass="123456"
    dir="/root/web"
    ip="123.125.114.144"
    yum -y install vsftpd*
    yum -y install pam*
    yum -y install db4*
    
    echo "install ok"
    rm -rf /etc/vsftpd
    mkdir /etc/vsftpd
    rm -f /etc/vsftpd/vsftpd.conf
    cat >/etc/vsftpd/vsftpd.conf<<EOF
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    ascii_upload_enable=YES
    ascii_download_enable=YES
    listen=YES
    listen_port=$port
    pam_service_name=vsftpd
    chroot_list_enable=YES
    pasv_promiscuous=YES
    pasv_enable=YES
    pasv_min_port=60000
    pasv_max_port=61000
    pasv_address=$ip
    use_localtime=YES
    dual_log_enable=YES
    
    pam_service_name=vsftpd
    guest_enable=YES
    guest_username=ftp
    user_config_dir=/etc/vsftpd/vuser_conf
    EOF
    
    rm -f /etc/vsftpd/chroot_list
    touch /etc/vsftpd/chroot_list
    rm -f /etc/vsftpd/vuser_passwd.txt
    cat >/etc/vsftpd/vuser_passwd.txt<<EOF
    $user
    $pass
    EOF
    
    rm -f /etc/vsftpd/vuser_passwd.db
    db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
    
    rm -f /etc/pam.d/vsftpd
    cat >/etc/pam.d/vsftpd<<EOF
    auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
    account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
    EOF
    
    rm -rf /etc/vsftpd/vuser_conf/
    mkdir /etc/vsftpd/vuser_conf/
    
    rm -f /etc/vsftpd/vuser_conf/code
    cat >/etc/vsftpd/vuser_conf/code<<EOF
    local_root=$dir
    allow_writeable_chroot=YES
    chroot_local_user=YES
    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
    EOF
    
    mkdir -p $dir
    chmod -R 777 $dir
    chown -R $user:$user $dir
    setenforce 0
    service vsftpd stop
    service vsftpd start
    systemctl stop vsftpd
    systemctl start vsftpd
    /sbin/iptables -D INPUT -p tcp --dport $port -j ACCEPT
    /sbin/iptables -I INPUT -p tcp --dport $port -j ACCEPT
    /sbin/iptables -D INPUT -p tcp --dport 60000:61000 -j ACCEPT
    /sbin/iptables -I INPUT -p tcp --dport 60000:61000 -j ACCEPT
    netstat -tunlp|grep $port

     如果出现如下错误

    500 OOPS: unrecognised variable in config file: allow_writeable_chroot

    说明你安装的vsftpd版本稍微有点旧 不支持变量allow_writeable_chroot 编辑/etc/vsftpd/vuser_conf/code文件  在allow_writeable_chroot前面加一个#就可以注释了

    然后重启一下vsfpds

    service vsftpd restart
    
    
  • 相关阅读:
    48. Rotate Image
    83. Remove Duplicates from Sorted List
    46. Permutations
    HTML5笔记
    18. 4Sum
    24. Swap Nodes in Pairs
    42. Trapping Rain Water
    Python modf() 函数
    Python min() 函数
    Python max() 函数
  • 原文地址:https://www.cnblogs.com/yuandaozhe/p/11120892.html
Copyright © 2011-2022 走看看