yxxs123 发表于 2018-11-28 07:11:10

Apache用户认证方法汇总

一.基本的Apache用户认证方法:  若对某一目录下的文件如/home/ftp/pub需要做到用户认证,则在httpd.conf中加入下面的行
  
  options indexes followsymlinks
  allowoverride authconfig
  order allow,deny
  allow from all
  
  用在目录/home/ftp/pub下放文件.htaccess,内容如下:
  authname \"shared files\"
  authtype basic
  authuserfile /etc/.passwd
  require valid-user
  用随Apache来的程序htpasswd 生成文件/etc/.passwd,每行一个用户名:密码只要能提供正确的用户名和密码对,就允许登录访问,这是针对任何地址来的请求都要求提供用户名和密码认证。
  二.针对部分网段或地址要求认证。
  若公司LAN所在网段为192.168.0.0/24,且有一防火墙专线接入Internet, 内部网卡的地址为192.168.0.1/32,则现在希望所有通过拨本地163通过防火墙上的apache反向代理向LAN上的另一WWW服务器访问时需要认证,而本地LAN上的用户不需认证。可以在httpd.conf中放入:
  〈Directory /home/ftp/pub>
  Options Indexes FollowSymLinks
  AllowOverride AuthConfig
  order deny,allow
  deny from 192.168.0.1
  〈/Directory>
  且在/home/ftp/pub/.htaccess中放入:
  AuthName \"shared files\"
  AuthType Basic
  AuthUserFile /etc/.passwd
  require valid-user
  satisfy any
  三.对同一目录及其下的子目录有不同的权限,仅某些人可以存取一目录下的子目录。
  如有一目录/home/ftp/pub/sales,有三个用户user1,user2,user3都需要用户名和密码进入/home/ftp/pub,但仅user1,user2能进入/home/ftp/pub/sales.则放下面的行到httpd.conf
  〈Directory /home/ftp/pub>
  Options Indexes
  AllowOverride AuthConfig
  order allow,deny
  allow from all
  〈/Directory>
  〈Directory /home/ftp/pub/sales>
  Options Indexes
  AllowOverride AuthConfig
  order allow,deny
  allow from all
  〈/Directory>
  且看/home/ftp/pub/.htaccess为:
  AuthName \"shared files\"
  AuthType Basic
  AuthUserFile /etc/.passwd
  require valid-user
  且看/home/ftp/pub/sales/.htaccess
  AuthName \"shared files\"
  AuthType Basic
  AuthUserFile /etc/.passwd
  AuthGroupFile /etc/.salesgroup
  require group manager
  且文件/etc/.passwd内容为:
  user1:passwd1
  user2:passwd2
  user3:passwd3
  且文件/etc/.salesgroup内容为:
  manager: user1 user2

页: [1]
查看完整版本: Apache用户认证方法汇总