無料ブログはココログ

2006年3月24日 (金)

GLANTANKでWAN IPのアドレスをメールで通知する

GLANTANKに置いたデータを、会社や、実家、出先でアクセスしたいのでルーターの設定を外部からアクセスする為のポート番号を適当に決めて、GLANTANKにフォワードするように設定。でも、使いたいときに限ってWAN IPアドレスが変更されててアクセス出来んじゃないか…と言うときがあります。ま、普通は Dynamic DNSでも使うのでしょうが、それほど頻繁でもありませんので、自分の携帯にメールなりで通知してもらえりゃいいやと言うことで、簡単(と言うより手抜き)なスクリプトを書いてみました。実はもっと、簡単な方法があったりして…(^^;何にしても、あんまりスクリプトとかよく知らないので、めちゃ適当。

#! /bin/bash
fname="/tmp/status.htm"
oldfname=$fname".old"

#ルーターから、ステータス情報のHTMLを取得
wget http://172.16.0.254/status.htm --http-user=USER --http-passwd=PASSWORD -O $fname

#前回取得したステータス情報のHTMLファイルがあるか?無ければ、無条件でメールを送る
if [ -f $oldfname ]; then
#比較する
        diff $oldfname $fname
#変化無しの場合リターンコード 0
        if [ $? = 0 ]; then
                echo IPアドレスは変更されていません。
                rm $fname
                exit 1
        fi

        echo IPアドレスが変更されました。
fi

#新しいIPをステータス情報のHTMの215行目から抜き出す
newip=$(sed -n 215p $fname)

#ステータス情報のHTMLを初めて取得したか、IPアドレスに違いがあった場合メールを送信
/usr/sbin/sendmail -t -i << EOF
From:FROM@xxxx.ne.jp
To:TO@xxxx.ne.jp
Subject:New IP.
New IP.
$newip
EOF

rm $oldfname
mv $fname $oldfname

I/O DATAのルーターはWebブラウザで色々設定できて、現在のWAN IPも見られるので、wgetでそのページを取得し、前回取得したページとdiffして、変化があれば、sedでIPアドレスが書かれた行を抜き出して、その行をsendmailメールで送信する、という単純な仕様。ま、こんなもんで良いや。

で、このスクリプトをchmod 700 スクリプトファイル名で、root権限のみ閲覧や実行が出来るように設定し、一時間に一回作成したスクリプトをcronで呼び出します。crontab -eで、設定します。

0 * * * * スクリプトファイル名

これで、毎時0分にスクリプトが呼ばれます。

で、確認すると…ちゃんと送られてくる!ヨッシャ!これで外からでもアクセス出来る。後は、今一時ファイルを作るのに多分HDDに書いていると思うので、RAMDISKとかにしたい所だけど、面倒なのでまた今度にしょうっと(^^;

2006年3月 2日 (木)

GLANTANKセットアップ2 メールサーバ

とりあえず、パスワードとネットワークの設定、TELNETの設定を行って、WebDAVでWindowsからファイルをコピーすると、べんっ!という音と共にエラーが・・・うげっ!どうやら、ファイルに日本語はOKだが、フォルダに日本語が含まれていると、コピー出来ないようだ。新規作成でフォルダを作ろうとしても作れないし。ま、それは後回しで、外からWebDAVでアクセス出来る様に、ルーターを変更。問題は、WAN側のIPが頻繁と言うほどでも無いですが、それなりに変更される事。実家のCATVなんかは、もう1年ぐらい変化してないですが・・・(^^;ここで普通はDynamic DNSでしょうか。でも、そんなに頻繁でもないし、誰かにアクセスしてもらおうと思っているわけでもありませんので、変化したIPアドレスだけメール等で通知してくれれば良いので、そんなのスクリプトでやっちまおうと言う事でまずは、メールが送れるかチェック。sendmailコマンドで、メールを自分のメルアドに送信!・・・来ねーって、あれ?そういや、SMTPサーバの設定とかしてないし。アホや、俺。で、sendmailを見に行くと、sendmailはexim4というのにリンクされている。ナニそれ?どうやら、exim4はDebianの標準MTAらしい。ま、qmailやsendmailなら何となく知っているので、知らないexim4をとりあえず使ってみる事にします。

まずは、設定です。

dpkg-reconfigure exim4-config

で設定を行います。

設定自体は対話形式なので、それに答えます。

設定ファイルを分割するか?→どっちゃでも良いので、いいえ

メール設定の一般的なタイプ→インターネットサイト・・・を選択

システムメール名→よくわからんが、SMTPサーバ名

入力側 SMTP 接続をリスンするIPアドレス→127.0.0.1

メールを受け取るその他宛先→空白

メールをリレーするドメイン→空白(ここに、自分のメルアドのドメイン名を書いて、他のPCのメーラーのSMTP設定をGLANTANKにすると、GLANTANK経由でメールが送られる様だ)

メールをリレーするマシン→空白(ここに、LANに接続されているPCのIPアドレスや、ネットワークアドレスを指定すると、指定されたPCだけ接続が許可される様だ)

DNS クエリの数を最小限に留めますか→いいえ

これで、あってんのかわかりませんが、以の様に設定しました。勝手に設定が反映されます。

で、sendmailコマンド(違うけど)でメールを送信してみると、おおっ!送れた!と言うわけで、一応メールの設定をしました。

2006年2月20日 (月)

GLANTANKセットアップ

GLANTANKセットアップには、HDDをIDEに接続出来、CDブートできるPCが要るとの事で、家のPCの周りはぐちゃぐちゃで(^^;引っ張り出すのが面倒なので、会社にHDDと付属のセットアップCD-ROMを持って会社へ…行って、持って行ったことすら忘れて、そのまま自宅へ…orz物忘れが激しくなってるし。2~3日後ようやく、思い出して会社のPCへ接続…しょうとしたら、S-ATA接続でした…。ま、もう一台PCあるし、と思って、そっちのPCに接続しようと今付いているIDEケーブルを抜こうとしたら、固くてなかなか抜けないので、無理やり引っ張ったら、IDEコネクタがバキッっという音とともに壊れてしまいました。うわ、会社のPC壊してもた。ま、もらってから全然使ってないPCがもう一台あるし、という事で、GLANTANKのインストールをこれで行いました。セットアップ自体は何も迷うこと無く簡単にセットアップできます。それよりも壊れたPCの環境を、このPCに移植する方がめちゃ大変でしたが。壊したPCは、「このPC、何でか壊れたみたいなんですよー。元々調子悪かったんですけどねー」と報告しておきました(^^;。

2006年2月13日 (月)

GLANTANK購入

実家と今の自宅や、自宅内にあるPCでデータ交換するのに、ポータブルHDDを接続するのにUSBポートがPCの裏にしか無いとか、あのデータはあっちのPCなんだけど、起動してないとか、面倒なので、ファイルサーバとしてGLANTANK購入しました。でも、ハブは100Baseだし、メインPCのオンボードギガビットLANの調子が悪く、100BaseのLANカードに差し替えているので、GLANTANKにする必要も無いんですけどね・・・。回った店はどこも24,800円でした(安い所でも、せいぜい1円安ぐらい)が、ヨドバシも同じ価格でポイントが確か13%ぐらい付くので、ヨドバシで購入。HDDはWD3200JBが既に一台家にあるので、もう一台同じのを買って、ストライピングじゃ!と思って買いましたが、後でストライピングじゃない事に気が付いた・・・(^^;そらそうか・・・。ついでに、PSPのグラディウスポータブルと、モンスターハンターポータブルを買ってそればかりで遊んで何にもしてませんorz

家のPCは引っ張り出すのが面倒なので、会社のPCに繋げて設定するか・・・。

最近のトラックバック

2009年11月
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