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
    
    
  • 相关阅读:
    Dos命令大全(收藏)
    asp.net读写Cookies
    asp.net文件下载
    使用存储过程分页
    (十)死锁检测算法
    poj1664
    一席话惊醒梦中人
    深入了解scanf()/getchar()和gets()/cin等函数
    小结《malloc与new之区别》
    (六)文件管理
  • 原文地址:https://www.cnblogs.com/yuandaozhe/p/11120892.html
Copyright © 2011-2022 走看看