首页主机资讯如何防止CentOS FTP Server被攻击

如何防止CentOS FTP Server被攻击

时间2025-12-19 23:45:04发布访客分类主机资讯浏览301
导读:CentOS FTP Server 安全防护清单 一 基础加固 禁用匿名访问,仅允许本地系统用户:设置 vsftpd.conf 为 anonymous_enable=NO、local_enable=YES。 限制登录名单:启用 userl...

CentOS FTP Server 安全防护清单

一 基础加固

  • 禁用匿名访问,仅允许本地系统用户:设置 vsftpd.conf 为 anonymous_enable=NOlocal_enable=YES
  • 限制登录名单:启用 userlist_enable=YES,配合 userlist_file=/etc/vsftpd/user_listuserlist_deny=NO 实现白名单;同时将高危账户写入 /etc/vsftpd/ftpusers(该文件为禁止登录名单)。
  • 锁定用户根目录:设置 chroot_local_user=YES;为降低风险,优先采用“可写子目录”方案,而非直接允许可写的根目录(见下文“chroot 可写的正确做法”)。
  • 创建专用 FTP 用户并禁止 SSH 登录:例如 useradd -m ftpuser -s /sbin/nologin,仅用于 FTP。
  • 目录与权限:家目录建议 0755,上传目录 0775,属主均为该 FTP 用户,避免越权访问。
  • 服务最小化:仅开启必要功能,保持默认最小配置,逐项放开。

二 加密传输与端口管理

  • 启用 TLS/SSL:在 vsftpd.conf 中设置 ssl_enable=YESallow_anon_ssl=NOforce_local_data_ssl=YESforce_local_logins_ssl=YES;禁用不安全协议(如 ssl_sslv2=NO、ssl_sslv3=NO),优先 TLSv1.2/1.3(可用 ssl_tlsv1_2=YES)。
  • 证书与密钥:使用受信任 CA 或生成自签名证书,放置于安全路径(如 /etc/pki/tls/certs//etc/pki/tls/private/),并在配置中正确指向 rsa_cert_filersa_private_key_file
  • 被动模式端口范围:设置 pasv_min_portpasv_max_port(如 40000–5000030000–31000),便于防火墙精确放行。
  • 防火墙放行:放行控制端口 21/TCP,必要时放行数据端口 20/TCP;对被动端口范围一次性放行(示例:firewall-cmd --permanent --add-port=40000-50000/tcp --permanentfirewall-cmd --reload)。如使用 firewalld 的 ftp 服务模块,可结合模块加载与端口策略共同使用。
  • 连接验证:使用支持 TLS 的客户端(如 FileZilla)测试,确保登录与数据传输均为加密通道。

三 访问控制与权限最小化

  • 白名单登录:通过 userlist_deny=NO 仅允许 /etc/vsftpd/user_list 中的用户登录,其余拒绝。
  • 禁止 root 与其他系统关键账户登录 FTP:将 root 等加入 /etc/vsftpd/ftpusers
  • chroot 可写的正确做法:
    • 推荐:保持用户根目录不可写,在根目录下创建可写子目录(如 upload)供上传;必要时使用 user_sub_token=$USERlocal_root=/home/$USER/ftp 规范化路径。
    • 如业务必须允许根目录可写,可在充分评估风险后设置 allow_writeable_chroot=YES,并严格限制可写范围与权限。
  • 文件系统与 SELinux:为 FTP 目录设置合适上下文与布尔值,例如 setsebool -P ftp_home_dir on;如遇到写入失败或权限问题,再按需调整 allow_ftpd_full_access 等布尔值(遵循最小权限原则)。

四 监控 日志与维护

  • 启用日志:确保 xferlog_enable=YESxferlog_std_format=YES,并配置日志轮转(如 logrotate),便于审计与追踪异常行为。
  • 实时监控:关注 /var/log/vsftpd.log/var/log/messages,对频繁失败登录、异常 IP、异常时段的大流量传输设置告警。
  • 及时更新与补丁:定期执行 yum update vsftpd(或 dnf),修复已知漏洞;变更配置后使用 systemctl restart vsftpd 滚动生效并回归测试。
  • 连接测试与演练:变更前后均使用客户端进行上传/下载/断点续传等场景验证,确保加密、被动端口、白名单与权限均符合预期。

五 最小化暴露面与替代方案

  • 限制来源 IP:在边界防火墙或主机防火墙层面对 FTP 端口仅开放给受控网段或跳板机,减少攻击面。
  • 端口与协议策略:避免将 FTP 暴露在公网;若非必须,考虑仅在内网使用,或采用更安全的替代协议(如 SFTP/SCP 基于 SSH,默认加密且端口单一,运维与审计更简单)。
  • 安全基线:将以上配置纳入基线并定期核查(账户、名单、端口、证书有效期、日志与告警策略)。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何防止CentOS FTP Server被攻击
本文地址: https://pptw.com/jishu/776809.html
如何设置CentOS FTP Server自动备份 如何在CentOS上安装FTP Server插件

游客 回复需填写必要信息