Re: swatchについて
( No.1 )
|
 |
- 日時: 2005/10/07 16:39
- 名前: 管理者
-
インストールまでは完了していますか?
完了している事を前提で、簡単に説明するとswatchを実行するには、監視文字列を定義しなくてはいけません。 監視文字列定義ファイルは、swatchを実行するユーザのホームパスに「.swatchrc」と言うファイルを作成します。
この中のファイルの設定形式は、以下の様にします。
watchfor /監視する文字列の正規表現文字列/ 動作 A 動作 B : :
例をたとえると、suコマンドを発行し認証失敗した時にログに出力されるのは以下の様になります。 Oct 7 14:45:34 fedora su(pam_unix)[2483]: authentication failure; logname= uid=500 euid=0 tty=pts/1 ruser=linux rhost= user=root
ちなみにvsftpでパスワードを間違える(認証失敗)した場合は、以下の様になります。 Oct 7 14:46:34 fedora vsftpd(pam_unix)[2214]: authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=192.168.1.121
ここで、どの文字を【監視】するかが重要になります。 「authentication failure」が良さそうなのでこれを監視文字列としてみましょう。 設定ファイルは以下の様になります。
【watchfor /authentication failure/】
動作は、監視に掛かった場合、以下の文字で動作します。 表示するには 「echo」 音を鳴らすには 「beep」 プログラムを実行するには 「exec」 メール送信するには 「mail」
試しに、先程の条件で画面表示(強調表示)して、音を3回鳴らしてみるには以下の様にします。
watchfor /authentication failure/ echo bold beep 3
これだけです。それでは、監視実行してみます。 (今回はrootで実行するので、上記監視設定ファイルは「/root/.swatchrc」で作成しておいてください。 なお、監視対象の認証失敗時に出力されるログファイルは「/var/log/messages」です。)
# swatch -t /var/log/messages
画面上では以下の様になっていると思います。
[root@fedora ~]# swatch -t /var/log/messages
*** swatch version 3.1.1 (pid:2522) started at 2005年 10月 7日 金曜日 15:06:03 JST
それでは、わざとsuしてみて、パスワードを間違えてみてください。 画面には以下の様に出力され、音が3回鳴ったと思います。
[root@fedora ~]# swatch -t /var/log/messages
*** swatch version 3.1.1 (pid:2522) started at 2005年 10月 7日 金曜日 15:06:03 JST
Oct 7 15:06:13 fedora su(pam_unix)[2526]: authentication failure; logname= uid=500 euid=0 tty=pts/1 ruser=linux rhost= user=root
同様に、vsftpでパスワード失敗してもログが出力され、音が鳴ります。
|
Re: swatchについて
( No.2 )
|
 |
- 日時: 2005/10/07 16:45
- 名前: 管理者
-
追記
監視設定ファイルを変更する事も可能です。 例)/root/swatch_su
実行方法 # swatch -c /root/swatch_su -t /var/log/messages
|
Re: swatchについて
( No.3 )
|
 |
- 日時: 2005/10/07 22:49
- 名前: remind
-
管理人さん、早速ご回答いただきありがとうございます。
恥ずかしながら、まだインストールをしていないのですが、最近ポートアタックに会い、ファイルを改竄され情けないのですが、破壊されてしまいました。 それでセキュリティについて調べていましたら、swatchとゆうのを発見しまして、妙な動きをするパケットを破棄できるとのことでしたので、導入をしてみようかと思い質問させていただきました。 swatchでなく他に何か良い物ががあればご提案いただきたいです。 ひとまずswatchでとりくんでみようと思います。 また何かありしたら質問させていただきます。
|
Re: swatchについて
( No.4 )
|
 |
- 日時: 2005/10/08 07:02
- 名前: 管理者
-
そうでしたか・・。
それであれば、監視する前に防御が先ですね。 どのポートでアタックされたのかが分かれば、手っ取り早いのですが、大抵の場合 telnet、ftp、ssh、dns(?)と思われます。 最後のdnsは知人から聞いた話なので実際にどの様に改ざんされるのか不明です。 (恐らく、同期で出鱈目なIPにされると思われます。)
まず、一般的には全てのポートを閉じてしまい必要なポートを開く様にします。 いわゆるファイアウォール方式ですね。 ルータ等を使用していれば、殆どポートの開閉機能があると思いますのでそちらを利用します。 (私はこちらを利用しています) ルータを使用していなければ(直接Linuxが外部と繋がっている場合)、iptablesと言う機能を利用します。
この後は、当サイトで紹介している「セキュリティ強化」・「クライアントよりサーバを操作(◆◇セキュア◇◆)」をご参照下さい。 その他、ポートを公開しているサービスなどは常時最新にアップデートを行ったり、今回のswtachを導入するなどが良いかも知れません。
|
Re: swatchについて
( No.5 )
|
 |
- 日時: 2005/10/10 14:33
- 名前: remind
-
swatchの設定で、たとえば相手にあるディレクトリへの許可のユーザネームとパスワードを教えて、そこ以外にいこうとしたり、何か不穏な動きをみせたら切断するみたいな設定は可能なのでしょうか?
できないのであれば何かいい方法はないのもでしょうか?
|
Re: swatchについて
( No.6 )
|
 |
- 日時: 2005/10/10 15:42
- 名前: 管理者
-
swatch自体の設定では不可能です。
swatchは指定したファイル(ログファイル)から文字列のマッチングを行って設定した動作を行います。 もし、そのような事を行いたければ、ログファイルに出力されるようにしなければなりません。 ftpログであれば、パーミッションにアクセス権のない部分へアクセスした場合はログに出力されますが、通常のログイン(telnetやssh等)ではログ出力されなかったと思います。 仮に出来たとしても、ログインした時のプロセスIDを何らかの形で取得し、アクセス不正時にexecで通常のコマンド"kill"でプロセスを落とせばセッションを切断する事が可能でしょう。
どちらにしても、何らかのカスタマイズが必要と思われます。 監査するよりも、アクセス範囲を束縛する方が無難でしょう。
|
Re: swatchについて
( No.7 )
|
 |
- 日時: 2005/10/11 04:06
- 名前: Johann
- 参照: http://www.geocities.co.jp/SiliconValley-Sunnyvale/1839/index.html
-
以前、/var/log/secureをswatchに監視させて、
最新20行の中に5回、特定のIPが出現したらiptablesへ放り込むなんて ことをやっていたことがあります。
どこからでもSSHアクセスさせるかわりにでたらめなユーザー名やパスワードを 乱射したらアクセス禁止をかける仕組みです。
最近では鍵認証に切り替えたことと、会社と自宅以外からアクセスする必要が 無くなったのでtcpwrapperに切り替えましたが。。
|
Re: swatchについて
( No.8 )
|
 |
- 日時: 2005/10/13 11:25
- 名前: remind
-
色々とありがとうございました。
今回のアドバイスを元に頑張ってみます。
|