|
| ||||||||
|
巻き戻し中。
|
|
2008-07-12(土) ふぅ・・・ [長年日記]
_ 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(金) 徹夜作業 [長年日記]
_ 予定通り
夕方6時から鯖の入れ替え。
RAIDのデータをコピーしている間に軽く一杯*1と思っていたのだが、戻ってきたらコピー失敗。
バックアップの実験の際に出来た.snapを削除するの忘れてた。
コピー元よりコピー先が盛大に大きなサイズになってる。。。orz
やり直して何だかんだと作業が終わったのは午前1時前。
眠いのぉ。
*1 計算では約2時間。丁度良すぎるwww
_ 意外な伏兵
降ろした鯖と予備ボードを使って作業用のPCも組み替え。
おいら号は石が1個から2個に増えるだけだからすんなり動いたが、S君作業端末は厄介この上なし。
チップセット変わるしマザボのBOIS設定も違っていて、HDDは見えてもブート出来ず。
結局HDDアクセス方法の「DOS/Other」の違いで見えるまで小一時間、明け方だ。
当然デバイスががらっと変わるので修復インストールだが、何故かHDDが全てPIOモードで檄遅。
ドライバ組み替えてサービスパックやら何やら結局今は朝の10時。
そろそろくたばるか。。。
ネ、ネムイ‥ゴシゴシ(-_\)ゴシゴシ(/_-)
2008-07-10(木) 微妙? [長年日記]
_ (((( ‾ー‾)))ガクガクガクブルブルブル
ホムセンの買い物ついでに電器屋で部品を探していたら、女子中学生の固まりがいる。
へぇ、電器屋で遊んで行く物あるのかな?と思いながらよく見たら、顔が((;゜Д゜)ガクガクブルブルしてる。
一瞬目がおかしくなったのかと思ったら、マッサージ器コーナーのバイブレーターの上でブルブルしてるのね。
仲間数人と。しかも何となく楽しそう。
はぁ、、、面白すぎて携帯でムービー撮ろうかとオモタよ。
_ grep
結局、苦労してOS入れ替えても変わらず。
同じスペックでFreeBSD6.2のi815マシンは15秒ぐらい。
うーん、気になると言えば他はIntelのチップセットだが、こいつだけはSISだ。
サードパーティーのチップセットは案外ボトルネック多かったりするからなぁ。
昔もVIAのチップセットでP3x2はダメダメで速攻売っぱらった記憶があるわ。
仕方がないのでツールの見直し。
1行に一つのIPアドレス同士の比較だし、全文字シフトして比較の必要なし。
結局、色々調べたらfgrep/grep -Fでおk。
これにしたらどのマシンも1秒以内に処理出来る。
まぁ、当面の問題はなくなったけど釈然としないなぁ。。。
(´-ω-`)
2008-07-09(水) 工工エエエエェェェ(゜Д゜)ェェェエエエエ工工 [長年日記]
_ Kernel
夕方に「ちょこっと」VPN鯖のOSをFreeBSD6.2にしようとオモタのだ。
例のgrepが遅い件もあるし。
で、さくっとCD-ROMのインストーラーからsrcも含めてインスコ完了。。
と思ったら、kernel再構築がエラーで止まってしまう。
NETGRAPHが組み込めないのでmpdでpptp出来ない。
夜中もリモートアクセスでkernel設定とにらめっこ。
朝の5時過ぎにようやくGENERICまでコンパイル出来ないことに気づいて「ソースがおかしい」と判明。
ftpで持ってきてようやく完了。
┐(゜〜゜)┌
_ ゲット
突然、こんなおじさんが会社に発生。
ふ む な よ 、 常 考 o(`ω´*)o
端末再インストールやら、ついでに他の人の更新も含めてドタバタと一日が終わってしまった。
あぁ、明日の提案書いつ仕上げよう。
_|‾|○ ガクガク
2008-07-08(火) 出会い? [長年日記]
_ 難易度
高すぎてワロタ。
ソースはこの辺なんだが。。。
この写真で選択するとは何という選球眼。
いやいや、欧米でも評判らしい。
しかし忍者コメント多いな、さすが欧米。
(=゜ω゜)ノ −−−===≡≡≡ 卍 シュッ!
つーか、写真の意味なくね?
_ grep
会社鯖のハニーポット用ssh攻撃検出ツールが重たい。
毎分起動しているのだが、気がつくとgrepが山ほど起動して死にそうになってる。
IPを記録したファイル同士のgrep -v -fで差分を出しているのだが、
どうやら前の処理が終わらないうちに次の処理が始まる悪循環。
マシンが遅いのか、OSの違いなのかおいら鯖では問題ナス。
早速実験。。。。
--------------------------------------------------------
おいら鯖 :FreeBSD6.2/Core2Duo 2.66G =====5秒
会社鯖 :FreeBSD5.5/Celeron 1.4G =====8分
後輩の実験鯖 :FreeBSD7.0/Celeron 1.1G =====14秒
--------------------------------------------------------
ちょっwwおまwww
1台だけ単位が違うだろ!
どうやらCPUの速度とかじゃなくOSの問題だな。
さっさと新しいOSにしましょ。。。
いずれにしてもgrepはファイル入力(複数行照合)かつ-vの反転は激烈に遅いことが分かった。
たぶんメモリ上に全部展開しないといけないからかな?
でも大したサイズでもないし、根本的に何かおかしいと思う。
取り敢えずはロックファイル置いて二重起動防ごう。
最終的にはsort&diffに変えるか。。。orz
2008-07-07(月) 鯖 [長年日記]
_ 整備
夕方6時からサーバー室の電源環境整備。
全部停止してUPSやら配線の整理。
小一時間の予定がちょっと伸びて90分。
まぁまぁだな。
週末は鯖入れ替え。こっちは徹夜..._〆(゜▽゜*)。
ついでに二重化しているシステムHDD類をなるべく同じ品番に揃えた。
ジオメトリまで同じならddコマンドで一発コピーが出来るかなと。
でも、結局真面目にパーティション切ってnewfs/tarでコピーの方がましだったりする。*1
そう言えば、fdiskやlabelはFreeBSDのsysinstallから使うことが多いけど、最近こいつは宜しくない。
いつも「書き込み失敗」するのでbsdlabel -eで覗いたら、作ったつもりのないad*s*aって領域がフルサイズで勝手に出来ちゃっている。
d〜fがどうやっても切れないわけだ。
結局手動でlabel書いて、newfs。
┐(゜〜゜)┌
*1 シングルユーザーでやればよいのだがそうも行かないので
2008-07-06(日) ようやく [長年日記]
_ センターパイプ
夕方の草むしりの後、小1時間で取り付け完了。
本当はよろしくないが片側前後だけリジットラックで持ち上げた。
車庫狭いし、センターパイプは前後に渡るので。。。
当然怖いから前後にジャッキも差してあるよ一応。
ノーマルのパイプは見た目も野暮ったいが、それ以上に重い。
SYMSはステンレスながらも片手で持てるが、ノーマルは両手じゃないと無理。
外すのは良いけど、もしノーマルに戻すことになったら嫌だなぁ。
お買い物ついでに試乗したけど、音は膨張室が(ryな分ちょっと大きいかな?と言う程度。
それよりも偶然ホムセンの駐車場で向かい側に居た、SF-5に柿本マフラーっぽい夫婦が
「がろろん、がろろん」ってバックしている音の方が強力にでかかった。
一瞬自分の音かと思って「こりゃ、ノーマルに戻さなきゃダメか?」ってびびったwww
_ 残るは
I/Cスプレーなのだが*1、純正だとタイマーリレーに繋がる部分をコントローラと置き換える。
でもさ、コントローラは4ピンしか出てない。
電源/GND/スイッチ/出力で終わり。
で、インプの純正状態は知らないが、タンクにある水位センサーどうするんだろ?
水が無くなったら電源切って欲しいよなぁ。
ネットで調べたら、ランプ付けるかブザー鳴らすだけだって。
テスターで調べたら「水有り:OFF/水切れ:ON」なセンサーだ。
あ、そ、、リレー入れてコントローラの電源自動で切るよ。o(`ω´*)o
ってことは、NC端子使わなきゃな。
手持ちを見たら5Vリレーばっかり。
まぁいいや。ホムセンで車の工作用リレーなら沢山売ってるし。
で、思い立ったついでに各部のピンアサインを安定化電源使いながらチェック。
----------------------------------------------------------
コントローラは
赤:電源12V
黒:GND
茶:スイッチ(1回押しで数秒噴射、長押しで自動ON/OFF)
橙:モーターへ出力
スイッチ側の6P090は、通常のコネクタのピン番号の数え方だと、
1:ポジションランプ(照明)
2:GND(動作表示電球のGND)
3:キー(プラスチックのピン)
4:コントローラのスイッチ入力
5:GND(ポジションランプのGND)
6:+12Vへ
----------------------------------------------------------
で良さそうだ。ふむふむ。。。
取り敢えずタンクからの4芯ケーブルもコントローラからの線もスイッチの裏まで来れば良いかな。
ギボシ端子とケーブルがちょっと多めに必要だな。
以上、検討おしまい。( ´ー`)フゥー...
*1 いや、ボンネットダンパー落としちゃった。安かったんだもん。
_ ヘキサ
会社で買い物があったついでにホムセンで買っておいた。
今のKTCはビットが交換可能になってるのね。
根元も太いし、「ぐにゃ」っとねじれる可能性は低そうだ。
今日、近所のホムセンでも確認したけど従来のは廃盤みたいだなぁ。
2008-07-05(土) 中国・・・ 工エエェェ(´д`)ェェエエ工工 [長年日記]
_ チャイナドレス
何が起きた?どうしたらこうなるんだ?
(右の写真は関係なし。。。話は後述ヾ(´▽`;)ゝエヘヘ)
まるで、真っ黒焦げ焦げギャルがミニ浴衣を着てるぐらい気持ち悪い。
まぁ、「E電」とか「省エネルック」ぐらいの寿命だとは思うけど。
それよりもおいらの心をレールガン並の速度で撃ち抜いたこの写真、
一体誰じゃ?*1
ググっても、類似画像検索方法を漁っても詳細不明。
誰か情報求む。
*1 スマソ、勢いで保存しちまった。今も後悔はしていないwww
_ いろんな意味で
痛いなぁ。(;´∀`)・・・うわぁ・・・
痛いニュース2連発で恐縮だが、これは犯人も警察官の顔が立って良かったと思わないとね。
灯油はそのままライター落としても簡単には燃えません。
新聞紙などをばらまくか、自分が被って繊維に染み込ませないと。
---------------------------------------
289 名前: カレイニス・ルー(長屋)[] 投稿日:2008/07/05(土) 16:38:52.39 ID:TXMP4x3r0
でもライターがそのまま床に落ちて何も起こらなかったらこの犯人は大恥かくだけじゃん
警察の優しさだったのかもな
---------------------------------------
激しく同意。。。
2008-07-04(金) 期間 [長年日記]
_ AkibaProject
は7/6までの期間限定らしい。
一日6,000ポイント近く叩き出すのは凄いが、今後どうするんだろ。
ウチはどう頑張っても鯖更改後に3,000/dayちょっとが良いところだなぁ。
_ 腕立て
これは、あるある・・・ねーよw
もうね、何も言わない方がマシなんじゃまいか?
これからはネットで「明日秋葉原で腕立て伏せします」ってスレ立てても
タイ━━━||Φ|(|´|゜|ω|゜|`)|Φ||━━━ホ!!!決定だな。
筋肉番付常連とかモロ危険人物www
----------------------------------------------------
151 名前:名無しさん@九周年[] 投稿日:2008/07/03(木) 12:36:44 ID:+uUY9ANC0
チベット虐殺の衛星写真がでたあと、「チベットでは路上のごろ寝がブーム」
なんてニュースを出すところだからな。
----------------------------------------------------
あぁ、これかって、ねーよwww
その「ごろ寝」は一生起きてこない方だろ!
2008-07-03(木) 追い上げ [長年日記]
_ 鯖更改
バックアップ鯖と同じXeonのE5130の2発鯖がもう一台完成。*1
メイン鯖も来週ぐらいには入れ換え可能だ。*2
現在はHTのXeon2.66が2発。
デュアルコアで計算能力はFloatingで2倍、Intで4倍だお。
テスト環境でIDEからS-ATAにシステムのコピーやらデバイスドライバの変更やらも完了。
RAIDは前から3wareだが、新しいS-ATA用なので3dm2でバッチリ制御可能。
移行本番に最終のデータをコピーすればおk。
高負荷テストにboinc/WCGは丁度良い。
7.0でULEスケジューラはちょっと不安定。
6.2+4BSDで十分だな。
現在も55%のスロットルでboincに参戦しているが、入れ換えたら同じ負荷割合でも当然能力向上。
アキバのバックヤードにどれだけ追いつけるか。。。
_ OA担当
まぁ社内の何でも屋であるわけだが、ご多分に漏れずそれが評価されることは滅多にない。
なので、配下のPCで人類に貢献でもしてみようと思うわけだ。
ドラえもんのように突然採用した人用のPCがセッティングできる訳じゃないし、
システムがクラッシュしても小人さんが勝手に復旧してくれるわけでもないんだけどね。
しかも、実験やらツールのテストはuekusa.jpのおいら鯖で地道に夜中やっているわけだよ。
10年間データを失わず、HDDが連休中に真っさらになっても徹夜で元通りになっている状況が、
費やしたコストからしたらどれだけ奇跡的か理解できる人は少ないのが世の中のジジィの現状。
いっぺん自分の家のHDD吹っ飛ばせば分かると思うんだがね。
o(`ω´*)o
Tweets by RC31E | |||||||||
| |||||||||
| |||||||||
|