科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道使用iptables建置Linux 防火墙(16)

使用iptables建置Linux 防火墙(16)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

防火墙依照其运作方式来分类,可以区分为封包过滤式防火墙、应用层网关式防火墙、电路层网关式防火墙。其中被广为采用的是封包过滤式防火墙,本文要介绍的iptables 防火墙就是属于这一种。

作者:51CTO.COM 2007年11月11日

关键字: 网络安全 防火墙 iptables Linux

  • 评论
  • 分享微博
  • 分享邮件

  在解压缩的数据夹中,找到一个叫做 web 的子数据夹,里面就是要给人从网页浏览分析结果的 PHP 程序,如果你的 Apache 已经设定好支持 php 和 php_mysql,那么只要将此数据夹复制到 Apache 的根文件目录就行了。方法如下:

  cp -R web /var/www/iptables

  拷贝完成后请修改 config.php ,目的是为了让 PHP 程序执行时,能以正确的账号密码连上 MySql ,以便从数据库读取数据,请找到底下三行:

  $db_host="localhost";(一般不需修改,除非数据库在另一台主机上)

  $db_user="iptables_user";(修改为仅具有读取权限的账号,如果之前安装数据库有自设帐号的话)

  $db_password="xxxx";(请将密码修改为自设的密码)

  安装 feed_db.pl:

  前面已经介绍过这支程序的作用,请务必修改这支程序中有关数据库联机的 SQL 指令,将指令中的账号密码,改成你当初所设定的账号密码,建议最好不要用 root 身分联机,以免影响防火墙的安全性。这支程序是放在解压缩后数据夹内的 scripts 子数据夹,请修改下面这三行:

  my $dsn = 'DBI:mysql:iptables:localhost';(请将 iptables 改成你自订的数据库名称)

  my $db_user_name = 'iptables_admin';(请将 iptables_admin 改成你自订的管理账号)

  my $db_password = 'xxxx';(请将 xxxx 改成管理账号的密码)

  程序修改好后,请将它拷贝到 /usr/local/bin 数据夹,接着将程序执行起来,注意:这支程序会跑一个无穷尽循环,持续分析系统 LOG,因此必须在背景执行,同时只能有一支程序执行,以避免造成 IO 过大的负载,执行方式如下:

  tail --follow=name --retry /var/log/syslog | /usr/local/bin/feed_db.pl &

  如果这些动作都作了,但程序并未执行成功,有可能是因为 perl_DBI:DBD 套件没安装,请自行用 rpm 补装该套件。

  查看分析结果:

  完成以上所有安装步骤后,就可以坐下来享受一下成果,请打开浏览器输入底下网址

  http://192.xx.1.254/iptables

  看到的画面,如下图所示(请点选放大):

  安装 LOG 分析后的安全防范:

  防火墙上安装越多套件,系统安全性也就越低,改进的方法有两个:

  1. 将 apache 和 mysql 架设在内部网络的一台机器上,防火墙上仅安装 mysql client,这样可以避免 apache 和 mysql 的漏洞被骇客利用

  2. 在防火墙上设定规则,仅允许来自内部的网络,进行 HTTP 和 MySql 联机,这个方法比较简单,本文所介绍的 iptables 范例也是采用此法,缺点是无法在校外查看 LOG 分析结果

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章