当前位置: 首页 > news >正文

centos 7 部署FTP 服务用shell 脚本搭建

#!/bin/bash

# 检查是否以root身份运行脚本
if [ "$EUID" -ne 0 ]; then
    echo "请以root身份运行此脚本。"
    exit 1
fi

# 安装vsftpd
yum install -y vsftpd

# 启动vsftpd服务并设置开机自启
systemctl start vsftpd
systemctl enable vsftpd

# 配置防火墙以允许FTP服务
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload

# 配置vsftpd
VSPD_CONF="/etc/vsftpd/vsftpd.conf"
# 允许本地用户登录
sed -i 's/^local_enable=.*/local_enable=YES/' $VSPD_CONF
# 允许本地用户上传文件
sed -i 's/^write_enable=.*/write_enable=YES/' $VSPD_CONF
# 设置本地用户的文件掩码
sed -i 's/^local_umask=.*/local_umask=022/' $VSPD_CONF
# 启用chroot功能,将用户限制在其主目录
sed -i 's/^chroot_local_user=.*/chroot_local_user=YES/' $VSPD_CONF
# 允许用户上传文件到其主目录
sed -i 's/^allow_writeable_chroot=.*/allow_writeable_chroot=YES/' $VSPD_CONF

# 创建本地用户zwj并设置密码
useradd zwj
echo "请输入用户zwj的密码:"
passwd zwj

# 重启vsftpd服务使配置生效
systemctl restart vsftpd

echo "基于本地用户zwj的FTP服务已搭建完成。"

验证连接

相关文章:

  • Git的安装
  • 代理IP与AI的碰撞:网络安全新防线解码
  • 【Java全栈进阶架构师实战:从设计模式到SpringCloudAlibaba,打造高可用系统】
  • 爬虫逆向解决debugger问题
  • 【QA】QT事件处理流程是怎么样的?
  • 如何理解前端工程化
  • 蓝桥杯备考:差分算法之 语文成绩
  • 信号的产生和保存
  • Netty源码—5.Pipeline和Handler一
  • Vue3+vite项目 使用require 解决 ReferenceError: require is not defined 报错问题
  • CodeBrick笔记
  • Jenkins集成Trivy安全漏洞检查指南
  • venv 和 conda 哪个更适合管理python虚拟环境
  • 【C#】将数字转换为中文,如123转换为一百二十三
  • 卷积神经网络 - 参数学习
  • NVIDIA V100显卡支持Tensor Core技术,而Granite-3.1-8B模型在适当的条件下可以利用Tensor Core来加速数据处理
  • 二分图相关
  • 03 Python 基础:数据类型、运算符与流程控制解析
  • AIP-180 向后兼容
  • 统计矩的高阶推广:经验还是理论推导?
  • 三大猪企一季度同比均实现扭亏为盈,营收同比均实现增长
  • 中青旅:第一季度营业收入约20.54亿元,乌镇景区接待游客数量同比减少6.7%
  • 民营经济促进法出台,自今年5月20日起施行
  • 国泰海通合并后首份业绩报告出炉:一季度净利润增逾391%
  • 2024“好评中国”网络评论大赛结果揭晓
  • 跟着京剧电影游运河,京杭大运河沿线六城举行京剧电影展映