当前位置: 首页 > 工具软件 > PHPIDS > 使用案例 >

PHPIDS入侵检测系统安装使用笔记

穆仲卿
2023-12-01
PHPIDS入侵检测系统 安装使用笔记


部署要求:
PHP5.1.2 or better
Apache
mod_rewrite
安装步骤:
1、下载phpids http://demo.phpids.com
2、解压phpids至网站根目录
3、如果无法解压至根目录可使用mod_rewrite
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/phpids(.*)
RewriteRule ^(.+)$ - [F]
配置使用:
1、编辑config/config.ini.php自定义配置。 
[General] 
    filter_type = xml 
    use_base_path = false 
    filter_path = default_filter.xml 
    tmp_path  = tmp 
    scan_keys  = false 
    HTML_Purifier_Path = IDS/vendors/htmlpurifier/HTMLPurifier.auto.php 
    HTML_Purifier_Cache = IDS/vendors/htmlpurifier/HTMLPurifier/DefinitionCache/Serializer 
    html[] = __wysiwyg 
    json[]  = __jsondata 
    exceptions[]  = __utmz 
    exceptions[] = __utmc 
    min_php_version = 5.1.2 
[Logging] 
    path = tmp/phpids_log.txt 
    recipients[] = me@domain.com 
    subject = "PHPIDS detected an intrusion attempt!" 
    header = "From: <PHPIDS> noreply@domain.com" 
    envelope = "" 
    safemode = true 
    allowed_rate = 15 
 
[Caching] 
    caching = file 
    expiration_time = 600 
    path = tmp/default_filter.cache 
2、启用phpids,可以将phpids的加载脚本写入一个单独的php文件,然后通过php.ini中的auto_prepend_file选项自动加载。
ids.php 
<?php 
 
// set the include path properly for PHPIDS 
set_include_path( 
    get_include_path() 
    . PATH_SEPARATOR 
    . 'phpids/lib/' 
); 
 
if (!session_id()) { 
    session_start(); 

 
require_once 'IDS/Init.php'; 
 
try { 
    $request = array( 
      'REQUEST' => $_REQUEST, 
      'GET' => $_GET, 
      'POST' => $_POST, 
      'COOKIE' => $_COOKIE 
    ); 
    $init = IDS_Init::init(dirname(__FILE__) . '/phpids/lib/IDS/Config/Config.ini.php'); 
    $f=$init->config['General']['base_path'] = dirname(__FILE__) . '/phpids/lib/IDS/'; 
    echo $f; 
    $init->config['General']['use_base_path'] = true; 
    $init->config['Caching']['caching'] = 'file'; 
    $ids = new IDS_Monitor($request, $init); 
    $result = $ids->run(); 
    if (!$result->isEmpty()) { 
        require_once 'IDS/Log/File.php'; 
        require_once 'IDS/Log/Email.php'; 
        require_once 'IDS/Log/Composite.php'; 
        $compositeLog = new IDS_Log_Composite(); 
        $compositeLog->addLogger(IDS_Log_Email::getInstance($init),IDS_Log_File::getInstance($init)); 
        $compositeLog->execute($result); 
    } 
} catch (Exception $e) { 
   //this shouldn't happen and if it does you don't want the notification public. 

?> 


2、编辑php.ini,加入以下内容:
auto_prepend_file /full/path/to/ids.php 
 类似资料: