いますぐ実践! Linuxシステム管理

[バックナンバーのトップへ] [Linux システム管理のトップへ]


いますぐ実践! Linux システム管理 / Vol.010 / 読者数:281名

こんばんは,うすだです.

みなさん,GW はいかがでしたでしょうか.
わたしは,2日と6日を有休にしたので,ずっと休みでした.
愛知県の山奥へたけのこを堀に行ったり,まったりと過ごしたりまったりと過ごしたりまったりと過ごしたりしていました.

…明日,会社に行くのがこわいです.サザエさん症候群です.
こういうのを,自業自得,って言うんですね.身をもって知りました.

いえ,そんなことはともかく,今日も,はりきってまいりましょう!

今週のお題 - SSH で遠隔ログインした時にメールで通知する

前回も出てきましたが,ssh は便利ですよね.
遠隔ログインはもとより,scp でファイルのコピーもできます.
通信内容は暗号化されますので,盗聴の心配はあまりいりません.

でも,知らない間に,誰かに無断で使われるのは,すごくいやですよね.

というわけで,今回は,ssh で遠隔ログインなどした時に,メールで通知する, というのをやってみます.
自分が使っていないのに通知メールが来たら,要注意!! というわけです.

ちなみに,わたしは,これを5年以上仕込んでいますが,未だに誰かに使われたということがありません.
ですから,これは,保険みたいなものだと思ってください.

さて,実は,ssh や scp などすると,$HOME/.ssh/rc が実行されるようになっています.ですから,これにメールの送信を仕込めば,あっさり目的達成です.

では早速,rc の中身の例を,以下に示します.

  #!/bin/sh
  echo "You logged in" | \
  /usr/bin/Mail -s "ssh: `/bin/date +\%m/\%d/\%Y/\%H:\%M:\%S`" \
  usu@usupi.org

こうすると,ssh で遠隔ログインした瞬間に,usu@usupi.org 宛に,メールが送信されます.

ただし,scp などで遠隔コピーした時にも,メールが送られます.
遠隔ログインの時のみメールを送りたい場合は,以下のようにします.

  #!/bin/sh
  if [ "z$TERM" != z ]; then
    echo "You logged in" | \
    /usr/bin/Mail -s "ssh: `/bin/date +\%m/\%d/\%Y/\%H:\%M:\%S`" \
    usu@usupi.org
  fi

遠隔ログインでない場合,環境変数 TERM が設定されません.
上記では,$TERM が設定されている時のみ,メールを送信するようにしています.

rc にバグがあって実行できなくても,ssh が行えなくなることはありませんでした. ですから,失敗を気にせず,いろいろ試してみてください.

あ,それから,メールの宛先は,ログイン先のマシンと別にしてください.
不正に使用したひとが,メールを削除してしまう可能性があります.

宿題の答え

先週の問題は,

  前回やったディレクトリの同期を,cron で毎日実行するように設定して
  みてください.

でした.
答えは,例えば,毎日午前4時に,ローカルマシンの /home/httpd 以下と bunshin の同ディレクトリとの同期をとる場合, 以下を crontab に追加します.
(行末を \ で折り返していますが,実際は1行です.)

  0 4 * * * rsync -az -e "ssh -i $HOME/.ssh/synckey" \
  --delete /home/httpd bunshin:/home/

…なんのひねりもなくて,すみません.

cron の詳細については,以下のお題をご覧ください.
http://www.usupi.org/sysad/002.html

今週の宿題

今週の宿題は,こちらです.

  ssh で遠隔ログインした時に,環境変数一覧をメールするようにして
  ください.

環境変数には,ssh を実行したマシンの IP アドレスなど,重要な情報が含まれています.
宿題ができたら,環境変数のうち必要な情報を加工して,メールするようになど, 応用してみてください.

あとがき

会社の近くに愛知県図書館があるので,たまーに借りに行きます.
最近,同図書館で物色したところ,いい本を見つけました.

UNIXシステム管理者ハンドブック
http://www.amazon.co.jp/exec/obidos/ASIN/4797321083/usupiorg-22

わたし自身がお世話になったシステム管理本といえば,SUN システム管理とか Nutshell シリーズのもろもろの古い本ばかりで,最近の本は全くチェックしていませんでした.

SUNシステム管理 (1991年の本です…まだ売ってるのかな…)
http://www.amazon.co.jp/exec/obidos/ASIN/4756107877/usupiorg-22

UNIXシステム管理者ハンドブックは,Linux だけでなく,いろんな OS に対応していますし,あまり OS に特化していない点が,いいです.
システム管理の考え方とか,実際に必要となることがほぼ網羅されていると思われるので,初心者の方にもお勧めです.
本業でちょっとでもシステム管理に絡んでいる方は,会社の経費で購入して, 読んでみてはいかがでしょうか.
(自分の懐をいためないようにするのが,ミソですね.)

まあ,なんでそんな本を借りてきたかというと,単にネタを探していただけなんですが….残念ながら,ネタは見つかりませんでした.;-<

というわけで,もし,ネタになりそうな悩みなどありましたら,どしどしメールでご連絡ください.作者が,泣いて喜びます.
常時受け付けております.よろしくお願いします.

さて,今まで,メールで通知,というネタをあちこちで使ってきましたが, ついさっき,WWW を使って通知する方法というのを,ふと思いつきました.
いえ,別にたいしたテクニックを使うわけではありません.
でも,他にやってそうにないので,来週ご紹介したいと思います.
システム管理には役に立たないかもしれませんが,乞うご期待! です!!

今週も,ここまで読んでいただき,ありがとうございました.
それでは,また来週お会いしましょう!

「いますぐ実践! Linux システム管理」の登録・解除は,以下からどうぞ.
http://www.usupi.org/sysad/ (まぐまぐ ID:149633)

バックナンバーはこちら.
http://www.usupi.org/sysad/backno.html

「栗日記」も,毎日毎日発信中!
http://www.usupi.org/kuri/ (まぐまぐ ID:126454)


[バックナンバーのトップへ] [Linux システム管理のトップへ]

トップ

バックナンバー
    [日付順] [目的別]

プロフィール

▼ リンク

独学Linux
Linuxデスクトップ環境に関する情報が満載です。 メルマガもありますよ。
Server World
CentOS 6をサーバとしたときの設定例が、これでもかというくらいたくさん載っています。 CentOS以外のディストリビューション(Fedora, Ubuntu)も充実しています。
LINUXで自宅サーバーを構築・導入(Fedora9)
Fedora9のインストールの仕方から管理方法まで、詳しく載っています。 SearchManには情報がもりだくさんです。
マロンくん.NET
〜サーバ管理者への道〜
Linuxをサーバとして使用するための、いろいろな設定方法が載っています。 マロンくんもかわいいです。 なんといっても、マロンくんという名前がいいですね!!
日経Linux
今や数少なくなってしまったLinuxの雑誌。ニュースやガイドもあります。
Linux Square − @IT
@ITが提供する、Linux の情報が満載。 載っていない設定方法はないんじゃないでしょうか。
gihyo.jp…技術評論社
Linuxに限らず様々な技術情報が満載のサイト。 SoftwareDesign誌も、 ソフトウェア技術者は必見です。
SourceForge.JP Magazine
Linux に限らず、オープンソース関連の記事が網羅されています。
ITmediaエンタープライズ:Linux Tips 一覧
Tips というより FAQ 集でしょうか。わからないことがあれば覗きましょう。
IBM developerWorks : Linux
開発者向けですが、勉強になりますよ。
Yahoo!ニュース - Linux
Yahoo!のLinuxに関するニュース一覧です。
栗日記
システム管理とかと全然関係ありませんが、毎日栗の絵を描いています。
システム管理につかれちゃったとき、癒されたいときに、ご覧ください。:-)
WEB RANKING - PC関連
ランキングに参加してみました。押してやってください。

▼ 作ってみました

Add to Google

▼ せんでん




▼ 最近読んだ本

▼ 気に入ってる本