WindowsActive DirectoryによるLDAP認証
WindowsActive Directoryを使用して、LDAP認証にSSLまたはTLSを設定する方法について説明します。
Netezza Performance Server 11.1.0.1以下の場合
- WindowsActive Directoryユーザーをデータベースに追加する。
パスワード・ポリシーに従ってパスワードを定義します。create user <user> password <password>
例:nzsql -c "create user ad_user1 password 'password';"
- 認証タイプを設定します。
SET AUTHENTICATION LDAP
- SSLをオフにして、認証をADに設定する
- コマンドを実行します。
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'OFF' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com'; "
ここで、cn は共通名を表し、dc はドメイン・コンポーネントを表します。
root
ユーザーとして、ホスト上の「/etc/sssd/sssd.confファイルを更新する。太字の行がまだ設定されていない場合は、手動で変更する必要があるかもしれない。=============================/etc/sssd/sssd.conf============================= [domain/external_ldap] ldap_tls_reqcert = never ldap_id_use_start_tls = False ldap_schema = AD ignore_group_members = True auth_provider = ldap id_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False ldap_id_mapping = True override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True ldap_user_search_base = dc=nzdevelopment,dc=com entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 entry_cache_timeout = 600 ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com ldap_uri = ldap://<AD_SERVER>:389 #debug_level = 10 case_sensitive = False ldap_group_name = CN ldap_user_name = sAMAccountName ldap_default_authtok_type = obfuscated_password ldap_default_authtok = AAAQANEC2d5xigH0d4w9phf5F9zD4PvXWvxwz61LYsoQq5BM/M7WslokdqbS6CnOyTzGp4XmzCC7owRfYq8sALPYypoAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp]
root
ユーザーとしてsssd
サービスを再始動します。If you have many groups and or users on the AD server, you can improve the login performance by adding
ldap_group_member = uniqueMember
to thesssd.conf
file.1./etc/sssd/sssd.confの'[domain/external_ldap]
セクションに'ldap_group_member = uniqueMember
追加する。ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember
2.sssd
サービスを再起動する:systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd
3.認証を確認する。
- コマンドを実行します。
- SSLをオンにして、認証をADに設定する証明書は、信頼できる CA によって AD サーバーに発行される必要があります。 CA 証明書ファイルを取得し、Netezza Performance Serverシステム上の場所に保存します。 Netezza Performance Serverの高可用性(HA)システムの場合は、共有ドライブ上の場所、たとえば「/nz下の新しいディレクトリにファイルを保存します。 Netezza Performance Serverシステムノードの両方が、同じパス名を使用して証明書ファイルにアクセスできる必要があります。
- SSLをオンにしたAD認証を設定します。
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'ON' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com'; "
root
ユーザーとして、Netezza Performance Server・ホスト上の「/etc/sssd/sssd.confファイルを手動で更新します。AD サーバーには、SSL または TSL を介して接続できます。 太字の行がまだ設定されていない場合は、手動で変更する必要があるかもしれない。
- SSLでADサーバーに接続するには、以下の項目を更新する。
===========================/etc/sssd/sssd.conf============================= [domain/external_ldap] ldap_tls_reqcert = demand ldap_id_use_start_tls = False ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_schema = AD ignore_group_members = True auth_provider = ldap id_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False ldap_id_mapping = True override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True ldap_user_search_base = dc=nzdevelopment,dc=com entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 entry_cache_timeout = 600 ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com ldap_uri = ldaps://<AD_SERVER>:636 #debug_level = 10 case_sensitive = False ldap_group_name = CN ldap_user_name = sAMAccountName ldap_default_authtok_type = obfuscated_password ldap_default_authtok = AAAQAEPSvINy7WB7Y5ULLHAgp9PNt9Ivdd5KZlp7DDzN7a+5wpRrq8dBoA4RonugOBXhxMA44TglOom7u4cqMBpFeoAAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
- TLS経由でADサーバーに接続するには、以下のテンプレートを使用する。
===========================/etc/sssd/sssd.conf============================= [domain/external_ldap] ldap_tls_reqcert = demand ldap_id_use_start_tls = True ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_schema = AD ignore_group_members = True auth_provider = ldap id_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False ldap_id_mapping = True override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True ldap_user_search_base = dc=nzdevelopment,dc=com entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 entry_cache_timeout = 600 ldap_default_bind_dn = cn=ad_user1,cn=Users,dc=nzdevelopment,dc=com ldap_uri = ldap://<AD_SERVER>:389 #debug_level = 10 case_sensitive = False ldap_group_name = CN ldap_user_name = sAMAccountName ldap_default_authtok_type = obfuscated_password ldap_default_authtok = AAAQAEPSvINy7WB7Y5ULLHAgp9PNt9Ivdd5KZlp7DDzN7a+5wpRrq8dBoA4RonugOBXhxMA44TglOom7u4cqMBpFeoAAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
注:1. sssd.conf ldap_tls_cacert属性には、CA証明書のファイル名と正しいディレクトリの場所を記述する。2.SET AUTHENTICATIONコマンドに記載されているActive Directoryサーバーは、LDAPサーバー証明書ファイルのホスト名と一致していなければならない。
- SSLでADサーバーに接続するには、以下の項目を更新する。
root
ユーザーとしてsssd
サービスを再始動します。systemctl restart sssd
If you have many groups and or users on the AD server, you can improve the login performance by adding
ldap_group_member = uniqueMember
to thesssd.conf
file.1./etc/sssd/sssd.confの'[domain/external_ldap]
セクションに'ldap_group_member = uniqueMember
追加する。ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember
2.sssd
サービスを再起動する。systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd
3.認証を確認する。
- SSLをオンにしたAD認証を設定します。
- SSLをオフにして、認証をADに設定する
Netezza Performance Server 11.1.0.2以降の場合
- WindowsActive Directoryユーザーをデータベースに追加する。
パスワード・ポリシーに従ってパスワードを定義します。create user <user> password <password>
例:nzsql -c "create user ad_user1 password 'password';"
- 認証タイプを設定します。
- SSL/TLSをオフにして、認証をADに設定する
- コマンドを実行します。
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'OFF' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName';"
- これで「
sssd.conf
ファイルは次のようになる。[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldap://AD_SERVER:389 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = never #ldap_id_use_start_tls = #ldap_tls_cacert = ldap_default_authtok = AAAQAA5gKJVg+dHVdi2LU9uTepJAJRYtMh1mlO8vp4ysVuFjw5OrxTeY4MteantA1+FLTm2+XGmtdokCsiZAfGExIlsAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
If you have many groups and or users on the AD server, you can improve the login performance by adding
ldap_group_member = uniqueMember
to thesssd.conf
file.1./etc/sssd/sssd.confの'[domain/external_ldap]
セクションに'ldap_group_member = uniqueMember
追加する。ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember
2.sssd
サービスを再起動する。systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd
3.認証を確認する。
- コマンドを実行します。
- SSLをオンにして、認証をADに設定する証明書は、信頼できる CA によって AD サーバーに発行される必要があります。 CA 証明書ファイルを取得し、Netezza Performance Serverシステム上の場所に保存します。 Netezza Performance Serverの高可用性(HA)システムの場合は、共有ドライブ上の場所、たとえば「/nz下の新しいディレクトリにファイルを保存します。 Netezza Performance Serverシステムノードの両方が、同じパス名を使用して証明書ファイルにアクセスできる必要があります。
- SSLをオンにしたAD認証を設定します。
CACERT は、CA 証明書ファイルのパスです。nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'ON' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName' CACERT '/nz/caCert/ca_cert.pem';"
- これで「
sssd.conf
ファイルは次のようになる。[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldaps://AD_SERVER:636 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = demand ldap_id_use_start_tls = False ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_default_authtok = AAAQAAIxX3meMywHbwCnnFQRhRJAHpAICVBjoXmg6OhLr9ASy0RijAO4WdYwAioHf5Fmy6yQc0g8/CXOrx7VQ1BbrfYAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
If you have many groups and or users on the AD server, you can improve the login performance by adding
ldap_group_member = uniqueMember
to thesssd.conf
file.1./etc/sssd/sssd.confの'[domain/external_ldap]
セクションに'ldap_group_member = uniqueMember
追加する。ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember
2.sssd
サービスを再起動する。systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd
3.認証を確認する。
- SSLをオンにしたAD認証を設定します。
- 認証をADに設定し、TLSをONにする
TLS を使用して、LDAP/AD サーバーへのセキュア接続を確立できます。 これを行うには、CA 証明書ファイルで TLS フラグを有効にします。
- TLSをオンにしたAD認証を設定する。
nzsql -c " SET AUTHENTICATION LDAP BASE 'dc=nzdevelopment,dc=com' NAMECASE lowercase SERVER 'AD_SERVER' SSL 'OFF' TLS 'ON' BINDPW Netezzapwd BINDDN 'cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com' ATTRNAME 'sAMAccountName' CACERT '/nz/caCert/ca_cert.pem';"
注:TLSとSSLの両方を「ON
」に設定することはできない。 - これで「
sssd.conf
ファイルは次のようになる。[domain/external_ldap] ###The below common parameters and values should not be changed ldap_default_authtok_type = obfuscated_password ldap_schema = AD ldap_group_name = CN ldap_user_name = sAMAccountName ignore_group_members = True auth_provider = ldap ldap_rfc2307_fallback_to_local_users = True ldap_referrals = False override_homedir = /home/%u ldap_network_timeout = 3 ldap_opt_timeout = 60 cache_credentials = True entry_cache_group_timeout = 0 entry_cache_user_timeout = 0 ldap_search_timeout = 30 id_provider = ldap entry_cache_timeout = 600 case_sensitive = False ldap_id_mapping = True #ldap_group_attribute = #debug_level = 10 ###Supplied from Input ldap_uri = ldap://AD_SERVER:389 ldap_user_search_base = dc=nzdevelopment,dc=com ldap_default_bind_dn = cn=ad_admin_user1,cn=Users,dc=nzdevelopment,dc=com ldap_tls_reqcert = demand ldap_id_use_start_tls = True ldap_tls_cacert = /nz/caCert/ca_cert.pem ldap_default_authtok = AAAQAAIxX3meMywHbwCnnFQRhRJAHpAICVBjoXmg6OhLr9ASy0RijAO4WdYwAioHf5Fmy6yQc0g8/CXOrx7VQ1BbrfYAAQID [sssd] services = nss, ifp, sudo, ssh, pam domains = external_ldap [nss] memcache_timeout = 600 homedir_substring = /home [pam] #debug_level = 10 [sudo] [autofs] [ssh] [pac] [ifp] [secrets]
注:「SET AUTHENTICATIONコマンドで言及されたActive Directoryサーバーは、LDAPサーバー証明書ファイルのホスト名と一致していなければならない。
If you have many groups and or users on the AD server, you can improve the login performance by adding
ldap_group_member = uniqueMember
to thesssd.conf
file.1./etc/sssd/sssd.confの'[domain/external_ldap]
セクションに'ldap_group_member = uniqueMember
追加する。ignore_group_members = True (add only if not present since this variable was already exist) ldap_group_member = uniqueMember
2.sssd
サービスを再起動する。systemctl stop sssd ; rm -f /var/lib/sss/db/* ; systemctl start sssd
3.認証を確認する。
- TLSをオンにしたAD認証を設定する。
- SSL/TLSをオフにして、認証をADに設定する