[Linux]vsftp配置大全---超完整版
#!/bin/bash
# 安装vsftpd
yum install -y vsftpd
# 备份原始配置文件
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig
# 创建一个新的配置文件
cat << EOF > /etc/vsftpd/vsftpd.conf
# 允许匿名登录
anonymous_enable=NO
# 启用本地用户
local_enable=YES
# 关闭用户上限
local_max_rate=0
# 允许ASCII模式上传
ascii_upload_enable=YES
# 允许ASCII模式下载
ascii_download_enable=YES
# 使用2048字节的缓冲区
buffer_size=2048
# 最大客户端连接数
max_clients=200
# 每个IP的最大连接数
max_per_ip=4
# 本地用户的根目录
local_root=/var/ftp/pub
# 写入权限
write_enable=YES
# 启用用户写入的目录
user_sub_token=$USER
local_root=/var/ftp/virtual/$USER
# 启用用户配额
user_config_dir=/etc/vsftpd/userconf
# 启用TCP Wrapper
tcp_wrappers=YES
EOF
# 创建用户配额目录
mkdir /etc/vsftpd/userconf
# 创建虚拟用户根目录
mkdir /var/ftp/virtual
# 设置权限
chmod 777 /var/ftp/virtual
# 添加FTP用户
adduser --home /var/ftp/virtual/username --shell /sbin/nologin ftpuser
# 设置用户密码
echo "password" | passwd --stdin ftpuser
# 重启vsftpd服务
systemctl restart vsftpd
# 设置防火墙规则
firewall-cmd --zone=public --add-service=ftp --permanent
firewall-cmd --reload
这个脚本展示了如何在Linux系统上安装和配置vsftpd服务器。它包括创建一个新的配置文件,设置匿名用户登录为禁止,启用本地用户,并为本地用户设置写入权限。同时,它还演示了如何创建虚拟用户,设置用户配额,以及如何通过TCP Wrappers进行访问控制。最后,脚本中还包含了如何通过firewalld为FTP服务开放防火墙规则。
评论已关闭