忍者ブログ

インフラ構築手順書

はじめてのインフラ、サーバ構築時に役に立つように構築手順情報をまとめました。


HOME   »  AD連携

[PR]

広告 

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



CentOSのActiveDirectory連携(パスワード/認証統合)

広告 

CentOSのActiveDirectory連携(パスワード/認証統合)

Linuxサーバを複数管理する際に、アカウント管理業務が煩雑になってくる。 その場合、アカウント管理を統一を考えると思うが、LDAPの導入は敷居が高い。しかしActiveDirectoryであればGUIで簡単にインストール設定ができユーザ管理が容易です。そのActiveDirectoryとCentOSのパスワード/認証の連携方法を紹介します。
Linux(CentOS)とActiveDirectoryを統合方式には、パスワード統合と認証統合の2種類に大きく分けられる。
さらにパスワード統合と認証統合にも複数の方が存在ある。


CentOSのパスワード統合

パスワード統合方式は、各サーバ上にアカウントを作成する必要がありますが、パスワードはActiveDirectory側で管理するため各サーバ上でのパスワード管理 から解放される方式です。
非常に簡単にAD連携ができるが、各サーバ上に個別にユーザUIDを統一してアカウントを作成する必要があります。
しかし、ユーザを作成しなければ、そのサーバにログインできないため、各サーバごとにログイン可能なユーザを制御することができると言えます。

1.pam_krb5によるパスワード統合
2.SAMBによるパスワード統合



CentOSの認証統合方式

1.Windows側にSUAをインストールする方法
  ※SUAはWindowsServer2012から非推奨となる。

    ・SUA + NIS
    ・SUA + LDAP(UNIX属性)

     ※LDAP情報取得用のアカウントが必要となる
     ※SUAのUNIX属性でUID/GIDを定義することが可能。

2.Linux側に Samba + Winbindをインストールする方法

    ・ Samba + Winbind

      SIDを統一させるためマッピングする設定が必要
      LinuxサーバをDC参加させる必要があるので、WEBアプリケーションを稼働させるWEBサーバには避けたい方式です。


CentOSのAD連携の確認事項

 ・SID/GID
 ・Passwordの暗号化
  (LDAP情報取得用のアカウント、一般ユーザ)
 ・SSHアクセス可能ユーザ制限


   社内システムの場合は、「Samba+Winbind」の導入を検討する。WEBシステムの場合は、「pam_krb5によるパスワード統合」がおすすめです。

Apache基本認証のAD連携

KERBEROS認証もしくはLDAP認証を用いることで、WindowsのActiveDirectoryを利用したApache基本認証が行えます。

Apache基本認証とLDAP認証を用いたAD連携
利用モジュール mod_auth_ldap
メリット ActiveDirectoryのグループ単位で認証を掛けられるため、ActiveDirectory上での一元管理が可能となります。
AuthLDAPUrlオプション内で許可グループを指定する
デメリット LDAPの場合は簡易認証となるため、apache-ActiveDirectoryサーバ間のパスワードがクリアテキストで流れてしまいます。
LDAPに接続するためのユーザ(認証対象と別のものでよい)が必要になる。


ApacheとKERBEROS認証を用いたAD連携
利用モジュール mod_auth_kerb
メリット Apache-ADサーバ間はKERBEROS経由を利用するため、パスワードが暗号化されます。
デメリット KERBEROS認証の場合は、ActiveDirectory上の有効なユーザ全員が対象となり、ActiveDirectory上の特定OU内のユーザのみにすることは出来ないようです。
特定ユーザのみにする場合は「Require user」か、ユーザを列挙したファイルを用意して「Require group」を使用することになります。



[基礎から分かる Samba 4 構築&運用入門]の書籍横断比較とレビュー

基礎から分かる Samba 4 構築&運用入門
著者:竹内 英雄、亀井 裕、鈴木 慶太、小田切 耕司、武田 保真
出版日:2014-06-05
出版社:日経BP社

[Software Design (ソフトウェア デザイン) 2014年 06月号 ]の書籍横断比較とレビュー

Software Design (ソフトウェア デザイン) 2014年 06月号
著者:
出版日:2014-05-17
出版社:技術評論社



拍手[0回]



Apache基本認証のAD連携(LDAP認証)

広告 

Apache基本認証でAD認証連携させる

HTTP/HTTPSアクセスでアクセス制御する方法として、簡単にユーザ認証制御を行うことができる基本認証が使われることが多いです。
しかしWebDAV等で各ユーザにアカウント発行し、ログを取得したい場合、アカウント数が多くなり アカウント管理が難しくなります。
そこでActiveDirectory連携またはLDAP連携を行うことで、アカウントの統一管理ができ運用保守が容易になります。

Apacheの基本認証にActiveDirectory(AD)のユーザ認証と連携する方法は2つあります。
 ・Apacheの基本認証にLDAP認証を用いたAD連携
 ・ApacheのKERBEROS認証を用いたAD連携
ここでは、「LDAP認証を用いたAD連携」について説明します。


「Apache基本認証にLDAP認証を用いたAD連携」について
利用モジュール mod_auth_ldap
メリット ActiveDirectoryのグループ単位で認証を掛けられるため、ActiveDirectory上での一元管理が可能となります。
AuthLDAPUrlオプション内で許可グループを指定する
デメリット LDAPの場合は簡易認証となるため、apache-ActiveDirectoryサーバ間のパスワードがクリアテキストで流れてしまいます。
LDAP情報取得するためのユーザ(認証ユーザと別ユーザ)が必要になる。


ApacheとActiveDirectory(AD)の連携
今回設定するApacheの基本認証とActiveDirectory(AD)連携の動作仕様概要を説明する。

・Apache基本認証をAD連携する。
・ActiveDirectory(AD)に登録したユーザをApache基本認証のユーザとする。
・ADのグループ/ユーザに対して、アクセス制限をかける。
・ADのDCサーバを複数指定し、DCサーバの冗長化に対応する。



Apacheの基本認証とActiveDirectory(AD)連携手順の概要

事前作業(DCサーバ側作業)
Apacheモジュールの読み込み(Apacheサーバ側作業)
ApacheのAD連携設定(Apacheサーバ側作業)




事前作業(DCサーバ側作業)

ActiveDirectory構築
 ここでは、ActiveDirectoryが事前に構築済みであることを前提とします。

AD情報取得のユーザ作成
 LinuxサーバがADのLDAPディレクトリへアクセスする際に用いるユーザを作成します。
 ここでいうAD情報取得のユーザとは、基本認証用ユーザではありません。  またパスワードを設定ファイルに記述する必要があるため、権限は最小限(対話的ログオンは許可しない設定)で作成することをお勧めします。

OpenLDAPでは、認証を行うためのLDAPディレクトリにアクセスする際に匿名によるアクセスしますが、 AD認証ではKerberosやNTLMにより匿名によるアクセスが許可されているのはディレクトリのごく一部に限られているため、認証ユーザで情報を取得する必要があります。

今回は、「connuser」というアカウントを作る。

基本認証用のユーザ作成
 基本認証でアクセスを許可するユーザを作成する。基本認証専用のアカウントを作りたい場合は、専用のOUを作成したほうがいいでしょう。


Apacheモジュールの読み込み(Apacheサーバ側作業)

Apache設定ファイルにLDAP関連のモジュール読み込む設定を行う。
 # vi /etc/httpd/conf/httpd.conf
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so



ApacheのAD連携設定(Apacheサーバ側作業)

アクセス制限させたいディレクトリに対して、下記の内容をDirectoryディレクティブもしくは.htaccessに記述する。
ApacheのAD連携設定値
ADドメイン名 ad.hoge.com
DCサーバ1 dc-01.ad.hoge.com
DCサーバ2 dc-02.ad.hoge.com
AD情報取得のユーザ名 ad\connuser
AD情報取得のユーザのパスワード passwd_01
アクセス許可グループ webadv-gp
アクセス許可グループの所属OU clients (ad.hoge.com)

今回は、検証用に.htaccessに設定し、動作確認ができたから、Apacheの設定ファイルに記述する。
# vi .htaccess
AuthType Basic
AuthName "ActiveDirectory Auth"
AuthBasicProvider ldap
AuthLDAPURL "ldap://dc-01.ad.hoge.com:389 dc-02.ad.hoge.com:389/OU=clients,DC=ad,DC=hoge,DC=com?sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN "ad\connuser"
AuthLDAPBindPassword "passwd_01"
AuthzLDAPAuthoritative Off
Require ldap-group CN=webdav-gp,OU=clients,DC=ad,DC=hoge,DC=com

ApacheのAD連携の説明

AuthLDAPURLについて
 ・sAMAccountName
  Linux+OpenLDAPで運用されているLDAPサーバーの場合は,アカウント名を示す属性はuidなのですが,ADのLDAPディレクトリの場合 にはこの属性はありません。ADで同様な意味を持つ属性は,sAMAccountNameです。

  ・DCサーバの複数設定
  AuthLDAPURLオプションにDCサーバを複数指定する。

  ・パフォーマンス向上
  認証するユーザのOUまで指定することで、検索範囲が狭まり、サーバ負荷の軽減とパフォーマンス向上の期待ができます。

AuthzLDAPAuthoritativeについて
・「Require valid-user」の場合
  AuthzLDAPAuthoritativeはoffとする。
・「Require ldap-user」、「ldap-group」の場合
  AuthzLDAPAuthoritativeはonとする。
 ※デフォルトの設定は“on”である。

アクセス許可グループを指定する
ここではclientsのOUに所属している。かつRequire ldap-groupにグループ所属しているユーザを許可される。
AuthLDAPURLでclientsのOUを指定、Require ldap-groupで許可グループを指定しています。
※運用上のポイント  AD管理者が基本認証でアクセスするアカウントを作成し、WEB管理者がディレクトリごとに対してグループ/アカウント単位でアクセス制限をかけることができる。
 「KERBEROS認証を用いたAD連携」と違い、AD管理者が基本認証でアクセスできるアカウントとその他、OSログイン用のアカウントを分けることができる。

拍手[3回]



Yahoo!ブックマーク Googleブックマーク はてなブックマーク livedoorClip del.icio.us FC2 ニフティクリップ iza Buzzurl 


最新記事
(09/17)
(04/09)
(04/09)
(03/22)
(01/16)
(12/30)
(12/26)
(09/21)
(09/21)
(09/20)
(09/12)
(06/13)
(06/13)
(03/14)
(02/15)
(01/03)
(01/03)
(10/04)
(09/20)
(09/15)
(09/14)
(09/14)
(09/14)
(09/06)
(08/30)
最古記事
(10/29)
(10/29)
(10/29)
(10/29)
(10/29)
(04/12)
(04/12)
(06/12)
(06/12)
(06/20)
(06/22)
(07/22)
(07/22)
(07/30)
(07/30)
(08/18)
(08/18)
(08/22)
(08/24)
(08/24)
(08/24)
(08/24)
(08/24)
(08/24)
(08/24)


PR

Copyright © インフラ構築手順書 : All rights reserved

TemplateDesign by KARMA7

忍者ブログ [PR]

管理人限定

検索フォーム

カスタム検索

フリーエリア

ESXiの基本設定・運用設定
ESXiのSSH設定
ESXiの NTP設定
VMware ESXiでの時刻同期(NTP)ペストプラクティス
ESXiのゲストOS(仮想マシン)複製
ESXiのOVF形式で複製
異なるESXiバージョン間の複製(移行)
クローン作成後の後処理
仮想マシンのLVM追加
仮想共有ディスクファイルの作成
ESXi上でハイパーバイザーを稼動させる
パフォーマンスがでないとき確認すること


サーバ構築手順
ESXi上でRACを構築する
GFS2+DRBD構築
PaceMaker+MySQLレプリケーション構築
PaceMaker+DRBD構築
HeartBeat2+DRBD構築


Solarisの構築手順
Solarisのネットワーク設定変更
Solarisのホスト名変更
Solaris11のresolv.conf変更手順
Solaris11のHDD増設手順


AWS(Amazon Web Service)の基本設定・運用設定
S3 WEBサイトの構築
S3 WEBサイトのアクセス制限
S3 WEBサイトのリダイレクト設定


Windows Azureの基本設定・運用設定
AzureでWordpress構築
英語版Wordpressを日本語化する
AzureWebサイトの独自ドメイン設定
AzureWebサイトのモード変更
WEBアクセスログ解析ツールの比較


WordPressの基本設定・運用設定
WordPressの基本構造
WordPressのインストール手順
Wordpressマルチサイト機能
「続き読む(more)」カスタマイズ
Wordpressの独自PHP
Wordpressをサブディレクトリに移す
既存サブディレクトリをルートディレクトリとする
Wordpressが利用可能な共用ホスティング


Postfix構築
Postfixにおける暗号化したSMTP認証設定


SoftEtherVPNの構築
ESXi上のSoftEtherVPN構築
DDNSと組み合わせたSoftEtherVPNの設定


LinuxのAD連携
LinuxのActiveDirectory連携について
PAM認証でAD連携
ApacheでAD連携(LDAP認証)
ApacheでAD連携(Kerberos認証)
SAMBAで2台目DCサーバを構築
RedmineとGitのLDAP(AD)認証設定
JenkinsのLDAP(ActiveDirectory)認証設定


Redmine設定
Alminium(RedmineとGit/SVN)のインストール手順
RedmineとGitのLDAP(AD)認証設定
RedmineとGitの移行
JenkinsのLDAP(ActiveDirectory)認証設定


サーバの基本設定・運用設定
Apache
Apacheの基本設定
Apacheの仮想ホスト設定
PHPの基本設定
Nginxのロードバランサ設定
WebDAV構築手順
アンチウィルス
無償アンチウィルス(ClamAV)の導入手順
システム監視
システム監視ソフトMuninの導入手順
システム監視ソフトZabbixの導入手順
sarによるリソース使用情報取得


サーバ移行
Mysqlマイグレーション
MySQLマイグレーション時の問題点と解決策
Windows
Windows OS評価版からの移行
SQL Server評価版からの移行
クラスタソフト
クラスタソフトの比較

ツリーカテゴリ

広告ーSEO





人気ブログランキングへ
にほんブログ村 IT技術ブログ Webサイト構築へ

ブログ王ランキングに参加中!


最新トラックバック

バーコード

アフィリエイト2