Exchange Server

2022年1月 2日 (日)

2022年 明けましておめでとうございます。

この年末年始、IT業界的にびっくりなニュースが。
ついでにウチの会社でも面倒なことが。

【1】
Microsoft Exchange Server、日付チェック問題でメール配信停止(対処中)

えーなんだって?

signed int32に日付をyymmddhhssで格納させていたところ、その型の最大値が2,147,483,647だったのに、

2022/01/01 00:01は2,201,010,001となり格納できなくなったためスキャンエンジンがクラッシュってマジかよ。

西暦2000年問題並みに情けないバグじゃないの。

【2】
この話、ウチの顧客に関係あるかもしれなかったので社内掲示板に書き込もうとしたところ、
社内のファイルサーバーが止まっていることに気が付く。
真っ青になりながら出社すると、仕事納めた後の年末に誰かが出社してうっかりコンセント抜きやがったらしい。

【3】
ファイルサーバーを復旧させて帰宅した後、年末にとんでもない事件が起きていることをいまさら知った。

京大スパコンのデータ77TBが消失 バックアップ処理中に不具合 日本ヒューレット・パッカード「100%弊社の責任」

「実行中のスクリプトをいきなり書き換える」ってマジかよ。

こういうの全然他人事じゃなくてこっちが倒れそう・・・。

 

・・・というかなんだ、IT業界が人手不足ってこういう形で顕在化するってことだよね。

2021年8月11日 (水)

Outlookで日本語を含む添付ファイル名が文字化けする現象について

[Outlook 研究所]日本語を含む添付ファイル名が文字化けする現象について


この件、過去の案件で遭遇したことがあります。
Thunderbird等ではRFC2231が採用されているのに対し、Outlook(Microsoft系)だけはRFC2047を採用していることで
この現象が発症することがあります。
実際の症状は文字化けもあるし、長い件名や添付名が途中で切れることもあります。

OutlookのVBAで何とかできないか調べてみたものの、VBAイベント発生時点で文字化け済みなのでどうにもできませんでした。
それがようやく解消するということのようです。

注意点がありまして、Outlookを普通のメーラーとして使った場合だけ発症しました。
OutlookにはExchange ServerにMAPI接続していわば「Exchangeクライアント」として使う場合もあり、
そのような環境では発症しませんでした。
Exchange ServerがRFC2231とRFC2047の差を吸収してしまうようです。

といいつつも最近Exchangeを触らなくなってしまったのでちょっと自信ないですが。

2018年5月19日 (土)

Exchange 2016の証明書をドメイン内でクライアントに周知する

ほとんどExchange2013の時と同じだったので投稿しなくてもいいかと思ったのですが、一応書いておきましょうか。

 

 

Ex2016

 

Exchange Back Endというサイトが増えていて、こちらでも証明書の再バインドが必要になっていました(2018/10/18追記:なんかボケてました。2013にもBackEndありますよね)

Exchange 2013との違いはここだけです。
(2018/10/17追記)こちらも併せてごらんください。

 

(2021/2/15追記)移転したようですね。

[Japan Exchange & Outlook Support Blog]Exchange 2013 のメールボックス サーバー上で自己署名証明書の有効期限が切れた際の注意点

2014年8月12日 (火)

Exchange 2013の証明書をドメイン内でクライアントに周知する

基本的には過去の記事Exchange 2010の証明書をドメイン内でクライアントに周知するの通りなのですが、実際にコレをExchange2013でやって再起動したらExchange管理センターも管理シェルも使えなくなり、Outlookも繋がらないという最悪の状態に陥ります。

手がかりはイベントログです。HttpEvent:15021が出まくるようになりました。
詳細を読むと"0.0.0.0:444"ってなんやねん?

ここまできて正解が見つかりました。

Exchange 2013- Blank ECP / OWA screen, event ID 15021 HttpEvent in system event log.

要はSSL証明書をバインドしなおします。
コマンドプロンプトを起動して、

(1)netsh http show sslcertコマンドの結果から、127.0.0.1:443のハッシュとアプリケーションIDをメモする。
(2)netsh http delete ipport=0.0.0.0:444 を実行して削除する。
(3)netsh http add sslcert ipport=0.0.0.0:444 certhash=<メモしたハッシュ> appid="{メモしたAppID}"
(4)サーバー再起動

これで復活します。
Exchange2013では証明書の更新も管理センターからできますが、このSSL証明書再作成も必要になりました。

いや最初はあせったわ。

(2014/8/31追記)
Exchange 2013 CU6 がリリースされました。そこに含まれるKB2971270を読むと、
ポート444の再バインドがGUIでもできることが紹介されていました。
IISマネージャーから操作するそうです。

Aaa

Exchange側から証明書の更新をした直後はここが未選択になっているのでMicrosoft Exchangeに選択しなおせばOKでした。

(2018/10/17追記)こちらも併せてご覧ください。

[Exchange ブログ JAPAN]Exchange 2013 のメールボックス サーバー上で自己署名証明書の有効期限が切れた際の注意点

2011年7月 1日 (金)

Exchange 2010の証明書をドメイン内でクライアントに周知する

実はとある方の紹介でmixiに入っていたのですが、入る前から空気を読まない改悪ぶりの噂は聞いていました。それでも閲覧用途でしかなかったのでまだ我慢していましたが今回の「周知無しで本名表示」にはキレました。mixiいい加減にしろと。こういう場合は迅速に行動するべきです。私は先ほど退会しました。

さて今回は仕事で見つけたネタのメモです。

Exchange2003から2010(SP1)に移行するという案件の検証作業をHyper-V上で検証していて、Outlook2010(Win7)起動時に「セキュリティの警告」ダイアログが出るようになってしまいました。

Image2

「このサイトとやり取りする情報を他のユーザーが見たり変更することはできませんが、サイトのセキュリティ証明書に問題があります。 」

「このセキュリティ証明書の発行元については、信頼するかどうかが選択されていません。証明書を表示して、この証明機関を信頼するかどうかを決定してください。」

こんなんです。

Outlookは「そんな証明書ワシは知らんぞ」って言ってる訳です。ただExchange2010クリーンインストールでは出なかったような気がします。

Outlook2010側で証明書のインポートをするのが一番わかりやすいのですが台数次第ではやってられなくなります。 この「証明書」がらみって詳しくないのですがひょんなところからドメイン側で解消できることがわかりました。

【証明書の準備】

Exchangeは2007から自己証明書を発行するようになり、OutlookWebAccessでもhttpsに使用しています。 この証明書をあらかじめエクスポートできるものにしておきます。

New-ExchangeCertificateコマンドで、PrivateKeyExportableを$trueにして作成します。

(2014/8/12追記)インストール時に作られたエクスポート不可の証明書から作り直すのが手っ取り早いので、次のコマンドが一番いいでしょう。

Get-ExchangeCertificate -Thumbprint <既存証明書の拇印> | New-ExchangeCertificate -PrivateKeyExportable:$true

あと入れ替えてしまった古い証明書が悪さをすることもあるのできちんと削除しましょう。

【証明書のエクスポート】

先の証明書をファイルにエクスポートします。

Export-ExchangeCertificateコマンドでエクスポート。

(2014/8/12追記)Export-ExchangeCertificateコマンドは2007だけにパラメーター"Path"があり、1行でエクスポートできます。
2010ではPathが無いのでリンク先の例文のように2行になります。

 Exchange2010だとManagementConsoleからもエクスポート出来るみたいです。

Image3

【証明書をドメイン内で周知】

証明書ファイルをドメインコントローラー上にコピーし、ドメインポリシーにインポートして公開する。

[コンピュータの構成]-[Windowsの設定]-[セキュリティの設定]-[公開キーのポリシー]-[信頼されたルート証明機関]

Image1

「コンピューターの構成」ポリシーなのでクライアントはログオフではなく再起動した方がいいです。gpupdateコマンドでもいいかもしれません。

これでOutlook2010ではダイアログが出なくなりました。OutlookWebAccess/OutlookWebAppのhttps警告も出ません。

(2014/8/12追記)Exchange2013で証明書を入れ替える場合はもうひと手間必要なので注意です。