首页 / 安装部署 / Centos一键安装部署vsftp

Centos一键安装部署vsftp

2016-10-31 14:22:13安装部署 阅读 2950
每次给不同的人配置ftp,都手工搞一次,决定简化这一步操作。
1、自动安装vsftp
2、自动设置被动模式、并打开iptables端口
3、支持自动创建ftp目录 帐号 密码
4、安装后,以后每次运行脚本,都可以用于创建用户密码目录
*由于权限设置方法不同,需要自己在完成后设置ftp目录的写入权限

*适合系统 centos 6

ftp.png


if [ ! -e "/etc/init.d/vsftpd" ];then

echo '是否需要安装vsftpd? 不需要请回n ,需要按任意键'
read inputvar

    if [ $inputvar != 'n' ];then

        yum -y install db4 db4-utils
        yum -y install vsftpd
        sed -i 's/anonymous_enable=YES/anonymous_enable=No/g' /etc/vsftpd/vsftpd.conf
        sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/g' /etc/vsftpd/vsftpd.conf
        sed -i 's/#ascii_upload_enable=YES/ascii_upload_enable=YES/g' /etc/vsftpd/vsftpd.conf
        sed -i 's/#ascii_download_enable=YES/ascii_download_enable=YES/g' /etc/vsftpd/vsftpd.conf
        sed -i 's/#xferlog_file=\/var\/log\/xferlog/xferlog_file=\/var\/log\/vsftpd.log/g' /etc/vsftpd/vsftpd.conf
        echo "guest_enable=YES" >> /etc/vsftpd/vsftpd.conf
        echo "guest_username=ftp" >> /etc/vsftpd/vsftpd.conf
        echo "user_config_dir=/etc/vsftpd/vuser_conf" >> /etc/vsftpd/vsftpd.conf
        touch /var/log/vsftpd.log
        touch /etc/vsftpd/chroot_list
        echo ftp >> /etc/vsftpd/chroot_list
        touch /etc/vsftpd/vuser_passwd.txt
        mkdir /etc/vsftpd/vuser_conf/
        echo "auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd" > /etc/pam.d/vsftpd
        echo "account required pam_userdb.so db=/etc/vsftpd/vuser_passwd" >>  /etc/pam.d/vsftpd

        echo "pasv_max_port=6666" >> /etc/vsftpd/vsftpd.conf
        echo "pasv_min_port=5555" >> /etc/vsftpd/vsftpd.conf

        /etc/init.d/vsftpd restart

        iptables -I INPUT -p tcp --dport 21 -j ACCEPT
        iptables -I INPUT -p tcp --dport 5555:6666 -j ACCEPT
        /etc/init.d/iptables save
        /etc/init.d/iptables start
    else
        echo '已取消安装vsftpd'

    fi

fi

echo '是否需要创建ftp目录 帐户 密码?'
read inputvar2

if [ $inputvar2 != 'n' ];then
    echo '请输入ftp目录'
    read ftppath
    if [ ! -d "$ftppath" ]; then
      mkdir -p $ftppath
    fi
    echo '请输入ftp帐号'
    read account
    echo '请输入ftp密码'
    read pwd
    echo $account >> /etc/vsftpd/vuser_passwd.txt
    echo $pwd >> /etc/vsftpd/vuser_passwd.txt
    db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
    touch /etc/vsftpd/vuser_conf/$account
    echo local_root=$ftppath >> /etc/vsftpd/vuser_conf/$account
    echo write_enable=YES >> /etc/vsftpd/vuser_conf/$account
    echo anon_umask=022 >> /etc/vsftpd/vuser_conf/$account
    echo anon_world_readable_only=NO >> /etc/vsftpd/vuser_conf/$account
    echo anon_upload_enable=YES >> /etc/vsftpd/vuser_conf/$account
    echo anon_mkdir_write_enable=YES >> /etc/vsftpd/vuser_conf/$account
    echo anon_other_write_enable=YES >> /etc/vsftpd/vuser_conf/$account
    service vsftpd restart
    
    echo '创建完成,请自行设置ftp目录的权限以保证ftp帐号连接时正常读写'
    
    
else
echo '已取消创建ftp目录帐号密码'
fi

本文《Centos一键安装部署vsftp》由爱思考吧 isres.com 分享,转载请注明出处。本文网址:https://www.isres.com/bushu/4.html

本站主要收集测评能够节省时间和提升效率的软件工具并分享使用与学习的过程和感受,任何情况下用户都需遵守所使用软件资源的相关协议。与《Centos一键安装部署vsftp》有关的本站文章及资源仅供个人学习交流使用,相关资源请下载后24小时内删除,请勿用于其它用途,因此产生的任何问题由您自行承担。

猜你喜欢

  • Centos kvm以及kvm gui管理工具部署

    yum install -y qeum-kvm qemu-kvm-tools virt-manager libvirt virt-install yum -y install https://dl....

    2023-04-25 12:16:26 562
  • 2分钟快速安装部署mysql5.7

    今天分享mysql5.7在Linux的安装部署,服务器运维工作都会涉及到安装部署mysql5.7。 mysql5.7在Linux的安装一般有三个方法,分别是: 1、源码编译安装 2、rpm包安装 3、...

    2023-04-24 11:53:13 561
  • 显卡又少又贵,盘点所有拥有12GB以上显存的显卡型号清单

    显卡又少又贵,盘点所有拥有12GB以上显存的显卡型号清单

    在当今显卡价格高涨的时期,了解各种型号的显卡以及它们的性能和显存规格变得尤为重要。特别是对于那些需要进行人工智能工作的用户来说,显卡是不可或缺的工具。本文将向大家介绍所有显存大于等于12GB的显卡,...

    2023-05-17 19:22:47 1515
  • linux下syncthing同步工具的部署记录,自启动

    创建用于运行程序的普通用户 useradd -m -s /bin/bash syncthing_user passwd syncthing_user #创建密码 安装:解压后放到相应目录即可,这里wg...

    2018-11-02 14:56:33 7671
  • 自用实践两台电脑共用一个音响的方案

    自用实践两台电脑共用一个音响的方案

    家里有两台电脑,其中有一台不常用的也只有打游戏联机的时候才开,不想单独配一个音箱,于是必须实践两台电脑共用一个音响的方案。 本次方案就是加一条音频线,连接两台电脑,效果如下: 一般主板都有音频输入和...

    2023-09-07 09:42:20 1305
  • php7编译安装mcrypt

    最近在部署一个第三方消息的时候,发现需要 mcrypt_get_block_size ,因此产生了 mcrypt的编译安装. cd /usr/tmp wget http://pecl.php.net...

    2023-04-25 12:23:02 492
  • Linux安装php imagick扩展

    yum install autoconf gcc gcc-c++ ImageMagick-devel wget https://pecl.php.net/get/imagick-3.4.4.tgz ...

    2023-03-23 16:18:16 534
  • pytroch AI机器学习环境部署,RTX3080显卡

    pytroch AI机器学习环境部署,RTX3080显卡

    网上关于机器学习环境部署的文章资料很多,有些可能只是一部分过程,有些则写得很长很长,遇到一些比较好的但要专业知识才能看得懂。 个人曾经看了一个80分钟环境部署视频,事实上只需要一页文档就能说清楚的,视...

    2023-04-24 12:37:24 663