返回列表 发帖

Windows2008R2_UPUPW_AP5.6_用户授权限制+客户端地址限制+SSL

笺注:这是在 Windows2008R2_UPUPW搭建WordPress+Discuz!7.2  的基础上进行的。


用户授权限制:(对站点目录的访问权限进行设置)
包含认证和授权两个过程,认证是指识别用户身份的过程,授权是允许特定用户访问特定目录区域的过程。


### 针对默认站点的根目录进行用户授权限制

认证数据文件的创建可参考:
Apache2.4基于域名的虚拟主机+用户授权限制+客户端地址限制

上传认证数据文件:(文件名是自定义的)
图片1.png
2021-3-26 20:48


格式:
用户名:密码
图片2.png
2021-3-26 20:48

注释:用户名、密码可以在这里直接修改。



Apache的虚拟主机的配置文件:
D:\UPUPW_AP5.6\Apache2\conf\httpd-vhosts.conf
图片3.png
2021-3-26 20:49


关于默认站点的配置代码:
图片4.png
2021-3-26 20:49


修改为:
图片5.png
2021-3-26 20:49


相关代码:
<Directory "D:/UPUPW_AP5.6/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    allow from all
        authname "Webadmin Directory"
        authtype      basic
        authuserfile  D:\UPUPW_AP5.6\Apache2\conf\admin
        require valid-user
</Directory>


保存文件后,重启Apache使更改生效:
图片6.png
2021-3-26 20:50


图片7.png
2021-3-26 20:50




Windows客户端远程测试:
http://192.168.168.129/
图片8.png
2021-3-26 20:51


图片9.png
2021-3-26 20:51



笺注:用户授权限制不会影响子目录的访问的,也就是说,访问子目录就不需要进行用户验证。

登录phpMyAdmin:
http://192.168.168.129/pmd/
图片10.png
2021-3-26 20:51


图片11.png
2021-3-26 20:51






### 针对虚拟主机的根目录进行用户授权限制
上传认证数据文件:(文件名是自定义的)
图片12.png
2021-3-26 20:52


格式:
用户名:密码
图片13.png
2021-3-26 20:52

注释:用户名、密码可以在这里直接修改。


Apache的虚拟主机的配置文件:
D:\UPUPW_AP5.6\Apache2\conf\httpd-vhosts.conf
关于站点bbs.zhuohua.store的配置代码:
图片14.png
2021-3-26 20:53


修改为:
图片15.png
2021-3-26 20:53


相关代码:
<Directory "D:/UPUPW_AP5.6/vhosts/bbs.zhuohua.store">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    allow from all
        authname "Welcome to zhuohua"
        authtype        basic
authuserfile    D:\UPUPW_AP5.6\Apache2\conf\admin_discuz
        require valid-user
</Directory>

保存文件后,记得重启Apache使更改生效。


Windows客户端远程测试:
http://bbs.zhuohua.store/
图片16.png
2021-3-26 20:54


图片17.png
2021-3-26 20:54















######

客户端地址限制(针对客户端的IP地址,对站点某些目录的访问权限进行设置)
Order allow,deny :先允许后拒绝,默认拒绝所有未明确允许的客户端IP地址
Order deny,allow :先拒绝后允许,默认允许所有未明确拒绝的客户端IP地址

例子一:仅仅允许客户端使用IP地址192.168.168.127、192.168.168.128访问默认站点的根目录
Apache的虚拟主机的配置文件:
D:\UPUPW_AP5.6\Apache2\conf\httpd-vhosts.conf

修改默认站点的配置代码:
图片18.png
2021-3-26 20:55


相关代码:
    Order allow,deny
    allow from 192.168.168.127 192.168.168.128

保存文件后,记得重启Apache使更改生效。



客户端使用未被允许的IP地址,访问默认站点的根目录里的文件时:
http://192.168.168.129/
图片19.png
2021-3-26 20:56



但不会影响客户端使用未被允许的IP地址,访问默认站点的子目录里的文件:
图片20.png
2021-3-26 20:56






例子二:仅仅允许客户端使用IP地址192.168.168.127、192.168.168.128访问站点bbs.zhuohua.store的根目录

Apache的虚拟主机的配置文件:
D:\UPUPW_AP5.6\Apache2\conf\httpd-vhosts.conf
修改站点bbs.zhuohua.store的配置代码:
图片21.png
2021-3-26 20:57


相关代码:
    Order allow,deny
    allow from 192.168.168.127
    allow from 192.168.168.128

保存文件后,记得重启Apache使更改生效。


客户端使用未被允许的IP地址,访问站点bbs.zhuohua.store的根目录里的文件时:
http://bbs.zhuohua.store
图片22.png
2021-3-26 20:57



客户端使用未被允许的IP地址,访问站点bbs.zhuohua.store的子目录里的文件时:
http://bbs.zhuohua.store/admin/1.html
图片23.png
2021-3-26 20:58















Apache配置SSL

要在防火墙手动新建入站规则,打开TCP 443端口:
图片24.png
2021-3-26 20:58


图片25.png
2021-3-26 20:58




SSL证书文件的创建可参考:
Apache2.4域名跳转+防盗链+SSL

上传SSL证书文件:(文件名是自定义的)
图片26.png
2021-3-26 20:59




编辑Apache的主配置文件:
D:\UPUPW_AP5.6\Apache2\conf\httpd.conf

找到以下3行代码,去掉前面的#
#LoadModule ssl_module modules/mod_ssl.so
#Include conf/extra/httpd-ssl.conf
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

以下保持默认:
图片27.png
2021-3-26 21:03




查看Apache的配置文件httpd-listen.conf:(保持默认)
D:\UPUPW_AP5.6\Apache2\conf\httpd-listen.conf
图片28.png
2021-3-26 21:04




编辑Apache的SSL配置文件:
D:\UPUPW_AP5.6\Apache2\conf\extra\httpd-ssl.conf

监听端口:(保持默认)
图片29.png
2021-3-26 21:04


以下这一大片默认就有的代码要删除:
图片30.png
2021-3-26 21:05



追加默认站点的配置代码:
图片31.png
2021-3-26 21:05


相关代码:
<VirtualHost *:443>
    DocumentRoot "D:/UPUPW_AP5.6/htdocs"
    ServerName 127.0.0.1:443
    ServerAlias localhost
    ServerAdmin webmaster@example.com
    DirectoryIndex index.html index.htm index.php default.php app.php u.php
    ErrorLog logs/localhost_error.log
    CustomLog logs/localhost_access.log \
    "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    SSLEngine on
    SSLCertificateFile "conf/zhuohua.crt"
    SSLCertificateKeyFile "conf/zhuohua.key"
<Directory "D:/UPUPW_AP5.6/htdocs">
    SSLOptions +StdEnvVars
    AllowOverride All
    Require all granted
</Directory>
<FilesMatch "\.(shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
    BrowserMatch "MSIE [2-5]" \
    nokeepalive ssl-unclean-shutdown \
    downgrade-1.0 force-response-1.0
</VirtualHost>

保存文件后,记得重启Apache使更改生效。



Windows客户端远程测试:
https://192.168.168.129/
图片32.png
2021-3-26 21:06


图片33.png
2021-3-26 21:07


图片34.png
2021-3-26 21:07






编辑Apache的SSL配置文件:
D:\UPUPW_AP5.6\Apache2\conf\extra\httpd-ssl.conf

追加站点bbs.zhuohua.store的配置代码:
图片35.png
2021-3-26 21:07


相关代码:
<VirtualHost *:443>
    DocumentRoot "D:/UPUPW_AP5.6/vhosts/bbs.zhuohua.store"
    ServerName bbs.zhuohua.store:443
    ServerAlias www.zhuohua.store
    ServerAdmin webmaster@example.com
    DirectoryIndex index.html index.htm index.php default.php app.php u.php
    ErrorLog logs/bbs.zhuohua.store_error.log
    CustomLog logs/bbs.zhuohua.store_access.log \
    "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    SSLEngine on
    SSLCertificateFile "conf/zhuohua.crt"
    SSLCertificateKeyFile "conf/zhuohua.key"
<Directory "D:/UPUPW_AP5.6/vhosts/bbs.zhuohua.store">
    SSLOptions +StdEnvVars
    AllowOverride All
    Require all granted
</Directory>
<FilesMatch "\.(shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
    BrowserMatch "MSIE [2-5]" \
    nokeepalive ssl-unclean-shutdown \
    downgrade-1.0 force-response-1.0
</VirtualHost>

保存文件后,记得重启Apache使更改生效。



Windows客户端远程测试:

访问站点的主机名:
https://bbs.zhuohua.store/
图片36.png
2021-3-26 21:09


图片37.png
2021-3-26 21:09



访问站点的主机别名:
https://www.zhuohua.store/
图片38.png
2021-3-26 21:10


图片39.png
2021-3-26 21:10






笺注:
配置了SSL后,不会影响HTTP的访问:
http://192.168.168.129/
图片40.png
2021-3-26 21:10



http://bbs.zhuohua.store/
图片41.png
2021-3-26 21:11






相关文章:
Windows2012R2_UPUPW_AP5.6+Winmail
Windows2008R2_IIS基础+SSL

返回列表