2013-06-27 40 views
1

这可能是一个愚蠢的问题,但我需要探索每一个选项,并不能从谷歌闪烁这一个。希望这不是太会话。本地ip白名单或运行管理系统

我正在考虑选项来保护我的基于php/mysql的管理系统。有一件事我也想过是IP白名单与.htacess和只允许我的客户端访问:

allow from xx.xx.xx.xxx 

但我想知道如果其他方法可能是没有安装在线在所有的管理系统。是否有可能在本地运行管理PHP(使用wamp),然后让它连接到实时数据库?

这是疯了吗?

+0

将受密码保护的文件夹的工作 - 以这种方式,而不是一个错误其他用户得到一个登录对话框 – acutesoftware

+0

您将尝试推动更新到很多本地机器的头痛将不值得。您可以通过纯PHP添加基于IP和基于用户代理的白名单,并且您可以将登录哈希添加到授权cookie,该cookie只允许一个用户同时登录到一个帐户。这应该够了。 – jraede

+0

@jraede更新的好点。使用ip列表方法认为不合适。现在只是希望我的客户端没有动态IP –

回答

1

我可以假设你的应用程序不是托管在你的客户端吗?因为如果是这样,那么您可以简单地将实际的应用程序放在面向互联网的DMZ区域和内部网络中的管理应用程序,而无需从互联网访问。

如果应用程序未托管在客户端,那么您的基于IP的方法看起来不错。但是,您不应该仅仅依靠IP保护作为身份验证机制,还应该使用登录表单来保护管理应用程序,要求输入用户名和密码。如果您想要超级小心,可以考虑使用双因素身份验证(令牌或Google身份验证器)。

正如jraede已经指出的那样,使用远程数据库进行本地安装将是一个难题。另外(并且最重要的)远程数据库意味着你需要从因特网访问数据库。如果你能避免这种情况,那应该是安全禁止。

+0

嗨Korius,是的,我绝对不是只依赖于IP身份验证。我正在使用ion_auth进行PHP身份验证。我对此感到满意,我认为我不需要2步验证。我确实需要从互联网上访问数据库。我的管理员系统写入前端站点从数据中提取数据的相同数据库...是不是很糟糕?可以避免吗? –