2016年7月6日水曜日

Safety Tip



[この送信者は不正検出チェックに合格しませんでした。なりすましの可能性があります。] のメッセージが、メールの画面上部に表示されるようになりましたので、記述します。
 
これは、[Safety Tip (安全のヒント) ] 機能によるメッセージの表示です。
 
[Safety Tip (安全のヒント) ] につきましては、受信したメールに対して Exchange Online Protection (EOP) のスパムフィルターでスパム判定を行った上で、迷惑メールフォルダーに振り分ける動作に加え、不審な電子メールに対する警告や、安全なメッセージであるというメッセージを付与する機能です。
また、メッセージに Safety Tip が含まれる場合は、安全性レベル [Suspicious (不審) / Unknown (不明)/ Trusted (信頼できる)/Safe (安全) ] に応じて 4 色に色分けされ、メッセージ上部のバーに表示されます。
 
残念ながら、現在、この機能は無効にできないようです。


2016年7月3日日曜日

スパムフィルターのスパム判定を回避する




スパムメールの判定を回避して受信する方法を記述します。
 
Exchange Online では、外部から受信したメールは [スパムフィルター] によってスパム判定され、メールの内容や送信元などの情報を総合的に評価した結果として SCL (Spam Confidence Level) という値をメールに付与します。
 
付与された SCL の値が [5] 、[6] の場合は、[スパム フィルター] の [スパム] のアクションが動作し、[9] の場合は [制度の高いスパム] のアクションが動作します。
 
スパム判定の回避方法につきましては、[トランスポートルール] をご利用いただくことにより、指定した送信元のドメインから配信されたメールの SCL の値を -1 とする [スパムフィルター対策をバイパスする] ルールを作成することで、[スパムフィルター] のスパム判定を回避しメールを受信することが可能です。
以下に設定手順をご案内いたしますので、お試しくださいますようお願い申し上げます。
 
■トランスポートルールにてスパムフィルターを回避してメールを受信するルールの作成手順
 
1. 管理者ユーザーにて、Exchange 管理センター (https://outlook.office365.com/ecp/) にアクセスします。
2. 画面左の [メールフロー] から、画面中央の [ルール] が表示されていることを確認します。
3. [+(追加)] アイコン、 [スパム対策フィルターをバイパスする] の順に選択します。
4. ルールに名前を付けます。
5. [このルールを適用する条件...] をクリックし、[送信者] > [ドメインが次の値である] を選択します。
6. [ドメインの指定] にて、送信元ドメインを入力後、[+] > [OK] の順でクリックします。
7. [保存] をクリックします。
 
なお、メールアドレスや IP アドレスを条件とすることもできます。




 

 

2016年7月1日金曜日

ホワイトリスト、受信拒否リスト



迷惑メールのオプションの受信拒否リストと信頼できる差出人と宛先のリストについて記述します。

Powershell を利用することでリストを確認し、追加または削除ができます。

以下にコマンドレットを記述します。

■全ユーザーの受信拒否リストを確認
Get-Mailbox -ResultSize Unlimited | Get-MailboxJunkEmailConfiguration | select Identity,BlockedSendersAndDomains

■全ユーザーの信頼できる差出人と宛先のリストを確認
Get-Mailbox -ResultSize Unlimited | Get-MailboxJunkEmailConfiguration | select Identity,TrustedSendersAndDomains

■受信拒否リストに追加するコマンドレット
Set-MailboxJunkEmailConfiguration -Identity <メールアドレス> -BlockedSendersAndDomains @{Add="<追加するメールアドレス>"}

■受信拒否リストから削除するコマンドレット
Set-MailboxJunkEmailConfiguration -Identity <メールアドレス> -BlockedSendersAndDomains @{Remove="<削除するメールアドレス>"}

■信頼できる差出人と宛先のリストにアドレスを追加するコマンド
Set-MailboxJunkEmailConfiguration -Identity <メールアドレス> -TrustedSendersAndDomains @{Add = "<追加するメールアドレス>"}

■信頼できる差出人と宛先のリストにアドレスを追加するコマンド
Set-MailboxJunkEmailConfiguration -Identity <メールアドレス> -TrustedSendersAndDomains @{Remove = "<追加するメールアドレス>"}
※追加するメールアドレスにドメインを指定することもできます。





2016年6月26日日曜日

リモートドメインで内部ドメインに変更





リモートドメインの機能を利用して、外部のドメインを組織内部ドメインとして認識する方法について、記録します。
 
該当の外部ドメインをリモート ドメインに登録し、リモート ドメインの [IsInternal] のパラメーターを [True] に変更することにより可能です。
 
リモート ドメインの [IsInternal] の属性が [True] の場合は、トランスポート ルールで組織外への配送を制限した場合も、組織内部ドメインとして判定されるため制限を受けない動作となります。
 
また、リモート ドメインの [IsInternal] のパラメーターを [True] に変更する方法といたしましては、Windows PowerShell のコマンドレットを実行いただく必要があります。
 
以下に [特定の外部ドメインをリモート ドメインに登録する手順] および [リモート ドメインを組織内ドメインとして認識させるコマンドレット] をご案内いたします。
 
===============================================
■ 1. 特定の外部ドメインをリモート ドメインに登録する手順
===============================================
 
1. 管理者ユーザーにて、Exchange 管理センター (https://outlook.office365.com/ecp/) にアクセスします。
2. 左側のメニューから [メール フロー] を選択し [リモート ドメイン] をクリックします。
3. [+(新規作成)] をクリックし、[リモート ドメインの新規作成] を表示します。
3. [名前] を任意で入力します。
4. [リモート ドメイン] に対象の外部ドメインを入力します。
6. [保存] をクリックします。
 
=============================================================
■ 2. 特定のリモート ドメインを組織内ドメインとして認識させるコマンドレット
=============================================================
 
1. 以下のコマンドレットを実行し、[IsInternal] の値を True に設定します。
 
[基本構文]
Set-RemoteDomain "1.で登録した任意の名前" -IsInternal $True

[実行例]
Set-RemoteDomain contoso.com -IsInternal $True
 
2. 以下のコマンドレットを実行し、上記で設定した内容を確認します。
 
[基本構文]
Get-RemoteDomain | fl Name,IsInternal
 
<実行結果例>
Name : contoso.com
IsInternal : True





2016年6月25日土曜日

メールヘッダー




メールヘッダーに記録される情報について、記述します。
 
 
x-originating-ip:送信元端末のIPアドレスが確認できる。大元のIPアドレス。接続元クライアントの IP アドレスが記載される。
 
Disposition-Notification-To:開封確認メッセージの送信先アドレスを確認できる。
 
X-MS-Exchange-Inbox-Rules-Loop:転送、自動応答を利用時に付与される。
 
X-MS-Exchange-Organization-Recipient-P2-Type: Bcc:BCCにて送信されている。
 
X-Microsoft-Exchange-Diagnostics:Exchange Onlineのサーバーを経由した際に記載される
 
X-MS-TNEF-Correlator:TNEFを含む情報には<> に値が設定されている
 
X-Mailer:メールクライアントの種別
 
Accept-Language : 受信可能な自然言語を示すもの。このヘッダーがないものはどの言語でも受け入れることを示している。
 
Content-Language : 文章の指定した言語
 
Date : 送信元から送信した時間
 
Received : メールが配送されたルートを記します。下から順番に経由されたサーバーが記されます。
 
X-MS-Exchange-CrossTenant-originalArrivalTime : Exchange Online のテナントからメッセージを送信した際につけられるタイムスタンプです。
 
X-OriginalArrivalTime : Exchange Online 内のサーバーにて最初にメッセージが渡された際につけられるタイムスタンプです。




2016年6月23日木曜日

なりすまし送信をブロックする方法




トランスポートルールを利用した From ヘッダーをなりすましたメールをブロックする方法について記録します。
 
ただし、実際の送信元のアドレスをすでに知っておく必要があるため、送信元が不明の場合は利用できないことをご了承ください。
 
■偽造元の送信元アドレスを指定する場合
[メッセージの送信者アドレスに一致する] にて [エンベロープ] を指定することで、エンベロープ From のメールアドレスを条件として処理されるため、ヘッダー From を偽造して送信されたメールについてもブロックすることができます。
 
1. Microsoft online ポータル (https://portal.office.com) へ管理者 ID でサインインします。
2. [Office 365 管理センター] 左記メニューから [Exchange] をクリックし [Exchange 管理センター] へアクセスします。
3. [Exchange 管理センター] 左記メニューから [メールフロー] [ルール] をクリックします。
 
<新規作成>
4. [+] をクリックし、プルダウンメニューより [新しいルールを作成する...] をクリックします。
4-1. [名前] を指定します。
※ 名前 : 作成するルールの名称
4-2. [その他のオプション] をクリックします。

<条件> [*このルールを適用する条件...]
4-3. [送信者...] > [この人物である] にて、[名前の確認] の欄に送信元メールアドレスを入力します。

<動作> [*実行する処理]
4-4. [メッセージをブロックする...] にて以下から選択します。

メッセージを拒否してその説明を含める : メールを拒否して送信者にメッセージを返します
だれにも通知せずにメッセージを削除する : メールを拒否します
※次の拡張状態コードのメッセージを拒否するは Exchange Online では利用できません。

5. 画面を下までスクロールし、[メッセージの送信者アドレスに一致する] を [エンベロープ] に変更します。 
6. [保存] をクリックします。

なお、エンベロープ From を確認する場合は、メールヘッダーの [Return-Path] の値で確認できます。


 

2016年6月22日水曜日

AQS検索




検索キーワードの指定方法について、AQS 検索 (高度クエリ検索) を使用することで、より詳細な検索条件を指定することができます。
 
 
■ AQS (高度な検索) について
AQS を使用するには、検索ウィンドウにキーワード、コロン、検索する単語の順に入力します。
例として、"Example" という分類に属するアイテムを検索するには、[Category:"Example"] と入力します。
 
---------------------------------
□AQS で利用できる条件
---------------------------------
From : [差出人] 行を検索します。
To : [宛先] 行を検索します。
Cc : [CC] 行を検索します。
Bcc : [BCC] 行を検索します。
Participants : [宛先] 行、[CC] 行、および [BCC] 行を検索します。
Subject : 件名を検索します。
Body (Content) : 本文を検索します。
Sent : 送信日を検索します。特定の日付または 2 つのドット (..) で分割した日付の範囲を検索できます。
Size : >1000 ※ 左の表記で 1000 byte 以上のメールアイテムを抽出します
 
次のような相対的な日付を検索することもできます。今日、明日、昨日、今週、来月、先週、過去 1 カ月。特定の年の特定の週または、月の特定の日を検索できます。
※ 日付検索は、月 / 日 / 年の形式 (MM/DD/YYYY) で入力する必要があります。
Received : 受信日を検索します。[送信日時] と同じ検索用語を使用できます。
Attachment : 指定した添付ファイルを検索します。たとえば、[attachment:letter.doc] と入力すると、[letter.doc] という名前の添付ファイルが検索されます。
Has : [has:flag] と入力すると、フラグが付いているアイテムを検索できます。
 
検索期間の入力例は以下の通りです。
RECEIVED:2016/01/01..2016/01/10
受信した日付の範囲を指定して検索します。
 
RECEIVED:<2016/01/01 (特定の日付以前を検索する場合、指定日は含まれる)
RECEIVED:>2016/01/01 (特定の日付以降を検索する場合、指定日は含まれない)
特定の日付以前または以降に受信したメールを検索します。
 
上記のキーワードに加え、AND および OR などの論理演算子を組み合わせる事により、詳細な検索も可能となります。
例として、差出人が User かつ 2016 年 1 月 1 日 以降に受信したメールアイテムのみ対象を検索するには、From : User AND RECEIVED:>2016/01/01 と入力する事で検索が可能となります。
なお、AND および OR などの論理演算子がキーワードではなく演算子として扱われるようにするには、大文字で入力する必要があります。





2016年6月21日火曜日

動的配布グループのメンバー出力






動的配布グループのメンバーを確認する方法について、記録します。
 
動的配布グループは、Exchange 管理センターで確認することができません。動的配布グループのメンバーを表示するには、Powershell にて、以下のコマンドを実行することで確認が可能です。
 
<構文>
$DDG = Get-DynamicDistributionGroup -Identity <動的配布グループのメールアドレス>
 
Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter | Export-Csv -NoTypeInformation -Encoding UTF8 -Path <ファイルパス\ファイル名>.csv
 
<実行例>
$DDG = Get-DynamicDistributionGroup -Identity test@contoso.com
 
Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter | Export-Csv -NoTypeInformation -Encoding UTF8 -Path C:\temp\test.csv
 




2016年6月20日月曜日

グループのメンバーを出力






全ての配布グループとセキュリティグループのメンバーを確認する方法について、記録します。
 
Powershell にて、以下のコマンドを実行することで確認が可能です。
 
1. グループの抽出
※ 以下の、1-1 - 1-3 のいずれかを実行します。

1-1. 配布グループおよびセキュリティグループの抽出
[構文]
$Temp=foreach ($i in Get-DistributionGroup -ResultSize Unlimited ) {Get-DistributionGroupMember -Identity $i.PrimarySmtpAddress -ResultSize Unlimited |select @{n="DistributionGroupMailAddress";e={$i.PrimarySmtpAddress}},PrimarySmtpAddress}
 
1-2. 配布グループのみを抽出
[構文]
$Temp=foreach ($i in Get-DistributionGroup -ResultSize Unlimited | where {$_.Grouptype -Like "*Universal*"}) {Get-DistributionGroupMember -Identity $i.PrimarySmtpAddress -ResultSize Unlimited |select @{n="DistributionGroupMailAddress";e={$i.PrimarySmtpAddress}},PrimarySmtpAddress}
 
1-3. セキュリティグループのみを抽出
[構文]
$Temp=foreach ($i in Get-DistributionGroup -ResultSize Unlimited | where {$_.Grouptype -Like "*SecurityEnabled*"}) {Get-DistributionGroupMember -Identity $i.PrimarySmtpAddress -ResultSize Unlimited |select @{n="DistributionGroupMailAddress";e={$i.PrimarySmtpAddress}},PrimarySmtpAddress}
 
2. 抽出したグループ別のメンバーを CSV ファイルに出力する
[構文]
$Temp | Export-Csv -Encoding UTF8 -NoTypeInformation -Path "<保存先フォルダとファイル名.csv>"
 
[実行例]
$Temp | Export-Csv -Encoding UTF8 -NoTypeInformation -Path C:\Temp\DLMemberList.csv
※ C ドライブ配下の temp フォルダに、CSV ファイルを作成します。
 
[出力項目]
DistributionGroupMailAddress : グループアドレス
PrimarySmtpAddress : メンバーのメールアドレス