WEB开发网
开发学院数据库MySQL 用GreenSQL为MySQL建立防火墙 阅读

用GreenSQL为MySQL建立防火墙

 2009-02-12 11:16:38 来源:WEB开发网   
核心提示:因为可以保护你的数据库,从而免受SQL感染,用GreenSQL为MySQL建立防火墙,GreenSQL被形象地称为MySQL数据库的”防火墙”,对网站和Web应用程序的大量攻击都与所谓的SQL注入漏洞有直接联系,rpm/greensql-fw.redhat.init),也许,对一些编写得不太好的

因为可以保护你的数据库,从而免受SQL感染,GreenSQL被形象地称为MySQL数据库的”防火墙”。

对网站和Web应用程序的大量攻击都与所谓的SQL注入漏洞有直接联系。对一些编写得不太好的应用程序来说,这个问题很严峻。因为通过操控发送到Web服务器的数据,它能允许远程用户向数据库服务器发送任意的SQL命令,并且还借助SQL命令对抗由Web应用程序执行的合法的数据库查询。通常,这种对抗发生在没有任何事先检查或清扫处理的情况下。什么办法可以弥补这一缺陷呢?GreenSQL就是MySQL数据库的“防火墙”。它所做的就是拦截正发往MySQL的SQL命令,对命令进行检查,然后停止询问或适量放行。然后把查询结果返回给调用的应用程序。

GreenSQL 为一些Linux的发行套件提供二进制软件包。如果你的发行版本没有涵盖在下载页面(http://www.greensql.net/download)以内,那可以下载greensql-console和greensql-fw 源码编译。以下是教你在下载这两个文件后怎样进行安装:

# tar xvzf greensql-fw-0.9.4.tar.bz2

# cd greensql-fw-0.9.4

# ./build.sh

# greensql-create-db.sh

最后一个命令会为GreenSQL创立一个必需的MySQL数据库,所以你必须确保MySQL正在运行且被设定为听从某个端口(换言之,确保“跳过联网”没有被设定为/etc/my.cnf)。要启动并测试GreenSQL,用这个:

# greensql-fw -p /etc/greensql &

# mysql -u root -h 127.0.0.1 -P 3305 -p

GreenSQL代理听从3305端口。这意味着任何被代理的通过GreenSQL的应用程序都需要被设定成无法使用本地UNIX插孔或无法与本地主机的3306端口连接, 相反应该通过3305端口连接。

Greensql-console软件包提供了一个Web界面,该界面可以用来查看被锁定的查询,也可以用来设定需要锁定的内容与范畴。把greensql-console源码编译解压到你的站点树,并且将config.phg进行调整以适合于你所选的GreenSQL用户名,密码以及数据库名。

此外,如果你安装了GreenSQL,你会想确保GreenSQL可以在任何系统都能运行。这取决于你的Linux版本,有可能就像从greensql-fw源树那里拷贝一份初始化指令稿一样那么简单。(例如,rpm/greensql-fw.redhat.init),也许,你希望把它添加到你的本地启动脚本中。

Tags:GreenSQL MySQL 建立

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接