やっぱり Sun がスキ! : Weblog やっぱり Sun がスキ!

やっぱり Sun がスキ!

http://blogs.sun.com/yappri/date/20070628 2007年 6月 28日 木曜日

Sunグッズ紹介(13)

Sun のロゴ入りグッズ紹介の第十三弾です。


・Sun ロゴ入り卓上時計
 Java カップらしきものが文字盤に描かれた見るからに
 摩訶不思議な卓上時計。Sun ロゴ部分が液晶になっていて
 マジックメッセージなる機能で何かが表示されるらしい!
 (残念ながら電池切れで確認できず・・・)

    


・Sun ロゴ入りドライバーセット
 「これいいじゃん♪」と Sun のエンジニア達をうならせた一品。
 ただのドライバーセットじゃありません・・・なんと!落ちたネジ
 を拾うための「伸び〜るマグネット棒」機能付き♪
 これでサーバー筐体内に落ちてしまったネジを救えます!

    


・Sun ロゴ入りシステム手帳
 Sun のロゴプレートがキラリと光るシステム手帳。
 なんと背面には「n th ready」の文字がぁ〜 懐かしい!
 中を開ければ至る所に Sun Fire V880 の文字が・・懐かしい!
 ちなみに肌触りがなかなか良いのが Good! です。

    


・Sun ロゴ入りミニノート
 持ち運びに便利なコンパクトなサイズのミニノート
 ミーティング時のメモ書きにピッタリの罫線タイプです。

    


・Sun ロゴ入りフラッシュコースター
 一瞬「これは何?どう使うの?」と思ってしまう珍品グッズ
 なんと携帯電話の着信に反応して三色の LED ライトが点減するんです!
 いやぁ〜これは Sun グッズの懐の深さを感じる一品です。

    


http://blogs.sun.com/yappri/date/20070626 2007年 6月 26日 火曜日

Sun Java System Messaging Server でスマートホストを指定しよう


外部に向けてメールを送る際、ウィルススキャンを実行するサーバや、 フィルタリングを実行するサーバを必ず通したいと思った事はありませんか?
また、DMZ の内側から外向けのメール配信が許可されているサーバを必ず 通したいと思った事はありませんか?

今回は Sun Java System Messaging Server (以下 SJS MS) にて、 配信されるメールを特定の MTA(スマートホスト) に ルーティングさせる機能の設定を行ってみます。

SJS MS の MTA には、複数の SMTP チャネルがあります。

 - tcp_local    : メッセージの受信、リモート SMTP ホストへの送信を行います。
 - tcp_intranet : イントラネット内のメッセージを送受信します。
 - tcp_auth     : smtp auth によって認証されたメッセージを送受信します。
 - tcp_submit   : port 587 にて送信されたメッセージを受け入れます。
 - tcp_tas      : Unified Messaging を使用するサイト用の特殊な IA チャネル。

SJS MS では、各チャネルに対する設定を行う事で、配信時の動作を変更する事が出来ます。
具体的には、/opt/SUNWmsgsr/config/imta.cnf ファイル内の "! part II : channel blocks" 以降に記載されている各チャネルに、チャネルキーワードを指定する事で、動作を決める事が出来ます。
今回は、外部 MTA へメッセージを配信する際に通常使用される tcp_local チャネルが対象になります。


チャネルキーワードのドキュメントを確認すると、スマートホストの指定は、daemon キーワードでターゲットホストを指定すれば出来そうです。

では早速、tcp_local チャネルに daemon キーワードを追加してスマート ホストを指定してみましょう。

 tcp_local smtp mx daemon smarthost.jestest.com single_sys
  master_debug remotehost inner switchchannel identnonenumeric
  subdirs 20 maxjobs 7 pool SMTP_POOL maytlsserver maysaslserver
  saslswitchchannel tcp_auth missingrecipientpolicy 0
 ※ 1 行で記述する必要があります。

また、今回は、正しく動作しているのかを確認する為に、master_debug キーワードも追加しました。

この記述が出来たら以下のコマンドで、コンフィグの再認識・ SJS MS の再起動を実行しましょう。

 # /opt/SUNWmsgsr/sbin/imsimta cnbuild
 # /opt/SUNWmsgsr/sbin/imsimta restart

それではテストしてみましょう。

 % telnet mta 25
 Trying XXX.XXX.XXX.XXX...
 Connected to mta.jestest.com.
 Escape character is '^]'.
 220 mta -- Server ESMTP (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 helo mta
 250 mta OK, [XXX.XXX.XXX.XXX].
 mail from:
 250 2.5.0 Address Ok.
 rcpt to:
 250 2.1.5 hoge.hoge@Sun.COM OK.
 data
 354 Enter mail, end with a single ".".
 To: hoge.hoge@Sun.COM
 From: test@jestest.com
 Subject: test test
 hoge
 
 .
 250 2.5.0 Ok.
 quit

上記でテストメールを送ったら、debug log ファイルを見てみましょう。

 % ls -t /var/opt/SUNWmsgsr/log | head
 tcp_local_master.log-0JJW00603XLAU600
 tcp_local_master.log-f0B2w0f_3s0
 tcp_local_master.log-f0B2w0d_kd0
 tcp_local_master.log-f0B2w0d_kb0
 http
 pop
 imap
 tcp_local_master.log-0JJW00603X96TR00
 job_controller.log-0JJW00601X95TL00
 tcp_smtp_server.log-0JJW00602X94TK00
 
 % more /var/opt/SUNWmsgsr/log/tcp_local_master.log-0JJW00603XLAU600
 11:29:34.26: Initializing message dequeue via quc_rinit, file "/opt/SUNWmsgsr/data/queue/tcp_local/009/ZZf0B2w0f_3_2.01"
 11:29:34.26: Reading first To: address
 11:29:34.26: Forced routing to smarthost.jestest.com
 11:29:34.26: Setting up connection to "smarthost.jestest.com", initial mailbox "hoge.hoge"
 11:29:34.26: No connection currently open
 11:29:34.26: Opening new connection for smarthost.jestest.com
 11:29:34.26: MX lookup: Looking up MX records for smarthost.jestest.com
 11:29:34.27: MX lookup: res_send failed
 11:29:34.27:     Error: Connection refused
 11:29:34.27: Preparing log entry
 11:29:34.27: Calling log_connection_info
 11:29:34.27: log_connection_info returned
 11:29:34.27: Recording temporary connection failure in local cache
 11:29:34.27: Status code = 136
 11:29:34.27: Unable to connect to host, cannot dequeue
 11:29:34.28: Shutting down message dequeue and any open connections

どうやら、smarthost.jestest.com から、DNS の MX レコードを探して 失敗しているようです。
今回は、直接 smarthost.jestest.com に配信して貰いたいので、MX レコードを探されては困ります。

そこで、先ほどのチャネル設定を見直してみましょう。

 tcp_local smtp mx daemon smarthost.jestest.com single_sys
  master_debug remotehost inner switchchannel identnonenumeric
  subdirs 20 maxjobs 7 pool SMTP_POOL maytlsserver maysaslserver
  saslswitchchannel tcp_auth missingrecipientpolicy 0

なにやら、mx というキーワードがあります。
このキーワードを確認すると、MX レコードを確認する設定の様です。
それでは、MX レコードを確認しないように、nomx キーワードに変えて やってみます。

 tcp_local smtp nomx daemon smarthost.jestest.com single_sys
  master_debug remotehost inner switchchannel identnonenumeric
  subdirs 20 maxjobs 7 pool SMTP_POOL maytlsserver maysaslserver
  saslswitchchannel tcp_auth missingrecipientpolicy 0

コンフィグを書き換えたら、再認識・リスタートを実施しましょう。

 # /opt/SUNWmsgsr/sbin/imsimta cnbuild
 # /opt/SUNWmsgsr/sbin/imsimta restart

それでは再度テストします。

 % telnet mta 25
 Trying XXX.XXX.XXX.XXX...
 Connected to mta.jestest.com.
 Escape character is '^]'.
 220 mta -- Server ESMTP (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 helo mta
 250 mta OK, [XXX.XXX.XXX.XXX].
 mail from:
 250 2.5.0 Address Ok.
 rcpt to:
 250 2.1.5 hoge.hoge@Sun.COM OK.
 data
 354 Enter mail, end with a single ".".
 To: hoge.hoge@Sun.COM
 From: test@jestest.com
 Subject: test test
 hoge
 
 .
 250 2.5.0 Ok.
 quit

ログを確認

 % ls -t /var/opt/SUNWmsgsr/log | head
 tcp_local_master.log-0JJW00603XVXV300
 tcp_local_master.log-f0B2w0g_sZ0
 tcp_local_master.log-0JJW00603XVEV200
 tcp_local_master.log-f0B2w0g_sY0
 job_controller.log-0JJW00601XVCUV00
 tcp_smtp_server.log-0JJW00602XVCUW00
 tcp_smtp_server.log-0JJW00602XVCUU00
 dispatcher.log-0JJW00601XVCUS00
 tcp_local_master.log-f0B2w0f_3s0
 http

 % more /var/opt/SUNWmsgsr/log/tcp_local_master.log-0JJW00603XVXV300
 11:35:57.20: Initializing message dequeue via quc_rinit, file "/opt/SUNWmsgsr/data/queue/tcp_local/018/ZZf0B2w0g_xU0.00"
 11:35:57.20: Reading first To: address
 11:35:57.20: Forced routing to smarthost.jestest.com
 11:35:57.20: Setting up connection to "smarthost.jestest.com", initial mailbox "hoge.hoge"
 11:35:57.20: No connection currently open
 11:35:57.20: Opening new connection for smarthost.jestest.com
 11:35:57.20: No MX lookup done
 11:35:57.20: os_smtp_open: Connecting to smarthost.jestest.com
 11:35:57.20: TCP active open: Trying to connect to "IP Address of smarthost.jestest.com"
 11:35:57.21: smtp_open to smarthost.jestest.com returned 9
 11:35:57.21: Reading initial status line from remote server...
 11:35:57.21: Got status : "220 smarthost.jestest.com ESMTP server ready Wed, 20 Jun 2007 11:35:57 +0900"
 11:35:57.22: Starting SMTP dialogue
 11:35:57.22: Sending    : "EHLO mta"
 11:35:57.22: Got status : "250-smarthost.jestest.com"
 11:35:57.22: Got EHLO options:
 11:35:57.22: - - - - - - - - - - - -
 11:35:57.22: SIZE=20971520
 11:35:57.22: 8BITMIME=
 11:35:57.22: DSN=
 11:35:57.22: PIPELINING=
 11:35:57.22: - - - - - - - - - - - -
 11:35:57.22: DSN extension found
 11:35:57.22: DSN originator notifications can be passed along
 11:35:57.22: Sending    : "MAIL FROM: SIZE=1024
 11:35:57.22: DSN recipient notifications can be passed along
 11:35:57.22: Sending    : "RCPT TO: NOTIFY=FAILURE,DELAY
 11:35:57.22: Sending    : "DATA"
 11:35:57.23: Got status : "250 Sender  and extensions (SIZE=1024) Ok"
 11:35:57.23: Got status : "250 Recipient  and extensions
 (NOTIFY=FAILURE,DELAY) Ok"
 11:35:57.23: Got status : "354 Ok Send data ending with ."
 11:35:57.23: Write message header/body in one go
 11:35:57.23: ... Message header/body, 14 lines ...
 11:35:57.23: Sending    : "."
 11:35:58.85: Got status : "250 Message received: 20070620023557.TTDD13118.smarthost.jestest.com@mta"
 11:35:58.85: Shutting down message dequeue and any open connections
 11:35:58.85: Shut down SMTP with QUIT command
 11:35:58.85: Sending    : "QUIT"
 11:35:58.86: Got status : "221 smarthost.jestest.com ESMTP server closing connection"
 11:35:58.86: Closing SMTP channel
 11:35:58.86: smtp_pmt_close: [0x0000000a] status 0

これで正しくスマートホストに配信されている事が確認出来ました。

最後に debug 出力を解除しましょう。

 tcp_local smtp nomx daemon smarthost.jestest.com single_sys
  remotehost inner switchchannel identnonenumeric subdirs 20
  maxjobs 7 pool SMTP_POOL maytlsserver maysaslserver
  saslswitchchannel tcp_auth missingrecipientpolicy 0

毎度の事ですが、再認識・リスタートを実施しましょう。

 # /opt/SUNWmsgsr/sbin/imsimta cnbuild
 # /opt/SUNWmsgsr/sbin/imsimta restart

これでスマートホストの設定が完了しました。


* 参考ドキュメント

 Sun Java System Messaging Server 6 2005Q4 管理ガイド
  -> 8.  MTA の概念
   -> チャネル

 Sun Java System Messaging Server 6 2005Q4 管理ガイド
  -> 12.  チャネル定義を設定する
   -> SMTP チャネルを設定する
    -> 表 12-20 SMTP チャネル

 Sun Java System Messaging Server 6 2005Q4 管理ガイド
  -> 12.  チャネル定義を設定する
   -> 機能別チャネルキーワード

 Sun Java System Messaging Server 6 2005Q4 管理ガイド
  -> 12.  チャネル定義を設定する
   -> SMTP チャネルを設定する
    -> ターゲットホストの選択

* Where to Start

機能検証などの為にとりあえずインストールしてみようという方には、 以下のドキュメントがおすすめです。
簡単な手順で SJS MS の環境が作成出来ます。

 Deployment Example: Sun Java Communications Suite 5 on a Single Host


また、今すぐ Sun のメールサーバを試してみたいという方は、以下の場所 から無償でダウンロード可能です。
Solaris (x86/SPARC)版に限らず、Linux 版もありますので、 是非お試し下さい。

 Product Downloads -> Sun Java Communications Suite 5 

※ ちなみに Download Center の利用には登録が必要になりますが、 登録にもお金はかかりません。

http://blogs.sun.com/yappri/date/20070625 2007年 6月 25日 月曜日

Bigadminに日本語コンテンツが掲載されました!

皆さんお馴染みの「BigAdmin」に日本語のコンテンツが掲載されました。 今回は、宣伝を兼ねて BigAdmin 日本語版を皆様にご紹介します。

知ってますよね「BigAdmin」!

もしかしてよくご存じでない方の為に、ちょっとだけ BigAdmin に関して説明します。 BigAdmin は、Sun が世界中のシステム管理者向けに技術情報を公開しているコミュニティサイト です。
コンテンツ自体は、Sun で働く Service 関連のエンジニアからの投稿が多いので すが、一般のシステム管理者からの投稿も掲載されております。

BigAdminのトップページは、 ここ
どうしても日本語しか見たくない人は、 ここね!(http://www.sun.com/bigadmin/hubs/multilingual/japanese/content.jsp)

見るか見ないかはコンテンツ次第?
ま、そりゃそうねということで現在掲載中のコンテンツをご紹介します。
これらコンテンツは、BigAdmin の中で人気の高かった記事を日本語訳しております。


BigAdmin システム管理者向け情報(日本語)

ZFS

ゾーン

DTrace


今はまだプロジェクトのご紹介といった段階ですが、将来的には、皆様から の技術文書を日本語と英語で掲載し、全世界の Sun のシステム管理者コミュニティ に対して、強い影響力を持てるようになるつもりです。皆様のご参加をお待ちし ております。

http://blogs.sun.com/yappri/date/20070620 2007年 6月 20日 水曜日

シリアル変換コネクタを作ろう!

最近の Sun サーバは、シリアルコンソールの口が RJ-45 タイプ のモノが多くなり、昔のサーバに接続していた DB-9pin や DB-25pin のケーブルだけでは歯が立たず、コンソールの接続に困る事が多くなってきました。
そこで今回は、RJ-45 と DB-9pin の変換コネクタキットを使って PC から簡単に T1000 のシリアルコンソールに接続してみます。

まずは、RJ-45 と DB-9pin の変換コネクタキットの調達ですが、 秋葉原を探し回って 525 円で見つける事ができました。(一応 ROHS 対応です!) 私が購入した店は ここ

このキットは RJ-45 と DB-9pin 間で自由にピンアサインを変える 事ができます。




今回は、T1000 サーバを購入する際に付属される RJ-45 と DB-9pin 変換 コネクタ(パーツNo.530-3100)を参考にピンアサインを設定しました。

DB9
配 線の色
RJ-45
8 - CTS

1 - RTS
6 - DSR

2 - DTR
2 - RXD

3 - TXD
5 - GND

4 - GND

5 - GND
3 - TXD

6 - RXD
4 - DTR

7 - DSR
7 - RTS

8 - CTS

作業自体はピンを指定された番号に差すだけなのでとても簡単です。 5 分もかからずに終わってしまいました。(ただし、RJ-45 の緑線 (GND)は、赤(GND)と接続先が重複する為、余らせました。)

では、早速接続試験をしてみましょう。
今回作成した変換コネクタの RJ-45 側はイーサネットケーブル(ストレート) でT1000 と接続し、反対の DB-9pin 側は PC 本体に接続します。


TeraTerm でシリアルポートを指定して接続すると、問題無く T1000 に接続で きました。




ちなみに、先月発表した Sun StorageTek 2500 シリーズへのシリアル接続は、 この変換コネクタと PC の間にシリアルクロスケーブルを接続する必要があります。

(最後に)
昔は シリアル接続に DB-25pin (Ultra-1 や、Enterprise X500 シリーズ等)から 始まって、DB-9pin (Blade 100,Sun Fire V240等)に代わり、さらに RJ-45 が 主流になっていくのは時代の流れですね。