vsftpd一键安装脚本
2019-07-26 22:48
1751 查看
此脚本我线上环境一键安装脚本,可以直接在Centos服务器上一键安装vsftpd服务并开通ftp账户。此脚本只供本人线上使用,放到此博文方便自己查阅。网友切不可直接复制到自己的线上直接套用,使用前一定要多测试。如有套用使用造成损失,与本博主无关。
#/bin/bash ###脚本使用说明 #bash 脚本名称 ftp账户 ftp密码 虚拟用户 #sh -x install-vsftpd.sh xiaowu xiaowu666 www ##01vsftpd用户 user=$1 pass=$2 codeuser=$3 ##02安装和配置文件如下 /usr/bin/yum install vsftpd -y cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak echo " " > /etc/vsftpd/vsftpd.conf cat << EOF >/etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES xferlog_file=/var/log/xferlog listen=YES listen_port=2038 pasv_min_port=2037 pasv_max_port=2039 pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES check_shell=YES chroot_local_user=YES guest_enable=YES guest_username=$codeuser virtual_use_local_privs=YES user_config_dir=/etc/vsftpd/extra EOF #03判断code用户是否存在,不存在创建 /usr/bin/id $3 >/dev/null if [ $? -eq 1 ];then $(useradd ${codeuser} -s /sbin/nologin -M) sed -i "s#/home/$codeuser#/data/www#g" /etc/passwd else echo "user have exsited" sed -i "s#/home/$codeuser#/data/www#g" /etc/passwd fi ##04创建用户权限 [ ! -d /etc/vsftpd/extra ]&&mkdir /etc/vsftpd/extra -p cat << EOF >/etc/vsftpd/extra/$1 local_root=/data/www write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES idle_session_timeout=600 data_connection_timeout=120 max_clients=3 max_per_ip=3 local_max_rate=500000 EOF ##05添加用户信息 cat <<EOF >/etc/vsftpd/vsftpd_login $user $pass EOF ##06加密生成密码文件 /usr/bin/db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db ##07将密码文件写入pam.d认证文件中 cat <<EOF >/etc/pam.d/vsftpd auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login EOF chown -R ${3}.${3} /data/www ##08启动vsftpd /etc/init.d/vsftpd restart ##09 iptables 放开vsftpd访问权限 #/etc/init.d/iptables stop modprobe nf_conntrack_ftp /sbin/iptables -F -t filter /sbin/iptables -F -t nat /sbin/iptables -P OUTPUT ACCEPT #Enable Native Network Transfer /sbin/iptables -A INPUT -i lo -j ACCEPT #Accept Established Connections /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT /sbin/iptables -A INPUT -p tcp --dport 12570 -j ACCEPT /sbin/iptables -A INPUT -p tcp --dport 39698 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m multiport --dports 2038,443,80 -j ACCEPT /sbin/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 2037:2050 -j ACCEPT /sbin/iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 5/s --limit-burst 10 -j ACCEPT /sbin/iptables -A INPUT -p tcp -s 11.06.87.85,11.14.95.45,21.44.68.40 --dport 2038 -j ACCEPT #ICMP iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 5/s --limit-burst 10 -j ACCEPT /etc/init.d/iptables save /etc/init.d/iptables restart /etc/init.d/vsftpd restart
相关文章推荐
- Centos 6.4上面用Shell脚本一键安装vsftpd
- Redis一键编译安装脚本
- shell脚本一键安装kafka集群
- 一键安装smokeping脚本
- Centos7下安装Aria2教程 之 Aria2 一键安装管理脚本
- 阿里云主机一键安装lamp、lnmp环境的shell脚本分享
- 编写一键安装LAMP脚本
- kibana一键安装、启动、停止脚本
- 一键安装lamp脚本--初级版
- ubuntu一键安装vnc脚本
- 【centos6.5 hadoop2.7 _64位一键安装脚本】有问题加我Q直接问
- CentOS编译安装支持ATS等nginx一键脚本
- Centos7.5 lnmp+zabbix一键安装脚本
- Shell脚本一键安装LNMP环境
- MySQL-5.5.25 centos 一键安装脚本 auto install
- k8s一键安装脚本
- 小内存VPS主机一键快速安装GHost轻博客程序脚本和演示
- Apache2.4安装指南及一键安装脚本
- 在RHEL5中实现一键安装脚本