设为首页收藏本站 开启辅助访问
搜索
    查看: 8778|回复: 2

    【网站安全狗Linux版 V2.0.08746】用户手册

    [复制链接]
    发表于 2014-6-24 19:07:05 | 显示全部楼层 |阅读模式
    本帖最后由 Yuki 于 2014-6-25 17:57 编辑

    1. 软件安装
    32位安装包为例,64位安装包把对应的32改成64即可。
    步骤1 :到http://safedog.cn下载软件发布包(.tar.gz格式):safedogwz_linux32.tar.gz
                  也可以采取wget的方式下载发布包
                                 wget http://safedog.cn/safedogwz_linux32.tar.gz
    步骤2root帐户下执行以下命令:
                             tar xzvf safedogwz_linux32.tar.gz
                             cd ApacheSafeDog32
                             chmod +x install.sh
                             ./install.sh

    运行时会提示输入apache服务器的配置文件路径(绝对路径),请根据您所安装的apache的目录,填写真实的配置文件路径。
    举例:/usr/local/apache2/conf/httpd.conf
    注意:
    (1)提示:若您在输入时,不慎输入错误,请按组合键CTRL+Backspace删除。
    (2)网站狗的安装目录为/etc/ApacheSafeDog,请不要删除此目录及目录下的任何内容。
    (3)安装完成后,请重新启动apache服务器,以使网站安全狗软件生效。
    (4)如果重启apache服务器时失败,并提示Permission denied错误,请参看 http://bbs.safedog.cn/thread-3202-1-1.html

    2. 软件功能说明
    修改网站安全狗的配置文件所在目录/etc/ApacheSafeDog/conf下的配置文件来启用网站安全狗的相应功能。
    注意:
    (1)以下配置文件各字段的值只是举例,请根据您的实际需要自行设定。设定前请参考每个字段前的注释信息。
    (2)修改完的配置,会在一分钟后自动生效。如果您需要让其立即生效,请重启apache服务器。
    (3)白名单和黑名单的优先级高于其他防护,其中白名单又高于黑名单。如果您在设置了某个防护后,发现其未起效等异常,请检查是否是设置了白名单和黑名单导致的。
    (4)修改配置中的字段时,请在英文状态下输入,正则表达式规则说明字段Description除外。

    2.1 网马防护(WPCDefTrojan.conf
    该功能保护网站不受网络木马的攻击。
    配置说明:
    1. 是否开启网马防护功能:ChkTrojan=1 其中1表示开启,0表示关闭。
    * 网马防护功能包括浏览防御、上传防御和挂马防御。
    * 该字段是网马防护总开关,若该字段被设置为关闭,那这三种子功能都不会起作用。

    2. 不受网马防护功能保护的网站个数:SpeSiteCount=0

    3. 不受网马防护功能保护的域名:Site0=www.test.com:80
    * 这里的站点必须是本服务器上的站点。
    * 域名必须与APACHE配置的serverName,ServerAlias字段所设的字段匹配

    4. 不受网马防护功能保护的网站目录或文件个数:WhitePathCount=0

    5. 不受网马防护功能保护的网站路径列表。
    每条路径的设置格式为:本机网站域名或物理路径/目录名称或文件名称;类型值
    其中,类型值表示分号前面的路径的类型,其定义如下:
    *  3 表示物理路径+文件名称
    *  4  表示物理路径+目录名称
    *  5  表示域名+文件名称
    *  6  表示域名+目录名称

    6. 不受保护的路径举例如下:
    WhitePath0=/var/www/htdocs/hello/;4
    WhitePath1=/var/www/htdocs/mine.db;3
    WhitePath2=www.test.com:80/me.gif;5
    WhitePath3=www.test.com:80/world/;6

    7. 是否浏览防御功能:ChkWTBrowsyFile=1 其中1为开启,0为关闭
    * 若开启浏览防御功能,网站安全狗则会检查浏览器请求访问的指定类型(类型在Resource字段设置)的文件是否是木马文件,若是木马则该请求就被拦截。

    8. 开启浏览防御功能时,当请求访问的指定类型文件大小达到多少字节时,网站安全狗就不检查该文件是否安全:IgnoreFileSize=1048576 。
    * 若设置为0,表示对于所有请求访问的指定类型文件,都要检查是否安全。

    9. 浏览防御功能要保护的资源类型:类型1|类型2|类型3
      举例:Resource=asa|asax|ascx|ashx|asmx|asp|aspx|cdx|cer

    10. 是否开启上传防御功能:ChkWTPost=1  其中1为开启,0为关闭。
    *若开启上传防御功能,则浏览器上传文件时,网站安全狗会检查该文件是否是木马文件。若是,则拦截。

    11. 是否禁止上传特定类型文件(具体的类型在ForbidPostExt字段设置):ChkForbidPostExt=1其中1为是,0为否。

    12. 禁止上传的文件类型:类型1|类型2|类型3
    举例:ForbidPostExt=asa|asax|ascx|ashx|asmx|asp|aspx|cdx|cer

    13. 挂马防御:
    * 是否检测cookie:ChkHTCookie=0其中1为是,0为否。
    * 是否检测上传数据:ChkHTPost=0其中1为是,0为否
    * 是否检测URLChkHTUrl=0其中1为是,0为否。
    * 发现异常时,是否将异常写入日志:SendAlert=1其中1为是,0为否

    2.2 网站资源防盗链(WPCLinkGate.conf)
    盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。
    本程序通过Reference技术和Session技术解决防盗链问题。Reference技术通常用于图片、mp3等资源这种容易被人用html嵌入到其他网站资源的资源。Session技术一般只用于论坛和社区网站。
    两种防护方式:
    1)引用(Reference)方式:是通过判断referer变量的值来判断图片或资源的引用是否合法,只有在设定范围内的referer,才能访问指定的资源,从而实现了防盗链的目的。Reference方式能够让本域名和其他指定信任域名正常链接被保护资源。该技术主要用来保护下载类资源,如rarjpg
    2)会话(Session)方式:先从客户端获取用户信息,然后根据这个信息和用户请求的文件名字一起加密成字符串(Session ID)作为身份验证。只有当认证成功以后,服务端才会把用户需要的文件传送给客户。一般我们会把加密的Session ID作为URL参数的一部分传递给服务器,由于这个Session ID和用户的信息挂钩,所以别人就算是盗取了链接,该Session ID也无法通过身份认证,从而达到反盗链的目的。这种方式对于分布式盗链非常有效。该技术主要用来保护影音资源,如mp3flv

    配置说明:
    1. 是否开启防盗链功能:ChkLinkGate=1 1开启,0关闭

    2. 引用方式:
    (1referenc校验设置:状态(0不启用 1启用)Reference=1
    (2referenc校验:本域名信任(0 关闭 1开启)RLocalSite=1
    (3referenc校验:其他域名信任(0 关闭 1开启)ROtherSite=1
    (4其他信任域名列表个数:若为0,则TSite0等字段不存在TrustCount=2

    (5其他信任域名列表:本机网站域名,本机网站域名,本机网站域名…;信任域名,信任域名…
    * 这里的本机网站域名必须与APACHE配置的serverName,ServerAlias字段所设的字段匹配。
    * 多个本机网站域名之间用英文逗号隔开(这些本机网站域名指的是同一个网站的多个域名),多个信任域名之间也用英文逗号隔开。
    * “本机网站域名”和“信任域名”之间用英文分号隔开。最后一个本机网站域名和最后一个信任域名之后不包括逗号(,)。
    * 填写以下字段时请注意字段名末尾的数字:TSite0,TSite1,TSite2。请严格按照此规则定义字段名字。
    举例:
    如果你只有一个site需要定义,则字段名应为:TSite0;如果你有四个site需要定义,则字段名应为:TSite0,TSite1,TSite2,TSite3.
    TSite1=www.test2.com;www.sina.com,www.sohu.com

    (6)引用方式保护的资源类型:后缀名|后缀名|缀名
    *各字符间不要有空格或制表符。最后一个后缀名之后不要包含竖线(|
    举例:Resource=rar|jpg

    (7)不受引用方式防盗链规则保护的本服务器上的域名数目:SpeSiteCount=1
    * 若为0,则Site0等字段不存在

    (8不受引用方式防盗链规则保护的域名:Site0= www.test3.com
    * 这里的站点必须是本服务器上的站点。
    * 域名必须与APACHE配置的serverName,ServerAlias字段所设的字段匹配

    3. 会话方式
    (1session方式校验:状态(0不启用 1启用)Session=1
    (2session校验:本域名信任(0 关闭 1开启)SLocalSite=1
    (3设置校验的用户名:Name=name
    (4设置校验的密码:Password=password
    (5客户端校验行为:1基于浏览器内存方式 2基于文件方式:Browser=1
    (6session有效时间,单位为分钟TimeOut=10
    (7)会话方式保护的资源类型:后缀名|后缀名|后缀名
    *各字符间不要有空格或制表符。最后一个后缀名之后不要包含竖线(|)
    SResource=mp3|flv
    (8不受会话方式防盗链规则保护的本服务器上的网站个数:SSpeSiteCount=1
    (9不受会话方式防盗链规则保护的域名,这里的站点必须是本服务器上的站点。SSite0=www.test4.com
    (10发现盗链时,是否将该攻击写入日志(0 1是)SendAlert=1

    验证生效方法:
    如果你开启了网站资源防盗链功能,并且有客户端(浏览器)在访问您的网站时,违反了您所设定的规则,服务器会阻止访问并返回您所设定的提示信息。

    2.3 网站特定资源防下载(WPCRejectDown.conf)
    网站特定资源保护通过对某些特定资源的设置来确保它们不被下载或盗用。
    注意:
    填写的路径(Path)和保护资源类型(Resource)中只要客户端的访问条件满足其中一种都会被拦截

    配置说明:
    1. 是否开启防下载功能:1表示是,0表是否 ChkRejectDown=1

    2. 禁止下载的路径规则数PathCount=3

    3. 禁止下载的路径:本机网站域名或物理路径/目录名称或文件名称;类型值
    其中类型值表示分号前面的路径的类型,其定义如下:
    * 3   表示物理路径+文件名称
    * 4   表示物理路径+目录名称
    * 5   表示域名+文件名称
    * 6   表示域名+目录名称
    注意:
    * 本机网站域名必须与APACHE配置的serverName,ServerAlias字段所设的字段匹配。
    * 填写以下字段时请注意字段名末尾的数字:Path0,Path1,Path2。请严格按照此规则定义字段名字。
    举例:
    如果你只有一个site需要定义,则字段名应为:Path0 ,如果你有四个site需要定义,则字段名应为:Path0,Path1,Path2,Path3.
    Path0=/var/www/htdocs/hello/;4
    Path1=/var/www/htdocs/mine.db;3
    Path2=www.test.com:80/me.gif;5
    Path3=www.test.com:80/world/;6

    4. 保护的资源类型:后缀名|后缀名|后缀名
    *各字符间不要有空格或制表符,最后一个后缀名之后不要包含|号。
    举例:Resource=mdb|dll

    5. 发现文件被非法下载时,是否将该攻击写入日志:1表示是,0表是否:SendAlert=1

    验证生效方法:
    如果你开启了特定资源防下载功能,并且有客户端(浏览器)在访问您的网站时,违反了您所设定的规则,服务器会阻止访问并返回您所设定的提示信息。

    2.4 网站漏洞防护WPCDefSql.conf)
           网站安全狗的设计是根据攻击特征库,对用户输入进行过滤,从而达到防护SQL注入的目的。此功能中用户可以根据实际需要对过滤规则进行新增、修改、删除。
           SQL注入英文名叫SQL Injection,是存在于应用程序数据库层的安全漏洞。攻击者利用这个漏洞在输入的资料字串中夹带SQL指令。一旦应用程序忽略了检查,这些夹带进去的指令就会被数据库服务器误认为正常的SQL指令而执行,从而导致数据库结构以及系统资料外泄,最终使系统遭到破坏。
    配置说明:
    1. 是否开启防注入功能:1开启,0关闭 ChkSqlAttackStatus=1

    2. 发现被注入时,是否将该攻击写入日志:1发送,0不发送SendAlert=1

    3. 手动在线更新SQL规则地址UpdateUrl=http://www.safedog.cn/upload/configFile/sqlRule.dat

    4. 白名单路径个数:白名单中的路径不受防注入功能的保护。WhitePathCount=3

    5. SQL防注入白名单:
    路径的格式有两种,分别为:
    1域名/目录路径名称;6
    2域名/文件路径名称;5
    举例:
    WhitePath0=www.test.com:80/;6
    WhitePath1=www.test.com:80/hello/;6
    WhitePath2=www.test.com:80/world/index.html;5

    6. 防sql注入正则表达式规则数:Count=5

    7. 正则表达式规则:
    1)第0条正则表达式:
    *检测Cookie内容是否用第0条正则表达式CheckCookie0=1
    * 检测Post内容是否用第0条正则表达式CheckPost0=1
    * 检测URL内容否用第0条正则表达式CheckUrl0=1
    *第0条正则表达式规则Sql0=;{0,1}'{0,1}\){0,1}(\+| )*\b(and|or)\b(\+| )+.*(=|<|>).*
    * 对第0条正则表达式规则的说明Description0=防止and or 方式注入
    这个字段是为了向用户说明该正则表达式的用途,安全狗程序不会使用该字段,故该字段可有可无,但建议用户在新建一个正则表达式时都添加该字段,方便理解和记忆。

    (2)第1条正则表达式:
    *检测Cookie内容是否用第1条正则表达式:CheckCookie1=1
    *检测Post内容是否用第1条正则表达式 :CheckPost1=1
    * 检测URL内容否用第1条正则表达式:CheckUrl1=1
    * 第1条正则表达式规则:Sql1=\b(create|drop|backup)\b(\+| )+\bdatabase\b(\+| )+\w*
    * 第1条正则表达式的说明:Description1=防止对数据库进行创建、删除、备份操作

    (3)第2条正则表达式:
    CheckCookie2=1
    CheckPost2=1
    CheckUrl2=1
    Sql2=\b(drop|truncate|create)\b(\+| )+\btable\b(\+| )+\w*
    Description2=防止对数据库进行删除、创建表操作

    (4)第3条正则表达式:
    CheckCookie3=1
    CheckPost3=1
    CheckUrl3=1
    Sql3=\bdbo\.\w+
    Description3=防止数据库系统的存储过程被执行

    (5)第4条正则表达式:
    CheckCookie4=1
    CheckPost4=1
    CheckUrl4=1
    Sql4=\bdeclare\b(\+| )+.+
    Description4=防止注入存储过程

    8. 是否检测URL路径长度(1是,0否)ChkUrlLenStatus=1

    9. URL路径最长的长度:MaxUrlLen=16385

    验证生效方法:
    如果你开启了SQL防注入功能,并且有客户端(浏览器)在访问您的网站时,违反了您所设定的规则,服务器会阻止访问并会返回您所设定的提示信息。


    2.5 IP白名单(WPCWhiteIP.conf)
    IP白名单设置可以通过设置一些值得信赖IP地址为白名单地址,从而使它们能够顺利的访问网站。
    注意:
    IP白名单的优先级比IP黑名单的高
    配置说明:
    1. 是否开启允许白名单IP功能,1表示开启,0表示关闭:ChkWhiteIP=1
    2. 是否允许爬虫网站功能,1表示允许,0表示不允许:AllowSpider=1
    3. 搜索引擎爬虫的关键字数量,若个数为0,则SpiderKey0等字段不存在:SpiderCount=8
    4. 搜索引擎爬虫的关键字
    SpiderKey0=baiduspider+
    SpiderKey1=googlebot/
    SpiderKey2=iaskspider/
    SpiderKey3=msnbot/
    SpiderKey4=sogou push spider/
    SpiderKey5=sogou web spider/
    SpiderKey6=yahoo! slurp
    SpiderKey7=yodaobot/

    5. 白名单IP段的个数,若个数为0,则WhiteIP0等字段不存在:WhiteIPCount=3

    6. 针对功能模块的IP白名单: 开始IP-结束IP,规则名称#保护模块编号$
    其中,功能模块编号标志IP白名单适用的保护模块,其定义如下:
    *1   网站漏洞防护;
    *2   网马防护;
    *5   网站资源防盗链;
    *6   网站特定资源保护。
    注意:
    支持同一个IP白名单适用多个保护模块,每个模块以$分隔,并且以$结尾。
    举例: WhiteIP0=192.168.1.1-192.168.1.255,规则1#1$2$5$ 此IP白名单只针对网站漏洞防护、网马防护、网站资源防盗链三个保护模块生效。
    若未写保护模块,则IP白名单全局生效。
    举例: WhiteIP1=192.168.2.1-192.168.2.255,规则2  此IP白名单全局生效。

    验证生效方法:
    如果你将某个IP添加进了白名单,即使客户端(浏览器)在访问您的网站时,违反了您所设定的防护规则,服务器也会允许此行为。

    2.6 IP黑名单(WPCBlackIP.conf)
    IP黑名单设置可以通过设置一些不良IP地址为黑名单地址,从而限制它们访问网站。
    配置说明:
    1. 是否开启拦截黑名单IP功能(1开启,0关闭)ChkBlackIP=0
    2. 发现黑名单访问时,是否将该攻击写入日志(1开启,0关闭)SendAlert=1
    3. 黑名单IP段的个数,若个数为0,则BlackIP0等字段就不存在Count=3
    4. 黑名单IP段:IP,子网掩码:IP段开始-IP段结束
    举例:
    BlackIP0=192.16.3.23,255.255.255.255:192.16.3.23-192.16.3.23
    BlackIP1=10.23.45.44,255.255.255.224:10.23.45.33-10.23.45.62
    BlackIP2=175.62.6.32,255.255.255.248:175.62.6.33-175.62.6.38

    验证生效方法:
    如果你将某个IP添加进了黑名单,该IP在访问您的网站时,服务器会阻止访问并返回您所设定的提示信息

    2.7 防护日志设置(WPCLog.conf)
    网站安全狗会将其防护攻击的日志写入其安装目录下的Analysis/SynSvr.dat数据库。
    配置说明:
    1. 日志保存天数:SaveDays=30

    2.8 防护总开关设置(WPCGeneralDefInfo.conf)
    该文件是网站安全狗防护功能的总开关。
    注意:
    如果关闭总开关,网站安全狗所有防护功能均失效。
    配置说明:
    1. [GeneralInfo]:
    Switch=1
    SynServerStatus=1
    这里必须要保持两个字段都为1,总开关才能开启,若其中一个为0,或两个都为0时,总开关都会关闭。

    2.9 日志查看工具——sdalog
    sdalog工具可以从安装目录下的Analysis/SynSvr.dat数据库中读取日志并展示给用户。
    支持分时间段查询,分类型查询,将查询结果输出到文件。
    使用说明:
    1. 在linuxshell终端中运行sdalog命令,并带上相应参数。
    参数说明如下:
    1sdalog –-helpsdalog –h  该命令可以在线查看sdalog的帮助信息
    2sdalog --file sdalog –f     该命令将在网站安全狗的安装目录下新建一个.log文件,文件的名称是当前时间。并将查询到的防护记录存放到该文件中。
    3 sdalog –-time=2011-10-12-07:45:42/2011-12-30-22:32:10该命令将会查询并显示2011-10-12-07:45:422011-12-30-22:32:10间的防护记录。
    该参数的格式为:
    *查询“起始时间”到“结束时间”之间的记录:sdalog –-time=起始时间/结束时间
    * 查询“起始时间”之后的所有记录:sdalog –-time=起始时间/   
    * 查询“结束之间”之前的所有记录: sdalog –-time=/结束时间
    * 时间格式:YYYY-MM-DD-HH:MM:SS (如:2011-06-20-15:22:59
    也可以省略掉后面的时间,但至少保留年份。这个格式会将后面省略掉的时间默认为最小。如:
    YYYY-MM (如:2011-07,等同于:2011-07-01-00:0000
    YYYY (如:2011,等同于:2011-01-01-00:00:00
    YYYY-MM-DD-HH (如:2010-08-12-18,等同于:2010-08-12-18:00:00

    4sdalog –-type=all
    该命令将查询所有类型的防护记录,格式为:sdalog –-type=类型
    其中,“类型”为下面其中一项:
    * all       (所有类型)
    * inject  (SQL防注入防护记录)
    * link     (防盗链防护记录)
    * dl        (防下载防护记录,dldownload)
    * cc       (cc防护记录)
    * blackip         (IP黑名单防护记录)
    * Webtrojan   (网页木马)
    * Hangtrojan  (网页挂马)

    2. 参数–-time、–-type和-f可以组合使用。
    如果参数中不带–-time参数,则默认为查询所有时间的记录。
    如果参数中不带–-type参数,则默认为查询所有类型的记录。
    如果参数中不带-f或-file参数,则默认将查询结果输出到终端。
    举例:
    直接运行命令sdalog,不带任何参数,表示查询所有时间所有类型的防护记录,并向结果输出到终端。

    3. 输出到终端时,每一栏都有固定的宽度,如果结果很乱,请将终端设置为全屏。如果某一栏的记录超过固定宽度,则会被截断,剩余的部分用省略号代替。输出到文件时,每一栏会保留完整结果。
    回复

    使用道具 举报

    发表于 2014-7-6 10:00:24 | 显示全部楼层
    支持一个  
    回复 支持 反对

    使用道具 举报

    发表于 2016-11-19 14:50:10 | 显示全部楼层
    问下什么时候支持nginx-1.99版本
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|Archiver|手机版|安全狗论坛-汇聚安全的力量 ( 闽ICP备14014139号-1  

    GMT+8, 2018-4-23 15:22 , Processed in 0.188479 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表