ossec 2.8.3複数台のサーバの最も完全な構築と導入


OSsecは、Windows、Linux、OpenBSD/FreeBSD、MacOSなどのオペレーティングシステムで動作するオープンソースのマルチプラットフォームの侵入検出システムです.ログ分析、全面検出、root-kit検出、政策モニタリング、リアルタイムアラーム、積極的な応答が含まれています.ダウンロード先:http://www.ossec.net/downloads/原理:ossec 2.8.3 多台服务器最全搭建部署_第1张图片
ossec基本コマンド:
//  ossec
# /var/ossec/bin/ossec-control start
//  ossec
# /var/ossec/bin/ossec-control restart
//  ossec
# /var/ossec/bin/ossec-control stop
//      
# /var/ossec/bin/agent_control -lc //    
# /var/ossec/bin/list_agents -a //     
/var/ossec/bin/ossec-control status //    

一、ossec-server側の配置
1.SElinuxの使用不可
 
# vim /etc/selinux/config 

編集/etc/selinux/config、SELINUX行を見つけて変更:SELINUX=disabled
2.SElinuxを閉じる
# setenforce 0

3.80ポートをオンにする必要があります.CentOS 7.0ではデフォルトでfirewallをファイアウォールとして使用しています.ここではcentos 7のファイアウォールをiptablesに変更します.firewallを閉じる:
//  firewall
# systemctl stop firewalld.service  
//  firewall     
# systemctl disable firewalld.service 

4.iptablesファイアウォールの取り付け
//  
# yum install iptables-services
//          
# vi /etc/sysconfig/iptables

元のファイルを空にし、コピーして貼り付けて保存します.
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 514 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 1514 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

OSsec通信はudp 5141514ポート(コマンド:#netstat-unlp|grep ossecで表示可能)を使用するため、次の2つの文が追加されています.-INPUT-m state–state NEW-m udp-p–dport 514-j ACCEPT-A INPUT-m state–state NEW-m udp-p udp–dport 1514-j ACCEPT
5.iptablesを開く:
//             
# systemctl restart iptables.service
//         
# systemctl enable iptables.service

6.必要なツールをインストールする
# yum install wget gcc make
(1)         :
# yum install sendmail

(2)   mysql    :
# yum install mysql mysql-server mysql-devel 
mysql-server       ,      :
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server

(3)   web    :
# yum install httpd php php-mysql

(4)httpd、mysql、sendmail    
	# /etc/init.d/httpd start
	# /etc/init.d/mysqld start
	# /etc/init.d/sendmail start
	  
	# for i in {httpd,mysqld,sendmail}; do service $i restart; done

7.サーバossec-serverのインストール
# wget https://bintray.com/artifact/download/ossec/ossec-hids/ossec-hids-2.8.3.tar.gz
# tar zxf ossec-hids-2.8.3.tar.gz
# cd ossec-hids-2.8.3/
#cd src/
//    mysql   
# make setdb 
//     :
Error: PostgreSQL client libraries notinstalled.
Info: Compiled with MySQL support. //ossec  mysql   
# cd ../
# ./install.sh

インストール手順は次のとおりです:cn#選択言語Enter#サーバ#インストールをserver/var/ossec#インストールディレクトリに続行
** Para instalação em português, escolha [br].
  **          ,     [cn].
  ** Fur eine deutsche Installation wohlen Sie [de].
  ** Για εγκατάσταση στα Ελληνικά, επιλέξτε [el].
  ** For installation in English, choose [en].
  ** Para instalar en Español , eliga [es].
  ** Pour une installation en français, choisissez [fr]
  ** A Magyar nyelvű telepítéshez válassza [hu].
  ** Per l'installazione in Italiano, scegli [it].
  **    でインストールします.  して さい.[jp].
  ** Voor installatie in het Nederlands, kies [nl].
  ** Aby instalować w języku Polskim, wybierz [pl][/pl].
  ** Для инструкций по установке на русском ,введите [ru].
  ** Za instalaciju na srpskom, izaberi [sr].
  ** Türkçe kurulum için seçin [tr].
  (en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]: cn
 OSSEC HIDS v2.8.1      - http://www.ossec.ne
 
      OSSEC HIDS    .
                   C    .
             ,     .

          (server, agent, local or help)? server 
    Server      .
  	         .

     OSSEC HIDS       [/var/ossec]:  /var/ossec

	OSSEC HIDS      /var/ossec .
        OSSEC HIDS.

      e-mail   ? (y/n) [y]: y

         e-mail   ?  ****@***.com
   
	       SMTP     : alt1.gmail-smtp-in.l.google.com.
  	       ? (y/n) [y]: n
  	
        SMTP    IP     ? 127.0.0.1

                ? (y/n) [y]: y

	             .

       rootkit   ? (y/n) [y]: y

	rootkit      .
 	                             .
 	  ,       IP                 .
 	     ,     :
 	http://www.ossec.net/en/manual.html#active-response
        (active response)   ? (y/n) [y]: y

	       
	     ,                    .
	              /etc/hosts.deny.
	       iptables(linux) ipfilter(Solaris,
	FreeBSD   NetBSD)         .
	          SSHD     ,        
	       .                 ,
	         snort    .

           (firewall-drop)   ? (y/n) [y]:  y

	     (firewall-drop)      >= 6     
	           :8.8.8.8
	
         IP     ? (y/n)? [n]:  y

	   IP (       ): 10.10.10.96

          syslog  (port 514 udp)? (y/n) [y]:  y

	    syslog    .
              :
	-- /var/log/messages
	-- /var/log/secure
	-- /var/log/maillog

	-           ,         ossec.conf 
	      .
	               http://www.ossec.net     .
 ---   ENTER     ---
-     Makefile
INFO: Little endian set.
…………      …………

      Redhat Linux.

        OSSEC HIDS           

         .

    OSSEC HIDS:
/var/ossec/bin/ossec-control start

    OSSEC HIDS:
/var/ossec/bin/ossec-control stop

          ,    /var/ossec/etc/ossec.conf

     OSSEC HIDS.
        ,        bug,
[email protected]       [email protected]     .
( http://www.ossec.net/en/mailing_lists.html ).

     http://www.ossec.net       

---    ENTER      (         ). ---

上記の内容に遭遇するまで、インストールが完了したことを説明します.次に、oosecがmysqlをサポートするように構成し、mysqlテーブルを作成します.
//             :
# /var/ossec/bin/ossec-control enable database
//     
# service mysqld start
# /usr/bin/mysql_secure_installation
# mysql -uroot -p
mysql> create database ossec;
mysql> grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to ossec@localhost identified by 'ossec';
mysql> flush privileges;
mysql> \q
//  MySQL    MySQL :
# mysql -uossec -p ossec < src/os_dbd/mysql.schema 
//Enter password:*****
//           ,         :
# chmod u+w /var/ossec/etc/ossec.conf
# vi /usr/local/ossec/etc/ossec.conf//     
#  MySQL  :
<ossec_config>
    <database_output>
        <hostname>localhost</hostname>
        <username>ossec</username>
        <password>ossec</password>
        <database>ossec</database>
        <type>mysql</type>
    </database_output>
</ossec_config>
#                      syslog,
#        ossec.conf    syslog      ,
#  ossec.conf  ,           ,            :
<remote>
    <connection>syslog</connection>
    <allowed-ips>10.10.10.0/16</allowed-ips>
  </remote>

OSsecの起動
# /var/ossec/bin/ossec-control start

実際の実験中にossecサービス側を起動するには、クライアントを追加する必要があります.そうしないと、サービス側を直接起動することは失敗します.次のコマンドでログを表示すると、次のエラーが発生します.
# cat /var/ossec/logs/ossec.log

2018/03/5 23:43:15 ossec-analysisd(1210): ERROR: Queue '/queue/alerts/ar' not accessible: 'Connection refused'.
2018/03/5 23:43:15 ossec-analysisd(1301): ERROR: Unable to connect to active response queue.

二、ossec-server端にagentクライアントを追加する
# /var/ossec/bin/manage_agents
****************************************
   * OSSEC HIDS v2.8.1 Agent manager.     *
   * The following options are available: *
   ****************************************
      (A)dd an agent (A).
      (E)xtract key for an agent (E).
      (L)ist already added agents (L).
      (R)emove an agent (R).
      (Q)uit.
Choose your action: A,E,L,R or Q: A

Adding a new agent (use '\q' to return to the main menu).
Please provide the following:
A name for the new agent: ossec-agent-66
The IP Address of the new agent: 10.10.10.66
An ID for the new agent[001]:  066
Agent information:
ID:066
Name:ossec-agent-66
IP Address:10.10.10.66
Confirm adding it?(y/n): y
Agent added.

****************************************
   * OSSEC HIDS v2.8.1 Agent manager.     *
   * The following options are available: *
   ****************************************
      (A)dd an agent (A).
      (E)xtract key for an agent (E).
      (L)ist already added agents (L).
      (R)emove an agent (R).
      (Q)uit.
Choose your action: A,E,L,R or Q: E

  Available agents:
  ID: 001, Name: ossec-agent, IP: 192.168.100.104
  Provide the ID of the agent to extract the key (or '\q' to quit): 001

  Agent key information for '001' is:   key
  
** Press ENTER to return to the main menu.

鍵を保存して
OSsecの起動
# /var/ossec/bin/ossec-control start
//  
# /etc/init.d/ossec start

三、クライアントossec-agentのインストール
# wget https://bintray.com/artifact/download/ossec/ossec-hids/ossec-hids-2.8.3.tar.gz
# tar zxf ossec-hids-2.8.3.tar.gz
# cd ossec-hids-2.8.3/
#  ./install.sh 
** Para instalação em português, escolha [br].
  **          ,     [cn].
  ** Fur eine deutsche Installation wohlen Sie [de].
  ** Για εγκατάσταση στα Ελληνικά, επιλέξτε [el].
  ** For installation in English, choose [en].
  ** Para instalar en Español , eliga [es].
  ** Pour une installation en français, choisissez [fr]
  ** A Magyar nyelvű telepítéshez válassza [hu].
  ** Per l'installazione in Italiano, scegli [it].
  **    でインストールします.  して さい.[jp].
  ** Voor installatie in het Nederlands, kies [nl].
  ** Aby instalować w języku Polskim, wybierz [pl][/pl].
  ** Для инструкций по установке на русском ,введите [ru].
  ** Za instalaciju na srpskom, izaberi [sr].
  ** Türkçe kurulum için seçin [tr].
  (en/br/cn/de/el/es/fr/hu/it/jp/nl/pl/ru/sr/tr) [en]: cn
  OSSEC HIDS v2.8.1      - http://www.ossec.net

       OSSEC HIDS    .
                   C    .

             ,     .

		         (server, agent, local or help)?  agent
		
		    Agent(client)      .
	
		         .
		
		    OSSEC HIDS       [/var/ossec]:  /var/ossec
	
		     OSSEC HIDS.
		
		    OSSEC HIDS     IP      : 10.10.10.96
		
		               ? (y/n) [y]: y
			             .
		
		      rootkit   ? (y/n) [y]: y
			rootkit      .
		
		       (active response)   ? (y/n) [y]: y
		
		             :
			-- /var/log/messages
			-- /var/log/secure
			-- /var/log/xferlog
			-- /var/log/maillog
			-- /var/log/httpd/error_log (apache log)
			-- /var/log/httpd/access_log (apache log)
			-           ,         ossec.conf 
			      .
			               http://www.ossec.net     .

			---   ENTER     ---
-     Makefile
INFO: Little endian set.

…………      …………

      Redhat Linux.
        OSSEC HIDS           

         .

    OSSEC HIDS:
/var/ossec/bin/ossec-control start

    OSSEC HIDS:
/var/ossec/bin/ossec-control stop

          ,    /var/ossec/etc/ossec.conf

     OSSEC HIDS.
        ,        bug,
[email protected]       [email protected]     .
( http://www.ossec.net/en/mailing_lists.html ).

     http://www.ossec.net       

---    ENTER      (         ). ---

                          .
      ,     'manage_agents'    
           .
/opt/ossec/bin/manage_agents

       :

http://www.ossec.net/en/manual.html#ma

クライアントossec-agent構成
実はossecクライアントを構成するのは、さっきサービス側から生成されたkeyをクライアントにインポートし、次のコマンドを実行します.
# /var/ossec/bin/manage_agents
***************************************
* OSSEC HIDS v2.8.1 Agent manager.     *
* The following options are available: *
****************************************
   (I)mport key from the server (I).
   (Q)uit.
Choose your action: I or Q:  I

Provide the Key generated by the server.
The best approach is to cut and paste it.
*** OBS: Do not include spaces or new lines.
  Paste it here (or '\q' to quit):  key

  Agent information:
  ID:066
  Name:ossec-agent-66
  IP Address: 10.10.10.66

  Confirm adding it?(y/n): y
    Added.
  ** Press ENTER to return to the main menu.

最後にossec-agentクライアントを起動
# /var/ossec/bin/ossec-control start
//  
# /etc/init.d/ossec start

ossecが収集したログは/var/ossec/logs/alerts/alerts.log ossec 2.8.3 多台服务器最全搭建部署_第2张图片 OSSECのalerts.logログファイル分析例
** Alert 1469594165.3684: - windows,
2016 Jul 27 12:36:05 (agent2) 192.168.1.0->WinEvtLog
Rule: 18149 (level 3) -> 'Windows User Logoff.'
User: lenovo
2016 Jul 26 21:57:29 WinEvtLog: Security:  
AUDIT_SUCCESS(4647): Microsoft-Windows-Security-  
Auditing: lenovo: lenovo-pc: lenovo-pc: User initiated  
logoff: Subject:  Security ID:   
S-1-5-21-253721302-2314373899-4153707874-1001  Account  
Name:  lenovo  Account Domain:  lenovo-pc  Logon ID:   
0xa0522ec  This event is generated when a logoff is  
initiated but the token reference count is not zero 
and the logon session cannot be destroyed.  No further
user-initiated activity can occur.  This event can be 
interpreted as a logoff event.


ログの形式は次のとおりです.
**Alert xxxxxxxxxx.xxxx: - windows(  )
                
Rule(  ):xxxxx(level x)[    ]->      
User(  ):xxx  
                  (  ID):
    :  :   :      
   :
  ID:              : 
   :                ID:
    :  


その後、サードパーティのWebインタフェースをインストールすることができます.試していない必要はありません.資料を探してインストールしてください.例えば、ossec-serverのサードパーティのWebインタフェース(analogi)をインストールします.