 |
Version 5.1 |
|
|
CommuniGate Pro への移行
システム上で何らかのメールサーバーを使用しており、そのメールサーバーをCommuniGate Pro
サーバーに交換する場合でも、既存の電子メール環境は、CommuniGate Pro メッセージングシステム
に問題なく移行・統合できます。
既存のユーザーをCommuniGate Pro に移行する場合の基本手順は、次の通りです。
- あらかじめ、CommuniGate Pro サーバー上に既存の全メールアカウントと同じアカウントを
作成しておきます。この場合、各アカウントの設定は、既存のアカウントと同じ設定にしま
す。とくにアカウントパスワードは、同じパスワードを使います。
- 既存のメールサーバーのユーザーをすべて、CommuniGate Pro サーバーに移行します。
- ローカルユーザーの処理に必要な設定を行います。ローカルユーザーとは、メールプログラ
ム( とくにUnix) のユーザーのうち、電子メールプロトコル(POP、IMAP など) を介さず
に自分のメールボックスに直接アクセスするユーザーをいいます
|
|
|
ネットワークユーザー
既存のメールサーバーをCommuniGate Pro サーバーに置き換えても、ネットワークユーザー、つま
り標準のインターネットプロトコル(POP、IMAP など) を介してメールボックスにアクセスするユーザーは、現在のアプリケーションをそのまま使用できます。また、メーラープログラムの設定を
変更する必要もありません。これは、CommuniGate Pro では、現在の主要メールアクセスプロトコル
がすべてサポートされており、あまり一般的でないプロトコルも、そのほとんどがサポートされてい
るためです。
ローカルユーザー
CommuniGate Pro の導入後も、サーバーに登録しているユーザーによっては、既存のメーラーアプリ
ケーションを使って自分のメールアカウントに直接アクセスするユーザーもいます。この場合、メー
ラーアプリケーションではインターネットプロトコルは使われないため、CommuniGate Pro サーバー
では、こうしたメーラーの制御は行われません。
CommuniGate Pro サーバーでは、ユーザーアカウントとメールボックスはすべて「ベースディレクト
リ」の中に格納されます。システムが適切に設定されていれば、このベースディレクトリには第三者
はアクセスできず、したがって、メールボックス、その他のサーバーファイルが改ざんされることは
ありません。
ローカルユーザー、つまり既存のメーラーを使ってメールに対してアクセスする必要があるユーザー
について、そのアカウントをCommuniGate Pro サーバー上に作成する場合、外部INBOXオプション
を使います。このオプションを選択した場合、CommuniGate Pro のベースディレクトリの中には、そ
のユーザーのアカウントINBOX (受信ボックス) は作成されません。代わりに、メールボックスの場
所がユーザードメイン設定情報から自動的に取り出され、処理が行われます。この場合、メールボッ
クスの場所としては、通常、/var/mail/* または/var/spool/mail/* を指定しておきます。こ
の場所は、既存のメーラーの「標準」のメールボックス格納場所で、既存のメーラーでは、この場所
にあるメールボックスに対してアクセスが実行されます。
CommuniGate Pro サーバーから外部メールボックス(既存のメーラーのメールボックス) にアクセス
が行われる場合、OS のファイルロッキングメカニズムが使用され、このメカニズムを介して
CommuniGate Pro サーバーと既存のメーラーの間で同期が実行されます。
注意:既存のメーラーでは、通常、メールボックスへの同時複数アクセスはサポートされていません。
そのため、既存のメーラーの場合、同一のメールボックスに対して例えば2 つのメーラーセッション
が同時に発生し、どちらかのセッションでメッセージの削除が実行された場合、メールボックスのデー
タが破壊されることがあります。CommuniGate Pro サーバーと既存のメーラーの間では通信は行われ
ないため、この問題は、CommuniGate Pro 側では解決できません。ただし、いずれかのメールボック
スとCommuniGate Pro との間で処理が発生しているときには、その間、CommuniGate Pro によってファ
イルロックがかけられます。したがって、その間は、既存のメーラーによってデータが破壊されるこ
とはありません。
外部メールボックスについては、詳しくは「共有」のセクションの外部メールボックスを参照してください。
既存のメールボックスの利用
CommuniGate Pro のメールボックスのフォーマットは、デフォルトではBSD 準拠テキストフォーマッ
トに設定されています。つまり、CommuniGate Pro のメールボックスはテキストファイルで、ファイ
ル中のメッセージはそれぞれ、空白行とFrom で始まる空白行という2 行で区切られて格納されます。
一般的なメールシステムでもほとんど、このフォーマットが使われています。そのため、CommuniGate
Pro への移行時、既存のメールボックスファイルを有効に利用できます。例えば、既存のメールボッ
クスファイルをCommuniGate Pro のアカウントディレクトリの中にコピーするという方法で利用でき
ますし、または、外部INBOX (上記を参照) として指定することもできます。これで、既存のメール
ボックスファイルを以前と同じように使用できます。
注意:CommuniGate Pro ではメッセージはBSD 準拠メールボックスに格納されますが、格納の際には、
区切り行(From で始まる行) にフィールドがいくつか追加されます。こうしたフィールドは、既存の
メーラーやメールサーバーでは認識されません。CommuniGate Pro によって追加されるフィールドと
しては、メッセージステータスのフィールド、一意のメッセージID のフィールドがあります。この追
加フィールドの関係で、既存のメールシステムで作成されたメールボックス(BSD 準拠) を
CommuniGate Pro で使用した場合、警告( ログレコード) が出力され、メッセージの区切り行に
CommuniGate Pro で必要なフィールドがないことが報告されます。ただし、こういったメールボック
スでもCommuniGate Pro サーバーでは正常に開かれます。その場合、メッセージに自動的に空白ス
テータスフラグが立てられると同時に、一意のID が作成、付加されます。また、既存のメールシステ
ムのメールボックスのメールは、ユーザーがCommuniGate Pro で読んだり、また編集や移動、削除を
行うことで、その数が次第に減ります。そのため、既存のメールシステムのメールをCommuniGate Pro
で開いたときに出力される警告も次第に減り、最終的には出力されなくなります。
パスワードの変換
既存のメールサーバー(Unix システム) で、Unix OS のアカウントとパスワード(passwd ファイルと
shadow ファイル) を使ってクライアント認証が行われていた場合、必要なアカウントについて[
Use OS Password]オプションを有効にすることで、CommuniGate Pro サーバーでOS による認証処理が可能
になります。
OS パスワード(OS レベルのパスワード) の暗号化は一方方向のため、通常はセキュアSASL 認証方
式のパスワードとしては使用できません。ただし、次の方法を使うことで、CommuniGate Pro への移
行後もセキュアSASL 認証方式を利用できるようになります。
- [Use OS Password] オプションを有効にします。このオプションは、[Default Account Settings]
ページまたは[Account Template] ページで設定できます。
- CommuniGate Pro パスワードとして空白の文字列を指定します。指定は、[Account Template]ペー
ジで行えます。
- アカウントをすべてインポートします。この場合、[Password]フィールドはインポートしません。
以上のようにして、アカウントが新たに作成されれば、ユーザーは、以前のOS パスワード、つまり
既存のメールシステムで使用されていたパスワードを使って自分のアカウントにアクセスできます。
アクセス後、ユーザーはCommuniGate Pro 上で自分のパスワードを変更(作成) でき、作成されたパ
スワードはCommuniGate Pro パスワードとして登録されます。このようにして、ユーザーが全員、自
分のパスワードを更新するとセキュアSASL 認証方式を利用できるようになります。
場合によっては、上の方法が困難なこともあります。例えば、既存のメールサーバーからユーザーを
CommuniGate Pro に移行するが、何らかの理由で全ユーザーをUnix OS に登録できない、または登録
しない予定であり、ただし、既存のサーバーのパスワード(passwd) ファイルはある、といったケー
スが考えられます。この場合、Unix 形式(crypt-encrypted) のパスワード(パスワードファイルの
パスワード) をCommuniGate Pro パスワード(CommuniGate Pro の内部パスワード) として入力する
という方法が使えます。
Unix 形式(crypt-encrypted) のパスワード、または、その他のCommuniGate Pro でサポートされて
いる暗号化パスワード(下記を参照) をCommuniGate Pro の内部パスワード(CommuniGate Pro パス
ワード) として入力する場合、接頭辞として002 (1 バイトバイナリ) を付加してパスワードを作成、
保存しなければなりません。例えば、
CLIインターフェイスを使って、"user" という名前のユーザー
を"AslUzT1JkPsocc" というUnix (crypt-encrypted) パスワードで作成する場合、CLI コマンドは
次のようになります。
createaccount "test" {Password="\002AslUzT1JkPsocc";}
この方法では、テキストファイル上のアカウントリストをインポート
てユーザーを作成できます。
その場合、Unix パスワードは、[Password] フィールドではなく[UnixPassword] フィールドに保存し
なければなりません。インポートの際には、バイナリ接頭辞002 はLoader によって自動的に付加され
ます。また、LDAPプロビジョニング機能を使ってユーザーを作成するときには、暗号化パスワード
をunixPassword 属性として指定しなければなりません。
また、アカウントを作成する場合、アカウント設定でCommuniGate Pro パスワード暗号化方式( クリ
アテキストまたはA-crpt のいずれか) を指定することが必要です。この指定により、ユーザーは、以
前の自分のUnix/ 暗号化パスワードを使ってログインできるようになります。その後、最初の方法と
同じく、ユーザーが自分のパスワードを変更・更新すると、パスワードは、指定されている暗号方式
でCommuniGate Pro パスワードとして保存されます。このようにして、ユーザー全員がパスワードの
更新を完了すると、セキュアSASL 認証方式の利用が可能になります。
Netscape 社やSoftware.com 社で提供しているサーバーの中には、ユーザーパスワードが特殊な暗号化
方式で保存される製品もあります。こういったサーバーからパスワードを取り込んだ場合、各パスワー
ドは次のような形式で示されます。
{method}eNcoDeD
または、
$method$eNcoDeD
上でmethodは標準の暗号化方式、eNcoDeD (文字列) はbase64 エンコード暗号化パスワードを表し
ます。
CommuniGate Pro では、上記のようなパスワードもUnix 暗号化パスワードと同じ方法で扱えます。つ
まり、CLI コマンドラインでバイナリ接頭辞002 をパスワードの先頭に付加します。または、パスワー
ドをAccount Importファイルの[UnixPassword] フィールドに定義します。
CommuniGate Pro でサポートされている暗号化方式は、次の通りです。
- {crypt} - 標準のUnix crypt 方式。
- {WM-CRY} - 標準のUnix crypt 方式(上記の{crypt} と同じ)。
- {MD5} - MD5 ダイジェスト方式(パスワード文字列のBase-64 エンコードMD5 ダイジェスト)。
- {SHA} - SHA1 ダイジェスト方式(パスワード文字列のBase-64 エンコードSHA1 ダイジェスト)。
- {NS-MTA-MD5} - MD5 ベースの方式で、Post.Office サーバーや旧バージョンのNetscape メッセー
ジングサーバーで使用(eNcoDeD 部は、64 桁の16 進数で構成)。
- {SSHA} - the "salted SHA1" digesting method (Base-64 encoded SHA1 digest of the 8-byte salt and the password string, followed with the salt bytes).
This method is used in the Sun Directory Server application.
- {LANM} - "LAN Manager" ハッシュで、Microsoft Windows サーバーで使用(eNcoDeD 部は32 桁の16
進数で構成)。
- {MSNT} - "Microsoft NT" ハッシュで、Microsoft Windows サーバーで使用(eNcoDeD 部は32 桁の16
進数で構成)。
- $1$ - MD5 ベースのパスワードハッシュで、FreeBSD などのUnix システムで使用。
- $2a$ - BlowFish ベースのパスワードハッシュで、OpenBSD などのUnix システムで使用。
The following is a sample Import file:
Name | UnixPassword | Password Type |
user1 | YIdhkjeHDKbYsji | Unix-crypt |
user2 | {SHA}Ue4Erbim2TC7CmuukMOBejeytr2= | SHA1-digested |
user3 | {MD5}zverMUhsgJUIDjeytr2= | MD5-digested |
user4 | {crypt}YIdhkjeHDKbYsji | Unix-crypt, same as for the user1 account |
user5 | $1$VlPrB$vNjOAytB3W.j0bkkbaN2Z. | BSD-type MD5-encrypted |
|
OS の/etc/passwd(パスワード) ファイルに格納されているユーザーとパスワードは、CommuniGate
Pro のCLI スクリプトを使うことで自動的にインポートできます。CommuniGate Perl Interface サイト
にサンプルのスクリプトがありますので、参照してください。
sendmailからの移行
以下、sendmail ベースのメールシステムからCommuniGate Pro に移行する参考事項を記載します。
- aliasesファイル
- sendmail の場合、aliases (エイリアス) ファイルを使うことでローカルのメールを複数のアドレ
スにリダイレクト(転送) できます。sendmail では、エイリアスに関する多数の機能を総合して
「エイリアス」機能と呼んでいます。一方、CommuniGate Pro では、エイリアス機能は各種のオ
ブジェクトやモジュールでサポートされており、したがって、どのオブジェクトやモジュール
によって、どんなエイリアス機能が実行されるか、よく理解しておくことが必要です。以下、順
に説明します。
- CommuniGate Pro では、同一のアカウントに単一もしくは複数のエイリアスを設定できま
す。アカウントにエイリアス(単一もしくは複数) を設定しておいた場合、いずれかのエ
イリアス名に対して送信されたメールは、そのアカウントにルーティングされます。例え
ば、domain.dom のアカウントであるjohn.smith にj.smith とsmith という2 つのエイリアスが設定されているとします、この場合、j.smith@domain.dom またはsmith@domain.dom
のアドレスでメールが送られると、どちらの場合もjohn.smith@domain.dom アカウン
トにメールがルーティングされます。エイリアスが設定されているアカウントの名称が変
更されたときでも、以前と同じように、設定済みのエイリアスを介して名称変更後のアカ
ウントにメールが送られます。また、エイリアスが設定されているアカウントが削除され
ると、エイリアスも自動的に削除されます。
- ドメインフォワーDomain Forwarder) オブジェクトを使うことで、いずれかのドメイン
のアドレスに送信されたメールを別のドメインのアドレスにフォワード(転送) できます。
例えば、domain.dom のアドレスであるsusan.smith に送られたメールを別のドメインのアド
レスであるsusan@otherisp.dom に転送できます(otherisp は、別のISP)。
- ドメイングループ(Domain Group) オブジェクトを利用して、任意のドメインのアドレスに
送信されたメールを別の複数のアドレスにリダイレクトできます。
- ルーRouter) モジュールを使用し、任意のアドレスに送信されたメールを別のアドレ
スにリダイレクトできます。例えば、ルータエイリアスレコードとして<*.smith@domain.dom> = Smith@domain.dom
と定義しておいた場合、john.smith@domain.domまたはsusan.smith@domain.domに送信されたメールはど
ちらも、Smith@domain.domにリダイレクトされます。
- アカウントルー(Account Rule) を使うことにより、管理者またはユーザーは、自分宛の
すべてのメールまたは任意のメールを別のアドレス(単一もしくは複数) にリダイレクト、
転送、ミラー( コピー) できます。
- サーバーワイドルー(Server-Wide-Rule) を使って、管理者は、自分宛のすべてのメール
または任意のメールを別のアドレス(単一もしくは複数) にリダイレクト、転送、ミラー
( コピー) できます。
- 共有メールボックス機能またはフォリン有メールボックス機能またはフォリンメールボックス機能を使って、ユーザーは、メー
ルボックスにアクセスできる権限を他のユーザーに付与できます。メールを多数のユー
ザーに配布する場合、通常、共有メールボックスを使うのが便利です。
- LISTモジュールを使うことで、簡単にメーリングリスト配信を実行できます。
- procmail処理
- CommuniGate Pro では、サーバーワイド(サーバー単位)、ドメインワイド( ドメイン単位)、ア
カウントレベルのいずれでも自動処理ルールを使用でき、こうしたルールを使って、管理者や
ユーザーは強力な条件をもとにメールの自動処理やフィルタリングを行うことができます。条
件としては、CommuniGate Pro サーバーに内蔵されているチェック処理、その他の処理を指定で
きます。
外部フィルタや外部プロセッサでメッセージを処理しなければならないこともありますが、そ
の場合、自動処理ルールとしてExecute を使用します。この自動処理ルールを使うことで、外部プログラムを独立したOS タスクとして実行できます(例えば、すべての受信メール、または
任意の受信メールを単一のprocmail プログラムで処理できます)。
Post.Office®サーバーからの移行
Post.Office®ソフトウェアでは、アカウント名、パスワード、その他の関連情報はすべてPost.Office
のアカウントデータベースに格納されます。アカウントデータベースの情報は、Post.Office 用の移行
ユーティリティを使って取り出し、情報をタブ区切りファイルに保存できます。生成されたタブ区切
りファイルは、CommuniGate Pro のWebAdmin のアカウントインポート機能を使ってCommuniGate Pro
にインポートできます。
また、Post.Office のメーリングリストとサブスクライバー(加入ユーザー) 情報は、リスト移行(List Migration)スクリプトを使ってCommuniGate Pro に取り込めます。
Netscape®/iPlanet Messagingメッセージングサーバーからの移行
Netscape (iPlanet) iPlanet) メッセージングサーバーの場合、アカウント名、パスワード、その他の関連情報
はすべてディレクトリサーバーのサブツリーに格納されます。サブツリーは、通常のLDAP ツールを
使ってLDIF ファイルにエクスポートできます。LDIF ファイルのアカウント情報は、Netscape の移行
スクリプトでタブ区切りファイルに変換できます。変換したタブ区切りファイルは、CommuniGate Pro
のWebAdmin のアカウントインポート機/a>機能を使ってCommuniGate Pro にインポートが可能です。
IMail®サーバーからの移行
IMail®ソフトウェアでは、アカウント名、パスワード、その他の関連情報はすべてIMail のアカウン
トデータベースに格納されます。アカウントデータベースに格納されている情報は、IMail 用の移行
ユーティリティを使って取り出し、タブ区切りファイルに保存できます。タブ区切りファイルの情報は、CommuniGate Pro のWebAdmin のアカウントインポート機能を使ってCommuniGate Pro にインポートが可能です。
CommuniGate/MacOS、SIMS からの移行
CommuniGate Pro のMacOS サーバーを使っており、そのユーザー情報を別のシステムに移行したい場
合、CommuniGate/MacOS エクストラクタユーティリティを使ってアカウントリストファイルを作成
します。
また、Stalker Internet Mail Server (SIMS) のユーザー情報を移行したいときには、SIMS エクストラクタ
ユーティリティを使ってアカウントリストファイルを作成します。
Microsoft® Exchange Serversからの移行
M icrosoft® Exchange ServerからCommuniGate Pro に移行する場合、Exchange 用の移行ユーティリティを使ってExchange サーバーのユーザーリストを取り出します。また、ユーザーを
CommuniGate Pro のドメイン内にユーザーを作成することもできます。このユーティリティには、ユーザーフォルダのデータ( メール、カレンダリング、連絡先などの情報) をすべてコ
ピーする機能、また、データとアドレスフォーマットを変換する機能が搭載されています。
Exchange 用の移行ユーティリティにはまた、Exchange Global Address Book のデータを取り出し、そのデータをLDIF ファイルに変換する機能もあります。生成されたLDIF ファイルは、
CommuniGate Pro のディレクトリにインポートできます。
その他のPOP サーバーのメールボックスのコピー
上記以外のPOP サーバーからCommuniGate Pro に移行する場合、そのメールサーバー上のアカウント
のメッセージをすべて新規のサーバー(CommuniGate Pro) のアカウントにコピーするという作業が
必要です。新規のサーバーのアカウントは、事前に作成しておくことが必要です。
POP サーバーからCommuniGate Pro に移行する場合、CommuniGate Pro ソフトウェアパッケージに付
属のMovePOPMail プログラムを使用します。このプログラムでは、既存のPOP サーバーに接続し、
ログインした後、メッセージをすべて取り出し、新規のSMTP サーバー(指定可能) に送信するとい
う処理が自動的に実行されます。コマンドは、次のようになります。各パラメータの説明は、コマン
ドの下に順に記載してあります。
- MovePOPMail [--verbose] [--delete] [--notimeout] POPserver POPname POPpassword SMTPserver SMTPrecipient
- POPserver
- 既存の( ソース) POP3 サーバーのIP アドレスです。そのPOP サーバーが動作しているTCP
ポートが非標準の場合、コロン記号(:) を使ってポート番号を指定しなければなりません。例
えば、192.0.2.3:111 となります。この場合、192.0.2.3 がPOP サーバーのアドレス、111 が
ポート番号です。
- POPname
- POP アカウント名、つまり、POP サーバー上のソースアカウントの名前です。
- POPpassword
- POP アカウントパスワードです。
- SMTPserver
- 新規の( ターゲット) SMTP サーバーのIP アドレスです。そのSMTP サーバーが動作している
TCP ポートが非標準の場合、コロン記号(:) を使ってポート番号を指定しなければなりません。
例えば、192.0.2.4:26 となります。ここで、192.0.2.4 がSMTP サーバーのアドレス、26 がポート
番号です。
- SMTPrecipient
- 取り出されたメッセージの送信先のアドレス。通常、新規のサーバーのアカウント名を指定し
ます。
- --verbose
- オプションのパラメータ。このパラメータを指定しておくと、処理の進行状況に関する情報が
標準出力に送られます。
- --delete
- オプションのパラメータ。指定しておくと、POP アカウントからメッセージが取り出された後、
そのアカウントのメッセージがすべて削除されます。
- --notimeout
- オプションのパラメータ。指定しておくと、SMTP 処理タイムアウトとPOP 処理タイムアウト
が20 秒から1 時間に増加します。
下は、コマンド例です。
MovePOPMail --verbose 192.0.0.4 john "jps#dhj" 192.0.1.5 john
その他のIMAP サーバーのメールボックスのコピー
上記以外のIMAP サーバーからCommuniGate Pro に移行する場合、そのメールサーバー上のアカウン
トのメールボックスとメッセージをすべて新規のサーバー(CommuniGate Pro) のアカウントにコピー
するという作業が必要です。新規のサーバーのアカウントは、事前に作成しておくことが必要です。
CommuniGate Pro ソフトウェアパッケージには、MoveIMAPMail プログラムが付属しています。IMAP
サーバーからCommuniGate Pro に移行する場合、このプログラムを使います。このプログラムを実行
すると、既存のIMAP サーバーと新規のIMAP サーバーの両方に接続とログインが行われ、その後、既
存のアカウントのメールボックスのリストが取り出されます。続いて、新規のアカウント用のメール
ボックスのうち欠落しているものがあれば、必要なメールボックスがすべて作成されます。最後に、
既存のアカウントのメールボックスのメッセージがすべて、新規のアカウントのメールボックスにコ
ピーされます。このプログラムでは、また、「サブスクライブメールボックス」のリストとメールボッ
クスACL (サポートされている場合) も自動的にコピーされます。コマンドは、次のようになります。
各パラメータの説明は、コマンドの下に順に記載してあります。
- MoveIMAPMail [flags] OldServer oldName oldPassword NewServer newName newPassword
- oldServer
- 既存の( ソース) IMAP4 サーバーのIP アドレスです。そのIMAP サーバーが動作しているTCP
ポートが非標準の場合、コロン記号(:) を使ってポート番号を指定しなければなりません。例
えば、192.0.2.3:144 となります。この場合、192.0.2.3 がアドレス、144 がポート番号です。
- oldName, oldPassword
- ソースIMAP サーバーにログインするときに使われる文字列( ログイン名とパスワード)。
- newServer
- 新規の( ターゲット) IMAP4 サーバーのIP アドレスです。そのIMAP サーバーが動作している
TCP ポートが非標準の場合、コロン記号(:) を使ってポート番号を指定しなければなりません。
例えば、192.0.2.5:145 などと指定します。ここで、192.0.2.5 がIMAP サーバーのアドレス、145
がポート番号です。
- newName, newPassword
- ターゲットIMAP サーバーにログインするときに使われる文字列( ログイン名とパスワード)。
Flagsには、次のオプションのパラメータを指定できます。指定しなくてもかまわず、また複数指定
することもできます。
- --verbose
- オプションのパラメータ。このパラメータを指定しておくと、処理の進行状況に関する情報が
標準出力に送られます。
- --list search
- オプションのパラメータ。このパラメータの右に検索文字列を指定することで、ソースアカウ
ントのメールボックスの検索が可能です。デフォルトの検索文字列は"*" で、この文字(アス
テリスク) を指定しておくと、ユーザーディレクトリ全部の検索が可能です。IMAP サーバーに
よっては、システムディレクトリの検索も実行されます。使用できる検索文字列については、既
存の( ソース) IMAP サーバーのマニュアルを参照してください。
- --source prefix
- オプションのパラメータ。prefixには文字列(接頭辞) を指定でき、指定した文字列は、上記の
list search コマンドの最初のパラメータとして使われます。処理では、list search コマンド
で取り出されたメールボックス名の文字列のうち、prefixに指定した文字列が削除され、その名
前を使ってターゲットサーバー上でメールボックスが作成されます。
このパラメータは、ソースアカウントのメールボックスツリーのサブツリーを、ターゲットア
カウントのメールボックスツリーの最上位レベルに置きたいときに利用できます。例えば、ソー
スアカウントにabc/mail1 とabc/mail2 という名前のメールボックスがあった場合、 --
source abc/ と指定しておくと、処理時に先頭のabc という文字列が削除され、ターゲットアカ
ウントに"mail1" と"mail2" という2 つのメールボックスが作成されます(この2 つのメールボッ
クスは最上位レベルに移動します)。
既存のサーバーがCommuniGate Pro サーバーのときには、ポストマスター名とポストマスター
パスワードを指定して、任意のアカウントの全メールボックスをコピーするという処理が可能
です。書式は、--source '~username'/ です。
次のtarget オプションを参照。
- --target prefix
- オプションのパラメータ。prefix に文字列(接頭辞) を指定しておくと、その文字列がメール
ボックス名の先頭に付加され、その名前でメールボックスがターゲットサーバーに送信されま
す。ターゲットサーバーがCommuniGate Pro サーバーのときには、ユーザー名、ユーザーパスワードの代わりにポストマスター名とポストマスターパスワードを指定し、次のように指定し
ます。
- --skipMailbox mailboxName
- An optional parameter. When specified, the mailboxName mailbox is not copied.
This parameter can be specified more than once, to exclude several mailboxes.
- --notimeout
- オプションのパラメータ。指定しておくと、IMAP 処理タイムアウトが20 秒から1 時間に増加
します。通常、処理速度が遅いサーバーからメールをコピーする場合、このオプションを指定
します。
- --delete
- オプションのパラメータ。指定しておくと、ソースアカウントからメッセージが取り出された
後、そのアカウントのメッセージがすべて削除されます。
- --nosubscription
- オプションのパラメータ。指定しておくと、メールボックスサブスクリプションリストはター
ゲットアカウントにコピーされません。
- --subscribed
- オプションのパラメータ。指定しておくと、メールボックスのうち、ソースアカウントのメー
ルボックスサブスクリプションリストに記載されているメールボックスだけがコピーされま
す。
- --fetchRFC822
- オプションのパラメータ。指定しておくと、IMAP FETCH コマンドがソースサーバーに送信さ
れるときに、BODY.PEEK[] 属性ではなくRFC822.PEEK 属性が使われます。このパラメータは
通常、ソースサーバーが非常に古く、BODY.PEEK[] FETCH 属性がサポートされていないとき
に指定します。
- --byOne
- オプションのパラメータ。指定しておくと、ソースIMAP メールボックスからメッセージが一つ
ずつ取り出されます。指定しない場合、メッセージはすべて一度に取り出されます。このパラ
メータは通常、ソースサーバー上で、単一のFETCH では、メールボックスの全メッセージが一
度に取り出されないようなときに指定します。
- --noACL
- オプションのパラメータ。指定しておくと、メールボックスACL (アクセスコントロールリス
ト) はターゲットアカウントにコピーされません。
- --copyMailboxClass
- オプションのパラメータ。このパラメータは、ソースサーバーとターゲットサーバーの両方が
CommuniGate Pro サーバーのときに指定します。指定しておくと、ソースサーバーのメールボッ
クスクラス(カレンダー、連絡先など) がターゲットサーバーにコピーされます。
- --fixLongLines number
- An optional parameter. Can be specified if the source server has messages with extremely
long text lines. These lines will be separated into several lines
so no message line in a target server mailbox is longer than number bytes.
- --proxyAuth username
- An optional parameter. When specified, the 'PROXYAUTH username' command is used with the source IMAP server.
Use this command to login to the source server as admin to retrieve mail from an account whose password you do not know,
if your source server supports the PROXYAUTH IMAP command.
下は、コマンド例です。
MoveIMAPMail --list "Mail/*" 192.0.0.4 john "jps#dhj" 192.0.1.5 johnNew dummy
注意:ソースアカウントのメールボックス名が.mbox または.mdir で終わっている場合、処理後、ター
ゲットアカウント名の末尾はそれぞれ-mbox、-mdir となります(ピリオドがダッシュに変更されま
す)。
既存のサーバーの全メールボックスの一括コピー
CommuniGate Pro サーバーを導入し、必要なアカウントの作成も完了すれば、CommuniGate Pro に付
属しているプログラムを使って、既存のサーバーの全メールボックスのメールを新規のサーバー
(CommuniGate Pro) のアカウントに一括してコピーできます。
付属のプログラムはMoveAccounts で、このプログラムでは、タブ区切りテキストファイル(内容は
アカウント名とパスワード) を介して既存のメールサーバーのメールを一括してコピーできます。タ
ブ区切りテキストファイルは、CommuniGate Pro のドメインにアカウントをインポートするときに使
用するファイルと同じです。
MoveAccounts を実行すると、タブ区切りテキストファイルのスキャン(フィールドなどのチェック)
後、MovePOPMailまたはMoveIMAPMail(どちらかをパラメータで指定) を使って、各アカウントの
メッセージがコピーされます。MovePOPMail とMoveIMAPMail はどちらもカレントディレクトリにあ
ります。MoveAccounts のシンタックスは次の通りです。
- MoveAccounts [--POP | --IMAP] file sourceServer targetServer [suppl_parameters]
- --POP, --IMAP
- MovePOPMail (--POP) またはMoveIMAPMail (--IMAP) のどちらを使うかを指定できます。指
定しなかったときには、デフォルトとしてMovePOPMail が使われます。
- file
- タブ区切りテキストファイルの名前で、内容はアカウント名とパスワードです。
- sourceServer
- 既存の( ソース) サーバー(POP またはIMAP) のIP アドレスを指定します。ポート番号も付
加できます。
- targetServer
- 新規の( ターゲット) サーバー(SMTP またはIMAP) のIP アドレスを指定します。ポート番号
も付加できます。
- suppl_parameters
- オプションのパラメータ(--verbose、--delete、--notimeout、--list search など) を
指定できます。指定したパラメータは、MovePOPMail またはMoveIMAPMail に渡されます。
file( タブ区切りテキストファイル) の最初の行は、複数のデータフィールド名で構成されます。
フィールドとしては、Name (アカウント名) とPassword (パスワード) は必須です。
タブ区切りテキストファイルにNewName フィールドがあり、プログラムがMovePOPMail のときに
は、その起動時にNewName フィールドがSMTPrecipient パラメータとして使用されます。一方、
プログラムがMoveIMAPMail のときには、その起動時にNewName フィールドがnewName パラメー
タとして使用されます。NewName フィールドがない場合、どちらのプログラムでもName フィールド
のデータが使われます。
パラメータとして--IMAP (MoveIMAPMail) を指定した場合、NewPassword フィールドがあるかど
うかがチェックされます。NewPassword フィールドが見つかったときには、NewPassword フィールド
のデータがMoveIMAPMail プログラムに渡されます。NewPassword フィールドがなかった場合、
Password フィールドのデータが使われます。
MoveAccounts では、上記以外の名前のフィールドはすべて無視されます。
ファイル名: AccountList
名前 | 制限 | パスワード |
john | 10K | j27ss#45 |
jim | 120K | dud-ee |
george | 31M | mia#hj! |
|
MoveAccounts --POP AccountList 192.0.0.3 192.0.1.5
場合によっては、コピー元のアカウントのクリアテキスト(非暗号化) パスワードが一部または全部
入手できず、また、既存のサーバーでUnix の/etc/passwd or /etc/shadow ファイルが使われて
いることもありますが、その場合、次の手順で作業を行います。
- OS ファイルのうち、暗号化ユーザーパスワードが格納されているファイル(通常、/etc/
passwd、/etc/shadow、/etc/master.passwd のいずれか) を探します(詳しくは、OS の
マニュアルを参照)。ここでは、便宜上、/etc/shadow ファイルに暗号化ユーザーパスワード
が格納されているとします。
- /etc/shadow ファイルのバックアップコピーを作成します。
- /etc/shadow ファイルのレコードのうち、クリアテキストパスワード(非暗号化OS アカウント
パスワード) が分かっているアカウントレコードを探します(自分のアカウントレコードでも
結構です)。ここでは、そのクリアテキストパスワードをmypassword と仮定します。また、そ
のアカウントレコードに格納されている暗号化パスワードをFU3jjF/gkJJdA と仮定します。
- /etc/shadow ファイルを開き、すべてのアカウントレコードの暗号化パスワードフィールドに
FU3jjF/gkJJdA を入力します。
- CommuniGate Pro で、移行対象のドメインの[Default Account Settings] ページを開きます。ペー
ジで[Use OS Passwords] オプションを選択し、また、[OS UserName] オプションが* に設定
されていることを確認します。
- CommuniGate Pro のAccountList ファイルを作成します。データとして、Name フィールドに各アカ
ウント名(取り込むアカウントの名前すべて)、 Password フィールドにmypassword という文字
列(全アカウントとも同じ) を入力します。
- MoveAccounts コマンドを使って、既存のサーバーのアカウントメールボックスをすべて新規の
サーバー(CommuniGate Pro) にコピーします。この場合、両方のサーバーで文字列mypassword
がアカウントパスワードとして受け付けられるため(新規のサーバーのパスワードも
mypassword)、両方のサーバーに正常にログインされます。
- バックアップコピーを使って/etc/shadow をリストアします。
- CommuniGate Pro のアカウントのパスワードとしてOS パスワードを使用しない場合、[Default
Account Settings] ページを開き、[Use OS Password] オプションを無効にします。
任意のサーバーからの移行(「リアルタイム」移行)
ときには、上記のパスワード切り替えによる移行方法( クリアテキストパスワードは全部は分からな
いものの、OS パスワードはすべて分かる場合) が利用できないこともあります。また、既存サーバー
で使われていたユーザー名とパスワードが一切分からないこともあります。こうしたときには、次の
方法を使います。
この方法は、CommuniGate Pro の外部認証機能を利用した手法です。
まず、移行スクリプトをダウンロードしてインストールします。次に、CommuniGate Pro を設定し、ダウンロードした移行スクリプトがCommuniGate Pro の外部認証プログラムとして機能するようにし
ます。
CommuniGate Pro 側の設定としては、まず、処理対象となるCommuniGate ドメインを作成します。続
いて、[Domain Settings] ページを開き、[Consult External Authenticator] オプションを有効にします。
また、[Account Template] ページを開き、[Use CommuniGate Password] オプションを無効にし、[Use
External Password] オプションを有効にします。
以上の設定により、ユーザーが接続しようとしたアカウントが存在しなかったとき、または、
CommuniGate Pro でメッセージが受信され、そのメッセージの宛先のアカウントが存在しなかったと
きには、External Authentication (外部認証) スクリプトが呼び出されます。続いて、外部認証スクリプトにより、SMTP プロトコルを介して既存のサーバーに接続が実行され、上記のアカウント(存在
しないアカウント) と同じ名前(アドレス) のアカウントが既存のサーバーにあるかどうかチェック
が行われます。そのアカウントが既存のサーバーにあった場合、その名前を使ってCommuniGate Pro
ドメインにアカウントが作成されます。その後、CommuniGate Pro サーバーにより、新たに作成され
たアカウントに対してメッセージが送信されます。
また、ユーザーがCommuniGate Pro サーバーに接続すると、メーラーによりユーザー名とパスワード
がプレーンテキスト形式で送信されます。ここで、[Use CommuniGate Password] オプションが無効、
[Use External Password] が有効に設定されているため、External Authentication (外部認証) スクリプ
トが呼び出されます。呼び出し後、POP プロトコルまたはIMAP プロトコルを介して既存のサーバー
に接続が実行され、提供されたユーザー資格で既存のサーバーにログインできるかどうかがチェック
されます。
既存のサーバーに対して接続が行われ、既存のサーバーでユーザー資格(パスワード) が認証された
場合、次のような処理が実行されます。
- 外部認証スクリプトにより、CommuniGate ProCLIインターフェイスを使って次の処理が実行さ
れます。
- 認証されたパスワードが、そのアカウントのCommuniGate Pro パスワードとして設定され
ます。
- そのアカウントについて、[Use External Password] オプションが無効に設定されます。
- そのアカウントについて、[Use CommuniGate Password] オプションが有効に設定されま
す。
- 外部スクリプトにより、MoveIMAPMail プログラムまたはMovePOPMail プログラムが実行され、
既存のサーバーのメールボックスのうち、そのアカウントのメールボックスがCommuniGate Pro
サーバーにコピーされるか、または、名前とパスワードのセットがテキストファイルに保存され
ます。このテキストファイルは、その後、MoveAccounts プログラムで使用できます( コピーま
たはテキストファイルの保存は、どちらかを選択できます)。
ユーザーがログインに成功した場合、そのアカウントのパスワードが新規のCommuniGate パスワード
として登録されます。また、既存のサーバーから、そのアカウントのメールボックスのメールがすべ
てCommuniGate Pro サーバーにコピーされます。
以上のようにして、既存のサーバーのユーザーがすべて少なくとも一度はCommuniGate Pro サーバー
に正常に接続することで、全ユーザーのアカウントがCommuniGate Pro サーバーに作成され、
CommuniGate パスワードも設定されます。この移行( リアルタイム移行) がすべて完了すれば、External
Authentication (外部認証) スクリプトを停止し、既存のサーバーを転用または廃棄してかまいません。
サーバーの切り換え
既存のサーバーから新規のサーバー(CommuniGate Pro) に切り換える場合、現在のサービスが中断
されないようにすることが極めて重要です。
既存のサーバーが動作しているシステム/ プラットフォームと同じ種類のシステム/ プラットフォー
ムにCommuniGate Pro サーバーをインストールする場合、次の手順で作業を行います。
- CommuniGate Pro のSMTP受信ポートを26 に設定します。この設定により、CommuniGate Pro の
SMTP 処理と既存のサーバーのSMTP 処理の相互干渉を回避できます。
- CommuniGate Pro のPOPサービスポートを111、IMAPサービスポートを143 に設定します。この設
定により、CommuniGate Pro のPOP 処理/IMAP 処理と既存のサーバーのPOP 処理/IMAP 処理
の相互干渉を回避できます。
- CommuniGate Pro 上でドメインエイリアスを作成します。また、フル機能のセカンダリドメインを作成します。
- メインドメインとセカンダリドメインにそれぞれテストアカウント(試験用アカウント) をい
くつか作成し、各テストアカウントにWebUserインターフェイスを介して正常にログインでき
るかどうかチェックします。
- 各テストアカウントからインターフェイステストアカウントからWebUser インターフェイスを介してメールを送信できるかどうか
チェックします。この場合、いずれかのテストアカウントからCommuniGate Pro のドメインの
別のテストアカウントに正常にメールを送信できるかどうか、また、別のサーバーのアカウン
トに対して正常にメールを送信できるかどうかをチェックします。
- POP クライアントまたはIMAP クライアントを使用しており、そのクライアントで非標準のポー
ト番号がサポートされている場合、 POP ポート111 (POP クライアント) またはIMAP ポート
143 (IMAP クライアント) を使って、各テストアカウントにログインできるかどうかチェック
します。
- タブ区切りファイル(単一または複数) を作成します。ファイルには、既存の各アカウントの
名前、パスワード、その他の属性を定義します。また、アカウントインポート機能を使って、必
要なアカウントをすべて新規のサーバー(CommuniGate Pro) 上に作成します。
上記の作業はいずれも、既存のサーバーを稼働させながら行うことができます。
上記の作業が完了すれば、既存のサーバーを停止させます。停止させる方法としては、既存のサーバー
で使われているポート番号を非標準のポート番号に変更する方法、または、外部ネットワークから切
断する方法があります。
続いて、AccountMoveプログラムを使って、既存のサーバーのメールメッセージをすべて
CommuniGate Pro にコピーします。
すべてのメッセージのコピーが完了すれば、CommuniGate Pro のSMTP ポート番号を25、POP ポート
番号を110、IMAP ポート番号を143 に設定し直します。これで、CommuniGate Pro は新規のメール
サーバーとして正常に動作を開始し、したがってサービスが中断されることもありません。
なお、既存のサーバーは、切り換え後も数時間は動作させておいても結構です。これは、既存のサー
バーのキューに遅延送信メッセージが格納されていることがあるためです。動作させておく場合、既
存のサーバーのポートを非標準のポートに設定しておかなければなりません(標準ポートは
CommuniGate Pro で使われています)。
セカンダリドメインへのアカウントの移行
CommuniGate Pro 上でセカンダリドメインを作成してある場合、既存のサーバーのアカウントを
CommuniGate Pro のメインドメインではなく、作成済みのセカンダリドメインに移行することもでき
ます。
既存のサーバーのアカウントをセカンダリドメインに移行する場合、CommuniGate Pro のアカウント
リスト(AccountList) ファイルにNewName フィールドを追加し、このフィールドに名前(アカウン
ト名) をすべてコピーしなければなりません。また、名前にはそれぞれ、文字列として@domainname
を追加することが必要です。
既存のサーバーのメッセージはIMAP プロトコルを使ってCommuniGate Pro のセカンダリドメインに
移行でき、作業は簡単です。
- コピー先のセカンダリドメインにIPアドレスが割り当てられているときには、メールコピープロ
グラムで、そのIP アドレスを使ってアカウントを移行します。そのIP アドレスを使って接続が
実行された場合、名前の中に不適格の名前があっても、通常どおり、セカンダリドメインにコ
ピーされます。CommuniGate Pro のアカウント、またアカウントへのアクセスについては、アク
セスのセクションの説明を参照してください。
- 一方、コピー先のセカンダリドメインにIP アドレスが割り当てられていないときには、そのセカ
ンダリドメインにメインドメインのIP アドレスを暫定IP アドレスとして割り当てます。その
後、メッセージを移行します。移行が完了したら、セカンダリドメインのIP アドレスリストか
ら暫定のIP アドレスを削除します。
CommuniGate® Pro Guide. Copyright © 1998-2007, Stalker Software, Inc.