diff options
-rw-r--r-- | samba_wizard/scripts/smb.conf.default | 340 |
1 files changed, 250 insertions, 90 deletions
diff --git a/samba_wizard/scripts/smb.conf.default b/samba_wizard/scripts/smb.conf.default index c81b8615..939ec9a5 100644 --- a/samba_wizard/scripts/smb.conf.default +++ b/samba_wizard/scripts/smb.conf.default @@ -19,19 +19,23 @@ # workgroup = NT-Domain-Name or Workgroup-Name workgroup = MDKGROUP -# netbios name is the name you will see in "Network Neighbourhood", +# netbios name is the name you will see in "Network Neighbourhood", # but defaults to your hostname -; netbios name = <name_of_this_server> +# netbios name = <name_of_this_server> # server string is the equivalent of the NT Description field server string = Samba Server %v +# Message command is run by samba when a "popup" message is sent to it. +# The example below is for use with LinPopUp: +; message command = /usr/bin/linpopup "%f" "%m" %s; rm %s + # 2. Printing Options: # CHANGES TO ENABLE PRINTING ON ALL CUPS PRINTERS IN THE NETWORK # (as cups is now used in linux-mandrake 7.2 by default) # if you want to automatically load your printer list rather # than setting them up individually then you'll need this - printcap name = lpstat + printcap name = cups load printers = yes # It should not be necessary to spell out the print system type unless @@ -42,11 +46,12 @@ # Samba 2.2 supports the Windows NT-style point-and-print feature. To # use this, you need to be able to upload print drivers to the samba # server. The printer admins (or root) may install drivers onto samba. -# Note that this feature uses the print$ share, and not the printers share, -# so you will need to enable it below. -# This parameter works like domain admins: +# Note that this feature uses the print$ share, so you will need to +# enable it below. # printer admin = @<group> <user> -; printer admin = @adm + printer admin = @adm +# This should work well for winbind: +# printer admin = @"Domain Admins" # 3. Logging Options: # this tells Samba to use a separate log file for each machine @@ -57,33 +62,35 @@ max log size = 50 # Set the log (verbosity) level (0 <= log level <= 10) -; log level = 3 +# log level = 3 -# 4. Security Options: +# 4. Security and Domain Membership Options: # This option is important for security. It allows you to restrict # connections to machines which are on your local network. The # following example restricts access to two C class networks and # the "loopback" interface. For more examples of the syntax see # the smb.conf man page. Do not enable this if (tcp/ip) name resolution does # not work for all the hosts in your network. -; hosts allow = 192.168.1. 192.168.2. 127. -; hosts deny = all +# hosts allow = 192.168.1. 192.168.2. 127. # Uncomment this if you want a guest account, you must add this to /etc/passwd # otherwise the user "nobody" is used -; guest account = pcguest +# guest account = pcguest +# Allow users to map to guest: + map to guest = bad user # Security mode. Most people will want user level security. See # security_level.txt for details. security = user # Use password server option only with security = server or security = domain # When using security = domain, you should use password server = * -; password server = <NT-Server-Name> +# password server = <NT-Server-Name> +# password server = * # Password Level allows matching of _n_ characters of the password for # all combinations of upper and lower case. -; password level = 8 -; username level = 8 +# password level = 8 +# username level = 8 # You may wish to use password encryption. Please read # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba documentation. @@ -100,9 +107,13 @@ # NOTE2: You do NOT need these to allow workstations to change only # the encrypted SMB passwords. They allow the Unix password # to be kept in sync with the SMB password. - unix password sync = Yes - passwd program = /usr/bin/passwd %u - passwd chat = *New*UNIX*password* %n\n *ReType*new*UNIX*password* %n\n *passwd:*all*authentication*tokens*updated*successfully* +; unix password sync = Yes +# You either need to setup a passwd program and passwd chat, or +# enable pam password change +; pam password change = yes +# passwd program = /usr/bin/passwd %u +; passwd chat = *New*UNIX*password* %n\n *Re*ype*new*UNIX*password* %n\n \ +;*passwd:*all*authentication*tokens*updated*successfully* # Unix users can map to different SMB User names ; username map = /etc/samba/smbusers @@ -110,7 +121,41 @@ # Using the following line enables you to customise your configuration # on a per machine basis. The %m gets replaced with the netbios name # of the machine that is connecting -; include = /etc/samba/smb.conf.%m +# include = /etc/samba/smb.conf.%m + +# Options for using winbind. Winbind allows you to do all account and +# authentication from a Windows or samba domain controller, creating +# accounts on the fly, and maintaining a mapping of Windows RIDs to unix uid's +# and gid's. winbind uid and winbind gid are the only required parameters. +# +# winbind uid is the range of uid's winbind can use when mapping RIDs to uid's +# idmap uid = 10000-20000 +# +# winbind gid is the range of uid's winbind can use when mapping RIDs to gid's +# idmap gid = 10000-20000 +# +# winbind separator is the character a user must use between their domain +# name and username, defaults to "\" +# winbind separator = + +# +# winbind use default domain allows you to have winbind return usernames +# in the form user instead of DOMAIN+user for the domain listed in the +# workgroup parameter. +# winbind use default domain = yes +# +# template homedir determines the home directory for winbind users, with +# %D expanding to their domain name and %U expanding to their username: +# template homedir = /home/%D/%U + +# When using winbind, you may want to have samba create home directories +# on the fly for authenticated users. Ensure that /etc/pam.d/samba is +# using 'service=system-auth-winbind' in pam_stack modules, and then +# enable obedience of pam restrictions below: +# obey pam restrictions = yes + +# +# template shell determines the shell users authenticated by winbind get +# template shell = /bin/bash # 5. Browser Control and Networking Options: # Most people will find that this option gives better performance. @@ -120,62 +165,131 @@ # Configure Samba to use multiple interfaces # If you have multiple network interfaces then you must list them # here. See the man page for details. -; interfaces = 192.168.12.2/24 192.168.13.2/24 +# interfaces = 192.168.12.2/24 192.168.13.2/24 # Configure remote browse list synchronisation here # request announcement to, or browse list sync from: # a specific host or from / to a whole subnet (see below) -; remote browse sync = 192.168.3.25 192.168.5.255 +# remote browse sync = 192.168.3.25 192.168.5.255 # Cause this host to announce itself to local subnets here -; remote announce = 192.168.1.255 192.168.2.44 +# remote announce = 192.168.1.255 192.168.2.44 # 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 -; local master = no +# local master = no # OS Level determines the precedence of this server in master browser # elections. The default value should be reasonable -; os level = 33 +# os level = 33 # 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 master = yes +# domain master = yes # Preferred Master causes Samba to force a local browser election on startup # and gives it a slightly higher chance of winning the election -; preferred master = yes +# preferred master = yes # 6. Domain Control Options: # Enable this if you want Samba to be a domain logon server for # Windows95 workstations or Primary Domain Controller for WinNT and Win2k -; domain logons = yes +# domain logons = yes # if you enable domain logons then you may want a per-machine or # per user logon script # run a specific logon batch file per workstation (machine) -; logon script = %m.bat +# logon script = %m.bat # run a specific logon batch file per username -; logon script = %U.bat +# logon script = %U.bat # Where to store roaming profiles for WinNT and Win2k # %L substitutes for this servers netbios name, %U is username # You must uncomment the [Profiles] share below -; logon path = \\%L\Profiles\%U +# logon path = \\%L\Profiles\%U -# Where to store roaming profiles for Win9x. Be careful with this as it also +# Where to store roaming profiles for Win9x. Be careful with this as it also # impacts where Win2k finds it's /HOME share -; logon home = \\%L\%U\.profile +# logon home = \\%L\%U\.profile + # The add user script is used by a domain member to add local user accounts -# that have been authenticated by the domain controller, or by the domain +# that have been authenticated by the domain controller, or when adding +# users via the Windows NT Tools (ie User Manager for Domains). + +# Scripts for file (passwd, smbpasswd) backend: +# add user script = /usr/sbin/useradd -s /bin/false '%u' +# delete user script = /usr/sbin/userdel '%s' +# add user to group script = /usr/bin/gpasswd -a '%u' '%g' +# delete user from group script = /usr/bin/gpasswd -d '%u' '%g' +# set primary group script = /usr/sbin/usermod -g '%g' '%u' +# add group script = /usr/sbin/groupadd %g && getent group '%g'|awk -F: '{print $3}' +# delete group script = /usr/sbin/groupdel '%g' + +# Scripts for LDAP backend (assumes nss_ldap is in use on the domain controller, +# and needs configuration in smbldap_conf.pm +# add user script = /usr/share/samba/scripts/smbldap-useradd.pl '%u' +# delete user script = /usr/share/samba/scripts/smbldap-userdel.pl '%u' +# add user to group script = /usr/share/samba/scripts/smbldap-groupmod.pl -m '%u' '%g' +# delete user from group script = /usr/share/samba/scripts/smbldap-groupmod.pl -x '%u' '%g' +# set primary group script = /usr/share/samba/scripts/smbldap-usermod.pl -g '%g' '%u' +# add group script = /usr/share/samba/scripts/smbldap-groupadd.pl '%g' && /usr/share/samba/scripts/smbldap-groupshow.pl %g|awk '/^gidNumber:/ {print $2}' +# delete group script = /usr/share/samba/scripts/smbldap-userdel.pl '%g' + + +# The add machine script is use by a samba server configured as a domain # controller to add local machine accounts when adding machines to the domain. # The script must work from the command line when replacing the macros, # or the operation will fail. Check that groups exist if forcing a group. # Script for domain controller for adding machines: -; add user script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false -M %u -# Script for domain member for addig local accounts for authenticated users: -; add user script = /usr/sbin/useradd -s /bin/false %u +# add machine script = /usr/sbin/useradd -d /dev/null -g machines -c 'Machine Account' -s /bin/false -M %u +# Script for domain controller with LDAP backend for adding machines (please +# configure in /etc/samba/smbldap_conf.pm first): +# add machine script = /usr/share/samba/scripts/smbldap-useradd.pl -w -d /dev/null -g machines -c 'Machine Account' -s /bin/false %u + +# Domain groups: +# Domain groups are now configured by using the 'net groupmap' tool + +# Samba Password Database configuration: +# Samba now has runtime-configurable password database backends. Multiple +# passdb backends may be used, but users will only be added to the first one +# Default: +# passdb backend = smbpasswd guest +# TDB backen with fallback to smbpasswd and guest +# passdb backend = tdbsam smbpasswd guest +# LDAP with fallback to smbpasswd guest +# Enable SSL by using an ldaps url, or enable tls with 'ldap ssl' below. +# passdb backend = ldapsam:ldaps://ldap.mydomain.com smbpasswd guest +# Use the samba2 LDAP schema: +# passdb backend = ldapsam_compat:ldaps://ldap.mydomain.com smbpasswd guest + +# Idmap settings (set idmap uid and idmap gid above): +# Idmap backend to use: +# idmap backend = ldap:ldap://ldap.mydomain.com + +# LDAP configuration for Domain Controlling: +# The account (dn) that samba uses to access the LDAP server +# This account needs to have write access to the LDAP tree +# You will need to give samba the password for this dn, by +# running 'smbpasswd -w mypassword' +# ldap admin dn = cn=root,dc=mydomain,dc=com +# ldap ssl = start_tls +# start_tls should run on 389, but samba defaults incorrectly to 636 +# ldap port = 389 +# ldap suffix = dc=mydomain,dc=com +# Seperate suffixes are available for machines, users, groups, and idmap, if +# ldap suffix appears first, it is appended to the specific suffix. +# Example for a unix-ish directory layout: +# ldap machine suffix = ou=Hosts +# ldap user suffix = ou=People +# ldap group suffix = ou=Group +# ldap idmap suffix = ou=Idmap +# Example for AD-ish layout: +# ldap machine suffix = cn=Computers +# ldap user suffix = cn=Users +# ldap group suffix = cn=Groups +# ldap idmap suffix = cn=Idmap + # 7. Name Resolution Options: # All NetBIOS names must be resolved to IP Addresses @@ -189,20 +303,20 @@ # The example below excludes use of name resolution for machines that are NOT # on the local network segment # - OR - are not deliberately to be known via lmhosts or via WINS. -; name resolve order = wins lmhosts bcast +# name resolve order = wins lmhosts bcast # Windows Internet Name Serving Support Section: # WINS Support - Tells the NMBD component of Samba to enable it's WINS Server -; wins support = yes +# wins support = yes # WINS Server - Tells the NMBD components of Samba to be a WINS Client # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both -; wins server = w.x.y.z +# wins server = w.x.y.z # 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. -; wins proxy = yes +# wins proxy = yes # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names # via DNS nslookups. The built-in default for versions 1.9.17 is yes, @@ -212,12 +326,12 @@ # 8. File Naming Options: # Case Preservation can be handy - system default is _no_ # NOTE: These can be set on a per share basis -; preserve case = no -; short preserve case = no +# preserve case = no +# short preserve case = no # Default case is normally upper case for all DOS files -; default case = lower +# default case = lower # Be very careful with case sensitivity - it can break things! -; case sensitive = no +# case sensitive = no # Enabling internationalization: # you can match a Windows code page with a UNIX character set. @@ -228,75 +342,118 @@ # UNIX: ISO8859-1 (Western European), ISO8859-2 (Eastern Eu.), # ISO8859-5 (Russian Cyrillic), KOI8-R (Alt-Russ. Cyril.) # This is an example for french users: -; client code page = 850 -; character set = ISO8859-1 +# dos charset = 850 +# unix charset = ISO8859-1 #============================ Share Definitions ============================== -;[homes] -; comment = Home Directories -; browseable = no -; writable = yes +[homes] + comment = Home Directories + browseable = no + writable = yes +# You can enable VFS recycle bin and on-access virus-scanning on a per +# share basis: +# Uncomment the next 2 lines (make sure you create a .recycle folder in +# the base of the share and ensure all users will have write access to it. +# For virus scanning, install samba-vscan-clamav and ensure the clamd service +# is running +# vfs objects = vscan-clamav recycle +# vscan-clamav: config-file = /etc/samba/vscan-clamav.conf # 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 +# [netlogon] +# comment = Network Logon Service +# path = /var/lib/samba/netlogon +# guest ok = yes +# writable = no #Uncomment the following 2 lines if you would like your login scripts to #be created dynamically by ntlogon (check that you have it in the correct -#locationn (the default of the ntlogon rpm available in contribs) -;root preexec = /usr/bin/ntlogon -u %U -g %G -o %a -d /var/lib/samba/netlogon -;root postexec = rm -f /var/lib/samba/netlogon/%U.bat +#location (the default of the ntlogon rpm available in contribs) +#root preexec = /usr/bin/ntlogon -u "%U" -g "%G" -o %a -d /var/lib/samba/netlogon/ +#root postexec = rm -f "/var/lib/samba/netlogon/%U.bat" # 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 - +#[Profiles] +# path = /var/lib/samba/profiles +# browseable = no +# guest ok = yes +# writable = yes +# This script can be enabled to create profile directories on the fly +# You may want to turn off guest acces if you enable this, as it +# hasn't been thoroughly tested. +#root preexec = PROFILE="/var/lib/samba/profiles/%u"; if [ ! -e $PROFILE ]; \ +# then mkdir -pm700 $PROFILE; chown "%u":"%g" $PROFILE;fi +# If you want read-only profiles, fake permissions so windows clients think +# they have written to the files +# vfs objects = fake_perms # NOTE: If you have a CUPS print system there is no need to # specifically define each individual printer. # You must configure the samba printers with the appropriate Windows -# drivers on your Windows clients. On the Samba server no filtering is +# drivers on your Windows clients or upload the printer driver to the +# server from Windows (NT/2000/XP). On the Samba server no filtering is # done. If you wish that the server provides the driver and the clients # send PostScript ("Generic PostScript Printer" under Windows), you have -# to swap the 'print command' line below with the commented one. -;[printers] -; comment = All Printers -; path = /var/spool/samba -; browseable = no +# to use 'printcap name = cups' or swap the 'print command' line below +# with the commented one. Note that print commands only work if not using +# 'printing=cups' +[printers] + comment = All Printers + path = /var/spool/samba + browseable = no # to allow user 'guest account' to print. -; guest ok = yes -; writable = no -; printable = yes -; create mode = 0700 + guest ok = yes + writable = no + printable = yes + create mode = 0700 # ===================================== # print command: see above for details. # ===================================== print command = lpr-cups -P %p -o raw %s -r # using client side printer drivers. -; print command = lpr-cups -P %p %s # using cups own drivers (use generic PostScript on clients). - lpq command = lpstat -o %p - lprm command = cancel %p-%j +# print command = lpr-cups -P %p %s # using cups own drivers (use generic PostScript on clients). +# If you install drivers on the server, you will want to uncomment this so +# clients request the driver + use client driver = yes # This share is used for Windows NT-style point-and-print support. # To be able to install drivers, you need to be either root, or listed # in the printer admin parameter above. Note that you also need write access # to the directory and share definition to be able to upload the drivers. -# You must disable (by commenting out) the share above if you enable this. # For more information on this, please see the Printing Support Section of -# /usr/share/doc/samba-2.2.1a/docs/Samba-HOWTO-Collection.pdf -# Please note that this has not yet been tested as packaged here with CUPS. -;[print$] -; path = /var/lib/samba/printers -; browseable = yes -; read only = yes -; write list = @adm root +# /usr/share/doc/samba-<version>/docs/Samba-HOWTO-Collection.pdf +# +# A special case is using the CUPS Windows Postscript driver, which allows +# all features available via CUPS on the client, by publishing the ppd file +# and the cups driver by using the 'cupsaddsmb' tool. This requires the +# installation of the CUPS driver (http://www.cups.org/windows.php) +# on the server, but doesn't require you to use Windows at all :-). +[print$] + path = /var/lib/samba/printers + browseable = yes + write list = @adm root + guest ok = yes + inherit permissions = yes + # Settings suitable for Winbind: + # write list = @"Domain Admins" root + # force group = +@"Domain Admins" + +# A useful application of samba is to make a PDF-generation service +# To streamline this, install windows postscript drivers (preferably colour) +# on the samba server, so that clients can automatically install them. +# Note that this only works if 'printing' is *not* set to 'cups' + +[pdf-gen] + path = /var/tmp + guest ok = No + printable = Yes + comment = PDF Generator (only valid users) + printing = bsd + printcap name = cups + #print command = /usr/share/samba/scripts/print-pdf file path win_path recipient IP & + print command = /usr/share/samba/scripts/print-pdf "%s" "%H" "//%L/%u" "%m" "%I" "%J" & + lpq command = /bin/true # This one is useful for people to share files ;[tmp] @@ -305,14 +462,17 @@ ; read only = no ; public = yes -# A publicly accessible directory - +# A publicly accessible directory, but read only, except for people in +# the "staff" group ;[public] ; comment = Public Stuff ; path = /home/samba/public -; write list = @wheel -; read list = nobody, @users -; guest ok = no +; public = yes +; writable = no +; write list = @staff +# Audited directory through experimental VFS audit.so module: +# Uncomment next line. +# vfs object = /usr/lib/samba/vfs/audit.so # Other examples. # |