1,
2, ... ,
26,
27
next >>
Page 1 of 27
2009-07-04 (土)
Posted at: 00:18:00 - Posted by: yashikiba - Category: Windows OS
以前、「Lhaplus」で解凍したファイルの文字化けについて書きました。
「あなたと私のインナースペース」:
<@LongLinkについて。>
そこで、Lhaplus以外のファイル解凍・圧縮ソフトについてネットをいろいろ探した結果、
「Lhaz」というソフトを選んで使用してみました。
1.Lhaplusでの文字化けの確認。
・現在は、Lhazをインストールしているので、テストのためLhaplusを再インストールしました。
・Lhaplusの最新版のダウンロードは以下のサイトからできます。
参考:
<Lhaplus Version 1.57 [ 2008/04/28 ]>
・上は、作者の「Schezo 氏」のサイトです。
参考:
<Lhaplus v1.57 (08/04/28) - 「窓の杜」>
(1) 解凍テスト。
Lhaplusで、長い名前のファイルを解凍してみました。
(ここでは、serendipity 1.4.1 tar.gzをテスト対象にしました。)
・上記のファイルの解凍後、
「serendipity/plugins/serendipity_event_browsercompatibility/
serendipity_event_browsercompatibility.php」というファイルの名前を調べてみました。
[結果]
やはり、以下のように末尾が文字化けしています。
--------------------------------------------------------------
~serendipity_event_browsercompatibility.ph0000644
--------------------------------------------------------------
(2) @LongLinkについて。
・デスクトップ(解凍先?)に「@LongLink」が作成されましたが、その内容を見ると、正常なファイル名になっていました。
--------------------------------------------------------------
@LongLink(読み取り専用ファイル)の内容。
serendipity/plugins/serendipity_event_browsercompatibility
/serendipity_event_browsercompatibility.php → 文字化けしていません。
--------------------------------------------------------------
(3) 感想。
以上のことから、私のWindows XP SP3の環境だと「文字化け」が発生するのですが、この原因はLhaplus自体にあるのか、私のPC環境や操作ミスにあるのかは分かりません。
私が使用してきた圧縮・解凍ソフトは、Lhacaが最初のもので、次にLhasaに乗り換え、最後にLhaplusにたどり着きました。
Lhaplusは「脆弱性」のためのアップロードをしたりもしましたが、今まで、ずいぶん長い間お世話になってきたユーティリティソフトです。
しかし、解凍時のファイル名の「文字化け」に一時的に対応するため、「Lhaz」をインストールすることにしました。
2.Lhazを使用する。
「Lhaz」は、「多形式に対応したDLL不要の圧縮・解凍ソフト」です。(引用 - Vector)
Lhazのダウンロード元には、以下のサイトがあります。
参考:
<Lhaz v1.35 (圧縮解凍ツール) - 正式版 - 作者のサイト>
参考:
<Lhaz - Vector>
(1) Lhaplusのアンインストール。(使用していた場合です。)
・アンインストールする前に、右クリックの「メニュー」を確認しておきました。
--------------------------------------------------------------
解凍: デスクトップに解凍(D),ここに解凍(H),出力先を指定して解凍(S),テンポラリモードで解凍(T)
圧縮:.Lzh,.Zip,・…,.uue,.xxe,b64
--------------------------------------------------------------
・「スタートメニュー」 → 「プログラムのアクセスと既定の設定」 → 「プログラムの追加と削除」、でアンインストール。
* または、「コントロールパネル」から、アンインストール。
(2) Lhazのインストール。
・これは、上記のサイトからダウンロードしたファイルを実行して、「Lhaz v1.35 のインストール」の指示通りにします。
・「関連付け」は8つすべてを選択すればいいですが、インストール後の「オプション」からでも設定できます。
(3) インストール後の設定。
・ほぼ、デフォルトの設定でいいと思いますが、 「ツール」 → 「オプション」 → 「ファイルの関連付け」では、 すべての圧縮ファイルにチェックを入れておきました。
* また、「コンテキストメニューに「Lhazで閲覧(V)」を追加(V)」」、「コンテキストメニューに「Lhazで圧縮(A)」を追加(C)」」、さらに、「右ドラッグ&ドロップを拡張」にもチェックを入れておくと便利なようです?
(4) 解凍ファイル名の確認テスト。
・Lhaplusの場合と同じく、「Serendipity 1.4.1 tar.gz」をデスクトップ上に解凍しました。
[結果]
--------------------------------------------------------------
serendipity_event_browsercompatibility.php
--------------------------------------------------------------
・文字化けしていませんでした。
★ さらに、デスクトップ(解凍先?)に、「@LongLink」も作成されないようです。
・これは、「DLL不要」ということと関係あるのでしょうか?
(作者のサイトからの「一部引用」)
--------------------------------------------------------------
・Lhazの特徴。
「エクスプローラでアーカイブファイルをダブルクリックすると,解凍先/閲覧選択ポップアップメニューが表示されます。アーカイブ毎に解凍先を選択できるのが Lhaz の開発動機でありウリです。」。
・この機能は、個別ファイルのチェックなどをする時などには便利だと思います。
--------------------------------------------------------------
確かに、「エクスプローラ」表示で、解凍前の圧縮ファイル内を一覧できるのには少し驚きました。
・なお、以下のサイトで作者の対談が読めます。
参考:
<超定番解凍ソフトLhazはなぜ無料なのか>
追記
作者の「ちとら」氏のWebサイトの掲示板では、リリース情報は以下の通りです。
----------------------------------------------------------------
2003/01/19(Sun) 14:10
03/01/19 ver1.01β2
・unrarsrc-3.1.3.tar.gz に対応。
-----------------------------------------------------------------
上で紹介した「対談」では、
-----------------------------------------------------------------
初版がVer.0.3のベータ版で、その後2001年12月4日に正式版ともいえる「Ver.1.00」となりました。
-----------------------------------------------------------------
とのことです。
2009-06-28 (日)
Posted at: 00:21:00 - Posted by: yashikiba - Category: Nucleus
これもまた、最近になって気になってきたことですが…。
私のこのブログには、「フィード」のリンクがありませんでした。
ブログを始めた頃は、RSSとかAtomなどの意味も知りませんでしたし、このブログにフィードが必要だとはまったく考えなかったのです。
けれども、ふとサイドメニューを見ると、やはり「

」のアイコンがないのは、ブログの形として不備なのかなと思いました。
そこで、一昨日辺りから、RSSとAtomのリンクを付けてみました。
Nucleusの場合、スキンによっては、はじめからRSSやAtomのリンクが記述されているものもありますが、このブログのスキンにはありませんでした。
※ ここで言う「スキン」とは、Movable Typeの「テンプレート」、WordPressの「テーマ」に対応すると思います。
いちばん簡単な方法として、サイドメニューに「xml-rss2.php」と「atom.php」への直接のリンクを記述しました。
次に、フィードを配信するために、ヘッド部を以下のように編集しました。
--------------------------------------------------------------
・RSS2.0の設定です。
… … …
<link rel="alternate" type="application/rss+xml" title="RSS" href="xml-rss2.php" />
↓この部分を修正。
<link rel="alternate" type="application/rss+xml" title="RSS2.0" href="<%sitevar(url)%>xml-rss2.php" />
※ hrefにスキン変数の<%sitevar(url)%>をつけないと、インデックス・ページ以外だと、Webブラウザの「フィードのアイコン」からのアクセスではRSSやAtomのページが表示できず、以下のようなエラーが出ます。
「Internet Explorer では DTD 付きのフィードはサポートされていません。」
--------------------------------
・Atom1.0の設定です。
… … …
<link rel="alternate" type="application/atom+xml" title="ATOM1.0" href="<%sitevar(url)%>atom.php" />
・この「Atom1.0」のリンクは新規に追加します。
・Atomは以前は「0.3」だったのですが、Nucleus3.3からバージョンが「1.0」になったようです。
参考:
<Nucleus CMS v3.3 日本語版>
--------------------------------------------------------------
このブログでは、Nuclesuの「FancyURLs-2」モードを導入して、静的URLでアクセスできるようにしていますが、このままでは、フィードページでのアイテムのリンクが動的URLのままになってしまいます。
そこで、「テンプレート」も編集しました。
--------------------------------------------------------------
・feeds/rss20の変更。
… … …
(省略)
<link><%blogurl%>index.php?itemid=<%itemid%></link>
↓ 以下のように変更。
<link><%blogurl%>item/<%itemid%></link>
(省略)
<comments><%blogurl%>index.php?itemid=<%itemid%></comments>
↓ 以下のように変更。
<comments><%blogurl%>item/<%itemid%></comments>
(省略)
--------------------------------
・feeds/atom/entriesの変更。
… … …
(省略)
<link rel="alternate" type="text/html" href="<%blogurl%>index.php?itemid=<%itemid%>" />
↓ 以下のように変更。
<link rel="alternate" type="text/html" href="<%blogurl%>item/<%itemid%>" />
(省略)
--------------------------------------------------------------
参考:
<Nucleus - RSSとAtomのFancyURL化 - [餅] 餅空 blog / Nucleus支店>
※上記のサイトでは、「<%CustomURL%>を使用するのが正しい」と言及されているのですが、私は当分、CustomURLを導入しないと思うので、上のように編集しました。
・結果として、RSSとAtomのフィードページにアクセスしても今のところは、問題がないようです。
2009-06-22 (月)
Posted at: 00:26:00 - Posted by: yashikiba - Category: CentOS5
このサーバでは、ファイアウォール機能を「iptables」を使って構築しています。
このiptablesのログをWebブラウザで随時確認できるように、「IPTables log analyzer(iptablelog)」をインストールしてみました。
参考:
<iptables>
このツールのインストールには、以下の「サイト」を参考にさせて頂きました。
参考:
<iptablesログ解析(IPTables log analyzer)>
以下は、その時にした作業です。
1.iptablelog(IPTables log analyzer)のダウンロードとインストール。
・まず、iptablelogに必要なパッケージがインストールされているか、調べます。
--------------------------------------------------------------
# rpm -q mysql-devel
mysql-devel-5.0.45-7.el5
# rpm -q php-mysql
php-mysql-5.1.6-23.2.el5_3
・インストールされていました。
--------------------------------------------------------------
・iptablelogの現時点での最新バージョンは、「v0.9」です。
参考:
<IPTables log analyzer>
--------------------------------------------------------------
# wget http://jaist.dl.sourceforge.net/sourceforge/iptablelog/iptablelog-v0.9.tar.bz2
(省略)
# ls -l *iptablelog*
-rw-r--r-- 1 root root 273221 4月 5 2007 iptablelog-v0.9.tar.bz2
--------------------------------------------------------------
・iptablelogの解凍・展開です。
--------------------------------------------------------------
# tar jxvf iptablelog-v0.9.tar.bz2
iptablelog/
iptablelog/FUTURE
iptablelog/COPYING
(省略)
ptablelog/utils/resolver_host.php
iptablelog/utils/resolver_native.php
iptablelog/whois.php
iptablelog/INSTALL
# ls -l
(省略)
drwxr-xr-x 11 root root 4096 4月 5 2007 iptablelog
-rw-r--r-- 1 root root 273221 4月 5 2007 iptablelog-v0.9.tar.bz2
--------------------------------------------------------------
・展開したフォルダを、/var/www/フォルダに移動します。
--------------------------------------------------------------
# mv ./iptablelog/ /var/www/
# ls -l /var/www/
(省略)
drwxr-xr-x 11 root root 4096 4月 5 2007 iptablelog
--------------------------------------------------------------
2.IPTables log analyzer用のデータベースの作成。
・後で気づいたのですが、この時のデータベースのユーザは「iptablelog_user」としていた方が楽です。
・設定ファイルではデフォルトで、iptablelog_userとなっているので、設定ミスを回避できそうです?
--------------------------------------------------------------
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 33096
Server version: 5.0.45 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database iptablelog character set utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on iptablelog.* to iptablelog_user@localhost identified by 'パスワード';
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
--------------------------------------------------------------
・iptablelogデータベースの初期化。
--------------------------------------------------------------
# cat /var/www/iptablelog/conf/iptables.mysql | mysql -u iptablelog_user -p iptablelog
Enter password:
・完了まで、少し時間がかかるかも知れません。
--------------------------------------------------------------
・ここで、phpMyAdminによる「構造」確認をしてみました。
------------------------------------------------------------------
テーブル 操作 レコード数 種別 照合順序 サイズ オーバーヘッド
host_cache 0 MyISAM utf8_general_ci 1.0 KiB -
ports 7,568 MyISAM utf8_general_ci 473.4 KiB -
protos 140 MyISAM utf8_general_ci 10.4 KiB -
ulog 0 MyISAM utf8_general_ci 2.0 KiB -
4 テーブル 合計 7,708 MyISAM utf8_general_ci 486.8 KiB 0 バイト
-------------------------------------------------------------------
3.ulogd(The Netfilter Userspace Logging Daemon)のインストール。
・iptablelogのログをMySQLに保存するのには、ulogdが必要です。
参考:
<パッケージ: ulogd (1.24-2.1)>
参考:
<ULOGターゲット>
* ulogdについては、まだ、よく分からないのですが…。
・現時点では、stable版は「ulogd-1.24」のようです。
参考:
<FTP ディレクトリ /pub/ulogd/ / ftp.netfilter.org>
--------------------------------------------------------------
# wget ftp://ftp.netfilter.org/pub/ulogd/ulogd-1.24.tar.bz2
(省略)
# wget ftp://ftp.netfilter.org/pub/ulogd/ulogd-1.24.tar.bz2.sig
(省略)
# gpg --verify ulogd-1.24.tar.bz2.sig
gpg: 2006年01月25日 20時32分36秒 JSTにDSA鍵ID CA9A8D5Bで施された署名
gpg: 署名を検査できません: 公開鍵が見つかりません
# gpg --keyserver pgp.nic.ad.jp --recv-key CA9A8D5B
gpg: 鍵CA9A8D5Bをhkpからサーバーpgp.nic.ad.jpに要求
gpg: 鍵CA9A8D5B: 重複したユーザーIDの検出 - 併合
gpg: 鍵CA9A8D5B: 公開鍵“Netfilter Core Team
”を読み込みました
gpg: 絶対的に信用する鍵が見つかりません
gpg: 処理数の合計: 1
gpg: 読込み: 1
# gpg --list-key
/root/.gnupg/pubring.gpg
------------------------
(省略)
pub 1024D/CA9A8D5B 2001-09-15 [失効: 2007-03-28]
uid Netfilter Core Team
--------------------------------------------------------------
★ あれ?この公開鍵は、失効(期限切れ)になっていました。
・でも、このファイルの検証はしておきました。
# gpg --verify ulogd-1.24.tar.bz2.sig
gpg: 2006年01月25日 20時32分36秒 JSTにDSA鍵ID CA9A8D5Bで施された署名
gpg: “Netfilter Core Team ”からの正しい署名
gpg: 警告: この鍵は所有者によって失効されています!
gpg: 署名が偽物なこともある、ということです。
gpg: 失効理由: 鍵がとりかわっています
gpg: 失効のコメント: key expired
gpg: 警告: この鍵は信用できる署名で証明されていません!
gpg: この署名が所有者のものかどうかの検証手段がありません。
主鍵の指紋: 02AC E2A4 74DD 09D7 FD45 2E2E 35FA 89CC CA9A 8D5B
* 公開日は、「01/25/2006 12:00午前」となっています。
・そこで、最新のベータ版で調べて見ると…。
(意味はないと思いますが。)
--------------------------------------------------------------
# wget ftp://ftp.netfilter.org/pub/ulogd/ulogd-2.0.0beta3.tar.bz2
(省略)
# wget ftp://ftp.netfilter.org/pub/ulogd/ulogd-2.0.0beta3.tar.bz2.sig
(省略)
# gpg --verify ulogd-2.0.0beta3.tar.bz2.sig
gpg: 2009年03月07日 03時03分59秒 JSTにDSA鍵ID 2D0987E6で施された署名
gpg: 署名を検査できません: 公開鍵が見つかりません
# gpg --keyserver pgp.nic.ad.jp --recv-key 2D0987E6
gpg: 鍵2D0987E6をhkpからサーバーpgp.nic.ad.jpに要求
gpg: 鍵2D0987E6: 公開鍵“Netfilter Core Team ”を読み込みました
gpg: 絶対的に信用する鍵が見つかりません
gpg: 処理数の合計: 1
gpg: 読込み: 1
# gpg --verify ulogd-2.0.0beta3.tar.bz2.sig
gpg: 2009年03月07日 03時03分59秒 JSTにDSA鍵ID 2D0987E6で施された署名
gpg: “Netfilter Core Team ”からの正しい署名
gpg: 警告: この鍵は信用できる署名で証明されていません!
gpg: この署名が所有者のものかどうかの検証手段がありません。
主鍵の指紋: 9E6D D99C F953 9928 748C 28D0 4187 F865 2D09 87E6
# gpg --list-key
/root/.gnupg/pubring.gpg
------------------------
(省略)
pub 1024D/CA9A8D5B 2001-09-15 [失効: 2007-03-28]
uid Netfilter Core Team
pub 1024D/2D0987E6 2007-03-28 [満了: 2011-03-27]
uid Netfilter Core Team
sub 2048g/92AB52E5 2007-03-28 [満了: 2011-03-27]
--------------------------------------------------------------
・確かに、公開鍵は「とりかわっています」。
・でも、「<coreteam@netfilter.org>”からの正しい署名」となっているので、良しとしました。
・ulogのインストールです。
--------------------------------------------------------------
# tar jxvf ulogd-1.24.tar.bz2
(省略)
# ls -l
(省略)
drwxr-xr-x 13 1000 1000 4096 1月 25 2006 ulogd-1.24
-rw-r--r-- 1 root root 177398 6月 19 17:00 ulogd-1.24.tar.bz2
(省略)
# ./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/local/lib --with-mysql \
> && make && make install
(省略)
# cp ulogd.init /etc/rc.d/init.d/ulogd
・上のファイルで、起動・停止などをさせます。
--------------------------------------------------------------
4.ulogdの設定と起動。
・参考サイトの通りにしました。
--------------------------------------------------------------
# vi /etc/ulogd.conf ← ulogd設定ファイル編集
#
# ulogd_BASE.so - interpreter plugin for basic IPv4 header fields
# you will always need this
plugin="/usr/local/lib/ulogd/ulogd_BASE.so"
plugin="/usr/local/lib/ulogd/ulogd_LOCAL.so" ← 追加
# output plugins.
#plugin="/usr/local/lib/ulogd/ulogd_LOGEMU.so" ← コメントアウト
#plugin="/usr/local/lib/ulogd/ulogd_OPRINT.so"
plugin="/usr/local/lib/ulogd/ulogd_MYSQL.so" ← コメント解除
#plugin="/usr/local/lib/ulogd/ulogd_PGSQL.so"
#plugin="/usr/local/lib/ulogd/ulogd_SQLITE3.so"
#plugin="/usr/local/lib/ulogd/ulogd_PCAP.so"
[MYSQL]
table="ulog"
pass="パスワード" ← MySQLの所で設定したパスワードです。
user="iptablelog_user" ← この名前が「デフォルト」です。
db="iptablelog" ← これもデフォルトです。
host="localhost"
--------------------------------------------------------------
・ 「iptablelog_user」は、/var/www/iptablelog/conf/config.phpと、
/etc/cron.hourly/iptables_resolveの中でも使われています。
・MySQLのユーザ名を換える場合は、その点に注意する必要があります。
・ulogdの起動です。
--------------------------------------------------------------
# /etc/rc.d/init.d/ulogd start
Starting ulogd: [ OK ]
# chkconfig --add ulogd → 自動起動の設定。
# chkconfig --list ulogd
ulogd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
# chkconfig ulogd on
# chkconfig --list ulogd
ulogd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
--------------------------------------------------------------
5.iptablesの設定。
IPTables log analyzerのログは結果として、すべて/var/log/messagesログファイルに出力されたものと同一になります。
私はiptablesの設定自体がよく分かっていないので、試験的にiptablesで出力するログはできるだけ、iptablelogにも出力させるようにしてみましたが、自信はほとんどありません…。
・以下、ファイアウォール設定スクリプト(/root/iptables.sh)に追加した箇所だけ示します。
--------------------------------------------------------------
# vi ./iptables.sh
(省略)
# フラグメント化されたパケットはログを記録して破棄
iptables -A INPUT -f -j LOG --log-prefix '[IPTABLES FRAGMENT] : '
iptables -A INPUT -f -j ULOG --ulog-nlgroup 1 --ulog-prefix 'FRAGMENT'→これ。
iptables -A INPUT -f -j DROP
# 1秒間に4回を超えるpingはログを記録して破棄
# ※Ping of Death攻撃対策
iptables -N LOG_PINGDEATH
iptables -A LOG_PINGDEATH -m limit --limit 1/s --limit-burst 4 -j ACCEPT
iptables -A LOG_PINGDEATH -j LOG --log-prefix '[IPTABLES PINGDEATH] : '
iptables -A LOG_PINGDEATH -j ULOG --ulog-nlgroup 1 --ulog-prefix 'PINGDEATH'→これ。
iptables -A LOG_PINGDEATH -j DROP
iptables -A INPUT -p icmp --icmp-type echo-request -j LOG_PINGDEATH
# DROP_COUNTRY_MAKE関数定義
# 指定された国のIPアドレスからのアクセスを破棄するユーザ定義チェイン作成
DROP_COUNTRY_MAKE(){
for addr in `cat /tmp/cidr.txt|grep ^$1|awk '{print $2}'`
do
iptables -A DROP_COUNTRY -s $addr -m limit --limit 1/s -j LOG --log-prefix '[IPTABLES DENY_COUNTRY] : '
iptables -A DROP_COUNTRY -s $addr -m limit --limit 1/s -j ULOG --ulog-nlgroup 1 --ulog-prefix 'DENY_COUNTRY'→これ。
iptables -A DROP_COUNTRY -s $addr -j DROP
done
}
# 上記のルールにマッチしなかったアクセスはログを記録して破棄
iptables -A INPUT -m limit --limit 1/s -j LOG --log-prefix '[IPTABLES INPUT] : '
iptables -A INPUT -m limit --limit 1/s -j ULOG --ulog-nlgroup 1 --ulog-prefix 'INPUT'→これ。
iptables -A INPUT -j DROP
iptables -A FORWARD -m limit --limit 1/s -j LOG --log-prefix '[IPTABLES FORWARD] : '
iptables -A FORWARD -m limit --limit 1/s -j ULOG --ulog-nlgroup 1 --ulog-prefix 'FORWARD'→これ。
iptables -A FORWARD -j DROP
--------------------------------------------------------------
・以上、5行を追加しました。
・この後、必ず、ファイアウォール設定スクリプトを実行します。
* # sh ./iptables.sh
(私のPCではこの実行に約15分を要します。)
6.IPTables log analyzerの設定。
--------------------------------------------------------------
# cp /var/www/iptablelog/conf/config.php.default /var/www/iptablelog/conf/config.php
# vi /var/www/iptablelog/conf/config.php
Password of the MySQL database
$db_password="パスワード"; ← MySQLのパスワード設定
# File Path to your installation
$file_base="/var/www/iptablelog"; # i.e. "/var/www/html/iptablelog" ← アクセス先です。
# cp /var/www/iptablelog/conf/iptables_resolve.default /etc/cron.hourly/iptables_resolve
← IPアドレス名前解決スクリプトをcronに登録します。
・IPアドレス名前解決スクリプトの編集。
--------------------------------
# vi /etc/cron.hourly/iptables_resolve
・最初の方のみの編集です。
$iptablelog_path = "/var/www/iptablelog"; # Change this ← アクセス先です。
db_connect("localhost","iptablelog","iptablelog_user", "パスワード"); # Change these db settings
← MySQLの設定です。
--------------------------------------------------------------
* 注意。上の「~/iptables_resolve」にエラーがあると、毎時1分にcronのメールが来ます。
--------------------------------------------------------------
/etc/cron.hourly/iptables_resolve: → 例です。
<?
$iptablelog_path = "/var/www/iptablelog"; # Change this
include_once ("$iptablelog_path/utils/db_mysql.php");
(省略)
--------------------------------------------------------------
7.Apacheの設定。
・私の場合は、内部からのみアクセスできるようにしました。
・また、Basic認証も設定してみました。
* 理由は分からないのですが、「.htaccess」ファイルだと上手く行きませんでした。
(アカウントの要求ウィンドウがでないのです。)
--------------------------------------------------------------
# vi /etc/httpd/conf.d/iptables.conf ← IPTables log analyzer用Apache設定ファイル作成。
Alias /iptablelog /var/www/iptablelog
<Location /iptablelog>
Order deny,allow
Deny from all
Allow from 127.0.0.1
Allow from 192.168.1.0/24 ← LANのプライベートネットワークを指定。
</Location>
<Directory /var/www/iptablelog/> → Basic認証の設定。
AuthUserFile /var/www/.passwdfilename → パスワードファイル。
AuthGroupFile /dev/null
AuthName "iptablelog" → 適当です。
AuthType Basic
require valid-user
</Directory>
・あらかじめ、「パスワードファイル」は「htpasswd」コマンドで作成しておきます。
# /etc/rc.d/init.d/httpd reload → 設定ファイルの再読み込み。
httpd を再読み込み中: [ OK ]
--------------------------------------------------------------
8.エラーへの対処。
(1) いきなり、エラーが出ました。
http://aaa.bbb.ccc/iptablelog/にアクセスすると、以下の表示になりました。
--------------------------------------------------------------
tags from a db query function db_listbox ( $value_field, // field to use for label $label_field, // field to use for LABEL
$query, // database query $default="" // options with this value are selected by default, can be a scalar or a list ) {
$output = ""; $result = db_query($query); while ($r = db_nextarray($result)) { $value = $r[$value_field]; $label = $r
[$label_field]; if (is_array($default)) $selected = empty($default[$value]) ? "" : "selected"; else $selected = $value ==
$default ? "selected" : ""; $output .= "$label\n"; } return $output; } /* Release resources taken up by a query */ function
db_freeresult($result) { mysql_free_result($result); } /* display a db error message */ function db_handleError($detail) {
$msg = "$detail\n"; $msg = $detail."\n"."Mysql error : ".mysql_errno()." - ".mysql_error(); die ($msg); } ?>
--------------------------------------------------------------
上のように、PHPスクリプトがそのまま表示される場合は、スクリプトにエラーがあったり、PHPの設定に問題があったりします。
(PHPスクリプトが実行されていません。実はここでは気づいていなかったのですが…。)
そこで、設定を見直したりしていましたが、ダメだったので、ネット検索していると、該当ページがありました。
(灯台下暗し?)
参考: <iptablesログ解析の設定方法について>
<上の回答からの引用>
--------------------------------------------------------------
(省略)
下記ファイルでショートタグが使われていました。他にもあるかもしれません。
utils/db_mysql.php
admin/show_cache.php
admin/show_ports.php
admin/show_protos.php
admin/modules/resolve.php
admin/modules/stats.php
admin/modules/zCustomize.php
reports/modules/users.php
themes/iptables/header.inc
themes/iptables_blue/header.inc
utils/Layout.php
utils/resolver_host.php
utils/resolver_native.php
追記
/etc/cron.hourly/iptables_resolve
また、以下ファイルは構文エラーになっています。
reports/index.php
以下2点が不要です。
// require_once("../conf/config.php"); のみのはず
require_once("conf/config.php");
// 最終行が重複している
pageFooter();
?>
(省略)
--------------------------------------------------------------
早速、php.iniファイルの「short_open_tag」を「On」にすると、iptablelogのトップページが表示されました。
恐る恐る、上記の回答者様の指摘したファイルを覗いて見ると…。
なんと、標準PHPタグ(standard PHP tags)とshort open tagsが渾然一体となっていました。
・一括変換ができない?
現在では、XMLファイルにPHPを埋め込む場合やセキュリティの観点から、PHPスクリプトの開始タグは、標準PHPタグ(<?PHP)にすることが推奨されているらしいです。
しぶしぶ、上記のファイル内のすべての「short open tag」を、時間をかけて、標準タグに修正しました。
(何しろ、「渾然一体」ですから。)
そして、php.iniの設定は、デフォルトの「short_open_tag = Off」に戻してから、iptablelogにアクセスすると、やっと、正常に(?)ページが表示されました。
現在は、少しずつですが、ログが溜まってきています。
ただ、ネットに書かれていたのですが、急に動作しなくなる場合も結構あるようなので、1週間ぐらいは注意して様子を見ておこうと考えています。
追記
・現在のiptablelogのイメージです。
--------------------------------------------------------------
i p t a b l e s l o g s
R e p o r t s A d m i n H e l p
Last packets filtered by tag ALL:
Records 0 to 50 of 74
Tag Date Host [X] Int. [X] Proto. Src IP Dest. IP [X] Dest. port
INPUT 2009-05-22 01:33:33 zzzz eth0<- TCP ppp.qqq.rrr.sss voicetwo.selfip.com. [Go] 80 (http) [Check]
INPUT 2009-05-21 21:11:39 zzzz eth0<- TCP ppp.qqq.rrr.sss voicetwo.selfip.com. [Go] 80 (http) [Check]
INPUT 2009-05-21 21:11:38 zzzz eth0<- TCP ppp.qqq.rrr.sss voicetwo.selfip.com. [Go] 80 (http) [Check]
… … …
… … …
DENY_COUNTRY 2009-05-20 23:16:14 zzzz eth0<- TCP aaa.bbb.ccc.ddd.eee.fff.com.xx. voicetwo.selfip.com. [Go]
80 (http) [Check]
DENY_COUNTRY 2009-05-20 19:46:22 zzzz eth0<- TCP aaa.bbb.ccc.ddd.eee.fff.com.xx. voicetwo.selfip.com. 25 (smtp) [Check]
DENY_COUNTRY 2009-05-20 19:46:16 zzzz eth0<- TCP aaa.bbb.ccc.ddd.eee.fff.com.xx. voicetwo.selfip.com. 25 (smtp) [Check]
--------------------------------------------------------------
2009-06-15 (月)
Posted at: 00:25:00 - Posted by: yashikiba - Category: Windows OS
パソコンのメモリを増設した時のメモです。
1.増設前。
まず、パソコンのマニュアルを見ました。
--------------------------------------------------------------
[取扱説明書(仕様書)]
(以下、概略)
メモリのタイプ:DDR2 400MHz、または、DDR2 533MHzのバッファなし。(PC2-3200/PC2-4200)
* PC2-3200のペアと、PC2-4200のペアを装着した場合は「400MHz」(遅い方)で動作する。
DIMMコネクタ(メモリスロット)のマザーボード上の配列 - 4スロット(/コネクタ)
DIMMコネクタの並び → 1->3->2->4 ペアは「1と2」、および、「3と4」
--------------------------------------------------------------
次に、増設前に、既設のメモリの情報の取得と動作速度の実測をしておきました。
メモリ情報の取得には、6月1日の記事で紹介した
「HWiNFO32」を、速度の計測には、前回の記事で紹介した「CrystalDiskInfo」の作者が製作された、
「CrystalDiskMark」を使用しました。
参考:
<Crystal Dew World - 作者(ひよひよ氏)のホームページ>
・HWiNFO32によるメモリ情報。
--------------------------------------------------------------
Module Number: 0 → 「row:0」と「row:2」がありました。
Module Size: 512MB
Memory Type: DDR2-SDRAM
DIMM Type: Regular Unbuffered(UDIMM)
Error Check/Correction: None
Memory Speed: 200.0MHz(PC2-3200)
Module Manufacturer: Hynix(Hyundai)
Module Model: HYMP564U648-E3
Serial Number:1 392771071
Manufacturing Date:Year: 2004, Week: 51
--------------------------------------------------------------
・CrystalMark 2004R2によるメモリへのデータアクセス速度の計測。
* 現時点では、最新バージョンは、「2004R3」です。
--------------------------------------------------------------
Read:3649.03 MB/s
Write:1619.27 MB/s
Read/Write:1637.07 MB/s
Cache:10267.12 MB/s Score:1026
* Score:7953
・メモリを1GBから2GBに増設してから、速度を比較するためです。
--------------------------------------------------------------
今回増設するメモリのタイプはPC2-3200か、PC2-4200の2種類しか選択できないのですが、
現在では、この規格も古くなりつつあるので(?)、PC2-4200しか手に入りませんでした。
GreenHouseというブランドです。
<GH-DV533シリーズ - GREEN HOUSE>(533MHz(PC2-4200)対応 240pin DDR2 SDRAM DIMM)>
参考:
<GREEN HOUSE>
このシリーズの、「GH-DV533-512MZ」という512MBのメモリを2枚購入しました。
・ちなみに、このメモリは「5年間保証」です。
2.増設。
・この作業は簡単で、特に書くこともありません。
・空いている「2つ」のメモリスロットに2枚カードを取り付けるだけです。
★ ただ、特に、冬季の空気が乾燥している環境で行う際には、静電気対策は必要です。
3.増設後。
・DELLのパソコンだと、メモリ増設直後のシステム環境変更直後の起動では、以下のBIOSメッセージが出ます。
--------------------------------------------------------------
The amount of system memory has changed.
・ここで、セットアップ画面に移行するなら、「F2」キーなどをタイプするようにという表示が出ますが、そのまま起動を続けてもどちらでもいいと思います。
--------------------------------------------------------------
★ 上記の画面から、先に進めない(PCの起動ができない)場合は、メモリかメモリの取り付けに不具合のある可能性があると思います。
・このブログの5月27日付の記事で書いたように、メモリテストをする必要もでてきます。
ここでは、セットアップ画面に移行して、メモリ情報を確認しました。
--------------------------------------------------------------
・Memory Info
Installed Memory = 2.0GB → 増設前は「1.0GB」でした。
Memory Speed = 400MHz
Memory Channel Mode = Dual Interleaved
Memory technology = DDR2 SDRAM
--------------------------------
Memory Slot Size ECC Rank Type Organization
DIMM 1 512MB No 1 Unbuffered x8
… … …
… … …
DIMM 4 512MB No 1 Unbuffered x8
--------------------------------------------------------------
・Windowsを再起動させます。
(「休止中」から起動させる場合も、一度、再起動させる必要があります。)
「スタート」ボタンから、「システムのプロパティ」を表示してメモリが認識されているか見ます。
今回は、「2.00GB RAM」とちゃんと表示されました。
・次に、最初にしたように、メモリ情報の確認とアクセス速度の測定をしました。
・HWiNFO32によるメモリ情報。
--------------------------------------------------------------
* row: 0とrow: 2は上記の通りです。
Module Number: 1 → 「row:1」と「row:3」が追加されました。
Module Size: 512MB
Memory Type: DDR2-SDRAM
DIMM Type: Regular Unbuffered(UDIMM)
Error Check/Correction: None
Memory Speed: 266.7MHz(PC2-4200) → PC2-4200です。
Module Manufacturer: PNY Electronics
Module Model:
Serial Number: N/A(該当なし)
Manufacturing Date:Year: N/A
--------------------------------------------------------------
・「Memory Speed」が266.7MHz(PC2-4200)となっていますが、取扱説明書どおり、BIOSセットアップ画面では、「400MHz」と遅い方のモジュールの速度になっています。
・上記で製造会社が
<PNY Electronics>となっています。
・今回、通信販売でGreenHouseの製品として購入した価格が1枚¥1,850ですから、以下のWebページでの表示価格と比べても、同じようなものでしょうか?
参考:
<512MB PC2-4200 533MHz DDR2 Desktop DIMM - $24.99 >
・CrystalMark 2004R2で性能を調べる。
-----------------------------------------------------------
Read:3490.85 MB/s
Write:1668.16 MB/s
Read/Write:1677.19 MB/s
Cache:10029.77 MB/s Score:1002
* Score:7859
------------------------------------------------------------
★ 増設前よりは少しスコアが落ちていますが、メモリへのアクセス性能は変わらなかったとみなしていいと思います。
・つまり、PC2-4200(533MHz)のモジュールもデュアルチャンネルの「400MHz」で動作しているのが分かりました。
5.ダメ押しというより、必要不可欠なメモリテスト。
これにも以前の記事で紹介した、
<MemScope-110.exe>を使いました。
・上のダウンロードファイルで、MemScopeのフロッピーディスク版を作ってメモリテストをします。
結果は、8種類1ラウンドのテストを3回パスさせて終了しました。
エラーは無しでした。
(購入直後のメモリテストは必須だと思います。)
テストに要した時間は1回パスするのに30分、3回で約1時間半でした。
前回は1GBのテストで約45分だったので、今回の2倍の容量のテストでは、ほぼ2倍の時間がかかったようです。
追記
Windowsメモリ診断もするつもりだったのですが、「時間がなくなった」のでやめにしました。
2009-06-12 (金)
Posted at: 00:25:00 - Posted by: yashikiba - Category: Windows OS
HDDの状態を知るユーティリティソフトとして、とても素晴らしいものがあります。
「ひよひよ(hiyohiyo)」氏の製作された「CrystalDiskInfo」です。
参考:
<Crystal Dew World - 作者のホームページ>
このソフトは、「一部のUSB/IEEE1394接続にも対応したHDD/SSDユーティリティ」で、
とにかく、使いやすいのはもちろん、ハードディスクの健康状態などが視覚的に分かりやすいのが特徴だと思います。
CrystalDiskInfoのGUI(Graphical User Interface)は美しく、見ていて気持ちがいいです。
ダウンロードは上記の「ひよひよ(hiyohiyo)」氏のサイトからでも、「Vector」と「窓の杜」からでもできます。
参考:
<CrystalDiskInfo - Vector>
参考:
<CrystalDiskInfo - 「窓の杜」>
なお、インストーラ版でインストールすると以下のようになります。
--------------------------------------------------------------
インストール先:
C:\Program Files\CrystalDiskInfo
プログラムグループ(スタートメニューのフォルダ名):
CrystalDiskInfo
追加タスク一覧:
アイコンを追加する:
デスクトップ上にアイコンを作成する
追加機能:
『Yahoo!ツールバー』をインストールする
--------------------------------------------------------------
・デフォルトでは、『Yahoo!ツールバー』がインストールされますが、
もちろん、インストール設定で変更できます。
CrystalDiskInfoの設定ですが、私は以下のようにしていました。
--------------------------------------------------------------
・このソフトの「メニューバー」から行います。
常駐 → ON(チェックを入れる)
常駐形式 → 非表示
スタートアップ → ON(チェックを入れる)
スタートアップ時の待機時間 → 「120秒」
--------------------------------------------------------------
設定で「常駐」にすると、「通知領域」にDiskInfoのアイコンと、使用しているHDDの温度が台数分表示されます。
「スタートアップ」にチェックを入れると、Windowsの起動時に自動起動します。
(これは、「スタートアップフォルダ」を使用していません。)
ただ、PCの最初の起動時、自宅サーバのバックアップのための「cwrsync.cmd」の実行と、このソフトの起動が重なり、「タスクのビジー状態」の表示が出る場合は、「スタートアップ」をOFFにし、手動で「DiskInfo」を起動させた方がいいと思います。
以下に、このソフトでのHDD情報の項目名とSmartでの項目名の対応を示しておきます。
--------------------------------------------------------------
05 代替処理済のセクタ数
→ 05 Reallocated Sectors Count(不良セクタが発生している。)
C4 セクタ代替処理発生回数
→ C4(196) Reallocation Event Count(上記の代替処理の回数。)
C5 代替処理保留中のセクタ数
→ C5(197) Current Pending Sector Count
(少なくとも読み込みができていないセクタがある。)
C6 回復不可能セクタ数
→ C6(198) Off-Line Scan Uncorrectable Sector Count
(磁気ディスクに明らかな問題がある。)
--------------------------------------------------------------
私の場合、上の項目で言うと、「05」が発生しているが、「C5(197)」と「C6(198)」が「0」、つまり、まだ不良セクタの領域も読み込み可能なうちに、速やかにHDDを交換しようと考えています。
このサーバはRAID1なので、smartエラーがでている方をsmartctlでチェック済みの新品に交換し、ホットスペアの状態からリストアするつもりです。
もし、「回復不可能セクタ」(「代替処理保留中のセクタ」も含めて)が発生したなら、そのセクタの場所はsmartctlですぐに分かりますが、その結果で一時的な復旧が可能かどうかは、また、別の機会に「できるだけ早く」調べておくつもりでいるのですが…。
参考:
<不良セクタの直し方 - 大徳日記>
追記
3ware-8006-2LPのRAID-1(Mirroring)を利用しているのですが、smartエラーは確率としてはどちらか一方のHDDに出ると思います。
このとき、ディスク・ユニットとしては、正常な方のHDDに対して読み書きを継続できると考えたいのですが、そうではないと考えた方がいいでしょう。
Port番号の低い(Port-0)のHDDの方のみを読み込みに行くと思います。
(その結果、「ディスクの読み込みエラー」で、処理が中断してくれればいいのですが?)
さらに、片方のHDDの読み込みができなければ、cronによる「Verify」の実行でエラーがでて、自動的に「initialization」がスタートします。
これでは困ります。
「不良セクタ」のある方が「Port-0」なら、その「Port-0」のHDDのデータが正常な「Port-1」のHDDにコピーされてしまいます。
このことに一時的に対処するため、cronによる「Verify」の実行は手動ですることにしました。
週に一度の、smartctlの「Long-Self-Test」にパスした後にでも行おうかと、思案中です…。
以下のサイトでの設定をよく見てみると、「Auto Verify」は無効にしてあります。
参考:
<RAID管理ツール 3DM2(3ware Disk Manager Version2) の使い方(Fedora)>
1,
2, ... ,
26,
27
next >>
Page 1 of 27