Improve company productivity with a Business Account.Sign Up

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 308
  • Last Modified:

Samba, Win98 Password Prob when not 'root'

From my Win98 machine, I can see all Samba shares.
When I log into my Win98 as 'root' I can write to all the Samba shares.  However, when I log into Win98 as ewalstad, I only have write access to /home/ewalstad/.
When I try to write to other folders, I get an 'Access Denied' error from Windows.

I need to have read & write access to the entire structure when I log in as ewalstad.  How do I do this?

Here's my smbconf file:

#======================= Global Settings =====================================
   workgroup = energywright
   server string = Samba Server on Caldera OpenLinux
   hosts deny = ALL
   hosts allow = 192.168.1. 127.
   guest account = guest
   log file = /var/log/samba.d/smb.%m
   max log size = 50
   socket options = TCP_NODELAY
   name resolve order = lmhosts wins bcast
   dns proxy = no

#============================ Share Definitions ==============================
   comment = Home Directories
   path = %H/home
   valid users = %S
   only user = yes
   browseable = yes
   writable = yes
   create mask = 0750
# A private directory, usable only by fred. Note that fred requires write
# access to the directory.
   comment = ewalstad, ericw & root
   path = /
   valid users = ewalstad ericw root
   writable = yes
  • 2
  • 2
1 Solution
Basically you are running into the normal unix protection system. Samba is required to obey the Unix file protections and can't give you access to things that you wouldn't have access to if you were logged on the Linux system as that user. Root has full access to everything, but ewalstad doesn't (prove by directly logging in to your Linux box as ewalstad and trying to copy a file to, say /usr/bin). I think you'll find that you can write to some areas of the "erics" share, like /tmp, because anyone can write to /tmp.
Oh and I meant to end that comment with...

If you want to be able to write to anywhere on the system you have to be root. If you have specific places that you need to be able to write to from a PC (an htdoc dir, a common file store, etc) that aren't going to compromise the system, you could change the permissions on those areas, and those areas only, to allow non-root write privs.
I fell into the same problem.  I got around this by placing my putting Win UID (which is 'mapped' in etc/smbusers file to my Linux log on)into the group 'root'.

Sometimes it is better to leave the access denials in place, as MS do some funny things with file structures sometimes...

Nick your idea to cahnge the UID wil work but it is a big security lack.
ewalstad you Ides to share / is not any better.
NEVER SHARE THE / OF YOUR LINUXBOX especialy with write access!

It is better to create a  folders and/or shares where the user ewalstad (and  other users) are allowed to write. so create a directory /SHARES or what name you like and if you dont need any internal UNIX security inside this directory run      chmod 666 /SHARES.
than add
                               comment = ewalstad, ericw & root
                               path = / SHARES
                               valid users = ewalstad ericw root
                               writable = yes

you could also change the group-owner of /SHARES to one where all the tree ewalstad ericw root are members (usually users) with      
chgrp users /SHARES      and then a    chmod 660 /SHARES   will also be ok and more secure.  
if you dont know the group that is used on the linux filesystem, simply create a file as ewalstad via windows in your samba homedir and then at the linux-console a ls -asl * will show you the group.

Best Regards Michael
Thanks, Michael, but a few thoughts...

Surely by using smbuser to map my win UID to my Linux UID 'root' this only allows a root log-in as per su command in telnet etc anyway?  The smb.conf is set for only user.  I only done this so I can have full access to my machine (486) via my win machine (233) for faster access speeds.  How do I get full access via smb otherwise? [apart from logging in Win as root =8^(__) ], which is basically what I am doing anyway?


Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now