«Prev || 1 | 2 | 3 |...| 9 | 10 | 11 || Next»

rootkit検知

2011, 12, 13

rootkit検知時のみroot宛にメール送信するようになってるが、今朝、Cron /root/chkrootkit.shから、次のようなメールが届いた。

Searching for Suckit rootkit... Warning: /sbin/init INFECTED

調べてみると、リブートしたら検知されなくなったという書き込みがあるので、とりあえずリブートして、rootkitのチェックを行う。

[root@server1 ~]# chkrootkit | grep INFECTED
[root@server1 ~]# 

なにも検知されない。


メインサーバと予備サーバで、md5sum /sbin/initのコマンドを実行したところ、結果は全く同じで、INFECTEDされたような形跡はどうも無いようだ。

メインサーバ
[root@server1 ~]# md5sum /sbin/init
5fff3eac49eecf6625085dd9d0f39292  /sbin/init
予備サーバ
[root@server2 ~]# md5sum /sbin/init
5fff3eac49eecf6625085dd9d0f39292  /sbin/init


rpm -V `rpm -qf /sbin/init`を実行し、なにか表示されたら変更された可能性がある。

S ファイルサイズが異なっている
5 MD5チェックサムが異なる
L シンボリックリンクが変更されている
T ファイルの更新時刻が変更されている
D デバイスファイルが変更されている
U ファイルの所有者が変更されている
G ファイルの所有グループが変更されている
M ファイルのパーミッションが変更されている

[root@server1 ~]# rpm -V `rpm -qf /sbin/init`
[root@server1 ~]#

何も表示されない。

今日のところはひとまずよしとするが、もう少し調べてみて本当にrootkitに感染してるようなら、再インストールするしか無いかも。

メインサーバ機入れ替え

2011, 09, 25

途中でパーツを新しくしたものもありますが、サーバ自体はかれこれ6年になります。特にこれといって不満があるわけでもないのですが、そろそろ新しいサーバにバトンタッチする時期かなと思い入れ替えることにしました。HPのこのサーバは安いしコンパクトです。

■ ProLiant MicroServer
本体はHPのProLiant MicroServerを購入。HDDが4台内蔵可能ですが、その割には、21×26×26.7cmと非常にコンパクトです。



中はこんな感じです。
RAIDで組むので250GBのHDDが2台、OSインストール用にDVDドライブを追加して有ります。


■ 仕様
プロセッサー AMD Athlon™ II NEO N36Lプロセッサー(1.3GHz、15W、2MB)×1
キャッシュメモリ 1MB L2×2
メモリ 1GB 1×1GB)PC3-10600E DDR3 UB ECC
ストレージコントローラー オンボードSATAコントローラー、オンボードRAID(0、1)を搭載
ハードディスクドライブ 250GBノンホットプラグLFF SATA×2台
内蔵ストレージ ノンホットプラグSATA、最大8.0TB(4×2TB)
パワーサプライ 150Wノンホットプラグ、ノンリダンダントパワーサプライ
ネットワーキング オンボードNC107i PCI Express Gigabit サーバーアダプター
オプティカルドライブ DVDマルチドライブ
キーボード/マウス 標準ではなし
フォームファクター Ultra Microタワー型


これをメインサーバ機とし、CentOS6.0をソフトウェアーRAIDでインストールして運用開始しました。

画像処理(ImageMagick) CentOS 6.0

2011, 09, 24

ブログなどでサムネイルを作成するにはImageMagickとPerlMagickをサポートしたサーバーが必要で、サポートしてないサーバーでは元画像が縮小表示で表示され重くなる。そこで自宅サーバでもImageMagickとPerlMagickをインストールして、サムネイルを作れるようにする。

■ ImageMagickのインストール(デフォルトでインストールされている。)
[root@server1 ~]# yum -y install ImageMagick


■ PerlMagickのインストール
[root@server1 ~]# yum -y install ImageMagick-perl


■Nucleusでサムネイルを作成するには
Nucleusでサムネイルを作成するのに必要なphp-gdをインストール。
[root@server1 ~]# yum -y install php-gd

httpd を再起動
[root@server1 ~]# service httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]


アクセスログ解析(Awstats) CentOS 6.0

2011, 09, 24

Awstats は視覚的に綺麗で、見やすいログ解析ツールだ。
日別・時間別・アクセス先など様々な統計情報を把握することが出来る。

■Awstatsのインストール
以下のコマンドでAwstatsをインストールする。
[root@server1 ~]# yum -y install awstats

awstatsを使うには、perlも必要。perl -vと入力して、
以下のような情報が返ってくれば、perlはインストールされている。
[root@server1 ~]# perl -v

This is perl, v5.10.1 (*) built for i386-linux-thread-multi

Copyright 1987-2009, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.


■ Awstatsの設定ファイルの編集
まず不要な設定ファイルを削除しておく
[root@server1 ~]# rm -f /etc/awstats/awstats.localhost.localdomain.conf

awstatsへ移動。
[root@server1 ~]# cd /etc/awstats

etc/awstats/のawstats.server1.yokensaka.com.conf を awstats.conf に変更。
[root@server1 awstats]# mv awstats.server1.yokensaka.com.conf awstats.conf

続いて、root権限で、このawstats.confを編集。
[root@server1 awstats]# su -

[root@server1 ~]# vi /etc/awstats/awstats.conf

SiteDomain="server1.yokensaka.com"
↓
SiteDomain="yokensaka.com" ←独自ドメイン名に変更

DNSLookup=2
↓
DNSLookup=1   ← 1に変更(DNSの逆引きにする設定に変更)

DirIcons="/awstatsicons"
↓
DirIcons="/icon" ← アイコンのディレクトリー名を変更

SkipHosts="127.0.0.1"
↓ 内部のクライアントはスキップするように変更
SkipHosts="127.0.0.1 REGEX[^192\.168\.1\.]"
Lang="auto"
↓
Lang="jp" ← jpに変更

#LoadPlugin="tooltips"
↓ #を削除(該当する部分にマウスを当てるとヘルプが表示される。)
LoadPlugin="tooltips"

※ 最後にこのままだとアイコンが表示されないので、アイコンの入ってるフォルダ
/usr/share/awstats/wwwroot/icon を /var/www/html へコピーしておく。


■ awstats.plアクセス制限
[root@server1 ~]# vi /etc/httpd/conf.d/awstats.conf
最終行へ追加

<Files "awstats.pl">
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1 ← サーバー自身からのアクセスを許可
    Allow from 192.168.1. ← 内部ネットワークからのアクセスを許可
    Allow from xxx.xxx.xxx.xxx ← 特定の外部IP(xxx.xxx.xxx.xxx)からのアクセスを許可
</Files>

Apache設定反映
[root@server1 ~]# /etc/rc.d/init.d/httpd reload 
httpd を再読み込み中: [ OK ]

会社等からアクセスする場合、自分の会社の接続環境(IPアドレス)を調べ、/etc/hosts.allowへ登録する必要がある。そんな時は診断くんで確認できる。

■ httpdの設定ファイルの編集
httpdの設定ファイルの編集
[root@server1 ~]# vi /etc/httpd/conf/httpd.conf
長すぎるURI(414 Error)はログに記録しない
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
         ↓
LogFormat "%h %l %u %t \"%!414r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

ログの記録内容変更
# logged therein and *not* in this file.
#
#CustomLog logs/access_log common
この下に以下を追加
SetEnvIf Request_URI "default\.ida" no_log
SetEnvIf Request_URI "cmd\.exe" no_log
SetEnvIf Request_URI "root\.exe" no_log
SetEnvIf Request_URI "Admin\.dll" no_log
SetEnvIf Request_URI "NULL\.IDA" no_log
SetEnvIf Request_URI "\.(gif)|(jpg)|(png)|(ico)|(css)$" no_log
SetEnvIf Remote_Addr 192.168. no_log
CustomLog logs/access_log combined env=!no_log

以上で設定は完了ですので、一度httpdを再起動させる。
[root@server1 ~]# service httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]


■ ログファイルからデータファイルの作成

続いて、ログファイルからデータファイルの作成。
[root@server1 ~]# /usr/share/awstats/tools/awstats_updateall.pl now
Running '"/usr/share/awstats/wwwroot/cgi-bin/awstats.pl" -update -config=default -configdir="/etc/awstats"' to update config default
Create/Update database for config "/etc/awstats/awstats.conf" by AWStats version 7.0 (build 1.971)
From data in log file "/var/log/httpd/access_log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Jumped lines in file: 0
Parsed lines in file: 0
 Found 0 dropped records,
 Found 0 comments,
 Found 0 blank records,
 Found 0 corrupted records,
 Found 0 old records,
 Found 0 new qualified records.


これで、/etc/cron.hourly/awstats が一時間毎に実行される。セットアップして1時間たってから、 http://サーバーアドレス/awstats/awstats.pl にアクセスすれば、解析結果が見れるようになっているはず。

Error: Couldn't open config file・・・というエラーが出る場合は
http://サーバーアドレス/awstats/awstats.pl?config=ドメイン名

ファイルサーバ(samba) CentOS 6.0

2011, 09, 24

Lan内であれば、誰でもユーザー認証なしで読み書きできるフルアクセスの共有フォルダを「samba」を作成。

■ sambaがインストールされてるか調べる
[root@server1 ~]# rpm -aq|grep samba
samba-common-3.5.4-68.el6_0.2.i686
samba-winbind-clients-3.5.4-68.el6_0.2.i686
samba-client-3.5.4-68.el6_0.2.i686


■ sambaをyumでインストール

[root@server1 ~]# yum install samba
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
 * base: mirror.khlug.org
 * centosplus: mirror.khlug.org
 * epel: ftp.jaist.ac.jp
 * extras: mirror.khlug.org
 * updates: ftp.jaist.ac.jp
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package samba.i686 0:3.5.4-68.el6_0.2 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================
 Package             Arch               Version                         Repository             Size
====================================================================================================
Installing:
 samba               i686               3.5.4-68.el6_0.2                updates               5.0 M

Transaction Summary
====================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 5.0 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
samba-3.5.4-68.el6_0.2.i686.rpm                                              | 5.0 MB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : samba-3.5.4-68.el6_0.2.i686                                                  1/1

Installed:
  samba.i686 0:3.5.4-68.el6_0.2

Complete!



■ フルアクセスの共有フォルダ「share」の作成
[root@server1 ~]# mkdir /home/share 

権限変更
[root@server1 ~]# chmod 777 /home/share 

所有者変更
[root@server1 ~]# chown nobody:nobody /home/share

すでに作成してある共有フォルダ全てのフォルダ、ファイルの所有者を変更する必要がある場合
[root@server1 ~]# chown -R nobody /home/share


■ samba設定ファイル変更
[root@centos ~]# vi /etc/samba/smb.conf 
[global]
日本語文字コード変更(追記)
     unix charset = UTF-8
     dos charset = CP932

ワークグループを環境に合わせて変更
     workgroup = WORKGROUP

ネットワーク内のみからアクセス許可
     hosts allow = 127. 192.168.1.

ユーザー認証なしの設定に変更
        security = share

共有フォルダ(ゴミ箱機能付きの)「share」 セクションの作成(最終行に追加)
[share]
   path = /home/share
   writable = yes
   guest ok = yes
   guest only = yes
   create mode = 0777
   directory mode = 0777
   share modes = yes
   vfs objects = recycle
   recycle:repository = .recycle
   recycle:keeptree = no
   recycle:versions = yes
   recycle:touch = no
   recycle:maxsize = 0
   recycle:exclude = *.tmp ~$*


■ sambaの起動
[root@server1 ~]# /etc/rc.d/init.d/smb start
SMB サービスを起動中:                                      [  OK  ]

nmbの起動
[root@server1 ~]# /etc/rc.d/init.d/nmb start

自動起動設定
[root@server1 ~]# chkconfig smb on
[root@server1 ~]# chkconfig nmb on

[root@server1 ~]# chkconfig --list smb
smb             0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@server1 ~]# chkconfig --list nmb
nmb             0:off   1:off   2:on    3:on    4:on    5:on    6:off


■ Samba確認
Windowsクライアントで「スタート」→「ファイル名を指定して実行」→「名前」に"\\SERVER1\share"または"\\192.168.1.4\share"を入力して「OK」ボタンをクリック。
«Prev || 1 | 2 | 3 |...| 9 | 10 | 11 || Next»