我有一个带有 apache2、php、mysql 的生产服务器。 我现在只有一个网站 (mysite.com) 作为虚拟主机。 我想把 phpmyadmin、webalizer,也许还有 webmin 放在那里。 到目前为止,我安装了 phpmyadmin,它可以工作,但是整个互联网都可以访问 mysite.com/phpmyadmin
如何降低 192.168.0.0/16 的可见性,以便防火墙后面的计算机可以访问它?
1) 您可以在 Web 服务器级别执行此操作。
对 apache 使用允许/拒绝规则。如果您无法直接访问 apache 配置文件,您可以使用 .htaccess 文件。
<Directory /docroot>
Order Deny,Allow
Deny from all
Allow from 10.1.2.3
</Directory>
2) 您可以使用 phpmyadmin 配置文件在应用程序级别执行此操作。
配置参数为:
$cfg['Servers'][$i]['AllowDeny']['rules']
规则示例如下:
'all' -> 0.0.0.0/0
'localhost' -> 127.0.0.1/8
'localnetA' -> SERVER_ADDRESS/8
'localnetB' -> SERVER_ADDRESS/16
'localnetC' -> SERVER_ADDRESS/24
您可以在 phpMyAdmin 官方配置文档中看到这一点。
http://www.phpmyadmin.net/documentation/#servers_allowdeny_order
您可以在 Apache 中使用一个名为 mod_access
的模块您可以在 apache 配置文件中或在目录根目录的 .htaccess 文件中进行配置。
这是一个简短的例子
<Directory /your_folder/location>
Order Deny,Allow
Deny from all
Allow from 123.123.123.123
</Directory>