FTP

#!/bin/bash
#作者:博客鱼
echo "
FTP 文件传输协议
1 安装FTP服务
2 启动FTP服务
3 匿名用户
4 创建本地用户
5 创建虚拟用户
6 退出
"
read -p "请选择服务!" aa
if [ $aa == 1 ];then
umount /dev/sr0 &> /dev/null
mount /dev/sr0 /mnt &> /dev/null&& echo "正在挂载光盘!"
cp -f /root/a.repo /etc/yum.repos.d/ && echo "正在建立yum本地仓库!"
yum clean all &> /dev/null && echo "正在清理yum缓存!"
yum makecache &> /dev/null && echo "重建yum缓存成功!"
yum -y install vsftpd* &> /dev/null && echo "已安装完成FTP服务!"
fi
if [ $aa == 2 ];then
> /etc/vsftpd/vsftp.confg
service vsftpd restart
cat >> /etc/vsftpd/vsftp.confg << END
write_enable=YES
anon_umask=022
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
#pam_service_name=vsftpd
#(本地用户登录)
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=vu
pam_service_name=vsftpd.vu
#(虚拟用户登录)
local_enable=YES
local_umask=077
chroot_local_user=YES
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/user_dir
END
cd /etc/vsftpd/ && touch user &> /dev/null && mkdir user_dir &> /dev/mull
db_load -T -t hash -f user user.db
useradd -s /sbin/nologin vu &> /dev/null
cat >> /etc/pam.d/vsftpd.vu << END
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/user
account required lib64/security/pam_userdb.so db=/etc/vsftpd/user
END
fi
if [ $aa == 3 ];then
echo "匿名用户可直接登录!输入要访问的主机IP即可。格式:ftp://IP"
fi
if [ $aa == 4 ];then
read -p "请输入要创建的用户名!" bb
id $bb &> /dev/null
if [ $? -ne 0 ];then
useradd $bb &> /dev/null && echo "创建成功!" && echo "请创建用户密码!" && passwd $bb
cat >> /etc/vsftpd/user_list << END
$bb
END
else
echo "用户已存在!"
fi
fi
if [ $aa == 5 ];then
cd /etc/vsftpd/user_dir
read -p "请创建虚拟用户名称!" cc
touch $cc
read -p "请创建虚拟用户密码!" mm
cd /
read -p "请创建用户家目录名称!" vv
mkdir $vv &> /dev/null || echo "目录名称重复 !请重新输入!"
chown vu $vv
cat >> /etc/vsftpd/user_dir/$cc << END
local_root=/$vv
END
cat >> /etc/vsftpd/user << END
$cc
$mm
END
fi
if [ $aa == 6 ];then
exit 0
fi

posted @ 2018-08-20 10:17  博客鱼  阅读(135)  评论(0)    收藏  举报