セキュリティスキャナであるnessusをインストールし、
自サーバーのセキュリティチェックを行ってみました。
nessusについてはマニュアルの邦訳(Mimori
Yuki様)がありますので、
まずはそちらをご覧になってみてください。
Manualにもあるようにnessusは悪用すれば
クラッキングツールともなり得ますので
自サーバーのセキュリティチェックにのみ使うようにしましょう。
本家はhttp://www.nessus.org/です。
見てみたところ、2002年3月27日現在、安定版としてはver 1.0.10が、
開発版としては1.1.14が最新のようです。
今回はVinePlusに収録されている
nessus-1.0.6-0vl2.i386.rpm
nessus-client-1.0.6-1.i386.rpm
nessus-devel-1.0.6-1.i386.rpm
nessus-plugins-1.0.6-0vl2.i386.rpm
を使うことにしました。VinePlusから適宜ダウンロードし、
(例えば、
# rpm -ivh nessus-*
として、上記を全てインストールしましょう。
また、調べてみたところ、nessusのインストールには
GTK1.2,nmap,Openssl等が必要のようです。
必要に応じてインストールしてみてください。
rpmでのインストールが終了すると/etc/rc.d/init.d/以下に
nessusdというシンボリックリンクが出来ます。
nessusはnessusdというサーバーとnessusというクライアントを用いて
サーバーのチェックを行います。
nessusdは/etc/nessus/以下にあるnessusd.confによって設定を行います。
多くの設定が出来るようですが、とりあえずメールアドレスだけ変更することにしました。
email = xxx@mydomain.com
# nessus-adduser
でnessus用ユーザを追加します。
Using /var/tmp as a temporary file holder
Add a new nessusd user
----------------------
Login:[ユーザ名を入力]
Authentication method (cipher/plaintext) [cipher]:[Enter]
(パスワードを暗号化するかどうか:暗号でよいのでそのままEnter)
Source restriction
------------------
You can, if you will, configure this account so
that it can only
be used from a given host or subnet. For instance,
you may want
xxxxx to be able to connect to this nessusd server
only from
his work machine.(xxxxxには入力したユーザ名が入ります。)
Please enter the host (or subnet) xxxxx is allowed
to connect from.
A blank entry will allow him to connect from
anywhere
The entry format must be an IP address followed
by an optional netmask.
Hostnames are *not* accepted
Examples of valid entries :
192.168.1.5
192.168.1.0/24
192.168.1.0/255.255.255.0
Invalid entry : prof.fr.nessus.org
Source host or network [anywhere] :(必要に応じて自サーバIPなどを入れて)[Enter]
(接続できるHostのIPを入れてくださいということのようです。
エントリーのフォーマットはIPアドレスでなければならないようです。
そのまま、Enterとすると全てのアドレスからの接続を許します。
自分のIPがわかっていれば、それを入れるに越したことはないと思いますが
今回はとりあえず、全てから受け付けることにしました。)
One time password :[パスワードを入力]
(ユーザのパスワードです。パスワードを入力してください)。
User rules
----------
nessusd has a rules system which allows you to
restrict the hosts
that xxxxx has the right to test. For instance,
you may want
him to be able to scan his own host only.
Please see the nessus-adduser(8) man page for
the rules syntax
Enter the rules for this user, and hit ctrl-D
once you are done :
(the user can have an empty rules set)
(作成しているユーザーにどの程度の操作を許可するかを決定する項目のようです。
チェックは全て可能なことにします。何もせずそのままCtrl+Dで終了します。)
Login : xxxxx
Auth. method : cipher, can connect from xxxxxxxx
One time password : xxxxx:
Rules:
Is that ok ? (y/n) [y] [Enter](最終確認画面です。良ければEnterを押しましょう。)
user added.
で設定は完了です。
すると、nessusd.users、nessusd.user-keys、nessusd.rulesなどに
ユーザ名やパスワード、ルールが追加されていることが分かると思います。
Linux上からnessusを実行するには、以下、nessusdを立ち上げ、
# nessus &
とすることで、GUIが立ち上がるようです。以下、nessusからnessusdへと接続し、
適宜チェックを行ってください。(Windows版クライアントとほぼ同じだと思います。)
(nessusは上記のようにサーバー・クライアント型のソフトなので
実際にスキャンするサーバーと作業しているクライアントを分けられることになります。
そのため誤ってnessusが他の人に使用されてしまうとnessusdが立ち上がっている
管理サーバーから攻撃されてしまうことになります。
そのため、nessusdは必要なときだけ立ち上げることにし、
普段は起動しないでおくほうが良いでしょう。)
ところでnessusのクライアントとしてはLINUX版だけでなく、
Windows版も用意されています。(クライアントだけです。)
Windows版nessusの使い方については
セキュリティスキャナnessusのインストール及びその設定(windows版nessusの使い方)
をご覧下さい。