ADグループがSamba共有にアクセスできるようにする

ADグループがSamba共有にアクセスできるようにする

私のLinuxでは、このようなSamba共有を作成し、正常に動作します。

[global]
    security = user
    passdb backend = tdbsam
    map to guest = Bad User
    guest account = mcms

[mml-t1]
    path = /var/lib/mcms/exports/TPMD01/mml
    writable = no
    guest ok = yes
    guest only = yes

より厳格なセキュリティ ポリシーにより、新しい Windows 10 ユーザーに次のエラーが発生します。

組織のセキュリティポリシーが認証されていないゲストアクセスをブロックするため、この共有フォルダにアクセスできません。これらのポリシーは、ネットワークの安全でないデバイスや悪意のあるデバイスからコンピュータを保護するのに役立ちます。

Active Directoryのグループに基づいてユーザーを許可したいと思います。私はこれを試しました:

[mml-t1]
        path = /var/lib/mcms/exports/TPMD01/mml
        valid users = @T_UNIX_MCMS
        force user = mcms
        browseable = yes
        read only = yes
        guest ok = no

しかし、うまくいきません。つまり、接続はありません。私も試しましたvalid users = +"DOMAIN\T_UNIX_MCMS"

共有を正しく構成する必要があります。

重要なのは、LinuxサーバーがすでにADに接続されていることです。 Linuxサーバーでは、su - domscheitWindows AD資格情報を使用して書き込み/読み取り権限を/home/domscheit持つローカルユーザーを取得できますdomscheit "domain users"domscheitetc/passwdmcms/var/lib/mcms/exports/TPMD01/mml

私はSambaバージョン4.7.1を実行しています。

修正する

これは私のログです:

[2018/12/25 14:06:00.652804,  5] ../source3/auth/auth.c:524(make_auth3_context_for_ntlm)
  Making default auth method list for server role = 'standalone server', encrypt passwords = yes
[2018/12/25 14:06:00.652872,  5] ../source3/auth/auth.c:48(smb_register_auth)
  Attempting to register auth backend guest
[2018/12/25 14:06:00.652887,  5] ../source3/auth/auth.c:60(smb_register_auth)
  Successfully added auth method 'guest'
[2018/12/25 14:06:00.652923,  5] ../source3/auth/auth.c:48(smb_register_auth)
  Attempting to register auth backend sam
[2018/12/25 14:06:00.652934,  5] ../source3/auth/auth.c:60(smb_register_auth)
  Successfully added auth method 'sam'
[2018/12/25 14:06:00.653067,  5] ../source3/auth/auth.c:48(smb_register_auth)
  Attempting to register auth backend sam_ignoredomain
[2018/12/25 14:06:00.653125,  5] ../source3/auth/auth.c:60(smb_register_auth)
  Successfully added auth method 'sam_ignoredomain'
[2018/12/25 14:06:00.653258,  5] ../source3/auth/auth.c:48(smb_register_auth)
  Attempting to register auth backend sam_netlogon3
[2018/12/25 14:06:00.653317,  5] ../source3/auth/auth.c:60(smb_register_auth)
  Successfully added auth method 'sam_netlogon3'
[2018/12/25 14:06:00.653330,  5] ../source3/auth/auth.c:48(smb_register_auth)
  Attempting to register auth backend winbind
[2018/12/25 14:06:00.653402,  5] ../source3/auth/auth.c:60(smb_register_auth)
  Successfully added auth method 'winbind'
[2018/12/25 14:06:00.653453,  5] ../source3/auth/auth.c:400(load_auth_module)
  load_auth_module: Attempting to find an auth method to match guest
[2018/12/25 14:06:00.653504,  5] ../source3/auth/auth.c:425(load_auth_module)
  load_auth_module: auth method guest has a valid init
[2018/12/25 14:06:00.653577,  5] ../source3/auth/auth.c:400(load_auth_module)
  load_auth_module: Attempting to find an auth method to match sam_ignoredomain
[2018/12/25 14:06:00.653659,  5] ../source3/auth/auth.c:425(load_auth_module)
  load_auth_module: auth method sam_ignoredomain has a valid init
[2018/12/25 14:06:00.654557,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'gssapi_spnego' registered
[2018/12/25 14:06:00.654625,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'gssapi_krb5' registered
[2018/12/25 14:06:00.654683,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'gssapi_krb5_sasl' registered
[2018/12/25 14:06:00.654736,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'spnego' registered
[2018/12/25 14:06:00.654795,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'schannel' registered
[2018/12/25 14:06:00.654869,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'naclrpc_as_system' registered
[2018/12/25 14:06:00.654921,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'sasl-EXTERNAL' registered
[2018/12/25 14:06:00.654973,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'ntlmssp' registered
[2018/12/25 14:06:00.655023,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'ntlmssp_resume_ccache' registered
[2018/12/25 14:06:00.655074,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'http_basic' registered
[2018/12/25 14:06:00.655126,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'http_ntlm' registered
[2018/12/25 14:06:00.655176,  3] ../auth/gensec/gensec_start.c:977(gensec_register)
  GENSEC backend 'http_negotiate' registered
[2018/12/25 14:06:00.655292,  5] ../auth/gensec/gensec_start.c:739(gensec_start_mech)
  Starting GENSEC mechanism spnego
[2018/12/25 14:06:00.655378,  5] ../auth/gensec/gensec_start.c:739(gensec_start_mech)
  Starting GENSEC submechanism ntlmssp
[2018/12/25 14:06:00.682627,  5] ../source3/auth/auth.c:524(make_auth3_context_for_ntlm)
  Making default auth method list for server role = 'standalone server', encrypt passwords = yes
[2018/12/25 14:06:00.682682,  5] ../source3/auth/auth.c:400(load_auth_module)
  load_auth_module: Attempting to find an auth method to match guest
[2018/12/25 14:06:00.682697,  5] ../source3/auth/auth.c:425(load_auth_module)
  load_auth_module: auth method guest has a valid init
[2018/12/25 14:06:00.682734,  5] ../source3/auth/auth.c:400(load_auth_module)
  load_auth_module: Attempting to find an auth method to match sam_ignoredomain
[2018/12/25 14:06:00.682760,  5] ../source3/auth/auth.c:425(load_auth_module)
  load_auth_module: auth method sam_ignoredomain has a valid init
[2018/12/25 14:06:00.682863,  5] ../auth/gensec/gensec_start.c:739(gensec_start_mech)
  Starting GENSEC mechanism spnego
[2018/12/25 14:06:00.682953,  5] ../auth/gensec/gensec_start.c:739(gensec_start_mech)
  Starting GENSEC submechanism ntlmssp
[2018/12/25 14:06:00.682990,  3] ../auth/ntlmssp/ntlmssp_util.c:72(debug_ntlmssp_flags)
  Got NTLMSSP neg_flags=0xe2088297
    NTLMSSP_NEGOTIATE_UNICODE
    NTLMSSP_NEGOTIATE_OEM
    NTLMSSP_REQUEST_TARGET
    NTLMSSP_NEGOTIATE_SIGN
    NTLMSSP_NEGOTIATE_LM_KEY
    NTLMSSP_NEGOTIATE_NTLM
    NTLMSSP_NEGOTIATE_ALWAYS_SIGN
    NTLMSSP_NEGOTIATE_EXTENDED_SESSIONSECURITY
    NTLMSSP_NEGOTIATE_VERSION
    NTLMSSP_NEGOTIATE_128
    NTLMSSP_NEGOTIATE_KEY_EXCH
    NTLMSSP_NEGOTIATE_56
[2018/12/25 14:06:00.705494,  3] ../auth/ntlmssp/ntlmssp_server.c:552(ntlmssp_server_preauth)
  Got user=[domscheit] domain=[SWI] workstation=[CWP1101] len1=24 len2=326
[2018/12/25 14:06:00.705925,  5] ../source3/auth/auth_util.c:122(make_user_info_map)
  Mapping user [SWI]\[domscheit] from workstation [CWP1101]
[2018/12/25 14:06:00.705951,  5] ../source3/auth/user_info.c:64(make_user_info)
  attempting to make a user_info for domscheit (domscheit)
[2018/12/25 14:06:00.705965,  5] ../source3/auth/user_info.c:72(make_user_info)
  making strings for domscheit's user_info struct
[2018/12/25 14:06:00.705988,  5] ../source3/auth/user_info.c:125(make_user_info)
  making blobs for domscheit's user_info struct
[2018/12/25 14:06:00.706006,  3] ../source3/auth/auth.c:189(auth_check_ntlm_password)
  check_ntlm_password:  Checking password for unmapped user [SWI]\[domscheit]@[CWP1101] with the new password interface
[2018/12/25 14:06:00.706019,  3] ../source3/auth/auth.c:192(auth_check_ntlm_password)
  check_ntlm_password:  mapped user is: [SWI]\[domscheit]@[CWP1101]
[2018/12/25 14:06:00.706077,  3] ../source3/auth/check_samsec.c:399(check_sam_security)
  check_sam_security: Couldn't find user 'domscheit' in passdb.
[2018/12/25 14:06:00.706093,  5] ../source3/auth/auth.c:251(auth_check_ntlm_password)
  auth_check_ntlm_password: sam_ignoredomain authentication for user [domscheit] FAILED with error NT_STATUS_NO_SUCH_USER, authoritative=1
[2018/12/25 14:06:00.706115,  2] ../source3/auth/auth.c:332(auth_check_ntlm_password)
  check_ntlm_password:  Authentication for user [domscheit] -> [domscheit] FAILED with error NT_STATUS_NO_SUCH_USER, authoritative=1
[2018/12/25 14:06:00.706128,  3] ../source3/auth/auth_util.c:2214(do_map_to_guest_server_info)
  No such user domscheit [SWI] - using guest account
[2018/12/25 14:06:00.706186,  5] ../auth/ntlmssp/ntlmssp_server.c:1011(ntlmssp_server_postauth)
  server session key is invalid (len == 0), cannot do KEY_EXCH!
[2018/12/25 14:06:00.728317,  1] ../source3/smbd/service.c:521(make_connection_snum)
  create_connection_session_info failed: NT_STATUS_ACCESS_DENIED

valid users = SWI\\domscheitテストにグループ名を使用する代わりに、個人アカウント(およびより多くのバリエーション)を試しました。しかし、常に同じエラーが発生します。

getent group T_UNIX_MCMSすべてgetent passwd domscheit有効な項目を返します。

アップデート2

重要なトピックであるサーバー使用量が見つかったようです。SSD。私の考えでは、これが多くの「方法...」ページで提案されているように「winbind」をインストールしたときにサーバーが混乱した理由だと思います。サーバーを再実行するには、バックアップからサーバーを復元する必要がありました。

答え1

ここです。

[2018/12/25 14:06:00.706077,  3] ../source3/auth/check_samsec.c:399(check_sam_security)
check_sam_security: Couldn't find user 'domscheit' in passdb.

これは、Sambaのパスワードデータベースがあなたのユーザーアカウントを知らないことを知らせます。理由はsecurity = user追加したからですpassdb backend = tdbsam(ローカル38ユーザーデータベース、同様ですが独立しています/etc/passwd)。あなたのコンピュータはすでにADドメインに参加しているので、それを認識して活用するようにSambaを設定する必要があります。

答え2

視聴する:

https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Domain_Member

少なくとも30文字です。

答え3

私はLinux管理者の一人と話をしました。 samba + sssd + winbindはお互い良い友達ではないようです。つまり、一緒に動作しません。しかし、最新のRed Hatバージョン(> 7.2)ではこれは可能なように見えますが、設定は少し面倒です。

私たちの場所には多くのサーバーがあり、単一の専用サーバーを望んでいません。 Linux全体の環境に共通してよく設計されたソリューションが見つかるのを待ちます。その間、私はIsilonストレージを使用して他のソリューションを追求しました。

関連情報