I've heard that samba stores passwords in a less safe way than the normal linux passwords.
Is this true? If yes, what can I do about it?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
Samba can authenticate in a number of ways but in a stand-alone situation I expect is most commonly configured to authenticate against hashes of passwords, the hashes being stored in /etc/passwd or (more usually nowadays) in the shadow password file.
The person who you heard this from may have been confusing storage with transmission.
Passwords can be sent to the Samba server in either an encrypted or a nonencrypted format. If you have both types of systems on your network, you should ensure that the passwords represented by each user are stored both in a traditional account database and Samba's encrypted password database. This way, authorized users can gain access to their shares from any type of client. However, we recommend that you move your system to encrypted passwords and abandon nonencrypted passwords if security is an issue
I recall (but cant find the references right now) that the main factor causing this issue was the way Windows clients authenticate. They require the server to know the password. This is unlike other authentication systems where the server only needs a hash or a public key and where therefore it is not possible to retrieve a password (or equivalent login credentials) from data stored on the server.
Samba can also authenticate against Kerberos or LDAP servers. So there is plenty of scope for setting up a secure system.
The Register has an interesting article on NTLMV2.
Actually NTLMV2 doesnt require the authenticating server to know the password - according to this Miicrosoft article.