Serwer Samba

Transkrypt

Serwer Samba
Serwer Samba
Samba
1. Co to jest?
Pakiet narzędzi umoŜliwiający
współdzielenie zasobów (drukarki,
pliki) w sieciach hetorogenicznych
2. Do czego moŜe jeszcze się przydać?
- WINS
- Podstawowy kontroler domeny
Windows
- Klient domeny ADS
Demony:
smbd – umoŜliwia współdzielenie
plików i drukarek +uwierzytelnianie
nmbd – świadczy usługi Windows
Internet Name Service (wspomaga
przeglądanie sieci)
Prosty zasób dyskowy:
/etc/samba/smb.conf
[global]
workgroup = HOME
[test]
comment = udzial testowy
path = /export/samba/test
read only = no
guest ok = yes
Testowanie konfiguracji:
testparm
Testowanie konfiguracji:
# testparm
Load smb config files from /etc/samba/smb.conf
Processing section "[test]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions
Global parameters
[global]
workgroup = MSHOME
[test]
comment = udzial testowy
path = /export/samba/test
read only = No
guest ok = Yes
Jak uruchomić?
# service smb start
Uruchamianie uslugi SMB: [ OK ]
Uruchamianie uslugi NMB: [ OK ]
UŜytkownicy serwera:
# adduser samba
# smbpasswd -a samba
New SMB password:
Retype new SMB password:
Added user samba.
UŜytkownicy serwera:
UŜytkownicy serwera:
Dostęp z poziomu systemu
Linux
# smbclient -U samba -L
//192.168.0.244
Password:
Domain=[CENT] OS=[Unix]
Server=[Samba 3.0.8pre10.pre1.3]
Sharename Type Comment
--------- ---- ------test Disk udzial testowy
Struktura pliku
konfiguracyjnego:
[global]
guest ok = no
max log size = 1000
[homes]
browseable = no
map archive = yes
[udzial_1]
browseable = yes
read only = yes
guest ok. = yes
path = /export/samba/udzial_1
[printers]
path = /usr/tmp
guest ok = yes
printable = yes
Struktura pliku
konfiguracyjnego:
opcja = wartość
netbios aliases = serwer1,serwer2,serwer3
netbios aliases= serwer1 serwer2 serwer3
GUEST OK = YES
guest ok = yes
PATH = /EXPORT/SAMBA//DUZE/A/MALE/LITERKI
#KOMENTARZ
Mechanizm zmiennych
Dzięki mechanizmowi zmiennych
moŜna określić
charakterystykę
podłączonych klientów.
Zmienna
rozpoczyna się znakiem %, po
którym następuje litera.
Mechanizm zmiennych
[udzial2]
comment = Samba %v na serwerze
%h
gdzie:
%v
- wersja Samby
%h
- nazwa DNS serwera, na którym
uruchomiona jest Samba
Mechanizm zmiennych
Inne przydatne zmienne:
%I - adres IP klienta
%m - nazwa NetBIOS klienta
%M - nazwa DNS klienta
%H - katalog macierzysty zalogowanego
uŜytkownika (%u)
%u - nazwa zalogowanego uŜytkownika
%S - nazwa bieŜącego udziału
%L - nazwa NetBIOS serwera na którym
uruchomiona jest Samba
Mechanizm zmiennych
Dzięki zmiennym istnieje
moŜliwość
stworzenia udziału o zawartości
zaleŜnej od parametrów klienta
lub
uŜytkownika.
W poniŜszej konfiguracji:
[pliki]
path = /export/samba/%M
katalog udostępniany przez udział
pliki będzie zaleŜał od wartości
zmiennej %M a więc od nazwy DNS
klienta.
Opcja include
Przykład:
[udzial1]
...
include =
/etc/samba/smb.conf.%m
Sekcja [global]
Parametry zdefiniowane w sekcji
[global] lub [globals] odnoszą się do
wszystkich udziałów. JeŜeli jednak
wewnątrz sekcji definiującej udział
parametr zostanie zmieniony będzie miał
on pierwszeństwo przed parametrem z
sekcji [global]
Sekcja [homes]
JeŜeli klient próbuje się połączyć
z zasobem, który nie jest wymieniony
w pliku konfiguracyjnym, to wówczas
serwer sprawdza czy istnieje sekcja
[homes] i jeŜeli istnieje Ŝądana nazwa
udziału zostaje przemapowana jako
katalog domowy klienta.
Sekcja [homes]
Przykład: dla poniŜszej konfiguracji:
[global]
workgroup = MSHOME
[test]
comment = udzial testowy
path = /export/samba/test
read only = no
guest ok =yes
[homes]
browseable = no
Parametry określające
serwer:
[global]
workgroup = MSHOME
server string = Serwer Samba
na %L
netbios name = samba
[global]
workgroup = MSHOME
[test]
comment = udzial testowy
path = /export/samba/test
read only = no
guest account = user1
Parametry: comment, volume
Parametry sieciowe
[global]
workgroup = MSHOME
hosts allow = 192.168.0. 10.1.1.1
localhost
hosts deny = 192.168.0.11
[test]
comment = udzial testowy
path = /export/samba/test
read only = no
guest ok =yes
[homes]
browseable = no
Parametry sieciowe
hosts allow = 192.168.0.
hosts allow = .zsk.p.lodz.pl
hosts allow = ALL EXCEPT 10.1.1.
W przypadku uŜycia parametru
hosts allow naleŜy umieścić na liście
adres pętli zwrotnej (localhost lub
127.0.0.1). Jest to niezbędne dla
prawidłowego działania serwera.
Serwery wirtualne:
[global]
netbios aliases = PLIKI
FEDORA ZDALNY
include =
/etc/samba/smb.conf.%L
Serwery wirtualne:
Jak to zadziała:
[global]
workgroup = MSHOME
[test]
comment = udzial testowy
path = /export/samba/test
read only = no
guest ok =yes
[dane]
comment = wazne dane
path = /export/samba/dane
read only = no
guest ok = no
browseable = no
[homes]
browseable = no
Samba
Samba
Jak dostać się do
takiego ukrytego
zasobu???
Samba
Jak dostać się do takiego zasobu?
Usługi domyślne:
[global]
...
default service = pomoc
...
[pomoc]
path = /export/samba/pomoc/
broweseable = yes
writable = no
Wskazanie konkretnych
uŜytkowników
[finanse]
path=/export/samba/finanse
writable = yes
guest ok = no
valid users = szef, Adam
Dobrze pamiętać o:
invalid users = root, bin,
mail ...
Samba
hide dot files
[udzial1]
...
hide file =/*.reg/
...
veto files
delete veto files
dont descend
follow symlinks
Drukarki:
Do udostępniania drukarek na serwerze
słuŜy specjalny udział [printers], naleŜy
równieŜ wprowadzić dodatkowe parametry
do
sekcji [global]:
printing = cups
printcap name = cups
Parametry te określają typ drukowania
zainstalowany w systemie.
Drukarki:
[printers]
path = /var/spool/samba
ŚcieŜka do katalogu spool. UŜytkownicy
mający mieć dostęp do drukarki muszą
mieć prawo zapisu do niego.
Drukarki:
browseable = no
guest ok = yes
writeable = no
printable = yes
printer admin = root
PowyŜsze parametry udostępnią
wszystkie
drukarki
zdefiniowane
CUPS
jako drukarki sieciowe.
w
Drukarki:
Do przetestowania poprawności
konfiguracji słuŜy polecenie
#testprns nazwadrukarki
Kosz:
[zasob1]
...
Vfs objects = recycle
Recycle:repository = .TRASH
Recycle:keeptree = TRUE
Recycle:versions = TRUE
Recycle:touch = TRUE
Recycle:exclude = *.tmp
Recycle:exclude_dir = /tmp | /temp
Audyt:
[zasob1]
...
Vfs objects = full_audit
Full_audit:prefix = proc.u |
proc.I
Full_audit:success = open
opendir
Full_audit:failure = all
Domeny Windows
Obecnie istnieją dwa rodzaje domen NT:
•
domeny NT oparte o Windows NT 4.0
cechuje płaska struktura, tak jak system
nazewnictwa NetBIOS, o który m.in. są
oparte.
Współpracują
z
wszystkimi
systemami rodziny Windows oraz pakietem
Samba w wersji 2.0/2.2/3.0 oraz Samba
TNG. Kontrolerem takiej domeny moŜe być
serwerowa wersja systemu Windows NT
4.0/2000/2003 oraz Samba 2.0/2.2/TNG/3.0
(tylko jako PDC!).
Domeny Windows
•
domeny NT oparte o Windows 2000 lub 2003
ściśle powiązane z usługami katalogowymi
Active
Directory;
struktura
tutaj
ma
charakter
drzewiasty
tak
jak
system
nazewnictwa DNS, z którym jest te domeny
powiązane (nawet nomenklatura nazewnictwa
w Active Directory zawiera słowa: drzewa,
liście, las). Współpracują z systemami
Windows 2000/XP/2003, pakietem Samba 3.0
NT
oraz częściowo z Windows 95/98/Me i
4.0 SP 6a. Kontrolerem takiej domeny moŜe
być
serwerowa
wersja
systemu
Windows
2000/2003.
Domeny Windows
[global]
netbios name = SERWEREK
server string = CENTOS
workgroup = DOMENA
# uwierzytelnianie
security = user
encrypt passwords = yes
update encrypted = No
smb passwd file = /etc/samba/smbpasswd
unix password sync = no
add machine script = /usr/sbin/useradd -d /dev/null -g machines c 'Konto Maszyny %I' -s /bin/false %u
nt acl support = no
map to guest = Bad User
domain logons = yes
logon script = logon.bat
Domeny Windows
# Skrypt logowania do domeny
net time \\SERWER /set /yes
net use x: \\SERWER\dane
net use z: \\archiwum\homes
Domeny Windows
log file = /var/log/samba/log.%I
max log size = 50
log level = 2
os level = 200
domain master = yes
local master = yes
prefered master = yes
time server = yes
wins support = yes #WINS!
logon home = \\%L\%U\profile
logon path = \\%L\%U\profile
unix charset = ISO8859-2
dos charset = CP852
Domeny Windows
[netlogon]
path = /etc/samba/logon
comment = Usługa logowania
domenowego
guest ok = no
browseable = no
write ok = no
Domeny Windows
SWAT
# cat /etc/xinetd.d/swat
# default: off
# description: SWAT is the Samba Web Admin Tool. Use swat
\
# to configure your Samba server. To use SWAT, \
# connect to port 901 with your favorite web browser.
service swat
{
disable = no
port = 901
socket_type = stream
wait = no
only_from = localhost
user = root
server = /usr/sbin/swat
log_on_failure += USERID
}
SWAT
Klient domeny ADS
W pliku /etc/nsswitch.conf naleŜy
zmodyfikować dwa wpisy (passwd,
group) do poniŜszej postaci:
passwd: files winbind
group: files winbind
Klient domeny ADS
W pliku /etc/krb5.conf w sekcji
[libdefaults] wprowadzić nazwę
domeny Kerberos (w przykładach będzie to
LINUXDOMAIN)
[libdefaults]
default_realm = LINUXDOMAIN.ZSK.P.LODZ.PL
[realms]
LINUXDOMAIN.ZSK.P.LODZ.PL = {
kdc = p14.zsk.p.lodz.pl
}
Klient domeny ADS
#kinit Administrator
workgroup = LINUXDOMAIN
netbios name = SAMBA
security = ADS
realm = LINUXDOMAIN.ZSK.P.LODZ.PL
#net ads join -U
Administrator%password
Klient domeny ADS
Klient domeny ADS
[globals]
template homedir = /home/%D/%U
template shell = /bin/bash
winbind enum users = yes
winbind enum groups = yes
winbind uid = 10000-20000
winbind gid = 10000-20000
winbind separator = +
# LINUXDOMAIN+Administrator
encrypt password = yes
winbind enable local accounts = yes
winbind cache time = 300
winbind trusted domains only = no
Polecenie wbinfo:
wbinfo -t
wbinfo -u oraz wbinfo -g
wbinfo -a
windowsdomain+domainuser%userpassword
Klient domeny ADS
[public]
comment = zasob dostepny tylko dla grupy
prac z domeny LINUXDOMAIN
read only = no
path = /export/samba/public
Valid users = @"LINUXDOMAIN+prac"
[typek_priv]
comment = zasob dostepny tylko dla
uzytkownika typek z doemny LINUXDOMAIN
read only = no
path = /export/samba/typek
valid users = "LINUXDOMAIN+typek"
Samba
Nie działa!!!
- PAM
- /etc/sysconfig/samba :
# Options to smbd
SMBDOPTIONS="-D"
# Options to nmbd
NMBDOPTIONS="-D"
# Options for winbindd
WINBINDOPTIONS="-D"
-DNS
- jeŜeli w logach znajduje się wpis:
(...) winbind[xxxx]: idmap Fatal Error: UID range full (...)
Przy zatrzymanym demonie Winbind – usunąć plik:
/var/cache/samba/winbind_idmap.tdb
??????

Podobne dokumenty