0

I've got a Samba4 installation set up as a backup domain controller:

james@photon:~$ testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[homes]"
Processing section "[netlogon]"
Processing section "[profiles]"
Processing section "[printers]"
Processing section "[print$]"
Loaded services file OK.
Server role: ROLE_DOMAIN_BDC
Press enter to see a dump of your service definitions

[global]
    workgroup = NT4Domain
    server string = %h NT4 BDC (Samba4, Linux)
    interfaces = lo, eth1
    bind interfaces only = Yes
    server role = classic backup domain controller
    map to guest = Bad User
    obey pam restrictions = Yes
    passdb backend = ldapsam:ldap://127.0.0.1/
    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* .
    syslog = 0
    log file = /var/log/samba/log.%m
    max log size = 1000
    name resolve order = wins, bcast, hosts
    client signing = if_required
    server signing = if_required
    add user script = /usr/sbin/smbldap-useradd -m '%u' -t 1
    add group script = /usr/sbin/smbldap-groupadd -p '%g'
    add user to group script = /usr/sbin/smbldap-groupmod -m '%u' '%g'
    set primary group script = /usr/sbin/smbldap-usermod -g '%g' '%u'
    add machine script = /usr/sbin/smbldap-useradd -w '%u' -t 1
    logon script = scripts\logon.cmd
    logon path = \\%L\profiles\%U
    logon drive = H:
    logon home = \\%L\%U
    domain logons = Yes
    domain master = No
    dns proxy = No
    wins server = ip.of.nt4.box
    ldap admin dn = cn=admin,dc=thisdomain
    ldap group suffix = ou=Groups
    ldap idmap suffix = ou=Idmap
    ldap machine suffix = ou=People
    ldap passwd sync = yes
    ldap suffix = dc=thisdomain
    ldap ssl = no
    ldap timeout = 20
    ldap user suffix = ou=People
    usershare allow guests = Yes
    panic action = /usr/share/samba/panic-action %d
    winbind cache time = 3600
    winbind enum users = Yes
    winbind enum groups = Yes
    winbind use default domain = Yes
    winbind offline logon = Yes
    idmap config * : backend = tdb
    ea support = Yes
    map acl inherit = Yes

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

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

[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
    print ok = Yes
    browseable = No

[print$]
    comment = Printer Drivers
    path = /var/lib/samba/printers
    write list = root, @lpadmin

It is joined to my NT4 domain. The shared printer is accessible, the netlogon share is visible, the user shares are visible and browsable by the correct (locally set up) users from Windows machines in the domain. The machine account is visible in the NT4 domain controller. It works.

However, I can't get net rpc vampire to work. There are several hundred user accounts stored on the NT4 domain controller, and I need to get the synchronised to the (working) LDAP instance on the Samba machine so that we can decomission the NT4 machine.

james@photon:~$ sudo net rpc join -U NT4AdminAccount%secret
Joined domain NT4Domain.

However:

sudo net rpc vampire -U NT4AdminAccount%secret
DC is not running Active Directory
cli_rpc_pipe_open_schannel: failed to get schannel session key from server 127.0.0.1 for domain NT4Domain.
Could not initialise schannel netlogon pipe. Error was NT_STATUS_ACCESS_DENIED

And:

sudo net rpc vampire -S NT4DC -U NT4AdminAccount%secret
DC is not running Active Directory
cli_rpc_pipe_open_schannel: failed to get schannel session key from server data1 for domain ATMOS.
Could not initialise schannel netlogon pipe. Error was NT_STATUS_INVALID_COMPUTER_NAME

The relevant lines I see when trying to run vampire with -d=10 are:

result                   : NT_STATUS_INVALID_COMPUTER_NAME
get_schannel_session_key_common: rpccli_netlogon_setup_creds failed with result NT_STATUS_INVALID_COMPUTER_NAME to server NT4DC, domain NT4Domain, machine account SAMBASERVER.
cli_rpc_pipe_open_schannel: failed to get schannel session key from server data1 for domain ATMOS.
Could not initialise schannel netlogon pipe. Error was NT_STATUS_INVALID_COMPUTER_NAME
return code = -1
Freeing parametrics:

So, after all that, what's wrong? Is vampire now broken? I keep reading that it's been deprecated, but all the documentation I've seen for doing this with samba-tool domain join is about joining an active directory domain. That's not what we want to do. I'm also reading a lot about Kerberos in the context of the schannel session key error, but that's an active directory thing too isn't it? I though NT4 used LANMAN for those functions now covered by Kerberos. It seems only to be the vampire operation I'm having difficulty with. Everything else seems to work fine...

Thanks in advance.

Dorsey
  • 1
  • `NT_STATUS_INVALID_COMPUTER_NAME` looks like it can't find NT4DC by name ... can it? – TessellatingHeckler Aug 21 '15 at 17:13
  • It can I think. I have "ip.address.in.full NT4DC.fqdn.net NT4DC" in /etc/hosts, and can ping NT4DC. Also, sudo net rpc seems to work as expected. I also get a different error if I deliberately feed the domain controller the right username but wrong password through net rpc, which makes me think that there is some authentication (and therefore communication) going on. Thanks for the response though. I really am at the end of my teather with this... – Dorsey Aug 21 '15 at 21:01

0 Answers0