当前位置:首页 > linux基础 > 正文内容

vsftpd 一键脚本

4年前 (2021-04-15)linux基础1794
#!/bin/bash
#安装VSFTPD服务并使用匿名用户登录
#关闭sellinux
setenforce 0
sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
if [ $? -ne 0 ]
then
   echo "执行命令失败"
fi
#关闭防火墙
systemctl stop firewalld
if [ $? -ne 0 ]
then 
    echo "关闭防火墙失败"
    read -p "是否跳过此步?(yes or no)":no ifs
    if [ $ifs -eq "no" ]
    then 
       echo "正在退出此脚本"
       sleep 1
    fi  
else
    echo "关闭防火墙成功"
fi
#yum安装vsftpd
yum -y install vsftpd
if [ $? -eq 0 ]
then
    echo "vsftpd安装完成。"
else
    echo "vsftpd安装失败。"
fi
#配置匿名用户
useradd vsftpd -d /home/vsftpd -s /bin/false
mkdir -p /home/vsftpd/ftp1
echo "ftp1" >> /etc/vsftpd/loginusers.conf
echo "123456" >> /etc/vsftpd/loginusers.conf
db_load -T -t hash -f /etc/vsftpd/loginusers.conf /etc/vsftpd/loginusers.db
chmod 777 /etc/vsftpd/loginusers.db
sed -i 's/^.*/#&/' /etc/pam.d/vsftpd
sed -i '2i\auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers' /etc/pam.d/vsftpd
sed -i '3i\account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/loginusers' /etc/pam.d/vsftpd
mkdir /etc/vsftpd/userconf
echo "local_root=/home/vsftpd/ftp1/" >> /etc/vsftpd/userconf/ftp1
echo "write_enable=YES"  >> /etc/vsftpd/userconf/ftp1
chmod 777  /home/vsftpd/ftp1
chown vsftpd:vsftpd /home/vsftpd/ftp1
#最后修改主配置文件
sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf
sed -i 's/#ascii_upload_enable=YES/ascii_upload_enable=YES/' /etc/vsftpd/vsftpd.conf
sed -i 's/#ascii_download_enable=YES/ascii_download_enable=YES/' /etc/vsftpd/vsftpd.conf
echo "guest_enable=YES" >> /etc/vsftpd/vsftpd.conf
echo "guest_username=vsftpd" >> /etc/vsftpd/vsftpd.conf
echo "user_config_dir=/etc/vsftpd/userconf" >> /etc/vsftpd/vsftpd.conf
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf
echo "virtual_use_local_privs=YES" >> /etc/vsftpd/vsftpd.conf
echo "pasv_min_port=30000" >> /etc/vsftpd/vsftpd.conf
echo "pasv_max_port=31000 " >> /etc/vsftpd/vsftpd.conf
systemctl start vsftpd
if [ $? -eq 0 ]
then
    echo "vsftpd配置完成。"
    echo "vsftpd服务已启动。"
else
    echo "vsftpd配置失败。"
fi


“vsftpd 一键脚本” 的相关文章

Linux进程管理

Linux进程管理

进程概述1.当我们运行一个程序,那么我们将运行的程序叫进程。PS1: 当程序运行为进程后,系统会为该进程分配内存,以及进程运行的身份和权限。PS2: 在进程运行的过程中,系统会有各种指标来表示当前运行的状态。2.程序和进程的区别1.程序是数据和指令的集合,是一个静态的概念。比如/bin/ls、/bi...

CentOS7系统服务

1:Linux运行级别1.1.运行级别就是操作系统当前正在运行的功能级别System V init运行级别systemd目标名称作用0runlevel0.target, poweroff.target关机1runlevel1.target, rescue.target单用户模式2runlevel2....

sersync实时同步

sersync实时同步

实时同步概述实时同步是一种只要当前目录发生变化则会触发一个事件,事件触发后会将变化的目录同步至远程服务器。保证数据的连续性, 减少人力维护成本,解决nfs单点故障实时同步工具选择sersync+rsync(√)、inotify+rsyncInotify是一个通知接口,用来监控文件系统的各种变化,如果...

Shell介绍(一)变量、传参、数值运算

Shell编程1.什么情况下使用Shell1:安装CentOS系统 自动化安装操作系统(kickstart cobbler) 底层shell2:网络IP地址3:初始化操作系统(ntp时间同步,更改默认YUM源,SSH端口,SSH远程连接禁止DNS解析,禁止root登录,关闭seilnux,防火墙优化...

Shell介绍(三)if判断,case控制,for循环,while循环,流程控制语句

if判断单分支if [你有房] then     我就嫁给你 fi多分支if [ 你有房 ] then     我就嫁给你 else   &nbs...

Shell介绍(四)条件表达式,字符串比对

条件表达式[ ]======test   []常用[ -f file ] 文件是否存在 且为普通文件 重点[ -e file ] 文件存在则为真[ -d file ] 目录存在则为真 重点[ -x file ] 文件有执行权限则为真[ -w file ] 文件可写则为真[...