
Linux環境認証システムをWindows Server 2012に統合する方法を学びたいと思いますwinbind
。
Googleで検索しましたが、時間同期から一部のプロファイル設定までこれを行う方法についてはいくつかのページがあります。
以下のようにLinuxでホスト名とホストを設定しました。
[/etc/ホスト] 192.168.XXX.XX1 test1.example.com 例## Windows IP 192.168.XXX.XX2 test1 ## Linux IP [/etc/ホスト名] テスト1
次のプロパティを使用してActive Directoryを設定し、2つのアカウントがあります。
コンピュータ名: TEST1 ドメイン名:example.com アカウント1:管理者 アカウント2:テスター1
そのため、Linux環境のDNSをADのIPアドレスに設定しました。 「resolv.conf」でその情報を見ることができます。
[root~]# nslookup example.com サーバー: 192.168.xxx.xx1 アドレス: 192.168.xxx.xx1#53 名前: example.com 住所:192.168.xxx.xxx
「nsswitch.conf」の「file」の横に「winbind」という単語を追加しました。
passwd: ファイル winbind シャドウ: ファイル sss winbind グループ: ファイル winbind
"krb5.conf"でルックアップセクションとデフォルト領域を変更しました。
[ライブラリのデフォルト] dns_lookup_realm = true dns_lookup_kdc=真 デフォルトエリア=EXAMPLE.COM [フィールド] ドメイン名COM = { kdc=example.com admin_server = example.com } [ドメインフィールド] .domain.com = example.COM domain.com = example.COM
いよいよ設定してみましたsmb.conf
。ところで、設定する方法が多様でよくわかりません。私はGoogleページの1つを選択しました。
「管理者」IDを使用してWindows Serverに接続しようとすると、次のエラーが表示されます。
[root ~]# 広告ネットワーク Join-U 管理者 gse_get_client_auth_token:gss_init_sec_contextが[指定されていないGSSエラーのため失敗しました。マイナーコードは追加情報を提供できます:修正されたメッセージフロー](2529638953) ldap/test1.example.comの場合、[Administrator]ユーザーの[EXAMPLE.COM]領域のkinitは成功しましたが、Ads_sasl_spnego_gensec_bind(KRB5)は失敗します。試行したログインが無効です。ユーザー名や認証情報が間違っている可能性があります。 ドメインへの参加に失敗しました:AD接続に失敗しました:ログインに失敗しました。ユーザー名や認証情報が間違っている可能性があります。
この段階で停止すると、Google で解決策が見つかりません。一部のファイルを編集する必要がありますか/etc/pam.d
?
「testparm」ツールを使用した後は、smb.conf
最終的に何の問題も見つかりませんでしたが、「net Ads testjoin」を使用すると、次のメッセージが表示されます。
Ads_connect:現在ログイン要求を処理するために使用できるログインサーバーはありません。
答え1
すべての変更をキャンセルし、AD からコンピュータ アカウントを削除します。winbind
梱包を取り除きます。
適切なパッケージ選択をインストールします。 Debianベースのシステムではapt-get install samba smbclient sssd realmd dnsutils policykit-1 packagekit sssd-tools sssd libnss-sss libpam-sss adcli
。
sssd
この時点で始まらなくても心配しないでください。realm
後で説明するコマンドを使用して設定する必要があります。
ローカル Linux ベースのシステムの DNS サーバーに DC があることを確認します。 Active Directory 環境の一部でない限り、他の DNS サーバーを追加しないでください。編集だけで/etc/resolv.conf
「このファイルを編集しないでください」警告を無視すると、変更を上書きできます。この時点で、システムは誰も認証できず、最終的にドメイン外に出ることができます。 (この時点でユーザーは苦情を感じる傾向があります。)
Kerberosは5分(300秒)以上の偏差で動作できないため、現地時間がActive Directoryの時刻と一致していることを確認してください。
ローカルドメインの場合は、contoso.com
rootとして次の3つのコマンドを実行します。
domain=contoso.com # The FQDN itself. Not machine.FQDN
realm discover "$domain" # If this fails, stop and recheck everything
realm join "$domain" # [--user <ad_username>] [--computer-ou <ou>]
ADアカウント名を入力する必要がある場合は、資格がないことを意味する場所をrealm join
使用してください。自分のADアカウントがドメイン管理者ではない場合でも、少なくとも10人のクライアントで動作する必要があります。ただし、そのアカウントのパスワードを知っている場合に便利なオプションです。このオプションを使用すると、アカウントの初期OUを指定できます。正しい値がわからない場合は、空白のままにしてください(推測しないでください)。realm join --user <ad_username> "$domain"
<ad_username>
sAMAccountName
administrator
--computer-ou
ファイルを回復しますsssd.conf
。これad_hostname
一部のバージョンに必須エラーの解決。 LDAP グループの入れ子レベルを使用すると、入れ子になったsssd
グループのメンバーシップを処理できます。
sed -i "/^ad_domain /s/$/\nad_hostname = $(hostname).$domain/" /etc/sssd/sssd.conf
( echo; echo 'ldap_group_nesting_level = 5'; echo 'ldap_use_tokengroups = false' ) >>/etc/sssd/sssd.conf
service sssd restart