linux

Linux vsftp与Apache:如何协同工作

小樊
49
2025-09-08 09:27:56
栏目: 智能运维

Linux vsftpd与Apache可通过以下方式协同工作:

  1. 基础集成(文件共享)

    • 安装vsftpd和Apache:
      # Debian/Ubuntu  
      sudo apt install vsftpd apache2  
      # CentOS/RHEL  
      sudo yum install vsftpd httpd  
      
    • 配置vsftpd:
      编辑/etc/vsftpd.conf,启用本地用户登录并设置主目录(如local_root=/var/www/html),确保Apache用户(如www-data)有权限访问该目录。
    • 重启服务:
      sudo systemctl restart vsftpd apache2  
      
  2. 通过Apache反向代理FTP

    • 编辑Apache配置文件(如/etc/apache2/sites-available/000-default.conf),添加反向代理规则:
      <VirtualHost *:80>  
          ServerName your_domain.com  
          ProxyPass /ftp http://127.0.0.1:21  
          ProxyPassReverse /ftp http://127.0.0.1:21  
      </VirtualHost>  
      
      (注:vsftpd默认使用21端口,需确保防火墙放行该端口。)
  3. 增强安全性

    • 启用SSL/TLS加密:
      在vsftpd配置中添加ssl_enable=YES,并配置证书路径。
    • 配置防火墙:
      使用ufwfirewalld放行FTP端口(21)及被动模式端口范围。
  4. 用户权限管理

    • 通过PAM模块集成系统用户认证:
      编辑/etc/pam.d/vsftpd,添加auth required pam_unix.so等规则。
    • 限制用户访问目录:
      在vsftpd配置中使用chroot_local_user=YES将用户限制在主目录。

注意

参考来源:

0
看了该问题的人还看了