vsftp脚本

#!/bin/bash

# CentOS 6.X x86_64

rpm -q vsftpd

if [ $? -eq 0 ];then

echo "vsftpd已经安装,请执行该命令rpm -e vsftpd卸载vsftpd"

exit 1

fi

if [ -d "/etc/vsftpd" ];then

mv /etc/vsftpd{,.$(date +%Y%m%d%H%M)}

fi

yum install -y vsftpd db4 db4-devel

mv /etc/vsftpd/vsftpd.conf{,.$(date +%Y%m%d%H%M)}

# 生成vsftpd配置文件

cat << ‘EOF‘ >> /etc/vsftpd/vsftpd.conf

listen=YES

listen_port=21

local_enable=YES

write_enable=NO

anonymous_enable=NO

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

chroot_local_user=YES

guest_enable=YES

guest_username=ftp

user_config_dir=/etc/vsftpd/ftp

ftpd_banner=welcome vsftp!

pam_service_name=vsftpd.pam

vsftpd_log_file=/var/log/vsftpd.log

dual_log_enable=YES

xferlog_enable=YES

local_root=/var/ftp

EOF

# 生成vsftpd的认证文件

cat << ‘EOF‘ >> /etc/pam.d/vsftpd.pam

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

# 生成vsftpd虚拟用户的账号和密码

USER=ftpuser

PASS=$(echo $RANDOM | md5sum | head -c 20)

echo -e "$USER\n$PASS" > /etc/vsftpd/logins.txt

mkdir /etc/vsftpd/ftp

# 为生成的用户添加一个独立的配置文件

cat << ‘EOF‘ >> /etc/vsftpd/ftp/${USER}

write_enable=YES

anon_world_readable_only=NO

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

anon_upload_enable=YES

anon_umask=022

file_open_mode=0777

guest_enable=YES

guest_username=ftp

local_root=/tmp

EOF

# 每次填加新的虚拟用户后执行的命令

# /etc/vsftpd/logins.txt是记录虚拟用户的账号和密码

# 添加新的虚拟用户在文件末尾追加账号和密码就可以了,奇数是用户,偶数是密码

echo "db_load -T -t hash -f /etc/vsftpd/logins.txt /etc/vsftpd/vsftpd_login.db" > /etc/vsftpd/cmd

chmod u+x /etc/vsftpd/cmd

/etc/vsftpd/cmd

chkconfig vsftpd on

/etc/init.d/vsftpd start

echo "####################################"

echo "####################################"

echo "####################################"

echo "####################################"

echo "Config Files: /etc/vsftpd/vsftpd.conf"

echo "Pam Files: /etc/pam.d/vsftpd.pam"

echo "Db Files: /etc/vsftpd/vsftpd_login.db"

echo "User/Password Files: /etc/vsftpd/logins.txt"

echo "Create User/Password Db Files Command: bash /etc/vsftpd/cmd"

echo "User/Password: $USER/$PASS"

echo "Vsftpd Install OK!"

echo "####################################"

echo "####################################"

echo "####################################"

echo "####################################"

时间: 2024-11-02 18:50:04

vsftp脚本的相关文章

CentOS6一键安装vsftp脚本

如果你想在你的Linux服务器上搭建一个安全.高性能.稳定性好的FTP服务器用于服务器文件管理,那么vsftpd可能是你的首选应用. 下面我分享一个vsftp的一键安装脚本,以/data/www为根目录,www用户拥有目录读写权限为例. 一,使用方式 1,安装vsftp sh auto_install_vsftp.sh install 2,新建ftp用户 sh auto_install_vsftp.sh useradd user password 二,auto_install_vsftp.sh脚

Centos7上vsftp脚本--&gt; sh vsftp.sh 用户名 密码 --&gt; sh vsftp.sh install

#!/bin/bash #vsftp install . /etc/rc.d/init.d/functions users=/etc/vsftpd/vftpuser.txt login=/etc/vsftpd/vftpuser.db generate_db="db_load -T -t hash -f $users $login" virtual_user_config=/etc/vsftpd/vuser_conf virtual_user_home=/data/www guest_u

linux一键下搭建vsftp脚本

#!/bin/bashyum install vsftpd pam pam-* db4 db4-* -ycd /etc/vsftpd/touch virtual_loginread -p "请输入用户名:" usernameread -p "请输入密码:" passwordecho $username >> virtual_loginecho $password >> virtual_logindb_load -T -t hash -f /e

ftp连接虚拟机linux

1,安装ftp 从redhat官网www.redhat.com下载RHEL6.4 64bit试用版(必须用企业邮箱注册为合作者而不是个人用户才能下载),安装后发现系统没有ftp             命令.由于RHEL6.4是试用版没有注册,所以yum无法使用.于是尝试用rpm从光盘安装相应的ftp安装包. 1.首先挂载上系统安装盘,mount /dev/cdrom /mnt (可以先在Packages文件夹或其他中查找ftp-0.17-53.el6.x86_64.rpm,找不到再挂载系统安装

删除vsftp虚拟用户脚本

和上一个自动添加脚本一致 #!/bin/bash time=`date +%Y%m%d%k%M` bakfile="user_logn.bak$time" cp /etc/vsftpd/user_login /etc/vsftpd/vsftpd_bak/$bakfile echo -n "Enter you want add ftp user's name:" read  name if [ "$name" = "" ]; t

自动添加VSFTP服务器虚拟用户脚本

脚本可能写的还不太完善,目前能考虑到的有这么三点: 1.用户名和密码不能为空 2.用户名不能重复 3.当输入用户名正确而密码为空的时候,会自动将之前输入的用户也删除也就是说本次输入失败 4.备份每次修改的用户配置文件,并将保存文件打上时间戳 后面待改进的可以添加输入用户名和字符数量限制等功能 #!/bin/bash time=`date +%Y%m%d%k%M` bakfile="user_logn.bak$time" cp /etc/vsftpd/user_login /etc/vs

Vsftp 自动化安装脚本

最近安装vsftp的 需求越来越多,自己弄了一个vsftp的安装脚本,确实很方便节约了不少时间. 好了直接上脚本内容:     vi install_vsftpd.sh           #!/bin/bash     # Remove=>Download=>Install=>Configure=>Start service "vsftpd"     #     # /usr/bin/yum => #!/usr/bin/python2.4        

vsftp安装 shell脚本

由于工作中有搭建ftp服务器,但是每次搭建有比较麻烦.于是编写了个shell脚本,在此将脚本共享给大家,如有疑问请联系QQ:403182580 默认创建vsftp用户:dyc 密码:dyc ftp数据存放目录:/data/ftp #!/bin/bash #本脚本为自动化安装vsftp,使用虚拟用户认证登录ftp上传下载文件 echo ====================================================== read -p "请输入ftp用户:" ft

linux——安装vsftp及配置虚拟匿名用户脚本

#!/bin/bash systemctl disable firewalldsystemctl stop firewalldsetenforce 0 cd /etc/yum.repos.d/wget http://mirrors.163.com/.help/CentOS7-Base-163.repo yum clean allyum -y install epel-releaseyum -y install vsftpd echo 'user1' >> /etc/vsftpd/vu.list