ネットワークスペシャリスト - SE娘の剣 -

左門至峰によるネットワークスペシャリストの試験対策サイトです。勉強方法、合格体験談、合格のコツ、過去問解説、基礎知識などの紹介します。

Microsoft社のAzure

■MSのAzure
・世界に54のリージョンを持つPaaSとIaaSのクラウドサービス。ちなみに、Azureではないが、MSはOffice365などのSaaSサービスも提供している。
 https://azure.microsoft.com/ja-jp/
・日本にも2か所(Japan East、Japan West)のデータセンターでがある(リージョン)。
・パブリックなクラウドサービスであり、プライベートクラウドは構築できないと考えていいだろう→プライベートでやりたいのであれば、AzureStackを使おう(結構大変だけどね)
・管理画面はこんな感じ
 https://azure.microsoft.com/ja-jp/features/azure-portal/
AWSを使ったことがある人なら、イメージがわくと思うが、管理画面がしっかりできていて、簡単にサーバを建てることができる。
物理サーバ(特に古いハード)の場合は、OSとデバイスなどの相性などのトラブルで、時間がかかったりもしたが、ボタン一つで、設定パラメータを入れたら数分でサーバを起動できる。
・最大のライバルはAmazonのAWS。AWSも、PaaSやIaaSを提供している。
・2018のIaaSのシェア(クラウド全体ではない)としては、AWSが47.8%で首位で、MSが15.5、Alibaba、Google、IBMと続いている。
 https://japan.zdnet.com/article/35140599/

■AzureStack
・AzureStackはオンプレミスに設置するAzure。(クラウド上に設置できない機密性の高いデータを運用するのは便利)
 https://azure.microsoft.com/ja-jp/overview/azure-stack/https://azure.microsoft.com/ja-jp/overview/azure-stack/
・保守やライセンス管理も利用者側で実施する。
・ポータル画面はAzureと基本的に共通
 https://news.mynavi.jp/itsearch/article/cloud/1338
・ただ、Azureと全く同じ機能が使えるわけではない(使える方が圧倒的に少ない。)。Azureは大規模な仕組み・環境で最適化して作成されているが、その技術を小規模なAzureStack上で適用するには時間がかかるようだ。
→たとえば、Office365やAIなどのエンジンなどは、大規模なクラウドサービスで作り上げてられていて、それをAzureStackで提供することは厳しい。
・Azureの場合、OSは自由に選べるが、AzureStackの場合、OSはすべてAzureStack用に入れ込む必要がある。PayAsUse(使った分だけ払うというライセンスもある)が、ライセンスも個別に購入する必要がある。
・AzureはMSの専門スタッフが運用・保守、サービス提供をするが、AzureStackの場合は、自分でやる必要がある。たとえば、提供する仮想マシンの容量の制限(クオータ)など。
・物理的には、サーバとスイッチでできている(と、物理ではないが、ソフトウェア)。
・Azureのバックアップ機能(AzureBackup、Azure ディザスタリカバリー)は、AzureStackでは存在しないので、サードバーティ製のソフト(Acronisなど)でIaaSの仮想マシンを個別に取る必要がある。

■【参考】Azure Stack HCI
・AzureやAzure Stackとは無関係と思ったほうがいいと思う。まあ、Azureとの連携機能などがあるが。
・まず、HCI(ハイパーコンバージドインフラ)とは、Nutanixに代表されるような、サーバ、ストレージ、ネットワークを統合したインフラというかサーバ(というかシステム)
外付けのストレージを持たず、サーバの中に持ち、ソフトウェアで処理をする。
 ‐ Nutanixとは
   https://www.nutanix.jp/what-we-do/
 ‐ ハイパーコンバージドインフラの説明(@IT)
   https://www.atmarkit.co.jp/ait/articles/1701/18/news133.html
・AzureStackHCIは、MS社のHCIの筐体と思ったほうがいいだろう。
 https://japan.zdnet.com/extra/dellemc_azurestackhci_201906/35138791/

■AzureAD
(1)AzureADとは
・Office365などを使うときにはAzureADが無料でついてくる。Office365では、AzureADが必須。
・セキュリティなどのプラスの機能を使う場合には、有料のBASICやPREMIUMなどがある。
・AzureADは、クラウド上でADを構築できるので、Office365などのクラウドのアカウント管理ができる。
 ※ 管理というのは、ユーザ名とパスワードの管理、アクセス権など。
・Azureとついているが、Azureとはあまり関係がない。契約としても、Azureを契約しなくても、Office365を契約すれば、ついてくる。

(2)企業内にあるADと連携したい。
・企業内にローカルのADがあって、ドメイン参加などをしている場合が多い。
 情報を連携しないと、ローカルのADとクラウドのADで2重管理になってしまう。
 では、どうするか
 ①Azure AD Connect
  ・ローカルのADとAzureADとで連携(アカウントの同期)をするには、Azure AD Connectを使う。ただ、情報を同期(レプリケーション)するので、アカウントなどの情報を2重で持つことになる。
 ②AzureFS
  AzureFSは、同期ではなく、フェデレーションなので、認証を連携する。SSOのような仕組みと考えればいいだろう。
  このとき、プロトコルはADで使うKerberosではなく、SAMLを使う。
  物理構成であるが、SSOにするには、社内のローカルにあるADサーバに外部からのリーチャビリティが必要になる。
  その連携を担うのが、ADFS。ADFSはProxyとして、外部からのリーチャビリティを持ち、内部のADサーバに連携する。
  こうすれば、IDなどのアカウント情報はローカルにしかない。

(3)今後はどっちのADを使う?
・MSのクラウドサービスと、ローカルのADを両方使っている企業は、両方が必要だろう。
・全部をAzureADに置き換えていけばいいのでは?と思うかもしれないが、グループポリシーとかドメイン参加などの機能を
使っているのであれば、ローカルのADは必須
・今後、ローカルのAD機能などを使わず、ファイルサーバなどもクラウドに移行したり、アクセス権などもクラウドでの管理にするのであれば、ローカルのADが
不要になるかもしれない。→そう簡単にはならないと思いますが・・・

2.AzureADの設定

Azure AD 
(1)概要
Active Directoryをクラウドでサービス提供する仕組み
他のクラウドサービスの認証を一元的に実施するのに便利(ローカルのADでは難しい)
→つまり、SSO

(2)従来のADとの違い
グループポリシーなどの強固なセキュリティは従来のActive Directory →変わりにIntuneなどを使う
ADはKerberosやNTLMv2などが認証プロトコル(なはず)で、AzureADでは、オープンなSAMLを使うことが多いだろう。

https://cloud.nissho-ele.co.jp/vdiblog/arrange_activedirectory_and_azureactivedirectory/

(3)二要素認証


(3)Intuneによるデバイス管理

以下はPCのBitlockerの設定の管理
https://docs.microsoft.com/ja-jp/mem/intune/protect/encrypt-devices

(4)SAMLによる認証連携

(7)オンプレADとの連携
Azure AD Connect

https://www.rworks.jp/cloud/azure/azure-column/azure-entry/22797/


2.AzureADの構築
(1)初期
①マイクロソフトアカウントの作成
私の場合すでに持っていて、k-@oran--のアカウントを使う
②ログイン
https://portal.azure.com/
ここから、さきのアカウントでログイン
・Azure Active Directory の管理 の「表示」
→ポータル画面に

(2)テナントの作成
・上の方にある「テナントの管理」から「+作成」
テナントの種類として「Azure Active Directory」(デフォルト)にチェックして「次へ」
組織名:sectecad
ドメイン名:sectecad
国:日本
・そして、「作成」をクリック
・ロボットでないことの確認でCaptureを入れたら、テナントの作成が始まる。
・テナント作成が完了。プライマリドメインとしては、sectecad.onmicrosoft.comになっていた。

(3)テナントの管理
抜けてしまったりした場合は、「スイッチ」で該当のドメインに変更する。


(4)ユーザの追加
・ユーザID、名前くらいを入れればいい。PWも自動で作ってくれる。今回はuser1を作った。PWは自分で設定するとうまくいかなかったので、何かルールがあるのかもしれない。
ユーザ名はドメインなどが付与されるので、user1@sectecad.onmicrosoft.com になる。
・「作成」
・作成したら、ポータルにログインできる。実際の運用ではログインすることはないだろうが、PWの再設定ができる


(5)多要素認証Microsoft Authenticator
ユーザ> ユーザごとのMFA から設定できる。 デフォルトでは多要素認証はOFFになっているはずだ。
https://docs.microsoft.com/ja-jp/microsoft-365/admin/security-and-compliance/set-up-multi-factor-authentication?view=o365-worldwide

 

3.Mircosoft365開発者プログラム
連携先として、Teamsなどの連携をテストするには、これがいいだろう。90日ごとに更新するが、実質無制限
1テナントには25ユーザまで作れる。管理者は1人

https://developer.microsoft.com/ja-jp/microsoft-365/dev-program


4.FortiGateのログインをAzureADで行う
これ、実践的かもしれない。果たして、費用はいくらかかるのか。
https://tarenagashi.hatenablog.jp/entry/2020/11/29/042835
https://hirotanoblog.com/fortigate-ssl-vpn-saml/6635/


5.外部サービスとの連携 (1)単純な連携
Linuxサーバのログイン SSHなど

(1)Azure側の設定
①ユーザを作成する

②Azure側で「アプリの登録」
アプリの登録>上部の「+新規登録」
名前を適当につける Linux_relation

リダイレクトURL ネイティブを選ぶ

それ以外はデフォルトで何も設定せずに、作成した。

ここで、アプリケーション (クライアント) ID が自動で作成される。あとでLinuxで使う。e6160050-96f5****

以下に記載があるので、基本的にはその通りに実施するが、AWSは環境が違うのでチューニング
https://www.cloudou.net/azure-active-directory/aad009/
https://blog.intracker.net/archives/1270

以下を見るとマニフェストの修正もいるとあった。→だが、まだうまくいっていない。
https://qiita.com/mayuco_maid/items/e64f54e93227539faa33

amazon-linux-extras install epel 
yum install -y epel-release
yum install -y npm nodejs git

#SSHによるパスワードログインの許可
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
ls -la /etc/ssh/sshd_config*
sed -i '/^#PasswordAuthentication yes/ s/#//' /etc/ssh/sshd_config
sed -i '/^PasswordAuthentication no/ s/PasswordAuthentication no/#PasswordAuthentication no/' /etc/ssh/sshd_config
systemctl restart sshd

git clone https://github.com/bureado/aad-login
cd aad-login/
mkdir -p /opt/aad-login
cp aad-login.js package.json /opt/aad-login/
cp aad-login /usr/local/bin/
cd /opt/aad-login/
npm install

# 設定ファイルにディレクトリとアプリケーション (クライアント) IDを入れる
vi aad-login.js

var directory = ‘xx.onmicrosoft.com‘;
var clientid = ‘2a029c0c-0ff0-4147-xxx‘;

# sshdの設定ファイルに1行追記
vi /etc/pam.d/sshd
※または、/etc/pam.d/common-auth
https://channel9.msdn.com/Series/AzureOpenness/Using-Azure-AD-for-Linux-logins

#追記する1行
auth sufficient pam_exec.so expose_authtok /usr/local/bin/aad-login 

#AzureADのユーザを追加 パスワードは不要
useradd user1

うーん、うまくいかない。以下の動画で実演しているので、これでやるか
https://channel9.msdn.com/Series/AzureOpenness/Using-Azure-AD-for-Linux-logins


(5)管理者を追加できる?