Samba, Win98 Password Prob when not 'root'

Posted on 2000-03-27
Medium Priority
Last Modified: 2010-05-18
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
Question by:ewalstad
  • 2
  • 2
LVL 40

Expert Comment

ID: 2662589
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.
LVL 40

Expert Comment

ID: 2662601
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.

Expert Comment

ID: 2663760
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...


Accepted Solution

handrich earned 100 total points
ID: 2685640
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

Expert Comment

ID: 2685767
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?



Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I have seen several blogs and forum entries elsewhere state that because NTFS volumes do not support linux ownership or permissions, they cannot be used for anonymous ftp upload through the vsftpd program.   IT can be done and here's how to get i…
Note: for this to work properly you need to use a Cross-Over network cable. 1. Connect both servers S1 and S2 on the second network slots respectively. Note that you can use the 1st slots but usually these would be occupied by the Service Provide…
If you're a developer or IT admin, you’re probably tasked with managing multiple websites, servers, applications, and levels of security on a daily basis. While this can be extremely time consuming, it can also be frustrating when systems aren't wor…
Is your OST file inaccessible, Need to transfer OST file from one computer to another? Want to convert OST file to PST? If the answer to any of the above question is yes, then look no further. With the help of Stellar OST to PST Converter, you can e…
Suggested Courses
Course of the Month7 days, 21 hours left to enroll

615 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question