温馨提示×

centos中vsftp如何防止非法访问

小樊
40
2025-12-13 10:52:24
栏目: 智能运维

在CentOS系统中,为了防止vsftpd(Very Secure FTP Daemon)遭受非法访问,可以采取以下措施:

  1. 配置防火墙

    • 使用firewall-cmd命令配置防火墙规则,只允许特定IP地址访问vsftpd服务。
    firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="允许的IP地址" port protocol="tcp" port="21" accept'
    firewall-cmd --reload
    
  2. 修改vsftpd配置文件

    • 编辑/etc/vsftpd/vsftpd.conf文件,进行以下配置:
      # 只允许本地用户登录
      local_enable=YES
      write_enable=YES
      chroot_local_user=YES
      allow_writeable_chroot=YES
      
      # 禁止匿名访问
      anonymous_enable=NO
      
      # 启用被动模式
      pasv_enable=YES
      pasv_min_port=1024
      pasv_max_port=1048
      
      # 启用SSL/TLS加密
      ssl_enable=YES
      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/vsftpd.pem
      rsa_private_key_file=/etc/pki/tls/private/vsftpd.pem
      
      # 启用用户认证
      userlist_enable=YES
      userlist_file=/etc/vsftpd/user_list
      userlist_deny=NO
      
  3. 配置用户认证

    • 确保所有FTP用户都有有效的系统账户,并且这些账户的密码是强密码。
    • 可以使用chpasswd命令批量设置用户密码,或者使用passwd命令逐个设置。
  4. 使用SELinux

    • 如果系统启用了SELinux,可以配置SELinux策略来限制vsftpd的访问。
    setsebool -P ftp_home_dir on
    setsebool -P allow_ftpd_full_access on
    
  5. 定期更新和监控

    • 定期更新vsftpd到最新版本,以修复已知的安全漏洞。
    • 使用日志文件监控vsftpd的活动,及时发现异常行为。
    tail -f /var/log/vsftpd.log
    
  6. 限制FTP访问时间

    • 如果需要,可以通过配置vsftpd来限制FTP用户的访问时间。
    # 在/etc/vsftpd/vsftpd.conf中添加以下配置
    tcp_wrappers=YES
    

通过以上措施,可以大大提高vsftpd的安全性,防止非法访问。请根据实际情况调整配置,并确保定期检查和更新安全设置。

0