CentOSでRPMFORGEからntopをインストール
パケットをキャプチャーしてプロトコルごとに集計してグラフを描いてくれる「ntop」の構築方法のメモです。 昨今はスイッチングHUBが主流となり、そのままでは自分以外へのユニキャストパケットを調べることはできません。 今回はポートのミラーリングに対応しているHUBを対象としました。 監視するHUBのアップリンクポートのアウトバウンド、インバウンドをそれぞれミラーリングして監視するため、NICをオンボードとは別にさらに2枚増設しました。 合計NIC3枚挿し状態です。 増設NICには特にIPを指定せず、オンボードのNICにはDHCPでIPを設定します。 他のPCからNTOPのページを見る時は、オンボードNICのIPアドレス宛にアクセスします。 ★【STEP1】 CentOS 5.2 をインストールし、基本的設定をする★ ①OSをインストールする 極力、不要なソフトはインストールしない ・「GNOMEデスクトップ環境、ベース」のみインストール。 ・セキュリティレベルで、SELinux は有効でインストール。 ・FWは不特定に対しポート3000番(ntopのWebサーバ)のみ許可。 ・一般管理作業用ユーザ「user01」を作成。 >CentOS Release Note →・Next >What language ◎Japanese →・Next >このシステム用の適切なキーボード ◎日本語 →・次 > ◎インストール →・次 >ハードドライブのパーティション設定 ◎すべてのパーティションを削除してデフォルトのレイアウトを作成 →・次 >ネットワークデバイス ◎eth0(増設NIC) IPv4:Manual configuration(0.0.0.0/255.255.255.255)、IPv6:Disable ◎eth1(増設NIC) IPv4:Manual configuration(0.0.0.0/255.255.255.255)、IPv6:Disable ◎eth2(オンボード) DHCP (最終的には固定アドレスにする等。) →・次 >マップ内で地域を ◎アジア/東京 →・次 >root ユーザーのパスワードを入力してください ◎Rootパスワード(P):「○○○○○○」 →・次 >CentOSのデフォルトインストール ◎Desktop-Gnome ◎今すぐカスタマイズする(下記以外はチェックを外した。) →・次 >デスクトップ環境 ◎GNOME デスクトップ環境 >アプリケーション ◎グラフィカルインターネット >ベースシステム ◎X Window System ◎ベース >言語 ◎日本語のサポート →・次 >インストールの開始 →・次 >必要なインストールメディア(CD #1、#2、#3、#4が必要。) →・続行 ~インストール~ >ようこそ →・進む >ファイアウォール ◎ファイアウォール:有効 >信頼できるサービス(下記のみ。他はチェック外した。) ◎その他のポート「ポート:3000、プロトコル:tcp」 →・進む >SELinux ◎Enforcing →・進む >日付と時刻 →・進む >ユーザーの作成 ◎user01「△△△△△△」 →・進む >サウンドカード →・進む >追加のCD →・終了 ②RPM-PGP-KEYをインポート ●インストールCD#1を挿入してから $ su - # cd /media/CentOS_5.2_Final/ # rpm --import RPM-GPG-KEY-CentOS-5 ③シェルで、何文字か入力して上下矢印を押すと、履歴のなかから一致するものだけが表示される ●bash の history-search-backward を有効に # vi ~/.bashrc bind ’”\e[A”: history-search-backward’ bind ’”\e[B”: history-search-forward’ [user01]$vi ~/.bashrc 以下同様 ④一般管理用ユーザ「user01」をsudoで作業可能にする ● /etc/sudoers ファイルを編集 # visudo root ALL=(ALL) ALL (←既存行であるこの行をコピペして。) # added by hogehoge user01 ALL=(ALL) ALL (最終的にはコメントアウトする等。) ⑤不要なサービスの自動起動を停止する ●メモリの搭載量、使用量を確認する。 再起動して $ free -m total used free 1003 501 501 ●自動起動するサービスを確認 $ sudo /sbin/chkconfig ?list | grep 5:on ●不要かどうか判断に迷ったら、サービスの解説を見る $ rpm ?qif /etc/init.d/「デーモン名」 または $ yum provides 「デーモン名」 および $ yum info 「デーモン名」 など。 ●不要なサービスの自動起動を停止(今回の用途であれば、以下は停止してもいいか。) $ sudo /sbin/chkconfig avahi-daemon off $ sudo /sbin/chkconfig bluetooth off $ sudo /sbin/chkconfig cups off $ sudo /sbin/chkconfig firstboot off $ sudo /sbin/chkconfig hidd off $ sudo /sbin/chkconfig ip6tables off $ sudo /sbin/chkconfig mcstrans off $ sudo /sbin/chkconfig mdmonitor off $ sudo /sbin/chkconfig netfs off $ sudo /sbin/chkconfig nfslock off $ sudo /sbin/chkconfig pcscd off $ sudo /sbin/chkconfig portmap off $ sudo /sbin/chkconfig restorecond off $ sudo /sbin/chkconfig rpcgssd off $ sudo /sbin/chkconfig rpcidmapd off $ sudo /sbin/chkconfig sendmail off $ sudo /sbin/chkconfig sshd off $ sudo /sbin/chkconfig xfs off $ sudo /sbin/chkconfig yum-updatesd off ●再起動してメモリの使用量を再確認 $ sudo /sbin/shutdown -r now $ free -m total used free 1003 454 548 ⑥最新の状態にする。 ●yumのプロキシ設定 $ sudo vi /etc/yum.conf proxy=http://「proxyサーバのIP」:「ポート番号」/ ●yum でアップデート(すごく時間がかかる) $ sudo yum check-update $ sudo yum -y update ⑦NTPサーバを導入する。 ●NTPサーバをインストールして、設定する $ sudo rpm -q ntp (インストールされているか確認) なければ、インストールする。 $ sudo yum -y install ntp $ sudo vi /etc/ntp.conf Server 「ntpサーバのIP」 $ sudo /sbin/chkconfig ntpd on $ sudo /sbin/service ntpd start ⑧その他、適宜 ●固定IPアドレスを設定するなら。 $ sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO=none NETMASK=255.255.255.0 IPADDR=198.168.xxx.xxx GATEWAY=198.168.xxx.xxx ●ホスト名を設定するなら。 $ sudo vi /etc/sysconfig/network HOSTNAME=CentWeb (hogehoge) /etc/nsswitch.conf hosts: files dns /etc/resolv.conf ; generated by /sbin/dhclient-script search local nameserver 192.168.xxx.xxx ●定期的に再起動させるなら。 cron で以下のバッチファイルを実行する。 実行したい周期に合わせて、「/etc/cron.daily/」「/etc/cron.weekly/」「/etc/cron.monthly/」の配下に再起動するバッチファイルを置く。 #vi /etc/cron.monthly/reboot.sh #!/bin/sh shutdown -r now #chmod 755 /etc/cron.monthly/reboot.sh ★【STEP2】 RPMFORGEを追加する★ ①RPMFORGEを追加する。 ●シェルのプロキシ設定 $ su - # export http_proxy=http://「proxyサーバのIP」:「ポート番号」/ # export ftp_proxy=http://「proxyサーバのIP」:「ポート番号」/ ●ワークディレクトリ作成 # mkdir work # cd work ●RPMの取得 # wget http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm # rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm ●設定変更(明示的に指定した時のみrpmforgeを有効にする。) # cp -p /etc/yum.repos.d/rpmforge.repo /etc/yum.repos.d/rpmforge.repo.org # vi /etc/yum.repos.d/rpmforge.repo enabled = 1 を enabled = 0 に変更。 # diff /etc/yum.repos.d/rpmforge.repo.org /etc/yum.repos.d/rpmforge.repo 8c8 < enabled = 1 --- > enabled = 0 ●GPG-KEY取得、インポート # wget http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt # rpm --import RPM-GPG-KEY.dag.txt ●リポジトリ確認 # yum --enablerepo=rpmforge list ★【STEP3】 ntopをインストールし、設定する★ ①ntopをインストール ●yumで一時的にRPMFORGEレポジトリを有効にして、インストールする。 # yum -enablerepo=rpmforge install ntop ②ntopを設定 ●初期設定 # ntop -A Please enter the password for the admin user: 「□□□□□□」 Please enter the password again: 「□□□□□□」 ●起動スクリプトの編集 #vi /etc/init.d/ntop start()内の daemon $prog -d -L @/etc/ntop.conf を daemon $prog @/etc/ntop.conf -d -L に変更。 ●自動起動の設定 # chkconfig ntop on ●再起動してメモリの使用量を再確認 $ sudo /sbin/shutdown -r now $ free -m total used free 1003 490 512 ●別のPCから、ntopのページに接続してntopを設定 http://「ntopをインストールしたマシンのIPアドレス」:3000/ にWebブラウザで接続。 ①監視するNICを指定 >Admin >>Configure >>>Startup Options ◎Capture Interfaces (-i) : eth0 eth1 ②ntopを再起動する。 $ sudo /etc/init.d/ntop restart ★【STEP4】 SELinuxを設定する★ ①サービスがうまく動かない場合に、selinux が原因なのかどうかの切り分け方法 ●一時的にselinux を停止させ、それでサービスが動くかを見る。動けば、selinux が原因。 $ sudo /usr/sbin/getsebool $ sudo /usr/sbin/setsebool 0 (Permissive モードにする) 切り分けできたら、Enforcing モードに戻す。 $ sudo /usr/sbin/setsebool 1 ●その他に有用なコマンド $ sudo /usr/bin/seinfo $ sudo /usr/sbin/sestatus $ sudo cat /etc/selinux/config $ sudo /sbin/ausearch -m AVC ●動いているプロセスを確認 $ ps -ef ●その他 nmap コマンド (インストールが必要) 以上だぎゃ。
スポンサーサイト
テーマ:UNIX/Linux - ジャンル:コンピュータ