• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-167  評論-8  文章-0  trackbacks-0

            自:https://www.newbyter.net/?p=1403 
            一、編譯

            編譯是在Ubuntu 11.04 (32bit)下完成的,Ubuntu采用默認安裝方式。

            Snort本身用到了一些第三方的庫,這些庫默認在Ubuntu下并沒有安裝,因此需要我們自己手動安裝。具體包括:libdnet-1.12、libpcap-1.0.0、pcre-8.12、zlib-1.2.5等,除此之外,還需要安裝build-essential、flex和bison包。

            這些第三方庫的編譯安裝比較簡單,一般只需要執行以下三個命令即可:

            ./configure
            make
            sudo make install

            當所依賴的包和庫均已安裝完畢后,就可以編譯安裝snort了。

            Snort的源碼可以從www.snort.org獲得,本文使用的snort源碼版本為2.9.0.5,下載后的壓縮包名為snort-2.9.0.5.tar.gz。另外,還應下載daq源碼,因為snort在編譯時需要用到該庫。daq在snort的官方站點也直接提供了源碼下載。本文使用的daq版本為0.5,下載后的壓縮包名為daq-0.5.tar.gz。最后,需要下載snort的規則庫,因為我們需要snort工作在IDS模式下,這需要提供相應的入侵檢測規則庫。幸運的是,snort官方同樣提供了規則庫下載,不過分為收費版本和免費版本。只需要注冊一個免費的賬戶就可以下載免費版本的規則庫了。本文使用的版本庫下載后的壓縮包名為snortrules-snapshot-2905.tar.gz。編譯時并不需要用到規則庫,運行時才會用到。

            接下來是snort的編譯過程,直接./configure是可以的,但是這樣編譯出來的snort一些功能沒有啟用,不能滿足我們的需要,所以必須使用一些配置選項,具體如下:

            ./configure –enable-ipv6 –enable-gre –enable-mpls –enable-targetbased –enable-decoder-preprocessor-rules –enable-ppm –enable-perfprofiling –enable-zlib –enable-active-response –enable-normalizer –enable-reload –enable-react –enable-flexresp3

            完畢后,使用 make 命令進行編譯,編輯完畢后使用 sudo make install 完成安裝。

            下面是編譯過程中的截圖:

            【圖1】snort編譯中


            【圖2】snort編譯完畢

            二、安裝和運行

            編譯snort成功后,執行 sudo make install 就順利安裝了。snort將會被安裝到 /usr/local 目錄下。

            接下來要讓snort運行起來。現在需要解壓出剛才下載的snort規則庫壓縮包,假設解壓后的文件夾名字叫做snort-rules-2905,該文件夾下的etc目錄下有一個snort.conf文件,這個文件里面提供了一些默認配置,對本文來說是足夠了,但是要運行起來,還有一個細節需要修改:

            查找 compress_depth 20480 decompress_depth 20480 并將其中的兩個20480 都替換為 65535

            修改后記得保存一下。然后還需要將 snort-rules-2905/so_rules/precompiled/Ubuntu-10-4/i386/2.9.0.5 文件夾拷貝到 /usr/local/lib 下,并更名為 snort_dynamicrules。
            完成上面的步驟后,就可以準備開始運行snort了。

            打開控制臺,切換到 /usr/local/bin 目錄下,執行:

            sudo ./snort -dev -l /home/jian/tmp/log -h 192.168.1.0/24 -c /home/jian/soft/snort-rules-2905/etc/snort.conf

            其中 -l 參數指明了日志文件的存放位置,-h 參數指明了檢測的網段,-c 參數指明了配置文件的位置。

            如果運行成功,將會顯示類似下面的畫面:

            【圖3】成功運行snort

            三、調試

            為了方便分析snort的源碼,以及進行后續開發,一個方便的調試和開發環境是相當重要的。本文選擇采用Eclipse IDE for C/C++ Developers (下文簡稱Eclipse)作為調試和開發環境。

            首先打開Eclipse,不過需要以管理員權限打開,原因是snort在以IDS模式運行時需要管理員權限,如果直接打開則Eclipse運行在普通用戶權限下,雖然能編譯,但是運行snort將失敗。解決這一問題有多種方法,但是直接以管理員權限運行Eclipse是一個比較簡單直接的解決辦法。

            具體為:切換到eclipse所在的目錄下,執行 sudo ./eclipse 即可。

            打開Eclipse后,依次選擇菜單 File → New → Project,然后在彈出的對話框中,選擇C/C++ 分類下的Makefile Project with Existing Code,如下圖:

            【圖4】選擇項目類型

            然后點擊 Next,進入下一步。這一步需要告訴Eclipse我們的snort源碼在哪個位置,并選擇編譯器類型。編譯器類型我們選擇Linux GCC,如下圖所示:

            【圖5】定位snort源碼位置并選擇編譯器類型

            完畢后點擊Finish,Eclipse就會立刻開始編譯Snort的源碼。

            Eclipse編譯源碼是直接根據我們之前在控制臺下切換到snort源碼目錄執行的./configure(帶相應參數)后生成的makefile文件來編譯的,因此需要確保Eclipse在編譯之前我們就已經手動調用了./configure(帶相應參數)已經生成了正確的makefile文件。

            完成至此,已經離最后的成功之差一步了:

            打開Debug Configurations,并切換到Arguments選項卡,輸入:

            -dev -l /home/jian/tmp/log -h 192.168.1.0/24 -c /home/jian/soft/snort-rules-2905/etc/snort.conf

            如圖:

            【圖6】配置Debug Configurations

            好了,點擊Apply按鈕,然后Close即可。

            同樣的,也應該配置Run Configurations,這里不再贅述。

            通過以上配置,我們就可以開始調試snort源碼了。也能夠隨心所欲的修改snort中的源碼并重新編譯,進行各種實驗了。

            posted on 2012-05-22 11:09 老馬驛站 閱讀(3385) 評論(0)  編輯 收藏 引用 所屬分類: linuxsnort
            国产精久久一区二区三区| 亚洲欧洲久久久精品| 99久久www免费人成精品| 久久久久女教师免费一区| 色狠狠久久AV五月综合| 亚洲国产精品久久66| 亚洲欧美日韩中文久久| 国产高清美女一级a毛片久久w | 99久久无色码中文字幕| 色偷偷88欧美精品久久久| 韩国无遮挡三级久久| 久久人人爽人人爽人人片AV高清 | 久久人人爽人人爽人人片AV高清 | 99久久精品国产一区二区三区 | 一本色综合久久| 国产农村妇女毛片精品久久| 久久精品国产亚洲AV无码麻豆| 国产农村妇女毛片精品久久| 国产亚洲精久久久久久无码 | 国产精品美女久久久久| 久久久国产99久久国产一| 久久九九青青国产精品| 国产精品一区二区久久不卡| 久久综合狠狠综合久久综合88| 2021国产精品午夜久久| 亚洲人成无码www久久久| 午夜精品久久久久久| 久久九九免费高清视频| 久久99精品久久久久久噜噜| 欧美精品一本久久男人的天堂| 久久精品国内一区二区三区| 潮喷大喷水系列无码久久精品| 亚洲午夜久久久影院| 亚洲人成精品久久久久| 99久久国产综合精品女同图片 | 色偷偷久久一区二区三区| 国产精品99久久久精品无码| 久久精品国产亚洲AV影院| 久久丫精品国产亚洲av不卡| 久久精品国产亚洲AV高清热| 99精品国产在热久久|