PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SAMBA - ich schaffs einfach nicht



michi44
11.03.08, 13:50
hallo leute, ich bin neu hier und wollt mal hallo sagen und gleich mal ein problemchen postne ;) ich hoffe mir kann jemand helfen. :D

also ich habe:

centos 5.1 und über yum install folgendes installiert:

-samba
-samba-common
-samba-client

habe schon mehrmals die smb.conf durchforstet und schaffe es einfach nicht dieses zu tun:

ich möchte einen ordner im lan sharen, sodass jeder darauf zugriff hat aber nur lesend.

und dann möchte ich noch für die anderen drei user jeweils ein verzeichnis anlegen damit man es in der netzwerkumgebung sieht und nur mit username und passwort darauf zugreifen kann.

der samba server soll dies auch mitloggen.

kann mir jemand vl. so eine config zusammenbasteln, ich denke ich bin einfach zu blöd dafür!?

braucht ihr sonst noch infos?

danke lg

marce
11.03.08, 13:53
Poste doch mal Deine smb.conf.

Was hat denn schon geklappt und was nicht?

michi44
11.03.08, 15:04
danke für die antwort :)

ich hab die smb.conf jetzt wieder zurückgesetzt auf die vorinstallierte.

bin leider nicht zusammengekommen.

ich habs zwar schon geschafft dass ich den server in der netzwerkumgebung sehe und auch auf das verzeichnis zugriff habe, jedoch dort nichts löschen/erstellen kann.

auch wenn writeable = yes und read only auf no sind!?

vl. könnte mir ja wer eine kleine conf zusammenbasteln, diese muss nicht wirklich viel können:


- ein public ordner wo jeder zugriff aus dem lokalen netzwerk hat
- alle zugriffe für jeden geloggt werden
- und wo ich für ca 2-3 user je einen home ordner anlege wo jeder nur mit dem user und pass zugriff hat dass ich vergebe.

noch eine letzte frage, wie müsste ich denn wenn ich z.b in /home/user/seppi

seppi sein home verzeichnis erstelle die chmod und chown rechte setzen für /home/user ?

denn wenn ich dann einen zweiten user anlege der müsste auch zugriff haben auf /home/user/xxxxx

danke mfg.

marce
11.03.08, 15:06
Poste doch mal Deine smb.conf.

Was hat denn schon geklappt und was nicht?
Was ist an den beiden Sätzen denn so schwer zu verstehen?

... und bitte für jedes Problem einen eigenen Thread erstellen.

michi44
12.03.08, 08:06
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options (perhaps too
# many!) most of which are not shown in this example
#
# For a step to step guide on installing, configuring and using samba,
# read the Samba-HOWTO-Collection. This may be obtained from:
# http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf
#
# Many working examples of smb.conf files can be found in the
# Samba-Guide which is generated daily and can be downloaded from:
# http://www.samba.org/samba/docs/Samba-Guide.pdf
#
# Any line which starts with a ; (semi-colon) or a # (hash)
# is a comment and is ignored. In this example we will use a #
# for commentry and a ; for parts of the config file that you
# may wish to enable
#
# NOTE: Whenever you modify this file you should run the command "testparm"
# to check that you have not made any basic syntactic errors.
#
#---------------
# SELINUX NOTES:
#
# If you want to use the useradd/groupadd family of binaries please run:
# setsebool -P samba_domain_controller on
#
# If you want to share home directories via samba please run:
# setsebool -P samba_enable_home_dirs on
#
# If you create a new directory you want to share you should mark it as
# "samba-share_t" so that selinux will let you write into it.
# Make sure not to do that on system directories as they may already have
# been marked with othe SELinux labels.
#
# Use ls -ldZ /path to see which context a directory has
#
# Set labels only on directories you created!
# To set a label use the following: chcon -t samba_share_t /path
#
# If you need to share a system created directory you can use one of the
# following (read-only/read-write):
# setsebool -P samba_export_all_ro on
# or
# setsebool -P samba_export_all_rw on
#
# If you want to run scripts (preexec/root prexec/print command/...) please
# put them into the /var/lib/samba/scripts directory so that smbd will be
# allowed to run them.
# Make sure you COPY them and not MOVE them so that the right SELinux context
# is applied, to check all is ok use restorecon -R -v /var/lib/samba/scripts
#
#--------------
#
#======================= Global Settings =====================================

[global]

# ----------------------- Netwrok Related Options -------------------------
#
# workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH
#
# server string is the equivalent of the NT Description field
#
# netbios name can be used to specify a server name not tied to the hostname
#
# Interfaces lets you configure Samba to use multiple interfaces
# If you have multiple network interfaces then you can list the ones
# you want to listen on (never omit localhost)
#
# Hosts Allow/Hosts Deny lets you restrict who can connect, and you can
# specifiy it as a per share option as well
#
workgroup = MYGROUP
server string = Samba Server Version %v

; netbios name = MYSERVER

; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24
; hosts allow = 127. 192.168.12. 192.168.13.

# --------------------------- Logging Options -----------------------------
#
# Log File let you specify where to put logs and how to split them up.
#
# Max Log Size let you specify the max size log files should reach

# logs split per machine
; log file = /var/log/samba/%m.log
# max 50KB per log file, then rotate
; max log size = 50

# ----------------------- Standalone Server Options ------------------------
#
# Scurity can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.

security = user
passdb backend = tdbsam


# ----------------------- Domain Members Options ------------------------
#
# Security must be set to domain or ads
#
# Use the realm option only with security = ads
# Specifies the Active Directory realm the host is part of
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.
#
# Use password server option only with security = server or if you can't
# use the DNS to locate Domain Controllers
# The argument list may include:
# password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name]
# or to auto-locate the domain controller/s
# password server = *


; security = domain
; passdb backend = tdbsam
; realm = MY_REALM

; password server = <NT-Server-Name>

# ----------------------- Domain Controller Options ------------------------
#
# Security must be set to user for domain controllers
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.
#
# Domain Master specifies Samba to be the Domain Master Browser. This
# allows Samba to collate browse lists between subnets. Don't use this
# if you already have a Windows NT domain controller doing this job
#
# Domain Logons let Samba be a domain logon server for Windows workstations.
#
# Logon Scrpit let yuou specify a script to be run at login time on the client
# You need to provide it in a share called NETLOGON
#
# Logon Path let you specify where user profiles are stored (UNC path)
#
# Various scripts can be used on a domain controller or stand-alone
# machine to add or delete corresponding unix accounts
#
; security = user
; passdb backend = tdbsam

; domain master = yes
; domain logons = yes

# the login script name depends on the machine name
; logon script = %m.bat
# the login script name depends on the unix user used
; logon script = %u.bat
; logon path = \\%L\Profiles\%u
# disables profiles support by specifing an empty path
; logon path =

; add user script = /usr/sbin/useradd "%u" -n -g users
; add group script = /usr/sbin/groupadd "%g"
; add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u"
; delete user script = /usr/sbin/userdel "%u"
; delete user from group script = /usr/sbin/userdel "%u" "%g"
; delete group script = /usr/sbin/groupdel "%g"


# ----------------------- Browser Control Options ----------------------------
#
# set local master to no if you don't want Samba to become a master
# browser on your network. Otherwise the normal election rules apply
#
# OS Level determines the precedence of this server in master browser
# elections. The default value should be reasonable
#
# Preferred Master causes Samba to force a local browser election on startup
# and gives it a slightly higher chance of winning the election
; local master = no
; os level = 33
; preferred master = yes

#----------------------------- Name Resolution -------------------------------
# Windows Internet Name Serving Support Section:
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
#
# - WINS Support: Tells the NMBD component of Samba to enable it's WINS Server
#
# - WINS Server: Tells the NMBD components of Samba to be a WINS Client
#
# - WINS Proxy: Tells Samba to answer name resolution queries on
# behalf of a non WINS capable client, for this to work there must be
# at least one WINS Server on the network. The default is NO.
#
# DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names
# via DNS nslookups.

; wins support = yes
; wins server = w.x.y.z
; wins proxy = yes

; dns proxy = yes

# --------------------------- Printing Options -----------------------------
#
# Load Printers let you load automatically the list of printers rather
# than setting them up individually
#
# Cups Options let you pass the cups libs custom options, setting it to raw
# for example will let you use drivers on your Windows clients
#
# Printcap Name let you specify an alternative printcap file
#
# You can choose a non default printing system using the Printing option

load printers = yes
cups options = raw

; printcap name = /etc/printcap
#obtain list of printers automatically on SystemV
; printcap name = lpstat
; printing = cups

# --------------------------- Filesystem Options ---------------------------
#
# The following options can be uncommented if the filesystem supports
# Extended Attributes and they are enabled (usually by the mount option
# user_xattr). Thess options will let the admin store the DOS attributes
# in an EA and make samba not mess with the permission bits.
#
# Note: these options can also be set just per share, setting them in global
# makes them the default for all shares

; map archive = no
; map hidden = no
; map read only = no
; map system = no
; store dos attributes = yes


#============================ Share Definitions ==============================

[homes]
comment = Home Directories
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S

[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes

# Un-comment the following and create the netlogon directory for Domain Logons
; [netlogon]
; comment = Network Logon Service
; path = /var/lib/samba/netlogon
; guest ok = yes
; writable = no
; share modes = no


# Un-comment the following to provide a specific roving profile share
# the default is to use the user's home directory
; [Profiles]
; path = /var/lib/samba/profiles
; browseable = no
; guest ok = yes


# A publicly accessible directory, but read only, except for people in
# the "staff" group
; [public]
; comment = Public Stuff
; path = /home/samba
; public = yes
; writable = yes
; printable = no
; write list = +staff

marce
12.03.08, 08:13
(1) Editiere bitte das Posting und verwende bitte die [code]-Tags. Steigert die Lesbarkeit.

(1.1) wenn ich das richtig sehe ist das die default-smb.conf ohne eigene Änderungen. Die haben wir meist alle selber. Uns interessiert eine von Dir bearbeitete Datei und eine Beschreibung, was dann aus Clientsicht geht und was nicht. Ebenso evtl. Logeinträge und sonstige, konrekte Infos.

(2) Bitte immer alle Fragen beantworten.

michi44
12.03.08, 09:46
hallo, das ist jetzt die aktuelle config:




[global]
workgroup = WORKGROUP
server string = Mein Samba Server
hosts allow = 127. 192.168.0.
log file = /var/log/samba/%m.log
security = share
guest account = nobody


### share ###

# Dies sollte der Public ORdner sein wo jeder Zugriff hat im
# Netzwerk, aber nur lesend
# chown auf shareordner ist nobody:nobody und 777

[Public]
path = /shareordner
browseable = yes
guest ok = yes
public = yes
writeable = no

# Hier jeder einzelne Nutzer, jeder darf in seinem Home Verzeichnis
# schreiben und lesen.

[user1_home]
writeable = yes
path = /home/USER1
public = yes
force user = user1
force group = users
delete readonly = yes
comment = Home von User1

[user2_home]
writeable = yes
path = /home/USER2
public = yes
force user = user2
force group = users
delete readonly = yes
comment = Home von User2


wie müsste denn jetzt das /home verzeichnis chowned und chmoded werden damit jeder user zugriff hat?

den user "user1" gibt es in der smb passwort datei und als systemuser. leider kommt kein login sondern nur ich hab darauf keinen zugriff, es fehlen womöglich die benötigten rechte.

funktioniert hat mit dieser conf:


- der zugriff auf den ordner user1 und user2 nicht, keine berechtigungen, nichtmal das login fenster springt auf.

- der zugriff auf public funkt, es kann wie gewünscht keine datei geschrieben werden, auch niht gelöscht, stelle ich aber um auf writeable = yes und starte den dienst neu, vebrinde mich über die netzwerkverbindung neu, geht das auch nicht, also ich kann nichts schreiben.

wäre um hilfe dankbar!

marce
12.03.08, 09:51
(1) Du willst doch gar nicht in public schreiben können - wo ist also das Problem?
(2) warum verwendest Du nicht die [homes]-Sektion für die home-Verzeichnisse anstatt für jeden User einen eigenen Share zu definieren?

michi44
12.03.08, 11:35
1. ja ist schon klar, es ist eig. was ich will, jedoch warum kann ich nicht wenn ich es auf writeable = yes ändere hineinschreiben?

2. meinst du diese sektion statt jedem einzelnen share?



[homes]
comment = Home Directories
browseable = yes
writable = yes


reichen die direktiven die da gesetzt sind? oder muss ich da noch was setzen?

mfg.

marce
12.03.08, 11:43
1. ja ist schon klar, es ist eig. was ich will, jedoch warum kann ich nicht wenn ich es auf writeable = yes ändere hineinschreiben?
Das ist aus der momentan vorhanden Faktenlage nicht ersichtlich.

michi44
12.03.08, 11:49
Das ist aus der momentan vorhanden Faktenlage nicht ersichtlich.

ok wäre kein problem!

nur noch eine frage:

ist die home sektion wie oben beschreiben so in ordnung?


warum funktioniert es so nicht wenn ich einzelne shares mache für jeden user?
welche direktive habe ich da falsch gesetzt?

danke

=============>>

also ich hab jetzt noch ein paar tests gemacht:

ich hab die home direktive oben wie angegeben gesetzt.

hab den user als systemuser angelegt und sein homeverzeichnis angegeben.

dieses ist dann automatisch auf user:user (owner:group) gesetzt.

ich habe mit passwd das passwort für den user gesetzt

habe danach mit smbpasswd -a den user erstellt und mit smbpasswd -e den user aktiviert

systempasswort des users und das in der smbpasswd ist gleich.

ich sehe nun das verzeichnis, doch ich kann mich dann mit diesem user nicht einloggen? hat hier zufällig jemand noch eine idee?

es sollte doch funktionieren oder?

gibts anhaltspunkte etc???

michi44
13.03.08, 16:10
kann mir da keiner helfen?

ich bräuchte doch nur eine smb.conf mit:

- 1 public ordner wo niemand schreiben darf (funkt mittlerweile schon)

- und eine kurze anleitung und den rest der smb.conf damit ich 2 -3 user anlegen kann die dann jeweils mit username u. passwort auf den jeweiligen ordner zugreifen können und dort lesen und schreiben....