Realmd + sssdを使用してUbuntu 16.04をWindowsドメイン(Active Directory)に参加しようとしています。基本的にフォロー中です。この投稿これは素晴らしい作品です。私のサーバーに参加し、ADユーザーとして正常に認証できます。しかし、統合には2つの部分がありません。
- DNSにサーバーのホスト名を登録します。
- 使用SSD-sudoユーザー認証のため
DNSにサーバーのホスト名を登録します。
前述のように、次のコマンドを使用してADに正常に参加しました
realm join --user=dpr MYDOMAIN.INT --install=/
。
root@ip-172-28-5-174 ~ # realm list
mydomain.int
type: kerberos
realm-name: MYDOMAIN.INT
domain-name: mydomain.int
configured: kerberos-member
server-software: active-directory
client-software: sssd
required-package: sssd-tools
required-package: sssd
required-package: libnss-sss
required-package: libpam-sss
required-package: adcli
required-package: samba-common-bin
login-formats: %[email protected]
login-policy: allow-realm-logins
しかし、正常に参加したにもかかわらず、私のサーバーは、そのホスト名を使用しているドメインの他のコンピュータには知られていませんip-172-28-5-174.mydomain.int
。私が見つけたこの文書dyndns_update
sssd.confファイルの設定について言及します。
エリアを使っているからです。 sssd 設定は Join コマンドを実行して自動的に生成されます。生成された構成ファイルは次のとおりです。
[sssd]
domains = mydomain.int
config_file_version = 2
services = nss, pam
[domain/mydomain.int]
ad_domain = mydomain.int
krb5_realm = MYDOMAIN.INT
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
access_provider = ad
dyndns_update = True
つまり、生成されたファイルに何とか追加する必要があります。しかし、どのように?
ユーザー認証に sssd-sudo を使用する
また、sssdはADから私のsudo設定を読みたいと思います。私はこれを以下を使用して達成できると思います。SSD-sudoただし、このサービスもsudo
sssdサービスに追加し、それを自分のドメインに使用してsudo_provider = ldap
sssd.confファイルで有効化/構成する必要があります。今回もゾーンを使用してこれを行う方法がわかりません。
デフォルトでは、生成された構成ファイルは次のようになります。
[sssd]
domains = mydomain.int
config_file_version = 2
services = nss, pam, sudo
[domain/mydomain.int]
id_provider = ad
access_provider = ad
sudo_provider = ldap
ad_domain = mydomain.int
krb5_realm = MYDOMAIN.INT
realmd_tags = manages-system joined-with-adcli
cache_credentials = True
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
これを達成する方法についてのアイデアはありますか?
答え1
Active Directoryで管理するには、sudoers
特別なスキーマをADにロードしてから、ADSIの編集などのツールを使用してルールを作成する必要があります。 この練習Ubuntu 14.04で動作します。主な内容は次のとおりです。
- 輸入
schema.ActiveDirectory
- 次のようにルールを作成します。sudoers-ldap マンページ
- この行のエントリ
etc/nsswitch.conf
に含まれるように更新してください。sss
sudoers =
- アップデートには以下が
etc/sssd/sssd.conf
含まれます。sudo
services =
この行の項目に- 空
[sudo]
のセクション(構成は必要ありませんが、赤い帽子これがsudoサポートの正しい設定をトリガしていることを確認してください) - 次の行
sudo_provider = ad
(sssd文書にあります)pagure.orgsudo プロバイダは、ldap、ad、および ipa に対してデフォルトで有効になっているため、これはオプションである可能性があることを示します。
16.04(つまり、14.04と同じADルール)でこのプロセスを繰り返すと、実際に別の問題が発生しました。明らかにこれ珍しいことではありません。一つあるかもしれません抜け穴16.04に含まれるsudoバージョン。
- 原則として手動でアップグレードしてください。最新この問題は解決する必要があります。
- SSSDにLDAP接続を管理させる場合は、通常の
sudo
パッケージ(代わりにsudo-ldap
)が正しいパッケージです。sudo
特にインストール時にはsudo-ldap
ログインは生成されませんが、sssd_sudo.log
通常のsudo
パッケージではログインが生成されます。 - 今は
sssd_sudo
表示されますが、それでも応答するので、解決する必要がある他の問題がある可能性があります。Returning 2 rules for [<user>@<domain>]
sudo -l
Sorry, user <user>@<domain> may not run sudo on <host>
しかし、一般的ではない他のいくつかの問題に直面しているので、私の状況は一般的ではないかもしれません。たとえば、実行に問題があり、realm join
次の回避策を使用して解決しました。今回のサーバー障害の問題。
16.04のRealmd / sssd / sudoの問題のためにここに来た場合に役立つ可能性がある他の報告された問題は次のとおりです(OPの質問に直接関連していない可能性があります)。
- IPAホストネットワークグループの問題(詳細は無料ipaユーザーリスト)
- 一つある既知の問題realmd依存関係解決を使用してください。議論で述べたように、packagekitをインストールすると(私たちを含む)多くの人々の問題が解決されます。一つあるかもしれません別途発行バージョンは16.04です。
私たちは16.04のアップグレードを評価しているので、おそらく遅れておきますが、私たちの発展が他の誰かに役立つことを願っています。
答え2
残念ながら、realmdで生成されたsssd.confファイルにカスタム設定パラメータを追加するオプションがないようです。
必要な設定を含むように作成された構成を調整する必要がありました。後ろに設定を適用するには、ドメイン登録を使用しrealm join
てsssd()を再起動してください。service restart sssd