Active Directory 없이 Samba4 클라이언트 및 Samba3 서버를 사용하는 SSO

Active Directory 없이 Samba4 클라이언트 및 Samba3 서버를 사용하는 SSO

제가 현재 근무하고 있는 사무실의 구성은 다음과 같습니다.

  • Single Sign-On, 공유 및 프린터 계정을 관리하는 Linux 서버입니다. 이것은 "라고 불릴 것입니다.서버 129' 그리고 s수정하면 안 된다. (가능하다면)
  • 여러 Windows XP 클라이언트를 교체해야 합니다. 모든 클라이언트 PC에 로그인할 수 있으며 파일 및 설정이 자동으로 사용 가능합니다(Single Sign-On).

첫 번째 단계로 새 클라이언트 PC를 기존 네트워크에 통합하고 싶습니다. 이 새로운 클라이언트는 "라는 이름의 새로운 Linux Mint 18.3입니다.컴퓨터 135'. 새 클라이언트를 기존 네트워크에 통합하는 데 문제가 있습니다.

나는 기계를 설치하지 않았습니다. 그런 짓을 한 사람은 더 이상 존재하지 않습니다. 나는 유닉스 전문가도 아니고 경험도 거의 없습니다. 그래서 최대한 관련된 정보를 많이 담으려고 노력했습니다.

다음은 설정 및 완료된 테스트에 대한 설명입니다.


회로망

내 사무실은 대규모 네트워크의 일부이지만 IP와 DNS를 구성할 수 있습니다. 클라이언트 "pc135"에서 이름 server129, server129.subdomain.domain.com 및 IP로 "server129"를 ping할 수 있습니다. server129에서 클라이언트 pc135를 ping할 수 있습니다. 그래서 인터넷이 좋은 것 같아요.


서버 구성

이 서버는 현재 사용되고 있으므로 가능하면 변경하지 않고 그대로 두어야 합니다. sudo 권한이 있습니다.

Samba는 모든 것을 공유하는 것 같습니다. XP 클라이언트의 경우 알려지지 않은 누군가가 사용자와 새 클라이언트를 추가하기 위해 두 개의 스크립트를 작성했습니다.

신규 고객

useradd -s /bin/false $1\$
smbpasswd -a -m $1\$

새로운 사용자

useradd -s /bin/false $1\$
smbpasswd -a -m $1\$

그래서 나는 모든 것이 삼바에 의해 관리된다고 가정합니다. "Samba 버전 3.0.24"가 서버에 설치되어 있고 testparm 결과는 다음과 같습니다.

Load smb config files from /etc/samba/smb.conf
Processing section "[homes]"
Processing section "[netlogon]"
Processing section "[profiles]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_DOMAIN_PDC
Press enter to see a dump of your service definitions

[global]
    workgroup = MYWORKGROUP
    server string = %h server
    obey pam restrictions = Yes
    passdb backend = tdbsam
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
    syslog = 0
    log file = /var/log/samba/log.%m
    max log size = 1000
    name resolve order = lmhosts host wins bcast
    logon drive = H:
    domain logons = Yes
    os level = 200
    preferred master = Yes
    domain master = Yes
    dns proxy = No
    wins support = Yes
    panic action = /usr/share/samba/panic-action %d
    profile acls = Yes
    hide files = /desktop.ini/Desktop.ini/

[homes]
    comment = Home Directories
    valid users = %S
    read only = No
    create mask = 0700
    directory mask = 0700
    browseable = No

[netlogon]
    comment = Network Logon Service
    path = /home/samba/netlogon
    guest ok = Yes
    share modes = No

[profiles]
    comment = Users profiles
    path = /home/samba/profiles
    create mask = 0600
    directory mask = 0700
    browseable = No

[printers]
    comment = All Printers
    path = /var/spool/samba
    create mask = 0700
    printable = Yes
    browseable = No

[print$]
    comment = Printer Drivers
    path = /var/lib/samba/printers

클라이언트 구성

새로 설치한 후 네트워크가 작동하도록 했습니다. 로컬에는 sudo 권한이 있는 계정이 있습니다. 버전: "Samba 버전 4.3.11-Ubuntu"

꽤 오랫동안 삼바 구성을 테스트해 왔지만 새 클라이언트가 도메인에 가입하지 못했습니다. 나는 사용했다이것설명하다.

이것은 내 삼바 클라이언트 구성이며 가장 유망한 버전입니다.

Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
WARNING: The "idmap uid" option is deprecated
WARNING: The "idmap gid" option is deprecated
WARNING: The "syslog" option is deprecated
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
'winbind separator = +' might cause problems with group membership.

Server role: ROLE_DOMAIN_MEMBER

Press enter to see a dump of your service definitions

# Global parameters
[global]
    workgroup = MYWORKGROUP
    server string = %h server (Samba, Ubuntu)
    server role = member server
    security = DOMAIN
    map to guest = Bad User
    obey pam restrictions = Yes
    pam password change = Yes
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
    unix password sync = Yes
    syslog = 0
    log file = /var/log/samba/log.%m
    max log size = 1000
    client signing = if_required
    server signing = if_required
    os level = 0
    preferred master = No
    local master = No
    domain master = No
    dns proxy = No
    wins server = server129
    usershare allow guests = Yes
    panic action = /usr/share/samba/panic-action %d
    idmap uid = 10000-20000
    idmap gid = 10000-20000
    template homedir = /home/%U
    template shell = /bin/bash
    winbind separator = +
    winbind cache time = 10
    winbind enum users = Yes
    winbind enum groups = Yes
    winbind use default domain = Yes
    client ipc signing = if_required
    idmap config * : range = 10000-20000
    idmap config * : backend = tdb


[printers]
    comment = All Printers
    path = /var/spool/samba
    create mask = 0700
    printable = Yes
    browseable = No


[print$]
    comment = Printer Drivers
    path = /var/lib/samba/printers

처음에는 아무런 연락도 받지 못했습니다. 구글링 후 추가했어요

   client ipc signing = auto
   server signing = auto
   client signing = auto

이제 도메인 이름 정보를 볼 수 있습니다.

net rpc info
Enter root's password:
Domain Name: MYWORKGROUP
Domain SID: S-1-5-21-2587772309-3456421220-248070441
Sequence number: 1516110814
Num users: 59
Num domain groups: 0
Num local groups: 0

또한 파일 관리자에 다른 클라이언트가 표시됩니다.

하지만 사용자를 볼 수 없거나 도메인에 가입할 수 없습니다.

sudo net rpc user
Enter root's password: 
session setup failed: NT_STATUS_NO_LOGON_SERVERS

net rpc join
No realm has been specified! Do you really want to join an Active Directory server?
Enter root's password:
No realm has been specified! Do you really want to join an Active Directory server?
connect_to_domain_password_server: unable to open the domain client session to machine SERVER129. Flags[0x00000000] Error was : NT_STATUS_ACCESS_DENIED.
Failed to join domain: failed to verify domain membership after joining: Access denied

해당 로그

[2018/01/16 14:58:57.547800,  0] ../source3/auth/auth_domain.c:121(connect_to_domain_password_server)
  connect_to_domain_password_server: unable to open the domain client session to machine SERVER129. Error was : NT_STATUS_CANT_ACCESS_DOMAIN_INFO.
[2018/01/16 14:58:57.557704,  0] ../source3/auth/auth_domain.c:121(connect_to_domain_password_server)
  connect_to_domain_password_server: unable to open the domain client session to machine SERVER129. Error was : NT_STATUS_CANT_ACCESS_DOMAIN_INFO.
[2018/01/16 14:58:57.567853,  0] ../source3/auth/auth_domain.c:121(connect_to_domain_password_server)
  connect_to_domain_password_server: unable to open the domain client session to machine SERVER129. Error was : NT_STATUS_CANT_ACCESS_DOMAIN_INFO.
[2018/01/16 14:58:57.568229,  0] ../source3/auth/auth_domain.c:184(domain_client_validate)
  domain_client_validate: Domain password server not available.

그러면 나에게는 어떤 가능성이 있습니까? 대부분의 가이드는 Active Directory, Kerberus 및 기타 여러 기술/패키지에 관한 것입니다. 첫 번째 단계는 서버에서 실행 중인 항목을 지정하는 것입니다. 아니면 아직 실행하지 않는 것이 더 좋습니다. Active Directory와 LDAP를 실행하고 있지 않은 것 같습니다. 이를 어떻게 확인하나요?

관련 정보