■MacOSX 10.8 Mail.appで認証に失敗する対策メモ
 MacOSX 10.8 Mountain Lionがリリースされたので早速アップデートしたところ、Mail.appの送受信に失敗するようになったので設定で回避したメモ。該当環境は10.6.8から10.8に直接アップデートしたパターン。正しいパスワードを入力してもパスワードが間違っていると言われてしまう場合には、以下を試してみることをオススメする。

■IMAP認証
 アップデート後、IMAP認証がNTLMになってしまっていたので変更する。
 メール>環境設定>アカウント>当該アカウント>詳細
 認証: MD5 チャレンジ応答 or パスワード に設定。

■SMTP認証
 こちらもNTLMになっていたので変更する。
 メール>環境設定>アカウント>当該アカウント>アカウント情報
 送信用メールサーバ(SMTP)>SMTPサーバリストを編集
 当該メールサーバを選択
 認証: MD5 チャレンジ応答 or パスワード に設定。

これで正しく動作することを確認した。
いずれのケースでも認証セッションを保護するためSSL接続にチェックすることをオススメ。

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■無償高機能Webmail Horde4 をインストールしてるメモ
 iPhone/iPadに対応した無償利用可能な高機能Webmail Horde4 webmail editionをインストールしている試行錯誤中のメモ。iPhone用のUIがなかなか使いやすいので期待している。Hordeの多彩な機能を利用可能にするために、必要なものを組み込んでいくとphpのエラーなどで使えなくなるという…。スケジュール周りのパーツが怪しそうなのだがまだ特定できず。現在までの手順とメモを覚書。このエントリは当面随時修正されますのでご注意ください。

■インストール環境

・CentOS6.2
・WebServerを選択しphp/mysql系を有効にする
・java/tomcat等不要なものはできるだけ削る

■インストール前準備

iptablesでWebアクセスを可能にする
# vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
# service iptables restart

SELinuxの無効化(これしないとtest.phpでハマる)
# getenforce
Enforcing
# vi /etc/sysconfig/selinux
SELINUX=disabled
# reboot

■インストール手順(未完)

epelリポジトリの追加
# wget http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-5.noarch.rpm
# rpm -ivh epel-release-6-5.noarch.rpm
# yum update

必要なものをインストール(未完おそらく入れてはいけないものがある)
# yum install gcc php-eaccelerator php-pdo php-gd php-xml php-xmlrpc php-soap php-ldap php-imap php-mbstring php-pear php-tidy php-zts php-pecl-memcache php-intl php-devel re2c php-pear-XML-Serializer php-pecl-ssh2

php.iniを編集する
# vi /etc/php.ini
memory_limit = 384M
date.timezone = Asia/Tokyo
session.gc_divisor = 10000

mysqlにデータベースを作成する
# mysql -u root -p
mysql> grant all privileges on horde.* to horde@localhost identified by ‘hordepassword’ WITH GRANT OPTION;
mysql> CREATE DATABASE `horde` DEFAULT CHARACTER SET utf8 ;
mysql> quit

Horde4をインストールする(位置がhttp://www.example.com/horde/となるように)
# mkdir /var/www/html/horde
# pear upgrade PEAR
# pear channel-discover pear.horde.org
# pear install horde/horde_role
# pear run-scripts horde/horde_role
Filesystem location for the base Horde application : /var/www/html/horde
# pear install -a -B horde/webmail
# webmail-install

  1. Installing Horde Groupware Webmail Edition
  2.  
  3. Configuring database settings
  4.  
  5. What database backend should we use?
  6.     (false) [None]
  7.     (mysql) MySQL / PDO
  8.     (mysqli) MySQL (mysqli)
  9.     (pgsql) PostgreSQL
  10.     (sqlite) SQLite
  11.  
  12. Type your choice []: mysql
  13. Request persistent connections?
  14.     (1) Yes
  15.     (0) No
  16.  
  17. Type your choice [0]:
  18.  
  19. Username to connect to the database as* [] horde
  20. Password to connect with hordepassword
  21. How should we connect to the database?
  22.     (unix) UNIX Sockets
  23.     (tcp) TCP/IP
  24.  
  25. Type your choice [unix]:
  26.  
  27. Location of UNIX socket [] /var/lib/mysql/mysql.sock
  28.  
  29. Database name to use* [] horde
  30.  
  31. Internally used charset* [utf-8]
  32. Use SSL to connect to the server?
  33.     (1) Yes
  34.     (0) No
  35.  
  36. Type your choice [0]:
  37.  
  38. Certification Authority to use for SSL connections []
  39. Split reads to a different server?
  40.     (false) Disabled
  41.     (true) Enabled
  42.  
  43. Type your choice [false]:
  44.  
  45. Writing main configuration file... done.
  46.  
  47. Creating and updating database tables... done.
  48.  
  49. Configuring administrator settings
  50.  
  51. Specify an existing mail user who you want to give administrator
  52. permissions (optional): 管理ユーザ名
  53.  
  54. Writing main configuration file... done.
  55.  
  56. Thank you for using Horde Groupware Webmail Edition!

# vi /var/www/html/horde/config/conf.php
$conf[‘testdisable’] = false;

http://www.example.com/horde/test.php にアクセスして動作確認。

現手順ではtest.phpは動作するが、http://www.example.com/horde/でログイン画面を表示しようとすると何も出てこない。apacheのerrorログにphpエラーが検出されている。追加機能をいくつか対応する前は動作していたので余計なものを追加したのがいけない模様…現在調査中。また動作した場合であってもtest.phpでは外部アクセス可能なのに、ログインではローカルにあるIMAPサーバにしか接続できない状態だったので、設定をいろいろ検証する必要ありorz

■追加機能への対応

idn対応の追加
# yum install libidn-devel php-idn
# pecl install idn channel://pecl.php.net/idn-0.2.0
# vi /etc/php.ini
extension=idn.so

ImageMagick対応の追加
# yum install ImageMagick ImageMagick-devel php-magickwand
# pecl install imagick
Please provide the prefix of Imagemagick installation [autodetect] :
# vi /etc/php.ini
extension=imagick.so

GeoIP対応の追加
# yum install GeoIP php-pecl-geoip

Date_Holidaysの追加
# pear install Date_Holidays channel://pear.php.net/Date_Holidays-0.21.6
# pear install Date_Holidays_Japan channel://pear.php.net/Date_Holidays_Japan-0.1.2

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■Windows Phone 7 とCommuniGate Proを同期するメモ
 OMNIA7(ビルド7392)とCommuniGate Pro 5.4.1をActiveSync (AirSync)で同期した設定のメモ。Exchange設定で問題なくメール、カレンダー、コンタクトが同期できる。日本語の表示もOK。但し7392だと正式に日本語対応していないため、返信等が全てutf8でエンコードされるため、携帯宛てメールでは注意が必要。ActiveSync設定を行う場合にはSSL経由にすることを強くオススメする。個人でも無償利用可能なStartSSLをサーバ側で使っている想定で証明書のWP7端末へのインストール手順から説明する。

1)StartSSLのCA証明書をWP7端末にインストールする
 WP7端末のIEで以下のURLにアクセスする
  http://www.startssl.com/certs/ca.cer
 「タップしてファイルを開く」と表示されたアイコンをタップする
 「証明書をインストールしますか?」と出るので「インストール」をタップ
 「OK」をタップしてインストール完了
 全てのアプリで利用できるように一度端末を再起動する

2)CommuniGate Proと同期設定をする
 「Settings」>「email & accounts」>「add an account」をタップする
 アカウントタイプから「advanced setup」を選んでタップする 
 同期するメールアドレスとパスワードを入力する
 種類で「Exchange ActiveSync」を選んでタップする
 「domain」にメールアドレスの@以下を、「Server」にサーバのFQDNを入力する
 この時SSL利用にチェックを入れておくこと
 オプション項目は任意に設定
 設定が終わったら「sign in」をタップして完了
 これでOutlookアイコンがホーム画面に作成される

 Outlookアカウントから設定することも可能だが、メールアドレスのドメイン部とサーバ名が一致していないとチェックのため2回ほど待たないとサーバ設定画面に到達できないので、最初からadvanced setupを選択することをオススメ。おそらく最新のMango (7720)でも同様の手順で設定可能と思われる。サーバ同期を組むとiPhoneやAndroidとのスケジュール連携も容易なのでとても使いやすい。

, , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

CommuniGate Pro v5.4リリース(正式Android対応)

■CommuniGate Pro v5.4リリース(正式Android対応)
 5ユーザまで無償利用可能な統合メッセージングサーバ CommuniGate Proがv5.4のリリースで正式にAndroid対応したので、動作検証したメモ。これまでもExchange ActiveSyncアカウントを設定することでメールや連絡先の同期が利用できたが、今回からカレンダーやAndroid専用アプリPronto!が提供されるなど、Android対応の範囲が拡大した。アップデートに伴い既存Androidユーザは注意が必要なので以下に説明をする。

■CommuniGate Proのアップデート
 最新バージョンはv5.4となるが、アップデートする場合にはv5.3の最新版であるv5.3.14に一旦アップデート後、v5.4にアップデートすることをオススメする。必須とはされていないようだが、過去経験上その方が問題が少ないと思われる。以下CentOS i386版でのバージョンアップ手順。メジャーバージョンアップなので後者をオススメ。

手抜き版
# cd ~/download
# wget http://www.communigate.com/pub/CGatePro/5.4/CGatePro-Linux-5.4-0.i386.rpm
# rpm -Uvh CGatePro-Linux-5.4-0.i386.rpm
# service CommuniGate stop
# service CommuniGate start

慎重版(サービス停止してバックアップ取得後v5.4へ入れ替え)
# cd ~/download
# wget http://www.communigate.com/pub/CGatePro/5.4/CGatePro-Linux-5.4-0.i386.rpm
# service CommuniGate stop
# tar zcvf CGPBK.tar.gz /var/CommuniGate/
# rpm -e CGatePro-Linux
# rpm -ivh CGatePro-Linux-5.4-0.i386.rpm
# service CommuniGate start

■v5.4の主な変更点
・Flash UIのPronto!がバージョン4にアップデート UIデザイン刷新
・専用アプリPronto! for Android 1.0b11が新規追加(XIMSS接続なので注意)
・AirSyncプロトコルが最新になりAndroidに正式対応
・MAPI Connector version 1.54.0.3へアップデート
・リバースチェックでIPv6のDNSレコードに対応
・XMPPがSSL/TLSに対応
・AESの暗号化に対応
・CalDAV/FileDAV/CardDAVに幅広く対応
・SMSの送受信に対応(SMPPの新規追加)
・STUNに対応 などなど

■Androidに関わるv5.4アップデートの注意点

・Android端末でAirSync接続をしていた場合、アカウントを作り直すこと
 Exchange Activesync設定を一旦削除し、再度作成し直すことが必須
 作り直さないとMailアプリが強制終了したりする
 Android対応で変更された仕様の影響と思われる
 iPhone/iPadでもアカウントの再設定が必要のようです
 →iPhone/iPadでは端末再起動で問題が解消されるケースもあるようです

・Android用専用アプリPronto!はまだベータなので注意
 サーバ接続にはXIMSSを利用するのでサーバ側でport 11024(標準)が
 利用可能になっていること(11024は平文なので注意)
 SSLが利用可能な場合にはこちらを参考にport11025でSSL接続をオープンにする
 利用可能な機能はIP電話・IM・連絡先となる(メール等は同期設定で利用)

 001HTではアカウントを作成し直すことでメール・連絡先・カレンダー全て問題なく同期できた。またPronto!アプリも問題なく動作しているように見える。ただPronto!は明示的に終了させる方法がアプリに用意されていないため、電池の消費がやや気になる。ちなみにVersion情報がアプリ上では1.0b10となっていた(リリース文ではb11なのに)。リモートワイプは未実験だがHTC端末については5.3.11でもワイプ可能だったので問題なく利用可能と推測する。

 WhisperCore0.4(Android2.3.4)をインストールしたNexusOneでもメール・連絡・カレンダーが問題なく同期されることを確認。ワイプ機能は同期アカウント設定時に変わらず「デバイス管理者」の設定通知が来ないため動作せず。正式にAndroid対応と言っているのにこれはまずい気がする…。どうもこれまでの経緯的にCGS社はHTC端末でしか動作確認していないように見える。

■その他の気になったこと
・管理画面のレスポンスが向上した気がする
・管理画面のメニュータブが結構増えて項目位置変更も多く把握が大変
・Pronto!はv4とv3を選択的に利用可能
・Windows版/MacOSX版のアプリもダウンロード可能になっている
・Linux用はAirアプリがダウンロード利用可能
・AirSync利用時は端末側で再設定が必須になるというのが微妙

随時追記の予定

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■Appleの使用IPアドレスはClass A(スパムチェック手法)
 Apple名義でiTunes Storeのアンケートが送られてきたのだが、クリックで誘導される先がhttpsではあったものの、www.itunespulse.comという聞慣れないドメインでwhoisによるとApple所有のドメインにも関わらず、証明書の名義がSocratic Technologies, Inc.になっていたのでちょっと気になって調べてみたメモ。ちゃんとアンケート自体に「アップルの調査の実施は、独立マーケティングリサーチ会社であるSocraticによって行われています。」という一文があるので適切な説明はされているのだけど、やはりSSL証明書が別企業になっていてデザインがアップルっぽいのものになっているとちょっと気にしてしまう。で、フィッシングを警戒して調べてみたらAppleってClass A のIPアドレスレンジを所有してるんだなと言うことがわかってちょっと驚いた。

■調べた手順
0)URLやSSL証明書の所有者を確認
 ANSI Whoisなどで所有者検索
 SSL証明書はブラウザから詳細を確認
1)メールヘッダを解析
 Recievedヘッダにあるサーバ名とIPアドレスをチェック
 Return-Pathの確認
2)SPFの確認
 Return-PathのアドレスにあるドメインのTXTレコードをdigで確認
3)TXTに書かれたIPアドレスを確認
 ANSI Whoisなどで所有者検索

 結果どれもAppleの正当な所有のもと発送されたメールであると判断できるものであったが、それであればなおのことSSL証明書だけが別会社名義というのが残念な感じ。apple.com名義のSSL証明書の不正利用を懸念してこうした構成にしているとするなら、本来はアップルが取得した上で自管理サーバ上にインストールし、Webアプリと集計データのみをSocratic社のコントロール範囲とすべきと思う。

 で、この経緯の中digの結果が以下であったことから、「え?流石にAppleがClass Aの17.0.0.0全体を所有してるとかないんじゃね?相当適当にSPF書いちゃってるのかなぁ?」と思ってWhoisで所有者を確認したところ、以下にあるように正当な所有者でしたと…(滝汗 一体いつの間に…Sunに買収されるかもという時期にオンタイムでApple関連企業で仕事していた身としては今の企業成長度合には常々びっくりしてはいたものの、このIPv4が枯渇しようかという時期にClass Aを所有できるようになっていたとは…とか思ったけどwhoisでは初回登録が1990-04-16になってるから、ほんとネット草創期からAppleが保有したままだったのね。17とか早い番号を所有しているのも納得。先駆者メリットだったんだなぁ…

■digのTXTレコード取得結果
 ;; ANSWER SECTION:
 apple.com. 3600 IN TXT “v=spf1 ip4:17.0.0.0/8 ~all”

■Whoisの結果
 NetRange: 17.0.0.0 – 17.255.255.255
 CIDR: 17.0.0.0/8
 OriginAS:
 NetName: APPLE-WWNET
 NetHandle: NET-17-0-0-0-1
 Parent:
 NetType: Direct Assignment
 RegDate: 1990-04-16
 Updated: 2010-04-09
 Ref: http://whois.arin.net/rest/net/NET-17-0-0-0-1

 OrgName: Apple Inc.
 OrgId: APPLEC-1-Z
 Address: 20400 Stevens Creek Blvd., City Center Bldg 3
 City: Cupertino
 StateProv: CA
 PostalCode: 95014
 Country: US
 RegDate: 2009-12-14
 Updated: 2010-04-06
 Ref: http://whois.arin.net/rest/org/APPLEC-1-Z

,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (2 投票, 平均値/最大値: 3.50 / 5)
Loading...

■SPFレコードとスパムパターンのメモ
 最近思うことあってCommuniGate Pro本体でのSPFレコードの判定を有効していろいろなルールを書いてスパムのパターン解析をしたメモ。

■SPFレコード
 囮アドレスに来るスパムの傾向を見てみると90%以上はSPFはPassになっている。そこでdigで該当ドメインのTXTレコードを引いてみると、かなりの確率で “v=spf1 +all” が帰ってくる。”v=spf1 +all” でない場合でも100%末尾に “+all” が指定されていることで、全てのIPアドレスから送信されることを許容した設定になっている。

■Recievedヘッダ
 こちらも90%近い確率でRecievedヘッダが一行しかない。botから直接メールサーバに送信しているパターンだと想定される。

■X-Mailerヘッダ
 上記2条件の当てはまるパターンのメールは手元では100%X-Mailerヘッダがなかった。

 これらのことから、少なくとも自メールサーバ宛てでは、SPFレコードに+allが付いていて(2011年時点で+allとか付けてる時点でスパム認定でいいような気もする)、Recievedヘッダが1行、X-Mailer無しのパターンはほぼスパムでFAということに。

ちなみにCommuniGate ProのSPFチェックを有効にするのは以下の設定。
 管理画面>設定>メール>SMTP>受信>処理
 SPFレコードチェック を有効にする

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■Thunderbird機能拡張のメモ
 気になった機能拡張のメモ。未検証。

キーワードハイライト表示
http://mozilla-remix.seesaa.net/article/35143503.html

指定時間メール送信
http://mozilla-remix.seesaa.net/article/41397425.html
https://addons.mozilla.org/ja/thunderbird/addon/send-later-3/

送信宛先確認
http://mozilla-remix.seesaa.net/article/48612163.html
https://addons.mozilla.org/ja/thunderbird/addon/confirm-address-5582/

削除メールの復活
http://mozilla-remix.seesaa.net/article/171297217.html

送信メッセージへのフィルタ適用
https://addons.mozilla.org/ja/thunderbird/addon/send-filter/

宛先表示名確認
http://hogi.sakura.ne.jp/ja/cas/cas.rhtml

カラムの表示をカスタマイズ
https://addons.mozilla.org/ja/thunderbird/addon/extra-folder-columns/

IMAP Quotaの視覚化
https://addons.mozilla.org/ja/thunderbird/addon/display-quota/

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (1 投票, 平均値/最大値: 5.00 / 5)
Loading...

■Android/iPhoneで無償利用可能なExchangeサービス
 iPhoneやAndroid端末でActiveSyncやリモートワイプの試験ができる環境を調べたメモ。完全無料はCodenameのみ。後はトライアルにて期間限定で無料利用が可能。法人契約前提のサービスも多いので要確認。料金はActiveSync/リモートワイプが可能な契約内容の料金とした。2010/3/8現在の調査結果。

■Codename(Exchange2007 無料 3ヶ月毎に継続手続き必須)
 サービス:ActiveSync可/リモートワイプ可
 初期設定:0円
 月額料金:0円(1ユーザからOK)
 容量:25M
 http://codename.win1.jp/default.aspx
 ※ワイプはOWAでアクセスして実行する

■アイル Exchange (Exchange2003? 14日無料トライアル可能)
 サービス:ActiveSync可/リモートワイプ可
 初期設定:1575円
 月額料金:890円(1ユーザからOK)
 容量:3G
 http://home.isle.ne.jp/service/apps/exchange/support/trial.html
 http://home.isle.ne.jp/service/apps/exchange/index.html

■Livestyle Exchange2007 E-standard(Exchange2007 30日間無料トライアル可能)
 サービス:ActiveSync可/リモートワイプ可
 初期設定:1680円
 月額料金:1680円/ユーザ(1ユーザからOK)
 容量:1G/ユーザ
 http://www.live-style.jp/price/Pages/default.aspx
 http://www.live-style.jp/exchange/Pages/default.aspx

■KDDI Business Outlook (Exchange2007 14日間無料トライアル可能)
 サービス:ActiveSync可/リモートワイプ不明
 初期設定:0円
 月額料金:980円/ユーザ(1ユーザからOK)
 容量:1G/ユーザ
 http://www.kddi.com/pub/outlook/application/free.html
 http://www.kddi.com/pub/outlook/index.html

■Microsoft Exchange Online Standard(Exchange2007 30日間無料トライアル可能)
 サービス:ActiveSync可/リモートワイプ不明
 初期設定:0円
 月額料金:522円/ユーザ(5ユーザから契約可能)
 容量:25G/ユーザ
 http://www.microsoft.com/japan/online/trial.mspx
 http://www.microsoft.com/online/ja-jp/exchange-online.mspx

, , , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■CommuniGate ProでiPhone/Androidとメール同期&SIP利用
 このBlogのタイトルにもなっているCommuniGate Pro(CGP)は5ユーザまで無償利用可能な統合メッセージングサーバである。CommuniGate ProにはMS ExchangeのActiveSync互換のAirSyncという機能がありExchage同期設定が可能になっており、iPhoneやAndroid2.1以降の端末と簡単にメールのプッシュ同期設定ができる。また統合メッセージングサーバらしく、メール用に作成したアカウントのID/パスワードがそのままSIPアカウントとして利用可能で、ポート設定さえ適切に行えば、外部アカウントともSIPで音声通話/ビデオ通話が可能になるので非常に面白い。5ユーザまでは個人法人問わず無償利用可能なので、ここでその設定方法を紹介する。

 CommuniGate System日本語ページ
 http://lang.communigate.com/jp/

 CommuniGate Pro ダウンロードページ
 http://www.communigate.com/pub/CGatePro/

■CommuniGate Proのインストール
 CommuniGate Pro自体は上記ダウンロードページを参照すると判る通り、非常に多くのOS及びプラットホームに対応している。バージョンが同じであればOSの種類を問わずデータは互換性があるので、必要なパフォーマンスによってOSの移行も容易である(データディレクトリをコピーするだけ)。ここでは過去にCentOS5向けに高パフォーマンス環境のインストール記事があるので、そのリンクを紹介しておく。こちらの記事のプロセス1〜6までがインストール手順となる。

 カスタム版MyNETSとCentOS5で1万人規模のSNSを構築する
 http://blog.isnext.net/issy/archives/384

 以下の項目は上記インストール手順を前提にそれ以降の設定となる。

■CommuniGate Proにアカウントを追加する
 サンプル設定に従い、sns.example.comにアカウントを追加するため「https://192.168.0.100:9010/」へブラウザでアクセス。user01を作成する。

 管理画面>アカウント>ドメイン>sns.example.com
 アカウント作成ボタン横の入力フィールドにuser01と入力
 アカウント作成ボタンを押す
 user01のアカウント設定画面が開く
 「CommuniGateパスワード」にuser01のパスワードを入力
 「更新」ボタンを押して保存する

■CommuniGate ProをExchange同期可能に設定する
 上記で作成したuser01とuser02のアカウントがExchange同期できるように設定する。CommuniGate ProではExchange同期するにはhttp/httpsのいずれかでアクセスする必要があるので、まずはhttp/httpsを有効にする。

1)apacheが同時に稼働していない場合(TCP80/443が未利用)

 管理画面>設定>サービス>HTTPU
 HTTPU設定画面、「処理」項目の右端にある「リスナー」をクリック
 ポート、ローカルIPアドレス、SSL/TLS初期化の項目に以下を入力
 80、全てのアドレス、オフ
 「更新」ボタンを押して保存
 ポート、ローカルIPアドレス、SSL/TLS初期化の項目に以下を入力
 443、全てのアドレス、オン
 「更新」ボタンを押して保存
 (リモートIPアドレス制限はどちらも「なし」でOK)

2)apacheが同時に稼働している場合
 sns.example.comをapacheが使うように設定されている場合、Communigate ProにWebアクセスできるように、別のホスト名を割当てproxyを設定することでapache経由での同期を可能にする。ここでは別ホスト名をmail.example.comとする。(DNSにも適切に設定すること)

 管理画面>アカウント>ドメイン>sns.example.com>ドメイン設定
 ドメイン設定画面の一番下左にある「ドメインエイリアス」に
 mail.example.comと入力
 「更新」ボタンを押して保存

 apacheにproxy設定を追加する(mod_proxyが有効になっていること)
 以下のような設定を追加してapacheを再起動
 SSL設定例(証明書とキーが別途必要です)

  1.  <VirtualHost 192.168.0.100:443>
  2.   ServerName mail.example.com:443
  3.   ErrorLog logs/mail_ssl_error_log
  4.   TransferLog logs/mail_ssl_access_log
  5.   LogLevel warn
  6.  
  7.   SSLEngine on
  8.   SSLProtocol all -SSLv2
  9.   SSLCipherSuite   
  10.   ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
  11.   SSLCertificateFile /etc/mail/mail.crt
  12.   SSLCertificateKeyFile /etc/mail/mail.key
  13.  
  14.   ProxyRequests Off
  15.   ProxyPass / http://localhost:8100/
  16.  
  17.   <Location />
  18.    ProxyPassReverse http://localhost:8100/
  19.    ProxyPassReverseCookieDomain localhost mail.example.com
  20.    ProxyPassReverseCookiePath / /
  21.    Order allow,deny
  22.    Allow from all
  23.   </Location>
  24.  
  25.  </VirtualHost>

 https://mail.example.com/ にアクセスしてWebMail画面が開くことを確認

■CommuniGate ProをSIP利用可能に設定する
 CommuniGate Proではインストール直後からSIPサーバ機能が有効になっているので、CGP側で特に設定することはない。サーバOS側でiptablesの設定を追加してSIP通信が外部と可能な状態にする。/etc/sysconfig/iptables に以下を追記してiptablesを再起動する。

  1.  -A RH-Firewall-1-INPUT -p udp -m udp --dport 5060 -j ACCEPT
  2.  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5060 -j ACCEPT
  3.  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5061 -j ACCEPT

以上でCommuniGate ProにてExchange同期とSIPが利用可能になる。iPhone/Androidでの設定方法は以下の通り。

■iPhone/iPadでのExchange同期設定

 設定>メール/連絡先/カレンダー>アカウントを追加…
 Exchange選択
 メール:user01@sns.example.com
 ドメイン:sns.example.com
 ユーザ名:user01
 パスワード:設定したパスワード
 「次へ」
 (必要なら証明書を受け入れる)
 サーバ:sns.example.com(apache併用の時はmail.example.com)
 「次へ」
 (アカウントの確認ができないと言われたら)
 「保存」

 保存後、アカウントの設定を開くとSSLを試用するかどうか設定できるようになるので、やむを得ない場合はSSLをオフにして試してみる。
 iOS4では複数のExchange同期が設定できるが全てプッシュ設定しているとうまく動作しないようなので注意。iPhone/iPadはこの設定をすることで、リモートワイプ等も実行することが可能。

 リモートワイプは以下の手順で実行
 管理画面>アカウント>ドメイン>sns.example.com>user01>モバイル
 AirSyncクライアントにiPhoneやiPadが表示されるので、ワイプする端末にチェックを付けて「消去」ボタンを押す。するとワイプが設定されて、次回端末がアクセスしてきた時にリモートワイプが実行される。

■AndroidでのExchange同期設定
 機種ごとに若干差異があるので、ここではNexusOne (froyo)の設定方法を紹介。

 設定>アカウントと同期>アカウントを追加
 Microsoft Exchange ActiveSyncを選択
 メールアドレス:user01@sns.example.com
 パスワード:設定したパスワード
 「次へ」
 ドメイン/ユーザー名:user01
 パスワード:設定したパスワード
 サーバー:sns.example.com(apache併用の時はmail.example.com)
 安全な接続(SSL)を試用する チェック
 全てのSSL証明書を承認 自己証明の場合はチェック
 「次へ」
 新着メール自動確認:自動(プッシュ)
 同期する量:3日間
 いつもこのアカウントでメールを送信 必要ならチェック
 メールの着信を知らせる チェック
 このアカウントから連絡先を同期します チェック
 このアカウントからカレンダーを同期 チェック
 「次へ」
 このアカウントに名前を付ける:省略
 「完了」

 Android端末では2.1以降でExchage同期が標準実装されるが、リモートワイプ機能は2.2以降が対象となる。残念ながらCommuniGate Proでは一部非互換があるため、カレンダー同期とリモートワイプが5.3.xのバージョンでは実行できない。5.4系で修正されるということなので、来年初めには問題が解決されると期待している。

 Androidのリモートワイプ対応状況については以下を参照。

 AndroidのExchange連携(リモートワイプ)対応状況
 http://blog.isnext.net/issy/archives/280

■SIPアプリケーションのアカウント設定
 こちらは別途アプリ比較等を行った時に記事にしたいと思う。原則的にはユーザでuser01@sns.example.com、パスワードに指定パスワードを入れて、サーバにsns.example.comを入力すれば、多くのSIPアプリではSIPレジストまでは可能だと思われる。CommuniGate Proは音声/映像コーデックの変換機能はないので、SIPクライアント同士が同じコーデックを持っていることが必須になることに注意。

 CommuniGate Proで動作実績のあるSIPソフトは以下。
 http://www.communigate.com/Papers/VoicePlus_Technical_DataSheet_A4-c.pdf

 AndroidのSIPアプリで確認した状況は以下も参照。

 AndroidとSIP/VoIP
 http://blog.isnext.net/issy/archives/292
 

, , , , , , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

メール送信不具合の初期調査方法

■メール送信不具合の初期調査方法
相手先にメールが適切に届かないケースにおける初期調査手法。
ここではCommuniGate Proをベースに説明するが他のMTAでも同様。

「メールが適切に届かない」とは、SMTPでUser unknowとか明示的なエラーが帰って来るケースではなく、セッションがリセットされたり再送を繰り返してしまうようなケースを想定する。
以下手順。

1)STMP送信の詳細なログを取得する
 CommuniGate Proの管理画面に入り、「設定」>「メール」>「SMTP」>「送信」タブを開き、「ログレベル」を「全情報」にして「更新」ボタンを押す。これで設定した直後からほぼSMTP通信(送信/outgoing)のみがTCPダンプレベルでログに記録される。この設定をして問題の発生している相手先にメールを送信してみる。
 CommuniGate Proを使っていない場合には、素直にWireSharkとかtcpdumpを利用する。また、送信時にSMTP Proxy経由で送り出すようなケースはMTAでダンプ取得するのではなく、相手先と最終的に通信している機器で取得することを推奨する。

2)相手先のIPアドレスやMTAをログに記録された内容のバナー情報等から読み取る
 TCPダンプレベルのログが記録されるので、相手先MTAのSMTP応答も全て読み取ることができる。バナーがフェイク設定されていなければおよそ相手先のMTAが判断できる。

3)digコマンドで宛先ホストが正しいか確認する(サーバとは別マシンで行うのがよい)
 $ dig 先方ドメイン MX

4)digコマンドででホスト情報を確認する(サーバとは別マシンで行うのがよい)
 $ dig 先方MX宛先 A

5)ホスト情報から得られたIPアドレスの所有者をANSI WHOIS等で確認する
 3,4,5のこれらを確認することで、メールASPサービスを利用しているのか、自社設置しているのか、おおよそ判断することが可能になる。自社IP、自社サーバで運用している場合はメールサーバ管理者と直接コンタクトできる可能性が経験上高い。自社持ちでも運用を委託しているケースはあるので必ずではない。

6)メールASP等を利用している場合にはASPのサービスを調査する
 MXやIPネットワークが別ドメインだったり別会社名義だったりする場合には、他社委託やASPサービスを利用している可能性が高く、このケースはメールサーバ管理者とコンタクトできない率が多少高い。大手ASPなどは特定メールのトラブルにはほとんど取り合ってくれないので、世の中の事例検索に頼ることになる。

※ここまでの情報で、発生した応答メッセージ等で検索して類似事例を探す
 先方に問い合わせしないでできる範囲はここまで
 以下は相手先メールサーバ管理者と連絡が取れた場合。

7)相手先のメールサーバ管理者に状況を報告する
 起きている事象を的確に、できればログを添えて相手方に伝える。特に複数回確認できていること、取引上の支障になっていることなどを添えると効果は高い。ログを提出するのはタイムスタンプ等を比較して先方の調査を容易にするため。

8)可能であれば先方のメールサーバログを調査していただく
 自社持ちでも外部に管理を委託しているケースもあるので、あくまで調査可能か伺いを立てた上で依頼する。この時にこちらのログを提出しているとスムーズにやってもらえることが多い。ただし経験上外資系はほとんどダメ。調査はしてくれても結果を教えてもらえないとか…結構あった…。

9)先方のメール受信構成(SPAM対策など)をできるだけ詳しく聞く
 問題がMTAなのかSMTP proxyやロードバランサ等中継している経路にあるのか可能性を広げて検討を行うため、可能な限り構成についてヒアリングを行う。これも大手になればなるほど教えてもらえない率が高い。

10)同じアドレスに別サーバから同じメールを送信してTCPダンプした結果を比較する
 相手先と協調して、複数パターンで送信テストを行い、受信可能なパターンと不可能なパターンを洗い出す。この時双方でTCPレベルのダンプデータを突き合わせると意外なことがわかったりする。(TCPのダンプを行うのは、大抵SMTPレベルで解決しないから)

※再度、発生した応答メッセージ等で検索して類似事例を探す
 ここまでしてわからないケースはお手上げなのだが、そういうレベルのトラブルはMTAそのものではなく、OSのTCP設定やFirewall/ロードバランサなど複数の要因が関わっていることがあるので、構成がヒアリングできていると構成機器のバグ情報を探すことで原因が判明したりする。

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...