GUiLZ Project Personal & Experimental Blog

Monthly Archives: 2月 2009

■ [ネット] CPI シェアードプラン用のバックアップスクリプトを書いてみた

以前、会社のWebサイトは C’s SERVER Professional を契約して失敗したと日記にも書いた けど、契約後1年が経過して年間契約も切れるので、乗り換えをすることにした。

余談だが、C’s SERVER Professional を利用してた間の大きなトラブルは、1度サーバーが午前中に数時間停止したってくらいだった。他は特に問題なく安定していたんじゃないかなと思う。まあほとんど静的コンテンツばかり&メールは使用していなかったので、DB速度とかメールレスポンスについては分からないけど。

ただ、そのトラブルでアップタイム保証に引っかかって、料金返還対象になったのだが、すでに支払われている料金は返還されず、翌年の年会費からの割引って言われたときにはセコいなと思った。結局今回業者乗り換えたし、全く補償になってねえな、と。

話を戻す。で、今度はベリサインの認証が使えてHDD容量激しく大きい、CPI の X50 Plus プランに乗り換えたのだが、シェアードプランは全プランでバックアップオプションが有料。

無料でバックアップオプションが付帯される、マネージドプランも別用途で契約してたので、そちらでどんな風にバックアップが作られてるのか確認すると、単純にWebサイトのエリアをまとめて tar.gz にして別ディレクトリに放り込んでるだけっぽかったので、似たようなものは作れるなと思って、phpで作ってみた。

ただ、CPI の cron 機能の制約として、プログラムやデータディレクトリのパスはフルパス指定しないとダメらしいので、データディレクトリの中身もフルパスで圧縮されてしまう。あと、バックアップを取るだけのスクリプトなので、何日以上前のバックアップは自動削除とかしないので、HDDの空き容量には注意。

とりあえず、自分の契約しているサーバーでは問題なく動いているけれど、動作保証とかは全くないので、利用の際は自己責任でお願いします。

<?php

/******************************************************************************

CPI シェアードプラン用
ファイルバックアップスクリプト

下記ユーザーID(コントロールパネルログイン用)、バックアップ先ディレクトリ、
MySQLパスワード(コントロールパネルログイン用パスワード) を環境に合わせて
設定してください。

その後、適当なディレクトリにアップロードし、スクリプト定期実行ツールから
スクリプトを任意のタイミングで呼び出してください。

******************************************************************************/

# ユーザーID
$userID = "x123456789";

# バックアップ先ディレクトリ
$b_dir = "backup_dir";

# MySQLパスワード
$password = "password";

# 日付を取得
$date = date(Ymd);

# 当日分のバックアップフォルダ作成
exec ("/bin/mkdir /usr/home/$userID/$b_dir/$date");

# ファイルのバックアップ
exec ("/usr/bin/tar cvfz /usr/home/$userID/$b_dir/$date/html_$date.tar.gz /usr/home/$userID/html");
exec ("/usr/bin/tar cvfz /usr/home/$userID/$b_dir/$date/secure_$date.tar.gz /usr/home/$userID/secure");
exec ("/usr/bin/tar cvfz /usr/home/$userID/$b_dir/$date/virtual_$date.tar.gz /usr/home/$userID/virtual");

# MySQL5 データベースのバックアップ
exec("/usr/local/mysql5/bin/mysqldump --user=$userID --password=$password --default-character-set=binary $userID > /usr/home/$userID/$b_dir/$date/mysql5_$date.sql");
exec("/usr/bin/gzip /usr/home/$userID/$b_dir/$date/mysql5_$date.sql");

/******************************************************************************

MySQL4 のバックアップをされる場合は、下記をお使いください。
ただし MySQL4 のバックアップに関しては、私が利用していないため未検証です。

# MySQL4 データベースのバックアップ
exec("/usr/local/mysql/bin/mysqldump --user=$userID --password=$password --default-character-set=binary $userID > /usr/home/$userID/$b_dir/$date/mysql4_$date.sql");
exec("/usr/bin/gzip /usr/home/$userID/$b_dir/$date/mysql4_$date.sql");
?>

******************************************************************************/

■ [その他] 「セキュリティうどん かまたま」に行ってきた

・・・と、いかにも最新ニュース風に書いてますが、実際にイベントが行われたのは1ヶ月近く前。その間、某高校で講義を行うための資料作成やら、会社のサーバー移転やらといった仕事に追われていたため、結果としてこんな時期に公開となってしまいました・・・。orz

今更ではありますが、会場で取ったメモと消えかかっている記憶を元に、どんなイベントだったか振り返りたいと思います。

■サイバーセキュリティカレッジ

香川県警の中の人(まあ私にとっては仇敵ですがw) による、現状のネット犯罪に関するお話。

現在のネット犯罪に対しては、警察としてはデジタル的捜査とアナログ的捜査の両面から動いているということらしい。デジタル的捜査とは、いわゆるネット上の痕跡をたどったりするような(HDDのフォレンジック等も含まれると思われるが、詳しい言及は無かったので不明) 机上の捜査。アナログ的捜査とは、地道な足を使った捜査などのことだろう。

それは確かにそうだろうなという印象。デジタル的手法で犯人であると確信できたとしても、現実世界での証拠固めが必要な案件も多いことだろうし(まあ最近の脅迫書き込み逮捕に関してはデジタルオンリーな気がしないでもないが)。金が絡んでいれば、アナログ的にATMの監視カメラチェックとか聞き込みとか、そういったアナログ的手法も必要だろう。

そして、ネットでの詐欺行為のうち、約9割が架空請求詐欺とのこと。これは相談内容の内訳だったと思うけど、ちょっとメモから思い出せないorz。まあ一般的なマニアではないユーザーにとって、架空請求詐欺サイトというものは(うまく作られているからか) 心理的に影響が大きいのだなあと。

フィッシングサイトについても言及があり、大半のユーザーはURLなんてチェックしていないということだった。そして、フィッシングは詐欺行為のおよそ半分を占めるという。上記メモとなんか食い違ってるけど、多分こっちが実数で、上は相談内容の内訳・・・と考えれば矛盾しないのでいいか。

大半の人がそんな調子だから、フィッシングサイトっていつまで経っても無くならないんだなと思うと同時に、疲れてたりすると自分もURLなんてチェックしないことがあるから、注意しようと思った。

で、一番印象に残ったのは、データそのものは財物ではないという話。よって、データそのものの盗難だけでは検挙・立件できないというのが基本であるとのこと。なので例えば、オンラインゲームのアイテムが盗まれたという行為(他人のIDを不正利用しないで) は、これまで立件できなかったそうだ。

でも最近は立件されてたりするけど、それってどうなの? って点に関しては、例えばアイテム課金のゲームだと、アイテム=お金と見なすことができるので、金銭的価値があるものの盗難ということができ、立件しているようだ。

ゲームだと、たいていの場合は他人のIDを不正利用してアイテムを盗んだりということが多いと思われるので、不正アクセスで立件できると思うけど、仮に不正アクセスされずにアイテムだけ盗まれた場合(アイテム整理のために、一部アイテムを地面に置いてて横から盗まれたとか。そんなシチュエーションがあり得るかは知らないけど) に関しては、金銭的価値のあるアイテム以外に関しては、犯罪に問うことが難しそうだ。

実社会においてだと、個人の特定が出来ない程度の個人情報(例えば顔写真のみとか?) や、業務情報(他者にとっての金銭的価値はゼロ) が、他の法に触れずデータのみ盗難にあったとすれば(そんなシチュエーションが現実的にあるかどうかは難しいところだけど)、その犯人は罪に問えないと言うことになる。

実際は別件逮捕って手を取ることで、まとめて罪に問うたり捕まえたりって事は可能なのだろうけど、そのあたり法律をもうちょっとどうにかしてくれと感じた。

■ ファジングな話

えーと、技術的には大変興味深く、メモの分量も一番多いんですが、↑を長々と書きすぎたので、ポイントだけ抑えて書いていこうかと。(はじめからそうしろって話ですが)

・ファジングとは、ブルートフォースアタックを自動でソフトウェアに対して行うテスト手法

・ブラックボックステストなので、ソースが要らない

・限界としては、ロジカルなエラーの補足ができない、入出力部分以外のテストができないこと。よってWebアプリケーションには使いづらい

・ファジングでカバーできる範囲は良くて20%程度

ということで、自分が主にやっているWebアプリケーションに関してはすぐに使えるかどうかは分かりませんが、例の本は買わせていただきます!!w

こういうツールをマルウェア制作者達も使っているようなので、知識としては押さえておかないとまずいなあと思いました。

■ ライトニングトーク

・TeraStation のファイル復旧

zou団の団長、kamezouさんの講義。

フォレンジックツールとして、専用の機材やソフトの存在くらいは知ってましたが、それを使うとRAID5の構成まで復元してデータ復旧ができるというのは知りませんでした。ファイルシステムがXFSだと、いろいろ面倒なんだなあと思いましたw ええ、ファイルシステムなんてせいぜいEXT2・3とかReiserFSくらいしか使ったことがありません・・・。

そして団長の講義資料を参考にさせていただき、高校生向けにAAとか「YES WE CAN!」な人の画像を使ったりした、面白スライド作って講義したのですが、高校生には受けませんでした・・・orz。最近の高校生は何事にもリアクション薄いですよ・・・。

・IT勉強会カレンダーのお話

まっちゃだいふくさんの講義。

寡聞にして知りませんでした・・・。だって勉強会なんて四国でやってないしー、などと思っていた自分がバカでした・・・。まっちゃだいふくさんはエネルギッシュでパワフルな方でした。自分は初めてお会いしたので舞い上がりまくりでしたが(メールでも舞い上がった文面ですみませんでした・・・)、あのバイタリティーの凄さは見習いたいです。

・P2Pの残り香

IIJの松崎さんの講義。

一瞬、ハッカージャパンか何かで以前書かれてた記事で、似たようなものを見た記憶があったのですが、懇親会で伺ったところ、このデータ自体は初出とのこと。前に見たのは確かネットエージェントの中の人が書かれてた気もするので、多分自分の勘違いでしょう。すみませんでした>松崎さん

内容はP2Pを切った後も定期的にアクセスって来るけど、どのくらいの頻度でいつくらいまで来るのかというテスト結果。外的要因をほぼ排除して作られた環境でのテストなので、かなり正確なデータでしょう。WinnyとかShareとかSkypeの自立的ノード構成って、ノードの消失を全体に伝播させたり把握したりするのは多分難しいんだろうなあと感じました。

P2Pソフトがノードから消えるときに、ダイイングメッセージを送りつけて全体にノード消滅を伝播させればいいんじゃね? とか一瞬思いましたが、それはそれで無駄なトラフィックが増大するか・・・。

・Email Threat updates and New Era of the communication network

GDX Japanの近藤さんの講義。

各ホワイトリスト所有者同士の結びつきで、信頼できるメールネットワークを作るという発想というかシステムは素晴らしいと思いました。「友達の友達は友達だ」的なネットワーク構築だと、一組織あたりの負荷も減りますし。

そのネットワークが大きくなってきたときに、友達のふりをした悪人が入り込まないようにする手法などにも興味があるところです。SSL的な認証局システムにでもするのかな・・・。

・徳島プログラミングフリークス(TPF)の紹介

徳島の大学生である、tamaさんの講義。

プログラムは基本的に全く出来ないので(せいぜいPHPのソース修正とかする程度)、プログラマーさんは尊敬の対象なのですが、その上勉強会まで立ち上げようとするそのエネルギーにおじさん脱帽でした。

行きたいけど行っても本当にちんぷんかんぷんなんだろうなあ・・・と、過去の自分の自堕落さを後悔。orz

■懇親会

まっちゃだいふくさんが素晴らしくパワフルでしたww なんかいろいろな方といろいろな話をさせていただきましたが、もうまっちゃだいふくさんのパワフルさしか思い出せませんwww 懇親会では、座って食べて近くの方々と名刺交換させていただいて、って感じで、自分は地味に過ごしましたww 何度も書きますが、まっちゃだいふくさんはスゴくパワフルで素敵な方でした☆

その後の2次会うどんにもおつきあいしたかったのですが、友人のPCの修理に行く予定があったため、泣く泣く脱落。次回は是非そこまでおつきあいさせてください!w

■雑感

おやつがとてもおいしかったですw 次回は私もおやつの差し入れをさせていただきたいと思いますww

個人的には、今回のような幅広い分野を題材とした勉強会が続いていくと楽しいかなと思いました。ジャンルを絞りすぎると参加者が限られてしまうような気もしますし。いろいろな話を聞けるのは楽しいですから。

あと、コストはシェアしたいですw 今回はあれだけの素晴らしい講義とおやつに会場費用など、無料でいいのかなーという申し訳なさがあったので。

最後になりましたが、Zou団の皆様、まっちゃだいふくさん、スタッフの皆様、お疲れ様でした&ありがとうございました。次回の開催も楽しみにしております!!

スポンサードリンク

Twitter
利用中のサービス

GUiLZ Project では、以下のサービスを利用しています。


関連サイト
巡回先サイト様
アーカイブ