【備忘録】fail2banのインストール

wget http://dl.atrpms.net/all/fail2ban-0.8.4-24.el5.noarch.rpm
rpm -ivh fail2ban-0.8.4-24.el5.noarch.rpm

warning: fail2ban-0.8.4-24.el5.noarch.rpm: Header V4 DSA signature: NOKEY, key ID 66534c2b
error: Failed dependencies:
gamin-python is needed by fail2ban-0.8.4-24.el5.noarch
shorewall is needed by fail2ban-0.8.4-24.el5.noarch

yum install gamin-python
wget http://www.invoca.ch/pub/packages/shorewall/4.4/shorewall-4.4.7/shorewall-4.4.7-1.noarch.rpm
rpm -ivh shorewall-4.4.7-1.noarch.rpm

再度
rpm -ivh fail2ban-0.8.4-24.el5.noarch.rpm

service fail2ban start
chkconfig fail2ban on

MODx 検証

オープンソースCMSのMODxの検証を開始しました。

インストールはすごく簡単。
MODxをダウンロードして、ウェブのドキュメントルートにアップロードするだけ。
あとは、ウェブにアクセスすれば、ウィザード形式で簡単にインストールすることが可能。
動きもまったくストレスがないですね。

サイトの作り方については、記事を投稿というブログタイプではなく、1ページずつ作り込んでいく感じです。
外観のテンプレートさえきれいにまとめてしまえば、扱いやすいものになっていくような気がします。

1ページずつ作り込んでいく点で手間がかかるのかもしれませんが、アクセス制限などの個別設定も単体で設定できるので、用途によっては拡張性を見いだせるのかもしれません。

引き続き検証してみます。

virtuozzo template

VPSの取り扱いで、Paralless Management Consoleを使っていると、たまにApplication Templatesが見えなくなる。

再度アップロードを試みると、
Operation
Install template “devel-centos-5-x86-ez-3.0.0-1.swsoft.noarch.rpm” at Hardware Node “03xxx”
has failed.
Would you like to force its execution?
Click the “Details” button for more information.
というエラー。

ここは強気で、Would you like to force its execution?  ”Yes” の選択を。

半日悩んだ末に、気合一発で解決しました。

エラー内容では、「すでにインストールされています」と怒られ。
そのテンプレートを利用しようとすると「ありません」と言われ、、
システムが完璧でない分、やはり経験値が必要になるのですね。

サーバー管理者の苦労が絶えないわけです。。

受信拒否メールの対応

(reason: 553 5.1.8 … Domain of sender address apache@localhost.localdomain does not exist)
メールフォームなどのcgiやphpからの送信で、こんなエラーが帰ってきた場合はReturn-Path: が拒否されています。

通常@マーク以下がlocalhost.localdomainとなってしまうのですが、メールサーバーの設定でこれを強制的に修正する必要があります。

修正箇所はここ。
dnl MASQUERADE_AS(`mydomain.com’)dnl

コメントアウト”dnl”を外しmydomain.comに修正後のドメイン名を記述

dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl

コメントアウト”dnl”を外す

dnl FEATURE(masquerade_envelope)dnl

コメントアウト”dnl”を外す

恐らくスパムメール対策などによるものだと思いますが、利便性が下がってしまうのは考えものです。

サーバー監視ツールnagiosのインストール

先日のデータセンター障害によって、このデータセンター内に設置していた弊社のサーバー監視ツールも機能しなくなってしまいました。

そこで弊社のサーバー監視ツール”nagios”を分散設置することにしたのですが、勉強のためにも今回は自分でインストールにトライしてみました。

参考サイトはこちら、
統合監視システム構築(Nagios)
いくつかのサイトを参照しましたが、ここのサイトのやり方は、つまづくことなくすんなりとセットアップできました。

nagiosインストール
yum -y install gd-devel ← Nagiosに必要なgd-develをインストール

useradd -d /usr/local/nagios/ -M nagios ← nagiosユーザー作成

wget http://downloads.sourceforge.net/project/nagios/nagios-3.x/nagios-3.2.0/nagios-3.2.0.tar.gz?use_mirror=jaist ← Nagiosダウンロード

tar zxvf nagios-3.2.0.tar.gz ← Nagios展開

cd nagios-3.2.0 ← Nagios展開先ディレクトリへ移動

wget wget “http://sourceforge.jp/frs/redir.php?m=iij&f=%2Fnagios-jp%2F38828%2Fnagios-3.1.0-ja-utf8.patch.gz” ← Nagios日本語化パッチダウンロード

gzip -dc nagios-3.1.0-ja-utf8.patch.gz |patch -p0 ← Nagios日本語化パッチ施行

./configure && make all && make fullinstall && make install-config ← Nagiosインストール

cd ← Nagios展開先ディレクトリを抜ける

日本語フォントのインストール
wget http://osdn.dl.sourceforge.jp/efont/10087/sazanami-20040629.tar.bz2 ← さざなみフォントダウンロード

tar jxvf sazanami-20040629.tar.bz2 ← さざなみフォント展開

mkdir /usr/local/nagios/etc/font ← フォント格納先ディレクトリ作成

cp sazanami-20040629/sazanami-gothic.ttf /usr/local/nagios/etc/font/font.ttf ← さざなみフォントをフォント格納先ディレクトリへコピー

nagiosプラグインのインストール
yum -y install mysql-devel ← mysql-develインストール※MySQLの監視を行なう場合のみ

wget http://downloads.sourceforge.net/project/nagiosplug/nagiosplug/1.4.14/nagios-plugins-1.4.14.tar.gz?use_mirror=jaist ← Nagiosプラグインダウンロード

tar zxvf nagios-plugins-1.4.14.tar.gz ← Nagiosプラグイン展開

cd nagios-plugins-1.4.14 ← Nagiosプラグイン展開先ディレクトリへ移動

./configure && make && make install ← Nagiosプラグインインストール

cp contrib/check_mem.pl /usr/local/nagios/libexec/ ← メモリチェックプラグインインストール

vi /usr/local/nagios/libexec/check_mem.pl ← メモリチェックプラグイン修正
$command_line = `vmstat | tail -1 | awk ‘{print \$4,\$5}’`;

$command_line = `free | head -3 | tail -1 | awk ‘{print \$3,\$4}’`; ← 変更

chmod +x /usr/local/nagios/libexec/check_mem.pl ← メモリチェックプラグインへ実行権限付加

cd ← Nagiosプラグイン展開先ディレクトリを抜ける

nagios設定
vi /usr/local/nagios/etc/nagios.cfg ← nagios.cfg編集
cfg_dir=/usr/local/nagios/etc/servers ← 行頭の#を削除してコメント解除(サーバー監視設定有効化)

date_format=iso8601 ← 日付書式をYYYY-MM-DD HH:MM:SSにする

vi /usr/local/nagios/etc/cgi.cfg ← cgi.cfg編集
ttf_file=/usr/local/nagios/etc/font/font.ttf ← 行頭の#を削除してコメント解除(さざなみフォント有効化)

mkdir /usr/local/nagios/etc/servers ← サーバー監視設定ファイル格納ディレクトリ作成

vi /usr/local/nagios/etc/objects/contacts.cfg ← contacts.cfg編集
define contact{
contact_name nagiosadmin ; Short name of user
use generic-contact ; Inherit default values from generic-contact template (defined above)
alias Nagios Admin ; Full name of user

email 管理者メールアドレス ← 管理者メールアドレスを指定
}

vi /usr/local/nagios/etc/objects/localhost.cfg ← localhost.cfg編集
define service{
use local-service ; Name of service template to use
host_name localhost
service_description SSH
check_command check_ssh
notifications_enabled 1 ← 1を指定(SSH状態変化時に通知する)
}

define service{
use local-service ; Name of service template to use
host_name localhost
service_description HTTP
check_command check_http
notifications_enabled 1 ← 1を指定(HTTP状態変化時に通知する)
}

Apacheの設定
usermod -G nagios apache ← apacheユーザーをnagiosグループに所属させる

vi /etc/httpd/conf.d/nagios.conf ← Nagios用Apache設定ファイル編集

# SSLRequireSSL
Options ExecCGI
AllowOverride None
Order allow,deny
# Allow from all ← 行頭に#を追加してコメントアウト(すべてのアクセスを禁止)
# Order deny,allow
# Deny from all
Allow from 127.0.0.1 ← 行頭の#を削除してコメント解除(自ホストからのアクセスを許可)
Allow from 192.168.1.0/24 ← 追加(内部ネットワーク(例:192.168.1.0/24)からのアクセスを許可)
AuthName “Nagios Access”
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user


# SSLRequireSSL
Options None
AllowOverride None
Order allow,deny
# Allow from all ← 行頭に#を追加してコメントアウト(すべてのアクセスを禁止)
# Order deny,allow
# Deny from all
Allow from 127.0.0.1 ← 行頭の#を削除してコメント解除(自ホストからのアクセスを許可)
Allow from 192.168.1.0/24 ← 追加(内部ネットワーク(例:192.168.1.0/24)からのアクセスを許可)
AuthName “Nagios Access”
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user

/etc/rc.d/init.d/httpd reload ← Apache設定反映
httpd を再読み込み中: [ OK ]

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin ← Nagios管理ユーザー(nagiosadmin)作成
New password: ← 任意のパスワード応答※表示はされない
Re-type new password: ← 任意のパスワード応答(確認)※表示はされない
Adding password for user nagiosadmin

nagios起動
/etc/rc.d/init.d/nagios start ← Nagios起動
Starting nagios: done.

chkconfig –add nagios ← Nagios起動スクリプトをchkconfigへ追加

chkconfig nagios on ← Nagios自動起動設定

一つずつ自分の「もの」にすることで、
お客様の声に応えていきたいと思います。