web-dev-qa-db-ja.com

Windowsからユーザー情報を取得するようにWinbindを構成する

Ubuntu 10.04.1クライアントでSAMBAとWinbindを構成して、Windows Active DirectoryからUID、GID、およびホームディレクトリを取得する必要があります。

UNIX用のWindowsサービスがインストールされており、そこに関連情報(UID、GID、シェルなど)が入力されています。

問題は、何をしようとしても、winbindを取得してその情報を適切に取得し、使用することができないことです。問題は私の/etc/samba/smb.confファイルにあることを私は知っています。残念ながら、これを適切に設定する方法については、まともなドキュメントがまったく見つかりません。

以下は私の/etc/samba/smb.confファイルです:

[global]
    security = ads
    realm = DOMAINSERVER.COM
    password server = <<IP.of.domain.server>>
    workgroup = DOMAINSERVER
    winbind refresh tickets = yes
    idmap backend = ad      ## Important
    winbind enum users = yes
    winbind enum groups = yes
    template homedir = /home/%U  ## I tried commenting this out, and it didn't work
    template Shell = /bin/bash  ## I tried commenting this out, and it didn't work
    client use spnego = yes
    client ntlmv2 auth = yes
    encrypt passwords = yes
    winbind nss info = sfu     ## Important
    winbind use default domain = yes
    restrict anonymous = 2

[〜#〜]本当に[〜#〜]これの助けに感謝します!

EDIT:問題を引き起こしていると私が考えることができる他の唯一のことは、に保存されている古いwinbindマッピングをまだクリアしていないという事実です。 /var/lib/samba/ディレクトリ。それをクリアすると、問題は解決しますか?ところで、私はこの文書を調べ始めました、しかし、その年齢は問題であるかもしれません: http://www.ccs.neu.edu/home/battista/articles/winbindenterprise/winbindenterprise.pdf

1
Phanto

この場所にリストされている構成を見つけた後: http://www.ccs.neu.edu/home/battista/articles/winbindenterprise/winbindenterprise.pdf 、正しく動作させることができました(まあ、ほとんどの場合)。私が達成する必要のある主なタスクは、各ユーザーに独自のUIDを取得させることでした。これは、この実装で実行されます。

SFUからall情報を取得することはできませんが、すべてのマシンで一貫性のある一意のUIDを各ユーザーに取得させることはできます。この一意のUIDは、WindowsSID値に基づいています。

誰かがこれに対するtrue修正を知っているなら、私はそれを答えとしてマークします。

とりあえず、/etc/samba/smb.confの設定は私のために働いた:

[global]
    realm = DOMAINSERVER.COM
    workgroup = DOMAINSERVER
    security = ads
    password server = ip.of.pass.server

    idmap uid = 10000-20000
    idmap gid = 10000-20000
    idmap backend = rid:DOMAINSERVER.COM=10000-20000  ## IMPORTANT ##
    allow trusted domains = no                        ## IMPORTANT ##
    template homedir = /home/%U
    template Shell = /bin/bash

    winbind use default domain = yes
    winbind enum users = yes
    winbind enum groups = yes
    winbind refresh tickets = yes        ## For Kerberos ##
    client use spnego = yes
    client ntlmv2 auth = yes
    encrypt passwords = yes
    restrict anonymous = 2

ファイルを更新した後、smbdおよびwinbindサービスを停止しました。次に、/var/lib/sambaディレクトリに移動し、すべてのファイルを削除しました。

それが完了したら、マシンを再起動しました。UIDは各ユーザーのSIDの最後の桁に基づいており、複数のマシンでそれを確認しました。

この投稿がお役に立てば幸いです。

2
Phanto

偶然にも、これは誰かを助けます。WinbindにUnixログインシェルとActive Directoryからのホームディレクトリ情報を認識させる方法は、smb.confに以下を追加することです。

winbind nss info = rfc2307
2
Handyman5