[Samba] SSH SSO without keytab file

L.P.H. van Belle belle at bazuin.nl
Fri Jan 18 08:44:27 UTC 2019


Hai, 

> -----Oorspronkelijk bericht-----
> Van: Harpoon [mailto:harp00n at protonmail.com] 
> Verzonden: vrijdag 18 januari 2019 9:24
> Aan: L.P.H. van Belle
> CC: samba at lists.samba.org
> Onderwerp: Re: [Samba] SSH SSO without keytab file
> 
> Thanks for the prompt reply!
Your welkom. 

> 
> > I did see that you are using Administrator, and thats the problem.
> 
> > Administrator is mapped to root ( most of the time ),
> > if you assigned Administrator UID = 0 then you have a 
> problem, because only root = uid 0.
> >
> > Never ever give Administrator a UID/GID

> I am using tdb backend. It mapped administrator account to 12000:10000.
No no no.. as said, never ever assign administrator a UID/GID. 
Now your administrator != root anymore and you cannt manage the server correctly anymore as user Administrator.
You cant use the TDB backend for a domain member only, you MUST choose to set AD or RID backend.
https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Domain_Member#Configuring_Samba 
See: Choose backend for id mapping in winbindd

> 
> > So try again with a normal user, that does have a UID/GID.
> 
> I tried testing with normal users too whose UID/GID was 
> mapped by tdb in ~10000 range. It produced the same problem.
> 
> > If that does not work, please share these, because this 
> should work fine.
> > /etc/samba/smb.conf
> > /etc/krb5.conf
> > /etc/ssh/sshd_config
> 
> Please find these conf files here:
> 
> -----------------------------
> DC's /etc/samba/smb.conf
> -----------------------------
> [global]
>         netbios name = DC1
>         realm = SAMDOM.EXAMPLE.COM
>         workgroup = SAMDOM
>         dns forwarder = 10.0.5.200
>         server role = active directory domain controller
>         idmap_ldb:use rfc2307 = yes
>         winbind enum users = yes
>         winbind enum groups = yes
>         template shell = /bin/bash
> 
> [netlogon]
>         path = /var/lib/samba/sysvol/samdom.example.com/scripts
>         read only = No
> 
> [sysvol]
>         path = /var/lib/samba/sysvol
>         read only = No
> 
Looks good, except, you dont need : 
winbind enum users = yes
winbind enum groups = yes

For testing fine, but when done testing set these 2 to no. 
These only slowdown you server. 


> --------------------------------
> Client's /etc/samba/smb.conf
> --------------------------------
> [global]
>         netbios name = client1
>         realm = SAMDOM.EXAMPLE.COM
>         workgroup = SAMDOM
>         security = ADS
>         kerberos method = secrets and keytab
>         winbind trusted domains only = no
>         winbind enum users = yes
>         winbind enum groups = yes
>         winbind use default domain = yes
>         winbind nss info = rfc2307
> 
>         idmap config * : backend = tdb
>         idmap config * : range = 10000-200000

This config is incomplete. 
( and same for the winbind enum set these to no. ) 

My suggested change 


	dedicated keytab file = /etc/krb5.keytab
	kerberos method = secrets and keytab

	# Renew the kerberos tickets
	winbind refresh tickets = yes

	# Enable offline logins
	winbind offline logon = yes


	# With default domain set to yes, wbinfo -u shows username only, not SAMBADOM\username.
	winbind use default domain = yes

      idmap config * : backend = tdb
      idmap config * : range =  3000-7999

	# https://wiki.samba.org/index.php/Idmap_config_ad 
	# ( based on >         winbind nss info = rfc2307 in you config. ) 
	idmap config SAMDOM : backend = ad
	idmap config SAMDOM : range = 10000-200000

	# Optional, use these, but since you set AD backend you can set this from cli. 
	# Template settings for login shell and home directory
	#	template shell = /bin/bash
	#	template homedir = /home/%U
	# mk_homedir might be needed, this depends on you needs/setup. 

> 
> -------------------------------
> /etc/ssh/sshd_config (Running on DC)
> -------------------------------
> PubkeyAuthentication no
> PasswordAuthentication yes
> ChallengeResponseAuthentication no
> X11Forwarding yes
> PrintMotd no
> AcceptEnv LANG LC_*
> Subsystem       sftp    /usr/lib/openssh/sftp-server
> KerberosAuthentication yes
> GSSAPIAuthentication yes
> GSSAPICleanupCredentials yes
> UseDNS yes
> PermitRootLogin yes
> UsePAM no
> 
Looks fine. 

> -------------------------------
> /etc/ssh/ssh_config (Client SSH config)
> -------------------------------
> 
> Host *
>     SendEnv LANG LC_*
>     HashKnownHosts yes
>     GSSAPIAuthentication yes
>     GSSAPIDelegateCredentials yes

Looks fine. 

> 
> --------------------------------------
> /etc/krb5.conf (Same of DC and clients)
> --------------------------------------
> 
> [libdefaults]
>         default_realm = SAMDOM.EXAMPLE.COM
>         dns_lookup_realm = false
>         dns_lookup_kdc = true
> 
Looks fine.  



> Thanks for your help!

Greetz, 

Louis




More information about the samba mailing list