pikesaku’s blog

個人的な勉強メモです。記載内容について一切の責任は持ちません。

O365とDMARC認証

ポイント

SPFDKIM、DMARCのチェック対象ドメインの違い

認証方式 チェック対象ドメイン
SPF エンベロープFrom
DKIM DKIMヘッダで指定したドメイン
DMARC Fromヘッダドメイン

DMARC認証は、以下2条件が満たされれば成功となる。

 SPF or DKIMのどちらかが成功
 成功した方(SPF or DKIM)で、アライメントチェックも成功
 SPF & DKIM両方で成功でも、DMARCがFAILになる可能性あり。

DMARCのDNSレコードの指定方法

https://support.qualitia.co.jp/s/article/000002563?language=ja

aspf、adkimでアライメントモード指定。未指定の場合、relaxed

pでポリシー指定 none等

spはサブドメインに別ポリシーを指定したい場合に利用。pと同じ書式。

サブドメインにも影響与える。dmarc認証する時に、チェック対象ドメインのdmarcレコードを確認するが、定義ない場合に、親ドメインのdmarcレコードを見るフローがあるのだろう。
ドメインにdmarcレコードあり&spなしの場合
→pに従う
ドメインにdmarcレコードあり&spありの場合
→spに従う

ruaは認証結果全て、ruf認証失敗のみのレポート。大量メールが来る可能性あり。

構文チェックサイトあり

外部ウェブサイト)PowerDMARC: DMARCレコードチェッカーツール
外部ウェブサイト)MXToolBox:DMARC Check Tool

2024/2の総務省要求

https://www.soumu.go.jp/menu_news/s-news/01kiban18_01000184.html#:~:text=%E7%B7%8F%E5%8B%99%E7%9C%81%E3%80%81%E8%AD%A6%E5%AF%9F%E5%BA%81%E5%8F%8A%E3%81%B3,%E5%BC%B7%E5%8C%96%E3%82%92%E8%A6%81%E8%AB%8B%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82

利用者向けに公開する全てのドメイン名(メールの送信を行わないドメイン名を含む)について、DMARCを導入すること。
DMARC導入にあたっては受信者側でなりすましメールの受信拒否を行うポリシーでの運用を行うこと。
→dmarcレコードをp=rejectで公開せよってこと

DMARCアライメントとは

https://baremail.jp/blog/2023/09/26/3474/
チェックの厳しさ
以下2種類あり
relaxed
 ヘッダFromの組織ドメインと、SPFDKIMで認証したドメインが同じなら成功。サブドメインを利用していても一致とみなす
strict
 ヘッダFromのFQDNSPFアライメントの場合はReturn-Path(エンベロープFrom)と、DKIMアライメントの場合は署名ドメインが完全に一致

組織ドメインの定義があるのだろう。
fromアドレスのドメイン部分=組織ドメインではないのだろう。
fromアドレスのドメイン部分=ヘッダFromのFQDN
なのだろう。
https://eng-blog.iij.ad.jp/archives/3273

やっぱりそうだ。

ポイントとしては
relaxedは組織ドメインで評価しサブドメインマッチを許可、restrictはfromヘッダなドメインと完全マッチと覚える

MBRとGPT

まとめ

MBRはMaster Boot Recordの略

GPTはGUID Partition Tableの略

どちらもパーティション形式。MBRは第一セクタの意味でも使われる。

MBRの場合、第一セクタ(512B)内にブートローダ(446B)とパーティションテーブル(64B)とブートシグニチャ(2B)の情報が格納される。

MBRパーティションテーブルには、パーティションの開始セクタの情報がLBAで記録される。

 セクタの指定方法は、CHS(Cylinder head sector)LBA(Logical Block Addressing)があり。
 CHSはObsoleteでLBAが主に利用される。
 LBAはセクタにナンバリングして位置を管理する。

MBRの場合、パーティションテーブルのフォーマットとして、開始セクタは4バイトで表現する必要がある。これによって、2TB以上のディスクでブートできない問題が発生する。

4バイトで表現できる限界 = 256×256×256×256 = 4294967296
上記×512(1セクタサイズ) ÷ 1024 ÷ 1024 ÷ 1024 ÷ 1024 = 2TB

GPTの場合、8バイトで表現できるため、サポートされる最大サイズは8ZBとなる。

256の8乗×512(1セクタサイズ) ÷ 1024(K) ÷ 1024(M) ÷ 1024(G) ÷ 1024(T) ÷ 1024(P) ÷ 1024(E) ÷ 1024(Z) = 8

MBRフォーマット

f:id:pikesaku:20210926141722p:plain

GTPフォーマット

f:id:pikesaku:20210926141953p:plain

BIOSとUEFI

しっかりメモに残そう!!!

BIOSとは?

Basic Input/Output Systemの略名

BIOSはパーソナルコンピュータ(PC)に組み込まれており、電源投入と同時に実行される。ハードウェアを初期化し補助記憶装置からブートローダーを呼び出す。またキーボードやディスプレイなどの入出力装置をプログラムから利用するためのサービスを提供する。プログラムはハードウェアに直接アクセスするのではなく、これらサービスを利用する事でハードウェア差を気にしなくて良くなる。ただし近代的なオペレーティングシステム (OS) はこの抽象化層を使用せず、OSのデバイスドライバで直接制御する場合が多い。

ハードウェアへのアクセスは主に入出力レジスタの操作で行うが、その動作や配置はハードウェア種によって異なる。また、読み書きのタイミングや順序にも手順がある。このためアクセス手順はアプリケーションで記述するより、ハードウェア種毎にサブルーチンを用意する方が有用でありこれがBIOSである。ISAやPCIなどではボードのROMにBIOSプログラムがあり、これはメモリ上に展開されてアプリケーションから利用される。マザーボード側のBIOSをSystem BIOS拡張カードBIOSを拡張BIOSと区別して呼ぶことがある。

また同種のハードウェアでも操作方法が異なる場合もある。これに対処するためBIOSの呼び出しインタフェースは共通化されており、アプリケーションはBIOSサービスを呼ぶだけで複数のデバイスに対応できる。このような共通インタフェースはアプリケーションバイナリインタフェース(ABI)と呼ばれる。

例として、PC/AT互換機VGA BIOS(Video BIOS、ビデオバイオスとも)は、共通化されたABIを呼び出す事でハードウェアの違いを意識せず文字、画像の表示を可能にした。これはビデオカードのROMに実装された拡張BIOSである。 同様にハードディスク、フロッピーディスク、キーボードなどさまざまな入出力処理を行うBIOSが存在するが、これら基本的なものはSystem BIOSでありマザーボードのROMに実装される。

しかし、上記が有効なのはOSがシングルタスク型の場合であり、マルチタスクOSではデバイスドライバが処理を行う。特にリエントラントが考慮されていないBIOS[4]もあり、各アプリケーションが非同期にこれを呼び出すとOSはハードウェアリソース管理が困難になる。このためハードウェア管理はデバイスドライバが一元的に行い、アプリケーションはOSのシステムコールを利用する。

UEFIとは?

Unified Extensible Firmware Interfaceの略名

オペレーティングシステム(OS)とプラットフォームファームウェアとの間のソフトウェアインタフェースを定義する仕様である。
f:id:pikesaku:20210926094026p:plain
UEFIを採用したSystem BIOSは「UEFI BIOS」と呼ばれ、単に「UEFI」と略されることが多いが、ユーザーがアクセスし設定などを行うGUIUEFIであっても「BIOS」と呼ばれる事が多い。UEFI BIOSIBM PC互換機に採用された古いSystem BIOSのよりセキュアな置き換えを意図している[1]。

EFI仕様によって定義されたインタフェースは、プラットフォーム情報などのデータテーブルを持っている。この情報やEFIの機能はブートローダーやOSが利用できる。UEFIファームウェアには以下のような技術的利点がある[12]。

2TiBを超える大きなディスクからブートできる[13]
より高速なブートが可能である
CPUに依存しないアーキテクチャ
CPUに依存しないドライバ
ネットワークも使用可能な柔軟なプレOS環境が利用できる
モジュール化設計が採用されている

ディスクのサポート
マスターブートレコードMBR)などの標準的なPCのディスクパーティションの処理に加えて、EFIではGUIDパーティションテーブル(GPT)をサポートしている。これによりPCでのディスクパーティションの容量の限界と領域の数の制限は拡張され、同じ時期に開発された2TB以上のシリアルATA接続の内蔵ハードディスクからの起動がサポートされた[14]。GPTでのディスクとパーティションの最大サイズは9.4ZB(273バイト)である[14][15]。EFI規格ではファイルシステムには言及していないが、UEFI規格ではFAT12FAT16FAT32のサポートを必須としている。

プロセッサのサポート
バージョン2.3では、Itanium、x86x86_64、ARMアーキテクチャをサポートしている(バインディングが存在する)。

System BIOSは16ビットのIntel 8088を採用したIBM PCの設計に基づいているため、16ビット・プロセッサモードと1MBのアドレス空間という制限があった[6][16]。一方、UEFIのプロセッサモードは32ビット(x86-32、ARM)または64ビット(x86-64、Itanium)である[6][17]。64ビットのUEFIではロングモードも可能であり、OSブート前の環境で64ビットアドレッシングの全メモリに直接アクセス可能である[18]。

UEFIでは、ファームウェアとOSのアドレス空間が一致していなければならない。たとえば、64ビットのUEFIからは64ビットのOSしかブートできない。

ブートサービス
EFIはブートサービスを定義していて、これにはさまざまなデバイス上でテキストおよびグラフィカルなコンソールが利用できる機能や、バスやブロックデバイスファイルシステムの機能が含まれる。ブートサービスはExitBootServices()を呼び出すまでのファームウェアがプラットフォームを制御している状態でのみ利用可能である。また、OS動作中も利用できるランタイムサービスとしては、UEFI Graphics Output Protocol、UEFIメモリマップ、ACPI、SMBIOS、SMM、日付や時間サービス、NVRAMサービスなどがある。

ブートマネージャー
EFIブートマネージャーはまたOSを選択してロードするのにも使うことができる。これにより専用のブートローダ機構は必要がなくなる(OSのブートローダEFIアプリケーションになる)。この場合、ブートセクタを使用せずに済むが、最初にロードすべき標準で定められた名前のファイルを、特殊なパーティションテーブルから参照できるようにしておく必要がある(ファイル名の例:\EFI\BOOT\boot[architecture name].efi)。

OSのブートローダーはUEFIアプリケーションの一種となるので、ファームウェアからアクセス可能なファイルシステム上にファイルとして格納しておく。NVRAMに格納されたブート変数で、そのローダーのパスを示す。ブートローダーはファームウェアから自動検出することも可能で、たとえばリムーバブル・デバイスからのブートも可能となっている。

また、特定のハードウェアやオペレーティングシステムに依存しないように、UEFIアプリケーションのバイナリコードの記述には、マイクロソフトが開発した、ハードウェアやOSに依存しないバイナリフォーマットであるPortable Executable(PE)フォーマットを用いることが定められている。

デバイスドライバ
EFIの仕様では、標準的なアーキテクチャ依存のデバイスドライバに加えて、プロセッサに依存しないデバイスドライバ実行環境を提供しており、EFI Byte CodeまたはEBCと呼ばれている。システムのファームウェアは、その環境にロードされたもしくはその環境内にあるEBCイメージ用のインタプリタを実行できることを、UEFI仕様によって要求されている。その点、EBCはOpen Firmwareに似ている。これはハードウェアに依存しないファームウェアで、PowerPCベースのAppleMacintoshサン・マイクロシステムズSPARCコンピュータなどの間で採用された。

いくつかのアーキテクチャに特化した(非EBCな)EFIデバイスドライバはOSから利用可能なインタフェースを持つことができる。これにより、OSに特化したドライバをロードしなくても、基本的なグラフィックスやネットワーク機能についてはOSがEFIに頼ることができる。

セキュアブート
UEFIセキュアブートは、起動対象のオペレーティングシステム電子署名を検証して正当なソフトウェアであることが確認できた場合にのみブート処理を継続する[19] 。

WindowsマークのあるマシンではセキュアブートにMicrosoft電子署名が使われており、Windows 8以降はセキュアブート電子署名が付与されている。一方で、Windows 7以前のオペレーティングシステムやほとんどのLinuxディストリビューション電子署名が付与されていないため、セキュアブートが有効なUEFIブートローダーでは起動できない。

拡張機能
EFI拡張機能は、コンピュータに搭載されている不揮発性のストレージデバイスからロードされる。たとえば、マザーボード上のROMに格納されている標準EFIファームウェアに機能を追加するために、OEMがハードディスクにEFIパーティションを作って、そのシステムを販売することができる。

MBRとGPTのブートの違い

機能
MBRがマスターブートコード(ブートローダ:起動できるアクティブパーティションを探してプログラムをそこからロードして実行する機械語コードが入っている)で始まるのに対して、GPTはEFIが持つ拡張機能を使ってその処理を実現している。MBRのエントリがディスクの保護と互換性維持の目的で存在しているのに対して、GPTはパーティションテーブル・ヘッダーとしての役割を担っている。

従来のMBR (LBA 0)
GPTを使用するディスクにもMBRが存在するのは、MBRを前提としたディスクユーティリティを利用した場合の事故の防止のため(誤って何も中身がないと判断されないため)である。MBRにはそのディスク全体がひとつのパーティションになっているという情報が記述されることになっている。GPT自体がBIOSによるMBRパーティションの代替であるため、そのパーティション識別子はシステムIDとして 0xEE が設定され、GPTを使用していることを示すことになっているが、双方のパーティションテーブルに有効な値を定義し、それをハイブリッドMBRと呼称する向きもある。但し、これはGPTの「MBRパーティションに対する置き換え」という目的から標準化、明示的な定義がされていない実装であり、OSによって扱いが異なる。ハイブリッドMBRの構成では多くの場合GUIDパーティションの方が優先されるが、Windowsをベースとするシステムでは、GPTをサポートするものであっても有効なMBRが存在する場合は、そちらを優先して解釈する。また、本来EFIとセットの実装であるが、MBRからGPTを理解するローダへ処理を移すという手段により、比較的最近のLinuxではEFIが実装されていないシステムであっても、GPTからの起動や利用を可能としている[1]。

UEFIでのブートの流れ

主要キーワード

キーワード 説明
UEFIファームウェア そのもの。NVRAMに格納
UEFIブートマネージャ UEFIファームウェアのブート機能だろう
ブートエントリ UEFIブートマネージャが管理するデータ。
UEFIアプリケーション UEFIファームウェアを使ってHW操作したりするアプリケーション
OS のブートローダ GRUBとか。UEFIファームウェアを利用してOS起動するので、UEFIアプリケーションでもある

ブートの流れ

①POSTプロセス
UEFIファームウェアロード
UEFIブートマネージャがブートエントリに従いOSのブートローダをロード
④OSのブートローダが、OSを起動

UEFI環境の画面

UEFI BIOS
f:id:pikesaku:20210926122943p:plain
efibootmgrコマンド結果
f:id:pikesaku:20210926124343p:plain
parted -lコマンド結果
f:id:pikesaku:20210926125013p:plain
blkidコマンド結果
f:id:pikesaku:20210926125323p:plain

まとめ

・必ずBIOS経由でHW操作されてると思ってたが、そうでないみたい。
UEFI自体は仕様。OSとHWの間で、色々便利な機能/を提供するのがUEFI BIOS
UEFI経由で色々なHW操作をするのが、UEFIアプリケーション。
・OSのブートローダUEFIアプリケーションとして実装される。
UEFIブートマネージャはHDDの第一セクタ(MBR)からでなく、ブートエントリに従いOSのブートローダを起動する。
UEFI & GPTの組み合わせ処理でもMBRは互換性維持の為、必要。
UEFI & GPTだけでなく、BIOS & GPTもある。

CentOS8コマンド

タイムゾーン設定関連

設定確認

timedatectl

タイムゾーン一覧確認

timedatectl list-timezones

タイムゾーン設定

timedatectl set-timezone Asia/Tokyo

設定保持ファイル

ls -la /etc/localtime 
lrwxrwxrwx. 1 root root 32  9月 25 16:41 /etc/localtime -> ../usr/share/zoneinfo/Asia/Tokyo

時刻設定

  • HWClock(RTC)も同時変更される
  • 事前にchronyd停止が必要

時間のみ

timedatectl set-time "00:00:00"

日付も

timedatectl set-time "2021-01-01 00:00:00"

ロケール設定関連

設定確認

localectl

ロケール一覧確認

localectl list-locales

ロケール設定

localectl set-locale C.utf8

設定保持ファイル

cat /etc/locale.conf 
LANG=C.utf8

キーボード設定関連

キーマップ一覧確認

localectl list-keymaps

キーマップ設定

localectl set-keymap jp

設定保持ファイル

cat /etc/vconsole.conf 
KEYMAP="jp"
FONT="eurlatgr"

ネットワーク設定関連

nmcli

バイスとデバイス名、UUIDの確認

nmcli connection

バイスup, down
※up or down

nmcli connection up eno1

バイスの接続状態(up or down)

nmcli device

バイスの接続状態詳細

nmcli device show eno1

IPアドレス設定 & 自動起動有効化

nmcli c m eno1 ipv4.addr X.X.X.X/X ipv4.method manual autoconnect yes

DGW設定

nmcli c m eno1 ipv4.gateway X.X.X.X

IPアドレス設定削除

nmcli c m eno1 -ipv4.addr X.X.X.X/X ipv4.method auto autoconnect no

DNSサーバ設定

nmcli c m eno1 ipv4.dns "X.X.X.X X.X.X.X" ipv4.dns-search "XXX.XXX"

スタティックルート設定

nmcli c m eno1 ipv4.static "X.X.X.X/X X.X.X.X"

スタティックルート設定削除

nmcli c m eno1 -ipv4.static "X.X.X.X/X X.X.X.X"

IPv6無効化
第30章 NetworkManager で特定接続の IPv6 の無効化 Red Hat Enterprise Linux 8 | Red Hat Customer Portal

nmcli c m eno1 ipv6.method "disabled"

設定変更反映

nmcli c down eno1 && nmcli c up eno1 

設定ファイル(cfg)変更を反映させる場合
reloadでNetworkManagerに変更を通知し、その後再起動

nmcli c reload eno1
nmcli c down eno1 && nmcli c up eno1 

ホスト名変更
※実行後、即時反映

nmcli genera hostname XXX.XXX

iproute

net-toolsでなく、こっち使う!

自分が良く使うコマンドの代わりシリーズ
ifconfig(確認系)

ip a
ip -4 a
ip -4 -br a
ip -4 -br a show eno1
ip -4 -br link

※-brはbriefの略。簡易出力。

ifconfig(IP一時変更)

ip a del X.X.X.X/X dev eno1
ip a add X.X.X.X/X dev eno1

arp -an

ip n

※-nはneighborの略。簡易出力。

arp -d X.X.X.X

ip n flush X.X.X.X dev eno1

route -n

ip route

netstat -lpntu, -apntu

ss -4 -lpntu
ss -4 -apntu

同じだ!

systemctl

自動起動サービス一覧出力

systemctl list-unit-files --type service --state enabled

サービス起動状態確認

 systemctl list-units --type service

サービス自動起動無効化

systemctl disable import-state.service kdump.service NetworkManager-wait-online.service nis-domainname.service  selinux-autorelabel-mark.service sssd.service unbound-anchor.timer

firewall-cmd

アクティブゾーンの設定確認

firewall-cmd --get-active-zones  | grep -P -v '^\s+' | xargs -i firewall-cmd --list-all --zone={}

※--permanetオプション有無で、一時設定か恒久設定か確認ができる。

ゾーン作成

firewall-cmd  --permanent --new-zone-from-file=/usr/lib/firewalld/zones/public.xml --name=SERVICE

ゾーンNIC割当

firewall-cmd  --permanent --new-zone-from-file=/usr/lib/firewalld/zones/public.xml --name=SERVICE

target変更(ACCEPTへ)

firewall-cmd --permanent --zone=SERVICE --set-target=ACCEPT

デフォルト許可サービス無効化

firewall-cmd --permanent --zone=SERVICE --remove-service=ssh --remove-service=cockpit --remove-service=dhcpv6-client

設定反映

firewall-cmd --reload

dnf

今までのyumをdnfに置き換えれば大体使える感じ。

AppStream確認 ※postgresqlの場合

dnf module list postgresql

AppStreamバージョン指定でのインストール

dnf -y module install postgresql:12

CentOS8の勉強!!

久々にLinuxの勉強!

参考

これを読んだ!
色々探したけど、これがよさげ。

CentOS8 実践ガイド[システム管理編] - インプレスブックス

第1章 CentOSの概要

  • フロントエンドのスケールアウト型基盤でフリーOSが利用される。
  • ストレージ・基幹システム・DB等無停止が要求される部分は商用OS。
  • RHEL8とCentOS8のHWサポートマトリクス簡素化傾向あり。(差異小へ)
  • ファイルシステムext3,4・XFSをサポート。XFSがスタンダード。
  • XFSはジャーナリングのIOPSを減らし、高いIO性能を実現するファイルシステム
  • 分散型システムのOS領域のファイルシステムで利用される。
  • CentOSBIOS/UEFIに対応
  • BIOSUEFIの変更はOS再インスト必要
  • PXE(NWインストール)では起動イメージがBIOS/UEFIで異なる
  • CentOSの最大スペック情報は以下URLにあり。

 About/Product - CentOS Wiki

  • REHLの最大スペック情報は以下URLにあり。

 Red Hat Enterprise Linux technology capabilities and limits - Red Hat Customer Portal
 ※リリースノートも見た方が良い

  • EOLは以下2種類あり。
種類 説明 EOL
完全更新(Full Updates) 新機能追加・セキュリティパッチ 2024/2Q
メンテナンス更新(Mentenance Updates) 最低限のセキュリティパッチ 2029/5
  • CentOS8のバージョン番号にタイムスタンプがつく。(CentOS7も)

 例) CentOS8.0-1905 (2019年5月リリース)

  • CentoS7からの変更点 ※気になった部分だけ記載

 ①XFSコピーオンライトデータエクステンツによる高速コピーを実現
 ②BOOMブートマネージャによりLVMスナップショットから起動が可能
 ③DNF技術をベースにしたYUMv4を採用
 ④KDE廃止、GNOMEv3のデスクトップ環境
 ⑤ディスプレイサーバはWayland(X.Orgも利用可能)
 ⑥仮想マシンイメージ作成ツールComposer搭載
 ⑦ローカルストレージ管理ツールStratis搭載
 ⑧ストレージ暗号化フォーマットLUKSv1
 ⑨Cockpitで各種OS管理が可能 ※ログ、アカウント、サービス等々全般的に管理できるみたい
 ⑩IPVLANサポート ※同一Macアドレスで異なるIPを持つ仮想NIC
 ⑪crypt-policiesにより暗号化の設定を簡素化(OpenSSh、BIND、OpenSSL、NSSライブラリ等)
 ⑫パケットフィルタリングのnftablesと搭載

第2章 OSのインストールと起動

  • インストール時にBIOS/UEFIか決定重要。FCストレージ等でサポートされるモードが決まってる場合あり。
  • ISOイメージはdvd iso以外に、リポジトリサーバにアクセスしてインストールするboot isoもある。

 例)
 CentOS8-8.1.1911-x86_64-dvd.iso ※dvd iso
 CentOS8-8.1.1911-x86_64-boot.iso ※boot iso

  • どちらでもインストールされるパッケージは同じ。
  • インストーラ起動時のオプション説明 ※ブートエラー時の対処方法記載あり。
  • 起動オプション変更でNICのデバイス名の命名規則の変更が可能。enoX→ethX。
  • enoX(「一貫性のある命名規則」)が推奨。ethXだと複数NIC搭載時等にデバイス名ずれが起きる。
  • パーティションは以下3種類あり。

f:id:pikesaku:20210925095912p:plain

  • LVMシンプロビジョニングはCentOS7からの機能。特徴は以下。

 効率の良いスナップショット機能・複数世代の取得が可能。
 ※LVMでもスナップショット機能あったがディスク非効率であった。
 筆者はLVMシンプロビジョニングを推奨。
 bootはLVMシンプロビジョニングにできない為、標準パーティションにする必要あり。

第3章 OSの基本操作と設定

  • pinfoコマンド(manと別のマニュアル参照コマンド)

Grub2によるOSのブート管理

  • CentOS7と同じGRUB2だが、仕様変更あり。
  • HWがBIOS or UEFIかで設定ファイルが異なる

Intuneについて

参考URLごとのメモ

安井智志のコラム「EMS」って具体的に何ができるの?最新EMSが提供する機能と使い方のポイント | ディーアイエスサービス&ソリューションSI事例サイト

  • IntuneはEMSを実現する為に必要なサービス
  • EMSはEnterprise Mobility +Securityの略
  • クラウドアクセスのセキュリティ強化やエンドポイントのデバイス管理が主な機能

 ①クラウドアクセスセキュリティ
 ②モバイルデバイス管理
 ③モバイルアプリケーション管理
 ④ファイル暗号化
 ⑤オンプレミス振る舞い検知

  • クラウドサービスをこれまで以上に業務で活用して、「働き方を大きく見直していこう!」とする場合、まず必要になる前提は、「場所を問わず」 「マルチデバイスで」 「セキュアに」 「使い易く」 。この考え方がベース。

 

Microsoft Intuneとは?仕組みや機能、導入のメリットを紹介 | コラム | トピックス | パシフィックネットは法人のPCレンタル~運用保守~データ消去等で法人のIT戦略をトータルアシストします

  • Intuneは、ユーザーが使用するデバイスを安全に管理し、かつセキュリティ対策も行う為のMDM(モバイルデバイス管理)ツール。
  • サーバーに接続するデバイスの制御やアプリの管理、セキュリティ対策などを効率的に行うことが可能。
具体的にできる事は以下。

 Microsoft Intuneにデバイスを登録することで、どの従業員がどのデバイスを利用しているか管理できる。

  • 更新プログラムの管理

 更新が実行されているか管理できる。

  • 暗号化によるセキュリティ対策

 データのやりとりを暗号化

  • アプリケーション管理

 デバイスにインストールできるアプリや、使用できるアプリを制限することが可能

  • 利用するには、管理するデバイスにソフトウェアをインストールする必要あり。
Intuneのメリットは以下
  • さまざまなOSに対応
  • 個人用デバイスをセキュアに業務使用できる。

 プライベートのアプリと切り離して会社のネットワークに接続が可能
 リモートからデバイスを初期状態にしたり、業務データを消去したりできる。

  • サーバーの維持・管理コストが不要

 クラウドサービスのため、運用管理費などのコスト削減につながる

Enterprise Mobility + Security | ディーアイエスサービス&ソリューションSI事例サイト | Page 2

  • 場所は社内か社外か、どんなデバイスから、どんな認証方法で、どのアプリケーションを利用するか、等の条件付けが可能

f:id:pikesaku:20210915221236p:plain

f:id:pikesaku:20210915221416p:plain

  • 管理対象としたアプリとその他アプリ間でのデータの受け渡し (コピー/切り取り/貼り付け/保存などの操作)を制御

f:id:pikesaku:20210915221622p:plain

  • 従来のZIP暗号化ではないセキュアなデータ保護を実現

f:id:pikesaku:20210915221526p:plain

デバイス管理とモバイルアプリケーション管理を簡単に行えるIntuneってどんなサービス?詳しく解説!|Microsoft 365相談センター

  • Intuneはバイス管理(MDM)とモバイルアプリケーション管理(MAM)機能を含む
  • Microsoft 製品との親和性が大のため、以下が可能。

 AutoPilotでのWindows端末のセットアップ
 Officeアプリと他アプリ間のデータコピーを制限

  • 端末管理、端末制御、アプリケーション制御がIntuneのメイン機能

端末情報の取得と遠隔制御

  • 管理コンソール上から、管理端末のデバイス名やシリアル番号、インストールされているOS(オペレーティングシステム)のバージョン情報といったハードウェアインベントリ情報や、サードパーティのテナントID(Apple IDなど)などの情報を確認できる。
  • 端末紛失時には、遠隔で端末をリセットするリモートワイプ機能もある。
  • ワイプ処理は、端末のすべてのユーザーアカウント、データ、設定がリセット可能。OSも既定の状態、あるいは任意に設定した内容にリセット可能。

OSアップデートの制御

  • 端末OSアップデートのタイミングを細かく制御が可能

遠隔でアプリケーション配布

  • Microsoft ストアアプリやiOS ストアアプリなどのストアアプリの配信、Webアプリ(Webアプリへのショートカット)、exeファイルといったインストーラーファイルの配布が可能

アプリベースの条件付きアクセス

  • OutlookアプリのみがExchange Onlineにアクセスできるように設定できる
  • ユーザー毎に異なるアプリケーションを利用してる状況を、強制的に一つにまとめる事が可能。

Intune 上でのイベントの監査

  • 、「誰が・何を・どうしたのか」を監査ログから確認できる。

デバイス管理の新手法「モダンマネジメント」について(前編)|アイエスエフネット | 株式会社アイエスエフネット

モダンマネジメントとは?

  • Windows10のクライアント端末を遠隔で管理・運用する手法のこと

モダンマネジメントで実現できること

  • 社外PCの運用管理
  • PCキッティングの工数削減(ゼロタッチプロビジョニング)

Microsoft Intuneの仕組みと機能を解説!クラウド初心者にもわかりやすい、テレワークにおすすめな理由とは|アイエスエフネット | 株式会社アイエスエフネット

Intuneでのデバイス管理の仕組み

  • IntuneはAzure ADと統合されてる。
  • Intuneにデバイスを登録すると同時にAzure ADにもデバイス登録される。
  • バイス登録には2種類あり。
登録方法 説明 対象端末 Winサインイン
Azure AD登録 バイス登録のみ 個人用端末(BYOD=私用端末の業務利用) ローカルユーザー
Azure AD参加 バイス登録 & ドメイン参加 社給端末 AzureADユーザ

f:id:pikesaku:20210915225036p:plain

Intuneの代表的な機能

①デバイス管理

様々なOSを一覧管理できる。

登録デバイスに対し、リモートから以下操作が可能。

  • パスワードリセット
  • バイスのロック
  • ワイプ
  • BitLocker 回復キー発行 (Windows のみ)
  • 再起動(Windows のみ)
  • 紛失モード(iOSのみ)
  • カスタム通知の送信(Andoroid, iOS/iPadOSのみ)
  • バイス名やシリアル番号およびIMEI、所有者やOSバージョンなどの情報閲覧
②アプリケーション管理
  • Intuneにアプリケーションを追加することで、登録デバイスにアプリケーションを配信できる。
  • 正常にアプリケーションがインストールできたか確認できる。
  • アプリケーションをIntuneでデバイスに割り当てると、アプリケーションのインストールはデバイス上で自動的に行われる
  • Intuneに追加できるアプリケーションの種類は以下

 ストアアプリ(Microsoft, Android, Apple, Google Play など)
 基幹業務アプリ(.msi, .appxbundle, .msix, .msixbundle .appx, .apk, .ipa, .intunemac)
 WEBアプリ(WEB上にあるアプリケーションのリンク)
 iOS/iPadOS, Androidの組み込みアプリ
 Win32アプリ(「.exe」形式のアプリ。「.intunewin」形式に変換する必要あり。)

コンプライアンス ポリシー管理

f:id:pikesaku:20210915232849p:plain

  • コンプライアンスポリシーをIntune上でデバイスに割り当てると、自動的にポリシーが対象のデバイスに適用される。
  • 条件付きアクセス機能で、準拠していないデバイスに対し、リソース(メール、アプリ等)へのアクセス制限ができる。
  • Intuneのコンソール画面上で各デバイスがポリシー適用済みかどうかを確認できる。
④更新管理
  • Windows10に標準搭載されたWindows Update for Business(アップデートポリシー管理機能)と連携
  • 更新プログラムのインストール延期設定ができる。
  • WSUSの様にインストールする更新プログラムの選択やインストール禁止はできない。全適用が前提で、延期ができるのみ。*** ⑤AutopilotによるPCの初期セットアップ
  • Autopilotで初期セットアップ画面(Out-Of-Box Experience)のいくつかの設定を事前定義しユーザー操作を省略できる。
  • 以下操作の週略が可能。使用許諾契約書 (EULA

 プライバシーの設定
 ローカル管理ユーザの設定
 アカウント変更オプションの表示/非表示
 言語と地域の設定
 キーボードの構成
 PC名のテンプレート設定

  • 利用の流れ

f:id:pikesaku:20210915235029p:plain
★デバイスIDはベンダから提供される or PowerShellコマンドで取得が可能★

  • PC配布後のユーザ操作

 電源投入
 OOBE画面で設定
 サインイン画面で、AzureADユーザーでサインイン(要インターネット接続)
 初期セットアップ完了後、デバイスは自動的にAzure ADへの参加と、Intuneにデバイス登録される

opensslの暗号化強度チェック

メモ

SSLCipherSuiteのHIGHとかって何を意味するの?

man ciphersで確認 ※以下は抜粋

CIPHER STRINGS
       The following is a list of all permitted cipher strings and their meanings.

       DEFAULT
           the default cipher list. This is determined at compile time and, as of OpenSSL 1.0.0, is normally ALL:!aNULL:!eNULL. This must be the first
           cipher string specified.

       COMPLEMENTOFDEFAULT
           the ciphers included in ALL, but not enabled by default. Currently this is ADH and AECDH. Note that this rule does not cover eNULL, which is
           not included by ALL (use COMPLEMENTOFALL if necessary).

       ALL all cipher suites except the eNULL ciphers which must be explicitly enabled; as of OpenSSL, the ALL cipher suites are reasonably ordered by
           default

       COMPLEMENTOFALL
           the cipher suites not enabled by ALL, currently being eNULL.

       HIGH
           "high" encryption cipher suites. This currently means those with key lengths larger than 128 bits, and some cipher suites with 128-bit keys.

       MEDIUM
           "medium" encryption cipher suites, currently some of those using 128 bit encryption.

       LOW "low" encryption cipher suites, currently those using 64 or 56 bit encryption algorithms but excluding export cipher suites.

       EXP, EXPORT
           export encryption algorithms. Including 40 and 56 bits algorithms.

       EXPORT40
           40 bit export encryption algorithms

       EXPORT56
           56 bit export encryption algorithms. In OpenSSL 0.9.8c and later the set of 56 bit export ciphers is empty unless OpenSSL has been
           explicitly configured with support for experimental ciphers.

       eNULL, NULL
           the "NULL" ciphers that is those offering no encryption. Because these offer no encryption at all and are a security risk they are disabled
           unless explicitly included.

       aNULL
           the cipher suites offering no authentication. This is currently the anonymous DH algorithms and anonymous ECDH algorithms. These cipher
           suites are vulnerable to a "man in the middle" attack and so their use is normally discouraged.

以下コマンドでも確認可能

# openssl ciphers -v 'aNULL'
AECDH-AES256-SHA        SSLv3 Kx=ECDH     Au=None Enc=AES(256)  Mac=SHA1
ADH-AES256-GCM-SHA384   TLSv1.2 Kx=DH       Au=None Enc=AESGCM(256) Mac=AEAD
ADH-AES256-SHA256       TLSv1.2 Kx=DH       Au=None Enc=AES(256)  Mac=SHA256
ADH-AES256-SHA          SSLv3 Kx=DH       Au=None Enc=AES(256)  Mac=SHA1
ADH-CAMELLIA256-SHA     SSLv3 Kx=DH       Au=None Enc=Camellia(256) Mac=SHA1
AECDH-AES128-SHA        SSLv3 Kx=ECDH     Au=None Enc=AES(128)  Mac=SHA1
ADH-AES128-GCM-SHA256   TLSv1.2 Kx=DH       Au=None Enc=AESGCM(128) Mac=AEAD
ADH-AES128-SHA256       TLSv1.2 Kx=DH       Au=None Enc=AES(128)  Mac=SHA256
ADH-AES128-SHA          SSLv3 Kx=DH       Au=None Enc=AES(128)  Mac=SHA1
AECDH-DES-CBC3-SHA      SSLv3 Kx=ECDH     Au=None Enc=3DES(168) Mac=SHA1
ADH-SEED-SHA            SSLv3 Kx=DH       Au=None Enc=SEED(128) Mac=SHA1
ADH-CAMELLIA128-SHA     SSLv3 Kx=DH       Au=None Enc=Camellia(128) Mac=SHA1
ADH-DES-CBC3-SHA        SSLv3 Kx=DH       Au=None Enc=3DES(168) Mac=SHA1
AECDH-RC4-SHA           SSLv3 Kx=ECDH     Au=None Enc=RC4(128)  Mac=SHA1
ADH-RC4-MD5             SSLv3 Kx=DH       Au=None Enc=RC4(128)  Mac=MD5
ADH-DES-CBC-SHA         SSLv3 Kx=DH       Au=None Enc=DES(56)   Mac=SHA1
EXP-ADH-DES-CBC-SHA     SSLv3 Kx=DH(512)  Au=None Enc=DES(40)   Mac=SHA1 export
EXP-ADH-RC4-MD5         SSLv3 Kx=DH(512)  Au=None Enc=RC4(40)   Mac=MD5  export
AECDH-NULL-SHA          SSLv3 Kx=ECDH     Au=None Enc=None      Mac=SHA1

以下コマンドでも確認可能

#!/bin/bash

openssl ciphers -v 'ALL'| while read line
do
  C=$(echo $line | awk '{print $1}')
  V=$(echo $line | awk '{print $2}')
  echo "" | openssl s_client -connect 127.0.0.1:443 -tls1   -cipher $C 2>&1 | egrep "Secure Renegotiation|Protocol *:|Cipher *:" | tr "\n" "# "
  echo ""
  echo "" | openssl s_client -connect 127.0.0.1:443 -tls1_1 -cipher $C 2>&1 | egrep "Secure Renegotiation|Protocol *:|Cipher *:" | tr "\n" "# "
  echo ""
  echo "" | openssl s_client -connect 127.0.0.1:443 -tls1_2 -cipher $C 2>&1 | egrep "Secure Renegotiation|Protocol *:|Cipher *:" | tr "\n" "# "
  echo ""
done