centos

CentOS上VSFTP的自动化脚本编写

小樊
49
2025-08-22 15:16:44
栏目: 智能运维

在CentOS上编写一个自动化脚本来安装和配置VSFTPD(Very Secure FTP Daemon)可以大大简化这个过程。以下是一个示例脚本,它将自动完成VSFTPD的安装、配置和一些基本的安全设置。

#!/bin/bash

# 更新系统包
echo "Updating system packages..."
yum update -y

# 安装VSFTPD
echo "Installing VSFTPD..."
yum install -y vsftpd

# 启动VSFTPD服务
echo "Starting VSFTPD service..."
systemctl start vsftpd

# 设置VSFTPD服务开机自启
echo "Enabling VSFTPD service to start on boot..."
systemctl enable vsftpd

# 配置VSFTPD
echo "Configuring VSFTPD..."

# 备份原始的vsftpd.conf文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

# 创建一个新的vsftpd.conf文件
cat <<EOF > /etc/vsftpd/vsftpd.conf
# 开启匿名访问
anonymous_enable=YES

# 允许本地用户登录
local_enable=YES

# 写入权限
write_enable=YES

# 允许本地用户写入
local_umask=022

# 虚拟用户支持
guest_enable=YES
guest_username=ftpuser

# 虚拟用户主目录
virtual_use_local_privs=YES
chroot_local_user=YES
allow_writeable_chroot=YES

# 启用被动模式
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048

# 日志记录
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES

# 安全设置
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/pki/tls/certs/localhost.crt
rsa_private_key_file=/etc/pki/tls/private/localhost.key

# 用户列表
userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO
EOF

# 重启VSFTPD服务以应用配置
echo "Restarting VSFTPD service..."
systemctl restart vsftpd

# 检查VSFTPD服务状态
echo "Checking VSFTPD service status..."
systemctl status vsftpd

echo "VSFTPD installation and configuration completed successfully!"

使用说明:

  1. 保存脚本:将上述脚本保存为一个文件,例如 install_vsftpd.sh
  2. 赋予执行权限:在终端中运行以下命令赋予脚本执行权限:
    chmod +x install_vsftpd.sh
    
  3. 运行脚本:在终端中运行以下命令来执行脚本:
    sudo ./install_vsftpd.sh
    

注意事项:

通过这个脚本,你可以快速地在CentOS上安装和配置VSFTPD,并确保其安全性和功能性。

0
看了该问题的人还看了