ossec 2.8.3複数台のサーバの最も完全な構築と導入
OSsecは、Windows、Linux、OpenBSD/FreeBSD、MacOSなどのオペレーティングシステムで動作するオープンソースのマルチプラットフォームの侵入検出システムです.ログ分析、全面検出、root-kit検出、政策モニタリング、リアルタイムアラーム、積極的な応答が含まれています.ダウンロード先:http://www.ossec.net/downloads/原理:
ossec基本コマンド:
一、ossec-server側の配置
1.SElinuxの使用不可
編集/etc/selinux/config、SELINUX行を見つけて変更:SELINUX=disabled
2.SElinuxを閉じる
3.80ポートをオンにする必要があります.CentOS 7.0ではデフォルトでfirewallをファイアウォールとして使用しています.ここではcentos 7のファイアウォールをiptablesに変更します.firewallを閉じる:
4.iptablesファイアウォールの取り付け
元のファイルを空にし、コピーして貼り付けて保存します.
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を開く:
6.必要なツールをインストールする
7.サーバossec-serverのインストール
インストール手順は次のとおりです:cn#選択言語Enter#サーバ#インストールをserver/var/ossec#インストールディレクトリに続行
上記の内容に遭遇するまで、インストールが完了したことを説明します.次に、oosecがmysqlをサポートするように構成し、mysqlテーブルを作成します.
OSsecの起動
実際の実験中にossecサービス側を起動するには、クライアントを追加する必要があります.そうしないと、サービス側を直接起動することは失敗します.次のコマンドでログを表示すると、次のエラーが発生します.
二、ossec-server端にagentクライアントを追加する
鍵を保存して
OSsecの起動
三、クライアントossec-agentのインストール
クライアントossec-agent構成
実はossecクライアントを構成するのは、さっきサービス側から生成されたkeyをクライアントにインポートし、次のコマンドを実行します.
最後にossec-agentクライアントを起動
ossecが収集したログは/var/ossec/logs/alerts/alerts.log OSSECのalerts.logログファイル分析例
ログの形式は次のとおりです.
その後、サードパーティのWebインタフェースをインストールすることができます.試していない必要はありません.資料を探してインストールしてください.例えば、ossec-serverのサードパーティのWebインタフェース(analogi)をインストールします.
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の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)をインストールします.