Tsukiji Systems
RSS1.0


googleで
サイト内検索
このブログ
を検索!
  help

巻き戻し中。

2008年
7月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31


2008-07-20(日) 修正 [長年日記] この日を編集

_ PC ssh防御ツール

改良完了。

cron止めて、手動で実験しながら。

会社のVPN経由でアタックを掛けて、状況をモニタ。

入り口が2ヶ所無いと、実験した途端にアクセス不能で終了になってしまうwww

どうやら、1時間あたりの閾値を越えるリストがおかしい。

空行を含んじゃうのね。

で、253行目をちょっと変更。

早速会社のマシンにも移植。

以下source

#!/bin/sh
#
# ssh_chk.sh By H.Uekusa 2007
# Ver 2.02 2008.7.20
# Automated defending tool for ssh attack.
# This command must be set on the cron with every minutes
###############################################################################
#
# You should set 
# $SHPATH [$TMP]/total_min_ipfw_add_cmd.txt
# $SHPATH [$TMP]/total_hour_ipfw_add_cmd.txt
# in /etc/rc.local
#
###############################################################################
 
###############################################################################
# Set variable for location of commands, Path of files...
###############################################################################
 
CATPATH="/bin/cat"
AWKPATH="/usr/bin/awk"
GREPPATH="nice -n 10 /usr/bin/grep --mmap"
DIFFPATH="/usr/bin/diff"
SORTPATH="/usr/bin/sort"
MAILPATH="/usr/bin/mail"
DATEPATH="/bin/date"
SHPATH="/bin/sh"
LOOKUP="/usr/sbin/nslookup"
AUTHLOG="/var/log/auth.log"
TMP="/var/tmp"
LOCKFILE="ssh_chk.lock"
PREV_MIN_RECORD="prev_min"
 
# Should be BSD-Firewall
IPFWPATH="/sbin/ipfw"
 
# Select to check "attempt"
CHK_IP_RESOLV="yes"
CHK_IP_MAP="yes"
 
# Set threshold
OK_PER_MIN="6"
OK_PER_HOUR="20"
 
# Set IPFW parameters
IPFW_NUM="00022"
PORT="22"
IF_NAME="fxp0"
 
# Set valid e-mail!
MAILTO="hogehoge@hoge.jp,hogehoge@docomo.ne.jp"
 
###############################################################################
 
###############################################################################
#check the lock file
###############################################################################
if [ -f "$TMP/$LOCKFILE" ];then
	echo "$0 is executing already"
	echo "Please wait for a while or remove lock file $LOCKFILE!"
	exit
fi
 
### put a lock file ###
touch $TMP/$LOCKFILE
 
###############################################################################
#
#Get date values
#
###############################################################################
NOW=`$DATEPATH +%Y%m%d%H%M`
PREV=`cat $TMP/$PREV_MIN_RECORD`
NOW_HOUR=`$DATEPATH +%Y%m%d%H`
PREV_HOUR=`$DATEPATH -v -1H +%Y%m%d%H`
 
touch $TMP/ipfw_added.txt
$SORTPATH -u $TMP/ipfw_added.txt >$TMP/ipfw_added.txt.sort
cp -p $TMP/ipfw_added.txt.sort $TMP/ipfw_added.txt
rm -f $TMP/ipfw_added.txt.sort
 
###############################################################################
#
#Get failed lines from auth log
#
###############################################################################
 
# Find a string for invalid user for FreeBSD 6.x and later
$GREPPATH Invalid $AUTHLOG > $TMP/"$NOW"_fail.txt
 
# It's old version of above for FreeBSD 4.x/5.x
# $GREPPATH Illegal $AUTHLOG > $TMP/"$NOW"_fail.txt
 
### Touch the previous file for safe ###
touch $TMP/"$PREV"_fail.txt
echo "$NOW" > $TMP/$PREV_MIN_RECORD
 
###############################################################################
#
#Compare with before one minutes
#
###############################################################################
 
$DIFFPATH $TMP/"$NOW"_fail.txt $TMP/"$PREV"_fail.txt |$GREPPATH '^<' > $TMP/diff_raw.txt
NONE_STATUS=`$GREPPATH -c ssh $TMP/diff_raw.txt`
 
###############################################################################
#
#Detect a probing of ssh from attacker (Selective)
#As same as above procedure for normal check
#
###############################################################################
 
if [ "$CHK_IP_RESOLV" = "yes" ];then
	$GREPPATH "POSSIBLE BREAK-IN ATTEMPT" $AUTHLOG |$GREPPATH "getaddrinfo"\
	 > $TMP/"$NOW"_fail-attack.txt
	touch $TMP/"$PREV"_fail-attack.txt
	$DIFFPATH $TMP/"$NOW"_fail-attack.txt $TMP/"$PREV"_fail-attack.txt \
	|$GREPPATH '^<' > $TMP/diff_raw-attack.txt
	NONE_STATUS_ATTACK=`$GREPPATH -c ssh $TMP/diff_raw-attack.txt`
else
	NONE_STATUS_ATTACK="0"
fi
 
if [ "$CHK_IP_MAP" = "yes" ];then
	$GREPPATH "POSSIBLE BREAK-IN ATTEMPT" $AUTHLOG |$GREPPATH "not map back to the address"\
	 > $TMP/"$NOW"_fail-attack2.txt
	touch $TMP/"$PREV"_fail-attack2.txt
	$DIFFPATH $TMP/"$NOW"_fail-attack2.txt $TMP/"$PREV"_fail-attack2.txt\
	 |$GREPPATH '^<' > $TMP/diff_raw-attack2.txt
	NONE_STATUS_ATTACK2=`$GREPPATH -c ssh $TMP/diff_raw-attack2.txt`
else
	NONE_STATUS_ATTACK2="0"
fi
 
###############################################################################
#
# if diff is null, skip all process and exit
#
###############################################################################
 
if [ "$NONE_STATUS" = "0" ];then
	if [ "$NONE_STATUS_ATTACK" = "0" ];then
		if [ "$NONE_STATUS_ATTACK2" = "0" ];then
			touch $TMP/"$NOW_HOUR"-summary-hour_count_list.txt
			touch $TMP/count_list.txt
			touch $TMP/count_cmd.sh
			touch $TMP/min_ipfw_add_cmd.txt
			touch $TMP/min_ipfw_add_cmd_prev.txt
			touch $TMP/ipfw_added.txt
			touch $TMP/hour_ipfw_add_cmd.txt
			touch $TMP/hour_ipfw_add_cmd_prev.txt
			touch $TMP/"$NOW_HOUR"-hour_count_list.txt
			rm -f $TMP/"$PREV_HOUR"*
			rm -f $TMP/$LOCKFILE
			exit
		fi
	fi
fi
 
###############################################################################
#
#Exec for attack suddenly
#
###############################################################################
 
###############################################################################
# For IP resolv
###############################################################################
 
if [ "$NONE_STATUS_ATTACK" != "0" ];then
	touch $TMP/min_ipfw_add_cmd-attack.txt
	cp -p $TMP/min_ipfw_add_cmd-attack.txt $TMP/min_ipfw_add_cmd_prev-attack.txt
	$CATPATH $TMP/"$NOW"_fail-attack.txt|$AWKPATH '{print $12}' | $AWKPATH -F"\]" '{print $1}' \
	| $AWKPATH -F'\[' '{print $2}' > $TMP/count_list-attack.txt
	$SORTPATH -u $TMP/count_list-attack.txt >$TMP/count_list-attack.sort.txt
        cp -p $TMP/count_list-attack.sort.txt $TMP/count_list-attack.txt
        rm -f $TMP/count_list-attack.sort.txt
	$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack.txt\
	| $AWKPATH -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` -v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
	'{ print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}' > $TMP/min_ipfw_add_cmd-attack.txt
	$DIFFPATH $TMP/min_ipfw_add_cmd_prev-attack.txt $TMP/min_ipfw_add_cmd-attack.txt|$GREPPATH '^>'
	if [ "$?" = "0" ]; then
        	$DATEPATH >> $TMP/defend-log
      		$DATEPATH >> $TMP/defend-log.time
       		$SHPATH $TMP/min_ipfw_add_cmd-attack.txt >> $TMP/defend-log
		$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd-attack.txt | $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ \
		'{print LOOKUP" "$1}' > $TMP/defend-name-log-attack.cmd
	 	$CATPATH $TMP/min_ipfw_add_cmd-attack.txt > $TMP/min_mailbody-attack.txt
		$SHPATH $TMP/defend-name-log-attack.cmd >> $TMP/min_mailbody-attack.txt
		echo "by POSSIBLE BREAK-IN ATTEMPT ip-resolv" >> $TMP/min_mailbody-attack.txt
		$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody-attack.txt
### to keep when reboot ###
		$CATPATH $TMP/min_ipfw_add_cmd-attack.txt >> $TMP/total_min_ipfw_add_cmd.txt
### check for double ###
		$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack.txt >> $TMP/ipfw_added.txt
	fi
fi
 
###############################################################################
# For IP reverse map
###############################################################################
 
if [ "$NONE_STATUS_ATTACK2" != "0" ];then
	touch $TMP/min_ipfw_add_cmd-attack2.txt
	cp -p $TMP/min_ipfw_add_cmd-attack2.txt $TMP/min_ipfw_add_cmd_prev-attack2.txt
	$CATPATH $TMP/"$NOW"_fail-attack2.txt|$AWKPATH '{print $7}' > $TMP/count_list-attack2.txt
	$SORTPATH -u $TMP/count_list-attack2.txt >$TMP/count_list-attack.sort2.txt
        cp -p $TMP/count_list-attack.sort2.txt $TMP/count_list-attack2.txt
        rm -f $TMP/count_list-attack.sort2.txt
	$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack2.txt\
	| $AWKPATH -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` -v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
	'{ print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}' \
	> $TMP/min_ipfw_add_cmd-attack2.txt
	$DIFFPATH $TMP/min_ipfw_add_cmd_prev-attack2.txt $TMP/min_ipfw_add_cmd-attack2.txt|$GREPPATH '^>'
	if [ "$?" = "0" ]; then
        	$DATEPATH >> $TMP/defend-log
      		$DATEPATH >> $TMP/defend-log.time
       		$SHPATH $TMP/min_ipfw_add_cmd-attack2.txt >> $TMP/defend-log
		$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd-attack2.txt \
		| $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ '{print LOOKUP" "$1}' > $TMP/defend-name-log-attack2.cmd
	 	$CATPATH $TMP/min_ipfw_add_cmd-attack2.txt > $TMP/min_mailbody-attack2.txt
		$SHPATH $TMP/defend-name-log-attack2.cmd >> $TMP/min_mailbody-attack2.txt
		echo "by POSSIBLE BREAK-IN ATTEMPT ip-reverse-map" >> $TMP/min_mailbody-attack2.txt
		$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody-attack2.txt
### to keep when reboot ###
		$CATPATH $TMP/min_ipfw_add_cmd-attack2.txt >> $TMP/total_min_ipfw_add_cmd.txt
### check for double ###
		$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack2.txt >> $TMP/ipfw_added.txt
	fi
fi
 
###############################################################################
#
#Count per min
#
###############################################################################
 
$SORTPATH -u +10 $TMP/diff_raw.txt \
|$AWKPATH -v TMP=`echo $TMP` '{print "echo -n \""$11" \"; grep -c "$11" "TMP"/diff_raw.txt"}' > $TMP/count_cmd.sh
$SHPATH $TMP/count_cmd.sh > $TMP/count_list.txt
 
###############################################################################
#
#Count per hour
#
###############################################################################
 
$CATPATH $TMP/count_list.txt >>$TMP/"$NOW_HOUR"-hour_count_list.txt
$SORTPATH +1 $TMP/"$NOW_HOUR"-hour_count_list.txt \
|$AWKPATH '{if ( $1 == PREV ) { ADDR = $1; COUNT = COUNT + $2; PREV = ADDR;}\
 else { ADDR = $1; print PREV" "COUNT; COUNT = $2 ; PREV = ADDR;} next} END {print $1" "COUNT}'\
|$AWKPATH '{if ($1 != NULL) {print $1}}' >$TMP/"$NOW_HOUR"-summary-hour_count_list.txt
 
###############################################################################
#
#Process with threthold
#
###############################################################################
 
touch $TMP/ipfw_added.txt
 
### minutes ###
touch $TMP/min_ipfw_add_cmd.txt
cp -p $TMP/min_ipfw_add_cmd.txt $TMP/min_ipfw_add_cmd_prev.txt
$CATPATH $TMP/count_list.txt | $AWKPATH '{print $1}' \
> $TMP/count_list-addr.txt
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-addr.txt \
> $TMP/count_list-new.txt
$GREPPATH -f $TMP/count_list-new.txt $TMP/count_list.txt \
| $AWKPATH -v OK_PER_MIN=`echo $OK_PER_MIN` -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME`\
 -v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
'{ if ( $2 > OK_PER_MIN ) {print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}}' \
> $TMP/min_ipfw_add_cmd.txt
 
### to keep when reboot ###
$CATPATH $TMP/min_ipfw_add_cmd.txt >> $TMP/total_min_ipfw_add_cmd.txt
 
### check for double ###
$GREPPATH -f $TMP/count_list-new.txt $TMP/count_list.txt \
| $AWKPATH -v OK_PER_MIN=`echo $OK_PER_MIN` '{ if ( $2 > OK_PER_MIN ) {print $1}}'\
 >> $TMP/ipfw_added.txt
 
### hour ###
touch $TMP/hour_ipfw_add_cmd.txt
cp -p $TMP/hour_ipfw_add_cmd.txt $TMP/hour_ipfw_add_cmd_prev.txt
$CATPATH $TMP/"$NOW_HOUR"-summary-hour_count_list.txt | $AWKPATH '{print $1}' \
> $TMP/"$NOW_HOUR"-summary-hour_count_list-addr.txt
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/"$NOW_HOUR"-summary-hour_count_list-addr.txt \
> $TMP/"$NOW_HOUR"-summary-hour_count_list-new.txt
$GREPPATH -f $TMP/"$NOW_HOUR"-summary-hour_count_list-new.txt $TMP/"$NOW_HOUR"-summary-hour_count_list.txt \
| $AWKPATH -v OK_PER_HOUR=`echo $OK_PER_HOUR` -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` \
-v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
'{ if ( $2 > OK_PER_HOUR ) {print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}}' \
> $TMP/hour_ipfw_add_cmd.txt
 
### to keep when reboot ###
$CATPATH $TMP/hour_ipfw_add_cmd.txt >> $TMP/total_hour_ipfw_add_cmd.txt
 
### check for double ###
$GREPPATH -f $TMP/"$NOW_HOUR"-summary-hour_count_list-new.txt $TMP/"$NOW_HOUR"-summary-hour_count_list.txt \
| $AWKPATH -v OK_PER_HOUR=`echo $OK_PER_HOUR` '{ if ( $2 > OK_PER_HOUR ) {print $1}}' >> $TMP/ipfw_added.txt
 
###############################################################################
#
# Execute IPFW
#
###############################################################################
 
$DIFFPATH $TMP/min_ipfw_add_cmd_prev.txt $TMP/min_ipfw_add_cmd.txt|$GREPPATH '^>'
if [ "$?" = "0" ]; then
	$DATEPATH >> $TMP/defend-log
	$DATEPATH >> $TMP/defend-log.time
	$SHPATH $TMP/min_ipfw_add_cmd.txt >> $TMP/defend-log
	$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd.txt | $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ '{print LOOKUP" "$1}'\
	 > $TMP/defend-name-log.cmd
	$CATPATH $TMP/min_ipfw_add_cmd.txt > $TMP/min_mailbody.txt
	$SHPATH $TMP/defend-name-log.cmd >> $TMP/min_mailbody.txt
	$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody.txt
fi
 
$DIFFPATH $TMP/hour_ipfw_add_cmd_prev.txt $TMP/hour_ipfw_add_cmd.txt|$GREPPATH '^>'
if [ "$?" = "0" ]; then
	$DATEPATH >> $TMP/defend-log
	$DATEPATH >> $TMP/defend-log.time
	$SHPATH $TMP/hour_ipfw_add_cmd.txt >> $TMP/defend-log
	$MAILPATH -s "SSH attack detected by hour" $MAILTO < $TMP/hour_ipfw_add_cmd.txt
fi
 
###############################################################################
#
#Delete previous files
#
###############################################################################
 
rm -f $TMP/"$PREV_HOUR"*
rm -f $TMP/$LOCKFILE
 
exit

_ バイク フェンダーレス

SWIFTってショップのこれね。。付けてみた。

並べると軽そうに見えるが。。

両方の差は写真の通り。

うーん、「気は心」程度かなぁ。。。。

重さは、、、ハッキリ言ってアルミだがフェンダーレスキットの方が重い。

_|‾|○ ガクガク

取り付けはボルトオンのはずなのだが、脇のステーが溶接の盛り上がりに当たって微妙にネジが入らない。

仕方がないので、キット側の角をヤスリで削った。*1

それにしても、ナンバーがかなり上向き。

いやいや、警察さんに印象悪そうだwww

見た目はまぁまぁ(*´Д`)スキーリ。

横から見ると(*´Д`)スキーリ

*1 溶接側は鉄、キットはアルミだからなぁ。。

_ 魚 お魚クーラー

水の量を見たら、やっぱり減りがちょっと早い。

冷却の風が水面に流れて蒸発させているようだ。

やはり吹きつけで放熱の暖かい風が水面に流れるよりは、吸い出しにしてやった方がマシだろう。

リテールは見ての通り、ホルダも一体なので物理的に裏返しには出来ない。

でもって、ファンの極性ひっくり返して逆転させようとしたけどダメ。

手持ちのCoolerMasterのファンに交換してひっくり返した。

ついでにヒートシンクの水面に大きく開口する側をクリアファイル切って塞いだ。

今度はバッチリだろう。。


2008-07-19(土) 快調 [長年日記] この日を編集

_ 魚 水槽

ちゃんと(?)アルミの園芸用針金で金具を作って、蓋のアクリルも合わせて切り取った。*1

完成だお

水温は昼間でも27度。

たまーにサーモが点灯するぐらいだから、バランスしている。

グッピーちゃんは涼しいのかヒートシンクの下に良く出てくるようになった。

市販品調べたら、テトラのクーラーがペルチェ式で7.000円ぐらい。

でも、ポンプ必要。

正直、小さな水槽にはオーバースペックも甚だしいな。

電力も70Wも喰う。

これなら、ペルチェが1,000円ぐらいとACアダプタ1,600円ぐらいにジャンクのヒートシンクは随分安上がり。

本当は、排熱側をもうちょっと上にしないと水槽内にファンの風が行ってしまうのだが、今のところ平気みたい。

これ以上気温が上がって問題があれば、現在は吹きつけになっているファンの極性をひっくり返して吸い出しにすればおk。

*1 何故かあるアクリルカッター便利ww

_ 車 残項目

I/Cスプレーか。。。

のれん分けハーネスも入手したし、今までの配線整理も兼ねて連休中にやるか。

おまけにしばらく悩んでいたSYMSのエキマニをオクで落としちゃった。

中古だけど新品の半額。

減るモンじゃないし、触媒みたいに劣化もないから中古でおk。

問題は取り付けだな。

タービンサポートまで外すのは、またもやパズルのような水平対向エンジンとの戦い。

まずさ、手が入らない遮熱板外すってだけで鬱になる。

でも、今度はボンネットダンパーで広く開くからちょっとは気楽。

それよか洗車しないとばっちぃ。。。


2008-07-18(金) 冷却! [長年日記] この日を編集

_ とある

会社の装置を冷却したいわけだ。

出来たら液体窒素温度ぐらいまで。

まぁ、そんなに贅沢は言わん。

取り敢えずデカ目のペルチェを引っ張り出して実験。

そう、お魚の冷却もコレを考えているときに出てきた話。

でもって、手持ちの1U用ヒートシンクを組み合わせて、60Wぐらい電力を突っ込んだら。。。

あらら、断熱不足とヒートシンクの容量不足だねぇ。

-10℃ぐらいまでしか行かない。

実験室の室温は25℃。ペルチェが定格85Wまで働けば-30℃は余裕なはずだが。。。*1

そう言えば1U用のヒートシンクだって、普通のはCPUの定格がせいぜい70Wぐらいだもんなぁ。

大きなヒートシンク探すのと、ヒートパイプで筐体にも逃がすことを考えるか。

それとも水冷??

当然、断熱容器も梱包材の発泡スチロールの簡易型じゃなくて真面目にケースとかウレタン加工して作らなきゃ。

*1 最大温度差は60〜70度だ

_ 魚 お魚

冷え冷えクーラーできあがり。できあがり!

市販のファン式じゃないので水も蒸発しない。

ペルチェを挑戦した先人も結構居るみたいだが、大きな水槽には不向き。

ウチぐらいの小型ならベストかも。*1

40mm角のペルチェ*2に6Vで2.5Aぐらい流す。

放熱と吸熱はそれぞれPentium3の純正ヒートシンク。

放熱側はリテールのファンそのままだ。

吸熱側は水に浸ける。ちゃんと断熱

中心に適当に断熱したペルチェ。

ACアダプタは手頃なのが見つからなかったので、秋月の6V/1.8Aを2個並列。*3

実験していたら、ACアダプタもそれなりに熱くなるので、余っていた1U用ヒートシンクを熱伝導テープを介して取り付けた。

固定はビニテで適当スマソ。

25℃の部屋で実験すると、吸熱側は4度ぐらいまで下がる。

でもって、仮にワイヤーハンガーを曲げて取り付け。

32度近くあった水温は、2時間で27度まで下がった。

サーモは26度だから丁度良さそう。サイバー水槽www

グッピーちゃんも、涼しいのかヒートシンクの下に来ている。

ドジョウちゃんもあと3日待てば涼しい水槽で暴れずに済んだかもしれないなぁ。(´・ω・`)ガッカリ・・・

それにしても見た目がサイバーな水槽だな。

「Intel入ってる」よ。一応www

*1 市販するには価格が高いな、きっと。。。

*2 オーバースペックだなwww

*3 1個で6V/2.8Aってのがあったけど、それこそ定格ギリギリは怖い。

_ 車 ボンネット

オクで取ったアグメントのダンパー取り付け。ちゃんとアグメント製

いや、コレ一人でやるのはアルミボンネットだから良いけど、普通の鉄だと無理だ。

元のヒンジとダンパーの金具が共締めだから、一度ボルトを外して片側は自分で支えなきゃならない。

1本目は寝ぼけて左右間違えて付けちゃった。

2本目付ける前に気付いて良かった。

両方付けて閉めたらエライ事になるところだ。*1

感触は。。。うーん素敵!

軽く開け閉めできるし、開く角度もちょっと増えた。

アルミボンネットで軽くても、風で煽られて支えが外れる心配もない。

スムーズだし大きく開く

*1 中古で買ったから説明書無し。

本日のツッコミ(全2件) [ツッコミを入れる]

_ 池田 [水槽の温度を12℃位にしたいと思うんですが、可能でしょうか?]

_ わし@管理者 [回答は2008/11/11の日記に書いてみました。]


2008-07-17(木) 自決!?(‾▽‾;) [長年日記] この日を編集

_ 魚 どぜう

昨晩から見かけないなぁと思って長男に聞いたら、

「昨日の朝、パパが出掛けた後に水槽から飛び出して干からびてた」だと。

入水じゃなくて、出水自殺だぁ(>_<)

せっかく水槽も新しくしたのに。。

蓋の僅かな隙間を狙って飛び出したらしい。

オイラの顔を見るといつもエサクレって暴れてたから、その勢いかなあ。

_ 魚 水温

グッピー飼うにあたってヒーターを入れたのだが、ここ数日の暑さで水温が気になった。

夜に温度計見ても32℃ある。*1

昼はもっと高いだろう。冷却考えないと。

ファン式のクーラーは売ってるけど、気化熱使うから水が減るし、水槽小さいから取り付け大変。

丁度、でかいペルチェ素子とソケット370のヒートシンクが2つある。

大きい水槽で挑んだ事例はあるみたいだけど、効率悪かったらしい。

小型水槽なら水面の面積小さいから、ファン式より良いかも。

*1 適温は26℃から


2008-07-16(水) チキンレース [長年日記] この日を編集

_ Σ(゜д゜)オイオイ

今度は小女子かよ。。。

書く方も逮捕する方もたいがい頭悪いと思うが、このチキンレースって何の意味があるんだか。。

昔、暴走族やガキンチョが警察署の前でどこまでがセーフかっておちょくっていたのと同じノリだな。

唯一違うのは中高のガキじゃなくて「大きなお友達」のいい年した無職さんだって事か。

それにしても、いい加減「気に入らないからタイ━━━━||Φ|(|´|ⅴ|`|)|Φ||━━━━ホ!!!」って雰囲気になってきたな。

政府や警察の文句書いたら「政権転覆や公務執行の妨害を目論む者」って逮捕も有りだろ、これ。

本日のツッコミ(全2件) [ツッコミを入れる]

_  [19日の犯行予告出されて不安な親です。]

_ わし@管理者 [この捕まったヤツ、ウチから近いです。 何故わざわざ埼玉の学校を名指ししたのか分からないけど。 19日ってのは、ネット..]


2008-07-15(火) (☆∀☆) [長年日記] この日を編集

_ KIWIの

革靴のクリーム

靴を全然磨いていないので、すごくボロかったからコンビニで買ってみた。

すげー効くな、これ。(・∀・)チゴイネ!*1

擦れて色が薄れていたところもバッチリピカピカ。

(☆∀☆)

*1 KIWIって言えば、昔はバイクの革ツナギ用のミンクオイルだった訳だが。

_ 学会

と言っても宗教じゃありませぬ。

ちゃんと学術的なヤシ。*1

参加するかなぁ。

業界狭いのもあって知っている人多いし。

*1 電気学会の一部だお


2008-07-14(月) ばぐぅ [長年日記] この日を編集

_ PC ツール

どうやら1分間の閾値と1時間の閾値を超過すると、両方でfirewallを設定してしまう。

うーん、ファイルからgrepして重複を外してるはずなんだが。。。

取り敢えずcronから外して動作検証だな。

(´-ω-`)

_ バイク CDI

と言うか、イグナイター。

オクで650用として出てるんだけど、「KW0」って刻印は明らかにP2の400用だ。

入札してる人いるけど大丈夫かな?

_ お誘い

急遽明日の午後から某学会に出席のお誘い。

確かに専門ではあるのだが、狭い業界なので首を突っ込むといろんな役が回ってきそうで怖い。

仕事が研究開発に没頭なら業務の一部になるんだけど、おいらのような何でも屋にとってはちょっとね。。。

研究/開発/製品化/営業/工事に保守と何でもござれだ。

おまけにシステム管理者と来た。

後は経理と経営だけだよ。

_ 良く嫁

またもや意味不明な「予告系」逮捕者。。

言いっ放しじゃなくて前置きもあるし、末尾に「まぁ、犯行予告にみえるってだけだけどなw」って書いてるし、

スレの流れから見てもこれで逮捕じゃ言葉狩りっぽくなってきてるなぁ。

最近の警察は国語の読解力も低下してるのか?

そのうちリアルっぽい映画の予告や広告も引っ掛かるぞ。

逮捕したのはいいけど裁判で検察負けまくりんぐなんて事になりそうだな。

そうなる前に無理矢理法改正?

うーん、恐ろしい世の中になりそう。


2008-07-13(日) 買収 [長年日記] この日を編集

_ バイク ハーレー

どうやらカジバとMVアグスタ買収。

ふーん、イメージが合わないが、ジャンルを広げるって意味では生き残り戦略だな。

まぁ、おいらがその手の単車を買うことは多分無いからあまり関係ないが。

_ PC BOINC/WCG

そろそろ国内50位が見えてきた。

鯖更改&作業用PC流用完了で、コンスタントに4,000ポイントぐらいを出せそうだ。

上位は既に1年以上前からやっているので、相当のことがなければ追いつかないな。

20位以内に入るには、この勢いでも1年ぐらい掛かるwww

_ PC Xeon-HT

要するに今までの鯖で使っていたXeon-HTを作業用PCに移したのだが、全く同じ構成のXeon1発に対してベンチの結果が思わしくない。

Floatはきっちり2倍近く出るのだが、Intが1.2倍も出ない。

CCleanerとかで掃除もしたけどあまり変化無し。

うむむ、思い当たるのはBIOS設定ぐらいだなぁ。

流石に遠隔からコレは無理なので、月曜日以降にチェックだ。


2008-07-12(土) ふぅ・・・ [長年日記] この日を編集

_ 結局

帰り道秋葉原で仕事に使うDVDドライブを購入。

夕方から泥のように睡眠。

_ PC ssh攻撃

ツール改良が一応まとまった。

grep -F/fgrepは、単純に使うとちょっと困る。

一行で1分間/1時間のカウントの数字も入っているので、行単位の比較だと含まれちゃう。

ちょっと無駄だが2段階で比較。

反転の-vはfgrep、ファイル同士だが普通の比較はgrepでどうだろうか。。。

いやいや、それにしても1行が長すぎだな。

「\」で折り返すこと多数。。。

これだけコメント書いて、ファイル吐き出ししてれば動作は分かりやすいと思う。

誰かperl辺りに移植してサクッと動くようにしてけれ。

以下source

【相変わらず/bin/shです(^^ゞ】

#!/bin/sh
#
# ssh_chk.sh By H.Uekusa 2007
# Ver 2.01 2008.7.13
# Automated defending tool for ssh attack.
# This command must be set on the cron with every minutes
###############################################################################
#
# You should set 
# $SHPATH [$TMP]/total_min_ipfw_add_cmd.txt
# $SHPATH [$TMP]/total_hour_ipfw_add_cmd.txt
# in /etc/rc.local
#
###############################################################################
 
###############################################################################
# Set variable for location of commands, Path of files...
###############################################################################
CATPATH="/bin/cat"
AWKPATH="/usr/bin/awk"
GREPPATH="nice -n 10 /usr/bin/grep --mmap "
DIFFPATH="/usr/bin/diff"
SORTPATH="/usr/bin/sort"
MAILPATH="/usr/bin/mail"
DATEPATH="/bin/date"
SHPATH="/bin/sh"
LOOKUP="/usr/sbin/nslookup"
AUTHLOG="/var/log/auth.log"
TMP="/var/tmp"
LOCKFILE="ssh_chk.lock"
PREV_MIN_RECORD="prev_min"
 
# Should be BSD-Firewall
IPFWPATH="/sbin/ipfw"
 
# Select to check "attempt"
CHK_IP_RESOLV="yes"
CHK_IP_MAP="yes"
 
# Set threshold
OK_PER_MIN="4"
OK_PER_HOUR="10"
 
# Set IPFW parameters
IPFW_NUM="999"
PORT="22"
IF_NAME="fxp0"
 
# Set valid e-mail!
MAILTO="hoge@hoge"
 
###############################################################################
 
#
#check lock file
#
if [ -f "$TMP/$LOCKFILE" ];then
	echo "$0 is executing already"
	echo "Please wait for a while or remove lock file $LOCKFILE!"
	exit
fi
 
#
#put a lock file
#
touch $TMP/$LOCKFILE
 
###############################################################################
#
#Get date values
#
###############################################################################
NOW=`$DATEPATH +%Y%m%d%H%M`
PREV=`cat $TMP/$PREV_MIN_RECORD`
# PREV=`$DATEPATH -v -1M +%Y%m%d%H%M`
NOW_HOUR=`$DATEPATH +%Y%m%d%H`
PREV_HOUR=`$DATEPATH -v -1H +%Y%m%d%H`
 
touch $TMP/ipfw_added.txt
$SORTPATH -u $TMP/ipfw_added.txt >$TMP/ipfw_added.txt.sort
cp -p $TMP/ipfw_added.txt.sort $TMP/ipfw_added.txt
rm -f $TMP/ipfw_added.txt.sort
 
###############################################################################
#
#Get failed lines from auth log
#
###############################################################################
 
# Find a tring for invalid user for FreeBSD 6.x and later
$GREPPATH Invalid $AUTHLOG > $TMP/"$NOW"_fail.txt
 
# It's old version of above for FreeBSD 4.x/5.x
# $GREPPATH Illegal $AUTHLOG > $TMP/"$NOW"_fail.txt
 
#
#Touch the previous file for safe
#
touch $TMP/"$PREV"_fail.txt
echo "$NOW" > $TMP/$PREV_MIN_RECORD
 
###############################################################################
#
#Compare with before one minutes
#
###############################################################################
 
$DIFFPATH $TMP/"$NOW"_fail.txt $TMP/"$PREV"_fail.txt |$GREPPATH '^<' > $TMP/diff_raw.txt
NONE_STATUS=`$GREPPATH -c ssh $TMP/diff_raw.txt`
 
###############################################################################
#
#Detect a probing of ssh from attacker (Selective)
#As same as above procedure for normal check
#
###############################################################################
 
if [ "$CHK_IP_RESOLV" = "yes" ];then
	$GREPPATH "POSSIBLE BREAK-IN ATTEMPT" $AUTHLOG |$GREPPATH "getaddrinfo"\
	 > $TMP/"$NOW"_fail-attack.txt
	touch $TMP/"$PREV"_fail-attack.txt
	$DIFFPATH $TMP/"$NOW"_fail-attack.txt $TMP/"$PREV"_fail-attack.txt \
	|$GREPPATH '^<' > $TMP/diff_raw-attack.txt
	NONE_STATUS_ATTACK=`$GREPPATH -c ssh $TMP/diff_raw-attack.txt`
else
	NONE_STATUS_ATTACK="0"
fi
 
if [ "$CHK_IP_MAP" = "yes" ];then
	$GREPPATH "POSSIBLE BREAK-IN ATTEMPT" $AUTHLOG |$GREPPATH "not map back to the address"\
	 > $TMP/"$NOW"_fail-attack2.txt
	touch $TMP/"$PREV"_fail-attack2.txt
	$DIFFPATH $TMP/"$NOW"_fail-attack2.txt $TMP/"$PREV"_fail-attack2.txt\
	 |$GREPPATH '^<' > $TMP/diff_raw-attack2.txt
	NONE_STATUS_ATTACK2=`$GREPPATH -c ssh $TMP/diff_raw-attack2.txt`
else
	NONE_STATUS_ATTACK2="0"
fi
 
###############################################################################
#
# if diff is null, skip all process and exit
#
###############################################################################
 
if [ "$NONE_STATUS" = "0" ];then
	if [ "$NONE_STATUS_ATTACK" = "0" ];then
		if [ "$NONE_STATUS_ATTACK2" = "0" ];then
			touch $TMP/"$NOW_HOUR"-summary-hour_count_list.txt
			touch $TMP/count_list.txt
			touch $TMP/count_cmd.sh
			touch $TMP/min_ipfw_add_cmd.txt
			touch $TMP/min_ipfw_add_cmd_prev.txt
			touch $TMP/ipfw_added.txt
			touch $TMP/hour_ipfw_add_cmd.txt
			touch $TMP/hour_ipfw_add_cmd_prev.txt
			touch $TMP/"$NOW_HOUR"-hour_count_list.txt
			rm -f $TMP/"$PREV_HOUR"*
			rm -f $TMP/$LOCKFILE
			exit
		fi
	fi
fi
 
###############################################################################
#
#Exec for attack suddenly
#
###############################################################################
 
###############################################################################
# For IP resolv
###############################################################################
 
if [ "$NONE_STATUS_ATTACK" != "0" ];then
	touch $TMP/min_ipfw_add_cmd-attack.txt
	cp -p $TMP/min_ipfw_add_cmd-attack.txt $TMP/min_ipfw_add_cmd_prev-attack.txt
	$CATPATH $TMP/"$NOW"_fail-attack.txt|$AWKPATH '{print $12}' | $AWKPATH -F"\]" '{print $1}' \
	| $AWKPATH -F'\[' '{print $2}' > $TMP/count_list-attack.txt
	$SORTPATH -u $TMP/count_list-attack.txt >$TMP/count_list-attack.sort.txt
        cp -p $TMP/count_list-attack.sort.txt $TMP/count_list-attack.txt
        rm -f $TMP/count_list-attack.sort.txt
	$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack.txt\
	| $AWKPATH -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` \
	-v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
	'{ print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}' \
	> $TMP/min_ipfw_add_cmd-attack.txt
	$DIFFPATH $TMP/min_ipfw_add_cmd_prev-attack.txt $TMP/min_ipfw_add_cmd-attack.txt|$GREPPATH '^>'
	if [ "$?" = "0" ]; then
        	$DATEPATH >> $TMP/defend-log
      		$DATEPATH >> $TMP/defend-log.time
       		$SHPATH $TMP/min_ipfw_add_cmd-attack.txt >> $TMP/defend-log
		$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd-attack.txt | $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ \
		'{print LOOKUP" "$1}' > $TMP/defend-name-log-attack.cmd
	 	$CATPATH $TMP/min_ipfw_add_cmd-attack.txt > $TMP/min_mailbody-attack.txt
		$SHPATH $TMP/defend-name-log-attack.cmd >> $TMP/min_mailbody-attack.txt
		echo "by POSSIBLE BREAK-IN ATTEMPT ip-resolv" >> $TMP/min_mailbody-attack.txt
		$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody-attack.txt
### to keep when reboot ###
		$CATPATH $TMP/min_ipfw_add_cmd-attack.txt >> $TMP/total_min_ipfw_add_cmd.txt
### check for double ###
		$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack.txt >> $TMP/ipfw_added.txt
	fi
fi
 
###############################################################################
# For IP reverse map
###############################################################################
 
if [ "$NONE_STATUS_ATTACK2" != "0" ];then
	touch $TMP/min_ipfw_add_cmd-attack2.txt
	cp -p $TMP/min_ipfw_add_cmd-attack2.txt $TMP/min_ipfw_add_cmd_prev-attack2.txt
	$CATPATH $TMP/"$NOW"_fail-attack2.txt|$AWKPATH '{print $7}' > $TMP/count_list-attack2.txt
	$SORTPATH -u $TMP/count_list-attack2.txt >$TMP/count_list-attack.sort2.txt
        cp -p $TMP/count_list-attack.sort2.txt $TMP/count_list-attack2.txt
        rm -f $TMP/count_list-attack.sort2.txt
	$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack2.txt\
	| $AWKPATH -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` \
	-v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
	'{ print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}' \
	> $TMP/min_ipfw_add_cmd-attack2.txt
	$DIFFPATH $TMP/min_ipfw_add_cmd_prev-attack2.txt $TMP/min_ipfw_add_cmd-attack2.txt|$GREPPATH '^>'
	if [ "$?" = "0" ]; then
        	$DATEPATH >> $TMP/defend-log
      		$DATEPATH >> $TMP/defend-log.time
       		$SHPATH $TMP/min_ipfw_add_cmd-attack2.txt >> $TMP/defend-log
		$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd-attack2.txt \
		| $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ '{print LOOKUP" "$1}' \
		> $TMP/defend-name-log-attack2.cmd
	 	$CATPATH $TMP/min_ipfw_add_cmd-attack2.txt > $TMP/min_mailbody-attack2.txt
		$SHPATH $TMP/defend-name-log-attack2.cmd >> $TMP/min_mailbody-attack2.txt
		echo "by POSSIBLE BREAK-IN ATTEMPT ip-reverse-map" >> $TMP/min_mailbody-attack2.txt
		$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody-attack2.txt
### to keep when reboot ###
		$CATPATH $TMP/min_ipfw_add_cmd-attack2.txt >> $TMP/total_min_ipfw_add_cmd.txt
### check for double ###
		$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-attack2.txt >> $TMP/ipfw_added.txt
	fi
fi
 
###############################################################################
#
#Count per min
#
###############################################################################
 
$SORTPATH -u +10 $TMP/diff_raw.txt \
|$AWKPATH -v TMP=`echo $TMP` '{print "echo -n \""$11" \"; grep -c "$11" "TMP"/diff_raw.txt"}' \
> $TMP/count_cmd.sh
$SHPATH $TMP/count_cmd.sh > $TMP/count_list.txt
 
###############################################################################
#
#Count per hour
#
###############################################################################
 
$CATPATH $TMP/count_list.txt >>$TMP/"$NOW_HOUR"-hour_count_list.txt
$SORTPATH +1 $TMP/"$NOW_HOUR"-hour_count_list.txt \
|$AWKPATH '{if ( $1 == PREV ) { ADDR = $1; COUNT = COUNT + $2; PREV = ADDR;}\
 else { ADDR = $1; print PREV" "COUNT; COUNT = $2 ; PREV = ADDR;} next} END {print $1" "COUNT}'\
 >$TMP/"$NOW_HOUR"-summary-hour_count_list.txt
 
###############################################################################
#
#Process with threthold
#
###############################################################################
 
touch $TMP/ipfw_added.txt
 
### minutes ###
touch $TMP/min_ipfw_add_cmd.txt
cp -p $TMP/min_ipfw_add_cmd.txt $TMP/min_ipfw_add_cmd_prev.txt
$CATPATH $TMP/count_list.txt | $AWKPATH '{print $1}' > $TMP/count_list-addr.txt
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list-addr.txt > $TMP/count_list-new.txt
$GREPPATH -f $TMP/count_list-new.txt $TMP/count_list.txt \
| $AWKPATH -v OK_PER_MIN=`echo $OK_PER_MIN` -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME`\
 -v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
'{ if ( $2 > OK_PER_MIN ) {print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}}' \
> $TMP/min_ipfw_add_cmd.txt
 
### to keep when reboot ###
$CATPATH $TMP/min_ipfw_add_cmd.txt >> $TMP/total_min_ipfw_add_cmd.txt
 
### check for double ###
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/count_list.txt \
| $AWKPATH -v OK_PER_MIN=`echo $OK_PER_MIN` '{ if ( $2 > OK_PER_MIN ) {print $1}}'\
 >> $TMP/ipfw_added.txt
 
### hour ###
touch $TMP/hour_ipfw_add_cmd.txt
cp -p $TMP/hour_ipfw_add_cmd.txt $TMP/hour_ipfw_add_cmd_prev.txt
$CATPATH $TMP/"$NOW_HOUR"-summary-hour_count_list.txt \
| $AWKPATH '{print $1}' > $TMP/"$NOW_HOUR"-summary-hour_count_list-addr.txt
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/"$NOW_HOUR"-summary-hour_count_list-addr.txt \
> $TMP/"$NOW_HOUR"-summary-hour_count_list-new.txt
$GREPPATH -f $TMP/"$NOW_HOUR"-summary-hour_count_list-new.txt $TMP/"$NOW_HOUR"-summary-hour_count_list.txt \
| $AWKPATH -v OK_PER_HOUR=`echo $OK_PER_HOUR` -v IPFW_NUM=`echo $IPFW_NUM` -v IF_NAME=`echo $IF_NAME` \
-v PORT=`echo $PORT` -v IPFWPATH=`echo $IPFWPATH` \
'{ if ( $2 > OK_PER_HOUR ) {print IPFWPATH" add "IPFW_NUM" deny tcp from "$1"/24 to any "PORT" via "IF_NAME}}' \
> $TMP/hour_ipfw_add_cmd.txt
 
### to keep when reboot ###
$CATPATH $TMP/hour_ipfw_add_cmd.txt >> $TMP/total_hour_ipfw_add_cmd.txt
 
### check for double ###
$GREPPATH -F -v -f $TMP/ipfw_added.txt $TMP/"$NOW_HOUR"-summary-hour_count_list.txt \
| $AWKPATH -v OK_PER_HOUR=`echo $OK_PER_HOUR` '{ if ( $2 > OK_PER_HOUR ) {print $1}}' \
>> $TMP/ipfw_added.txt
 
###############################################################################
#
# Execute IPFW
#
###############################################################################
 
$DIFFPATH $TMP/min_ipfw_add_cmd_prev.txt $TMP/min_ipfw_add_cmd.txt|$GREPPATH '^>'
if [ "$?" = "0" ]; then
	$DATEPATH >> $TMP/defend-log
	$DATEPATH >> $TMP/defend-log.time
	$SHPATH $TMP/min_ipfw_add_cmd.txt >> $TMP/defend-log
	$AWKPATH '{print $7}' $TMP/min_ipfw_add_cmd.txt \
	| $AWKPATH -v LOOKUP=`echo $LOOKUP` -F/ '{print LOOKUP" "$1}'\
	 > $TMP/defend-name-log.cmd
	$CATPATH $TMP/min_ipfw_add_cmd.txt > $TMP/min_mailbody.txt
	$SHPATH $TMP/defend-name-log.cmd >> $TMP/min_mailbody.txt
	$MAILPATH -s "SSH attack detected by minutes" $MAILTO < $TMP/min_mailbody.txt
fi
 
$DIFFPATH $TMP/hour_ipfw_add_cmd_prev.txt $TMP/hour_ipfw_add_cmd.txt|$GREPPATH '^>'
if [ "$?" = "0" ]; then
	$DATEPATH >> $TMP/defend-log
	$DATEPATH >> $TMP/defend-log.time
	$SHPATH $TMP/hour_ipfw_add_cmd.txt >> $TMP/defend-log
	$MAILPATH -s "SSH attack detected by hour" $MAILTO < $TMP/hour_ipfw_add_cmd.txt
fi
 
###############################################################################
#
#Delete previous files
#
###############################################################################
 
rm -f $TMP/"$PREV_HOUR"*
rm -f $TMP/$LOCKFILE
 
exit

_ 結婚ねぇ。。

こりゃ双方の言い分に考えさせられる。。。

でも、

******************************************************
237 名前: 古代都市ワクテカ(埼玉県)[sage] 投稿日:2008/07/11(金) 10:15:24.73 ID:fSgBiVlt0
俺等って決して高望みなんてしてないよな?
女共が挙げる男の条件って全部無理じゃん。クリア出来るワケが無い。
 
俺等が求めてるのは常識の範囲内だぜ?
亭主をゴミのように扱わないとか、貯金を横領しないとか、それを「男のわがまま」
と言いますか?
******************************************************
泣ける。。。。・゜・(ノД`)・゜・。

2008-07-11(金) 徹夜作業 [長年日記] この日を編集

_ PC 予定通り

夕方6時から鯖の入れ替え。

RAIDのデータをコピーしている間に軽く一杯*1と思っていたのだが、戻ってきたらコピー失敗。

バックアップの実験の際に出来た.snapを削除するの忘れてた。

コピー元よりコピー先が盛大に大きなサイズになってる。。。orz

やり直して何だかんだと作業が終わったのは午前1時前。

眠いのぉ。

*1 計算では約2時間。丁度良すぎるwww

_ PC 意外な伏兵

降ろした鯖と予備ボードを使って作業用のPCも組み替え。

おいら号は石が1個から2個に増えるだけだからすんなり動いたが、S君作業端末は厄介この上なし。

チップセット変わるしマザボのBOIS設定も違っていて、HDDは見えてもブート出来ず。

結局HDDアクセス方法の「DOS/Other」の違いで見えるまで小一時間、明け方だ。

当然デバイスががらっと変わるので修復インストールだが、何故かHDDが全てPIOモードで檄遅。

ドライバ組み替えてサービスパックやら何やら結局今は朝の10時。

そろそろくたばるか。。。

ネ、ネムイ‥ゴシゴシ(-_\)ゴシゴシ(/_-)



過去の写真!
良い感じに付いた(・∀・) 削るぜ! オリジナル(すり減ってる) バンジョーはあるんだがw
アクセスカウンター!
累計:
本日:
昨日:
最近のツッコミ