Samba - prvi koraci. Samba File Server Što je samba

Glavna konfiguracijska datoteka Sambe je /etc/samba/smb.conf. Početna konfiguracijska datoteka ima značajan broj komentara za dokumentiranje raznih konfiguracijskih direktiva.

Nisu sve moguće opcije uključene u datoteku zadanih postavki. Pogledajte priručnik čovjek smb.konf ili Samba FAQ za više detalja.

1. Prvo promijenite sljedeće parove ključ/vrijednost u odjeljku datoteka /etc/samba/smb.conf:

Radna grupa = PRIMJER ... sigurnost = korisnik

Parametar sigurnosti nalazi se znatno niže u dijelu i zadano je komentiran. Također zamijeniti PRIMJER na nešto prikladnije vašoj okolini.

2. Napravite novi odjeljak na kraju datoteke ili skinite komentar s jednog od primjera za direktorij koji želite dijeliti:

Komentar = Ubuntu File Server Share path = /srv/samba/share browsable = yes guest ok = yes only read = no create mask = 0755

    komentar: Kratak opis dijeljenog izvora. Koristi se za vašu udobnost.

    staza: put do dijeljenog imenika.

    Ovaj primjer koristi /srv/samba/sharename jer, prema Standardu hijerarhije datotečnog sustava (FHS), /srv direktorij je mjesto gdje bi se trebali nalaziti svi podaci koji se odnose na danu stranicu. Tehnički gledano, dijeljenje Sambe može se postaviti bilo gdje u datotečnom sustavu gdje to dopuštaju ograničenja pristupa datoteci, ali preporučuje se pridržavanje standarda.

    pregledavanje: Omogućuje Windows klijentima pregled sadržaja dijeljenog direktorija pomoću Windows Explorera.

    gost ok: Omogućuje klijentima da se povežu na dijeljeni resurs bez davanja lozinke.

    samo za čitanje: Određuje je li resurs dostupan s privilegijama samo za čitanje ili pisanje. Privilegije pisanja dostupne su samo kada to odredite Ne, kao što je prikazano u ovom primjeru. Ako vrijednost Da, tada će pristup resursu biti samo za čitanje.

    stvoriti masku: određuje koji prava pristupa bit će postavljeno za nove stvorene datoteke.

3. Sada kada je Samba konfigurirana, morate stvoriti direktorij i postaviti dopuštenja za njega. Unesite u terminal:

Sudo mkdir -p /srv/samba/share sudo chown nobody.nogroup /srv/samba/share/

parametar -str govori mkdir-u da stvori potpuno stablo imenika ako ono ne postoji.

4. Na kraju ponovno pokrenite samba servise kako biste primijenili nove postavke:

Sudo restart smbd sudo restart nmbd

Sada možete pretraživati ​​Ubuntu datotečni poslužitelj pomoću Windows klijenta i pregledavati njegove dijeljene direktorije. Ako vaš klijent ne prikazuje vaše dionice automatski, pokušajte pristupiti svom poslužitelju pomoću njegove IP adrese, na primjer, \\192.168.1.1, iz prozora Windows Explorera. Kako biste provjerili radi li sve, pokušajte stvoriti direktorij unutar svojeg dijeljenja iz sustava Windows.

Za stvaranje dodatnih dijeljenja, stvorite novi odjeljak u /etc/samba/smb.conf i ponovno pokrenite Sambu. Samo provjerite je li zajednički imenik stvoren i ima li ispravna dopuštenja.

Zajednički resurs "" i način /srv/samba/dijeli- ovo su samo primjeri. Postavite naziv resursa i naziv direktorija prema vašem okruženju. Dobro je koristiti naziv direktorija resursa u datotečnom sustavu kao naziv resursa. Drugim riječima, resurs se može navesti za /srv/samba/qa direktorij.

Ovaj će se članak usredotočiti na stvaranje bežične mreže lokalna mreža za uređaje s različitim operativnim sustavima Windows sustavi, Linux, Android koristeći Sambu.

U današnje vrijeme gotovo svaki stan ima Wi-Fi mreža, a tu je i veliki broj različitih uređaja (laptopi, pametni telefoni, tableti, Android TV Box). U tom smislu, prije ili kasnije pojavit će se potreba za spajanjem svih uređaja dostupnih za korištenje u jednu kućnu mrežu kako bi se lako pristupilo svim vrstama datoteka s bilo kojeg gadgeta.

O tome će zapravo biti riječi u ovom opusu. Pa krenimo.

Za izgradnju mreže koristit ćemo već gotovo rješenje Samba. Ovo je paket besplatni programi s otvorenim izvorni kod omogućujući vam povezivanje s mrežni pogoni, pisači i druga oprema na različitim operativnim sustavima koristeći vlastiti SMB/CIFS protokol.

Softver se sastoji od dva dijela - poslužitelja i klijenta. Na jedan od uređaja, koji će po definiciji biti glavni, instalirat ćemo Samba server, a na sve ostale Samba klijent.

Instalacija Samba poslužitelja

U mom slučaju za poslužiteljski uređaj odabrao sam prijenosno računalo na kojem su paralelno instalirani Windows 7 i Ubuntu Mate 16.04. U nastavku ćemo detaljno razmotriti postupak instaliranja i konfiguriranja Sambe za oba operativna sustava.

Postavljanje samba poslužitelja pod Linuxom

Prema zadanim postavkama, Samba nije instalirana u Ubuntu, pa to morate učiniti prije nego što nastavite dalje. Kao opciju, kako ne bismo naknadno uređivali Samba konfiguracijsku datoteku preko terminala, instalirat ćemo program Gadmin-Samba koji uz Samba poslužiteljske pakete i GUI.

Za instalaciju upišite u terminal:

Sudo apt instalirajte gadmin-sambu

Nakon dovršetka instalacije pokrenite Gadmin Sambu. Sučelje aplikacije nije rusificirano, ali razumijevanje postavki prilično je jednostavno.


U programu postoji mnogo postavki, ali općenito, u našem slučaju zanima nas kartica "korisnici". Idite na njega i dodajte novog korisnika.


Kliknite gumb "Novi korisnik", unesite korisničko ime u ažurirani prozor, smislite lozinku, dodajte je u grupu (kako ne biste "izmislili kotač", navedite postojećeg, naime "sambausers") i postavite početni direktorij za datoteke. Nakon toga kliknite "Primijeni".


HD Videobox - Novi korisnik

Da biste primijenili promjene, ponovno pokrenite poslužitelj pomoću gumba "deaktiviraj", odnosno "aktiviraj", koji se nalaze u gornjem lijevom kutu prozora aplikacije.


Ne zaboravite, također, postaviti prava pristupa "dijeljenim" mapama za zajednički pristup. To se može učiniti ili putem terminala ili putem grafičkog sučelja Nautilus file explorera.


Nautilus - mijenjanje dopuštenja


Nautilus - Dopuštenje za pisanje datoteke

Postavljanje samba poslužitelja pod Windowsima

U slučaju Windowsa, sve je mnogo prozaičnije, jer se Samba koristi prema zadanim postavkama u ovom operativnom sustavu.

U principu, možete koristiti postojeći račun ili omogućiti pristup gostu. Alternativno, možete stvoriti drugi račun, čiji će se podaci koristiti za pristup mreži

Za kreiranje novog računa potrebno je otići na "kontrolnu ploču", odabrati "upravljanje korisničkim računima" i kreirati novi profil s lozinkom.


Dodavanje novog računa

Kada kreirate novog korisnika, morat ćete odabrati vrstu računa, stvoriti ime i lozinku.


U posljednjoj fazi morat ćete postaviti prava za pregled promjena u "dijeljenim" mapama. To se može učiniti u standardnom Windows Exploreru kroz stavku kontekstni izbornik"properties", u odnosu na mapu koja vam je potrebna.


"Dijeljenje" mape


Dodavanje korisnika i promjena dopuštenja mape

Nakon stvaranja novog korisnika, svakako se ponovno prijavite na trenutnu sesiju kako bi promjene stupile na snagu.

Instalacija Samba klijenta na Android

Za pristup Samba poslužitelju i, sukladno tome, mrežnim pogonima na pokrenutim uređajima Android kontrola Preporučam korištenje aplikacije Root Explorer (link za preuzimanje Puna verzija bez oglašavanja na kraju članka).

Samba je program koji vam omogućuje pristup mrežnim pogonima na raznim operativni sustavi preko SMB/CIFS protokola. Ima klijentske i poslužiteljske dijelove. je besplatno softver, objavljen pod GPL licencom.
Samba radi na većini sustava sličnih Unixu, kao što su GNU/Linux, Solaris kompatibilan s POSIX-om i Mac OS X Server, razne BSD varijante, OS/2, Windows. Samba je uključena u gotovo sve GNU/Linux distribucije, uključujući, naravno, Ubuntu.
Montaža

Napraviti dijeljena mapa U Ubuntu radnoj površini samo kliknite desnom tipkom miša na mapu i odaberite stavku izbornika "Objavi mapu". Nema potrebe za uređivanjem konfiguracijskih datoteka. Sve dolje opisano odnosi se samo na ručno podešavanje, na primjer, u slučaju stvaranja poslužitelja datoteka.
Za instalaciju samo otvorite terminal i unesite:

sudo apt-get instalirajte sambu

Aplikacija će se automatski preuzeti i instalirati.

postavke

Pomoću terminala napravit ćemo sigurnosnu kopiju početne konfiguracijske datoteke:

Sudo cp /etc/samba/smb.conf(,.bak)

Sada možete urediti datoteku postavki /etc/samba/smb.conf; da biste to učinili, otvorite je u bilo kojem uređivaču teksta s pravima superkorisnika. Na primjer, ovako:

Sudo nano /etc/samba/smb.conf Primjer konfiguriranja Sambe kao samostalnog poslužitelja datoteka s autorizacijom: ; Globalne postavke poslužitelji; Opće postavke poslužitelja; Naziv računala koji će biti prikazan u mrežnom okruženju netbios name = main-server server string = ; Radna skupina klijenti radna grupa = RADNA GRUPA objavljuje verziju = 5.0 opcije utičnice = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = tdbsam sigurnost = korisnik null passwords = true ; Datoteka za pseudonime korisničkih imena mapa korisničkih imena = /etc/samba/smbusers name resolve order = hosts wins bcast ; wins podrška postavljena je na yes ako je vaš nmbd(8) u Sambi WINS poslužitelj. Nemojte postavljati ovaj parametar na yes osim ako imate više podmreža i ne želite da vaš nmbd djeluje kao WINS poslužitelj. Nikada ne postavljajte ovaj parametar na yes na više od jednog stroja unutar iste podmreže. dobiva podršku = ne; Printer support printing = CUPS printcap name = CUPS ; Dnevnici zapisnika = /var/log/samba/log.%m syslog = 0 samo syslog = ne ; Konfiguriranje vezanja na koja sučelja slušati, ako slušanja na svim sučeljima nisu navedena; sučelja = lo, eth0 ; vezati samo sučelja = istina; ; ; put = /var/lib/samba/printers ; pregledavanje = da; gost ok = da ; samo za čitanje = da ; napiši popis = korijen; kreiraj masku = 0664; maska ​​imenika = 0775 ; ; ; put = /tmp; ispis = da ; gost ok = da ; pregledavanje = ne; ; ;path = /media/cdrom ;browseable = yes ;read only = yes ;guest ok = yes ; Lopta tvrdog diska; Naziv lopti je vidljiv od klijenata; Put do zajedničkog diska path = /media/sda1 ; Je li moguće pregledavati browseable = da read only = no guest ok = no create mask = 0644 directory mask = 0755 ; Vezanje za određeno korisničko ime ili grupu, imena odvojena razmakom; forsirati korisnik = korisnik1 korisnik2; sila grupa = grupa1 grupa2 ; Još HDD, slično onome što je iznad path = /media/sde1 browseable = yes read only = no guest ok = no create mask = 0644 directory mask = 0755

Sada se moramo pozabaviti korisnicima.

Samba koristi korisnike koji su već u sustavu, uzmimo ime user kao primjer, recimo da je već u sustavu, moramo ga dodati u SMB bazu podataka i dodijeliti lozinku za pristup zajedničkim resursima, mi ćemo učinite to naredbom:

Smbpasswd -korisnik

Od vas će se tražiti da unesete lozinku, korisnik će biti dodan u bazu podataka, sada morate omogućiti ovog korisnika.

Smbpasswd -e korisnik

Zatim, stvorimo alias za korisničko ime korisnika kako bismo lakše mogli pristupiti sa Windows računala na kojem imamo, na primjer, korisnika pod imenom Admin. Da bismo to učinili, kreirat ćemo i urediti datoteku /etc/ samba/smbusers:

Sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Napišite nekoliko redaka u datoteku

# Unix_name = SMB_name1 SMB_name2 korisnik = Admin

Ovo dovršava postavljanje, ponovno pokrenite Sambu.

Samba datotečni poslužitelj za Windows mrežu

Samba se vrlo često koristi za stvaranje poslužitelja datoteka na Windows mreži.

Poslužitelj datoteka kao dio domene Active Directory

Kako biste stvorili datotečni poslužitelj integriran u domenu Active Directory, prvo ćete morati pridružiti svoj Ubuntu stroj domeni. O tome je posvećen poseban članak:

Da biste kreirali poslužitelj datoteka, ne morate konfigurirati PAM, samo dodajte korisnike domene i grupe preko Winbinda u sustav.

Nakon uspješne prijave u domenu, sve što trebate učiniti je konfigurirati zajedničke resurse na vašem računalu.

Ovdje odmah treba obratiti pozornost na jednu vrlo važnu stvar: Samba pokušava preslikati prava na Windows datoteke na Unix prava, međutim, zbog temeljnih razlika u mehanizmima dodjele prava, to nije uvijek moguće. Imajte na umu da prava na datoteke uvijek iu svakom slučaju kontrolira vaš datotečni sustav na računalu s Ubuntuom; Samba im se može samo prilagoditi, ali ne i promijeniti njihovo ponašanje.

Stoga će zajednički resursi prema zadanim postavkama imati vrlo ograničene mogućnosti kontrole pristupa - dodjeljivanje različitih prava korisniku, grupi i svima ostalima. Međutim, to se može lako popraviti dodavanjem POSIX ACL podrške vašem FS-u. U ovom slučaju bit će moguće dodijeliti različita prava različitim korisnicima i grupama, slično kao u Windowsima.

POSIX ACL podrška dostupna je u najmanje ext3/4; da biste je aktivirali, samo trebate dodati acl parametar opcijama montiranja željene particije.

Važno je da direktorij koji želite dijeliti putem Sambe bude na disku montiranom s opcijom acl. U protivnom nećete moći pravilno koristiti mehanizam za razgraničenje prava pristupa datotekama na dijeljenim datotekama.

Postoji još jedna vrlo važna točka: POSIX ACL-ovi ne podržavaju nasljeđivanje prava pristupa iz nadređenih direktorija, ali u Windowsima je ova značajka prisutna. Stoga Samba implementira dodatni mehanizam za pohranjivanje informacija o nasljeđivanju prava pristupa, koji koristi atribute proširenog datotečnog sustava. Stoga, kako bi Samba ispravno rukovala nasljeđivanjem prava koja nisu acl, potrebno je dodati parametar user_xattr opcijama montiranja datotečnog sustava, koji je odgovoran za omogućavanje podrške za proširene atribute.

Na primjer, uvijek koristim odvojene LVM diskove za organiziranje zajedničkih resursa, a moje fstab linije za njih izgledaju otprilike ovako:

/dev/mapper/data-profiles /var/data/profiles ext3 defaults,noexec,acl,user_xattr 0 2

Opcija noexec je potrebna jer na Windowsima ne bi trebalo biti 100% izvršne datoteke Linux, i neće škoditi ako budete na sigurnoj strani.

Za rad s acl-om na Ubuntuu morate instalirati paket odgovarajućih uslužnih programa:

Sudo aptitude instalirati acl

Zatim možete vidjeti proširena prava (tj. ACL) za datoteku ili direktorij s naredbom

Getfacl datoteka

I instalirajte naredbom

Setfacl datoteka

Za svaki slučaj, želio bih vam skrenuti pozornost na činjenicu da POSIX ACL mehanizam nema nikakve veze sa Sambom - on je jednostavno dodatak standardnom mehanizmu za podjelu prava u Linuxu. Sukladno tome, Samba ga može koristiti, ali ga ne može promijeniti ili zaobići na bilo koji način.

Za rad s proširenim FS atributima trebat će vam pomoćni paket vrlo sličan acl - attr , koji se može instalirati naredbom

Sudo aptitude instalirati attr

Za pregled proširenih atributa možete koristiti naredbu

Getfattr datoteka

I za ugradnju

Setfattr datoteka

Međutim, postoji jedna mala kvaka. Činjenica je da Samba pohranjuje sve informacije o nasljeđivanju u binarnom obliku u jednom proširenom atributu user.SAMBA_PAI. Stoga nećete moći ništa promijeniti koristeći setfattr, osim ako u potpunosti uklonite proširene atribute (ponekad je to potrebno učiniti).

Pa, morat ćete upravljati nasljeđivanjem prava sa Windows stroja koristeći standardne alate ovog sustava. Ili pomoću uslužnog programa smbcacls, ako znate kako ga koristiti.

Postoji i eksperimentalni VFS modul acl_xattr, koji vam omogućuje pohranjivanje NT ACL-ova u potpunosti u proširenim atributima. Nažalost, ne postoji nikakva dokumentacija o tome, pa je teško reći nešto razumljivo o tome. Očekuje se da će Samba 4 imati punu integriranu podršku za NT ACL-ove, ali za sada možete koristiti ono što je dostupno.

Ako imate nešto dodati o proširenim atributima u Sambi i metodama rada s njima, svakako pišite na ovu temu na forumu. Bio bih zahvalan za sve linkove, članke i komentare na tu temu.

Osim toga, prošireni atributi datotečnog sustava omogućuju Sambi da omogući potpunu podršku za DOS atribute datoteka kao što su skriveni, arhivski, itd.

Dakle, pretpostavimo da imate direktorij na sustavu koji želite dijeliti putem Sambe (i nalazi se na disku montiranom s podrškom za acl i user_xattr). Sada zapravo trebate konfigurirati njegovo dijeljenje. Da biste to učinili, trebate unijeti odgovarajuće podatke u datoteku /etc/samba/smb.conf.

Počnimo s općim postavkama koje se mogu dodati u odjeljak ove datoteke (ovo nisu svi mogući parametri, samo nekoliko vrlo korisnih):

# Onemogućite dijeljenje pisača. Osim, naravno, ako ih stvarno ne želite podijeliti. # Za potpuno gašenje morate navesti sva 4 retka ispod load printers = no show add printer wizard = no printcap name = /dev/null disable spoolss = yes # Učini skrivenim kada se gleda s Windows datoteke sa sljedećim imenima hide files = /$RECYCLE.BIN/desktop.ini/lost+found/Thumbs.db/ # Koristite sljedećeg UNIX korisnika kao gosta za javno dijeljenje dijeljenja računa gosta = nitko # Tretirajte neregistrirane korisnike kao goste mapirajte guest = Loš korisnik ## Postavke koje koriste atribute proširenog datotečnog sustava # Rukovanje nasljeđivanjem prava korištenjem proširenih atributa datotečnog sustava map acl inherit = da # Koristi proširene atribute datotečnog sustava za pohranu DOS atributa pohrani dos atribute = da # Onemogući mapiranje DOS atributa na UNIX-u prava omogućena zadana # Prema čovjeku smb.conf, kada koristite proširene atribute, ove opcije moraju biti onemogućene arhiva karte = nema sustava karte = nema skrivene karte = nema karte samo za čitanje = ne

Sada postavke za izravno dijeljeni resurs. Ja to zovem profilima, a fizički na Ubuntu stroju na kojem se nalazi /var/data/profiles:

# Komentar komentara = Korisnički profili # Put do mape koju dijelimo path = /var/data/profiles/ # Korisnici s neograničenim pravima pristupa dijeljenju # Imam grupu administratora domene. # Kada radite s datotekama, ovi se korisnici tretiraju kao lokalni root admin korisnici = "@DOMAIN\Domain Administrators" # Sakrij mape kojima korisnik nema pristup sakrij nečitljivo = da # Pristup koji nije samo za čitanje samo za čitanje = ne # Maske za stvorene datoteke - mogu se postaviti po želji #create mask = 0600 #directory mask = 0700 # Onemogućavanje zaključavanja - bolje je onemogućiti zaključavanje = ne

Postoje mnoge druge mogućnosti - isplati se konzultirati Samba dokumentaciju za detalje.

Ne zaboravite postaviti ispravan vlasnik i prava pristupa mapi koju dijelite, inače, unatoč svim samba postavkama, pisanje u nju može biti zabranjeno na razini dopuštenja za Linux. Obično to radim ovako:

Sudo chmod ug+rwx /var/data/profiles sudo chown root:"korisnici domene" /var/data/profiles

Imajte na umu, budući da je vaš Ubuntu stroj pridružen domeni, možete koristiti korisnike domene i grupe kao vlasnike datoteka izravno u Ubuntuu.

Provjerite je li Samba konfiguracija ispravna s naredbom

Testparm

Zatim ponovno pokrenite Sambu:

Sudo /etc/init.d/samba ponovno pokrenite

Sada možete pristupiti dijeljenom resursu s bilo kojeg stroja u domeni.

Usput, ne zaboravite na SGID i Sticky bitove za imenike. Oni će vam omogućiti da naslijedite vlasničku grupu i spriječiti korisnike da izbrišu datoteke koje nisu njihove - ovo može biti vrlo zgodno za pohranu za više korisnika. Međutim, za razliku od prava na uređivanje iz sustava Windows, mijenjanje ovih bitova u mapama na zajedničkom resursu neće raditi - samo ručno izravno na Ubuntu računalu.

Između ostalog, Samba vam omogućuje organiziranje pohranjivanja prethodnih verzija datoteka, što je ponekad korisno pri stvaranju zajedničkih resursa s korisničkim podacima.

Samostalni poslužitelj datoteka

Nemaju svi domenu Active Directory. Stoga se često javlja potreba za organiziranjem Linux stroj izvanmrežno skladištenje datoteka s vlastitim sustavom autorizacije. Vrlo je jednostavno za napraviti.

Glavna značajka ove organizacije pohrane datoteka bit će da će svi podaci o korisnicima biti pohranjeni u Samba bazi podataka, sukladno tome, korisnici će se morati ručno dodavati i brisati u Sambu.

Najvažnije je odlučiti o načinu pristupa resursu. Da biste ga promijenili, morate ispravno postaviti vrijednost sigurnosnog parametra u odjeljku datoteke /etc/samba/smb.conf. Više o ovom parametru možete pročitati ili u službenoj dokumentaciji.

Obično je vrijednost koja se koristi udio ili korisnik.

Samostalni poslužitelj datoteka bez autorizacije

Zgodno je za kuću da svatko svakoga vidi. To se može učiniti dodavanjem 4 reda u odjeljak /etc/samba/smb.conf datoteke. Neki možda već postoje.

[globalna] radna grupa = mapa RADNE GRUPE na gosta = loš korisnik netbios ime = BILJEŽNICA sigurnost = korisnik

NOTEBOOK - naziv računala koje će biti na mreži. Osim toga, morate instalirati dodatni programi:

sudo apt-get instalirajte sambu

Za kubuntu također morate instalirati smb4k. Nakon uređivanja konfiguracija, trebate ponovno pokrenuti usluge. U systemd-u (od 15.04) ponovno pokretanje izgleda ovako:

sudo systemctl restart smbd.service nmbd.service

Možete vidjeti "lopte" kroz preglednik datoteka nautilus, konkueror ili ovako:

Smbclient -L 127.0.0.1

. Službena dokumentacija na engleskom jeziku.

Dijeljenje mape na ubuntu

Stvorite mapu za dijeljenje datoteka.

mkdir ~/dijeli

Dodajte sljedeće retke na kraj datoteke /etc/samba/smb.conf, zamjenjujući yuraku1504 korisničkim imenom računala na kojem je pokrenuta Samba:

[ MyShareWork] komentar = Anonymous Samba Share path = / home/ yuraku1504/ share guest ok = da za pregledavanje = da za pisanje = da samo za čitanje = bez prisilnog korisnika = yuraku1504 prisilna grupa = yuraku1504

Mapa će se otvoriti za čitanje i pisanje.

U današnje vrijeme prilično je uobičajeno pronaći računala s Linuxom i Windowsima na istoj lokalnoj mreži. Razlozi za ovu simbiozu mogu biti različiti: na primjer, vlasnici internetskog kafića nisu imali dovoljno sredstava za kupnju licenciranog OS-a za sva računala ili Administrator sustava Jednostavno su me privukle pozitivne strane Linuxa. Popularnost Microsoftovih operativnih sustava uvelike je određena klijentskim softverom za Windows. Nije tajna da je ovaj softverski sektor vrlo razvijen. Mnoge tvrtke su uložile ozbiljne napore u to i stvorile su stvarno dobre, i što je najvažnije, jednostavne programe koje čak i obični korisnik može lako savladati. Ali kao poslužitelja, pozicija Windowsa više nije tako jasna. Poslužitelj koji pokreće Unix tradicionalno se odlikuje pouzdanošću, stabilnošću, sigurnošću i često nižim zahtjevima za resursi sustava. Ali u svakom slučaju, jednostavno povezivanje računala s različitim softverskim platformama na mrežu neće dobiti očekivani rezultat. Cijeli je problem što ova dva sustava koriste različita načela organizacije mrežnih resursa koji su međusobno nekompatibilni.
Budući da nema potrebe čekati Microsoftovu milost, a Windows vjerojatno neće naučiti raditi s Unix mrežnim datotečnim sustavom (NFS) standardnim sredstvima, i da budem iskren, ne znam nikakve programe trećih strana, najpopularniji način je pokušati naučiti Unix da se "pretvara" da je Windows NT.

Interakcija u mreži računala pod Windows kontrola izgrađen na korištenju protokola SMB (Blok poruka poslužitelja)— blokovi poruka poslužitelja. Osigurava izvođenje svih zadataka potrebnih u ovim slučajevima: otvaranje i zatvaranje, čitanje i pisanje, traženje datoteka, stvaranje i brisanje direktorija, postavljanje zadatka ispisa i njegovo brisanje od tamo. Sve radnje potrebne za to implementirane su u operativnim sustavima sličnim Unixu pomoću paketa SAMBA. Njegove mogućnosti mogu se podijeliti u dvije kategorije: pružanje resursa (pri čemu mislimo na pristup sustavu pisača i datotekama) za Windows klijenti i pristup klijentovim resursima. To jest, računalo s Linuxom može djelovati i kao poslužitelj i kao klijent. Prvo, razmotrimo opciju SAMBA poslužitelja.

Što bi SAMBA trebala pružiti normalna operacija na mreži Windows strojeva? Prvo, kontrola pristupa, koja se može implementirati ili na razini resursa (razina dijeljenja), kada se lozinka i odgovarajuća pravila korištenja dodjeljuju bilo kojem resursu na mreži (na primjer, "samo za čitanje"), dok korisničko ime ima apsolutno ne nema smisla; ili naprednijom i fleksibilnijom organizacijom na razini korisnika, kada se za svakog korisnika kreira račun koji osim imena i lozinke sadrži sve potrebne podatke o pravima pristupa resursu. Prije pristupa traženom resursu, svaki korisnik se autentificira, nakon čega mu se dodjeljuju prava prema njegovim računima. Drugo, nužna je emulacija prava pristupa određenih datotečnim sustavom. Stvar je u tome što sustavi o kojima je riječ imaju različita prava pristupa datotekama i direktorijima na disku. U Unixu tradicionalno postoje tri kategorije korisnika datoteka: vlasnik, skupina I ostalo (ostalo). Svaki od ovih entiteta može se osigurati dopuštenja za čitanje, pisati I izvršenje. U sustavu Windows NT sustav pristupa je nešto fleksibilniji, pristup se odobrava za više grupa ili korisnika, a pripadajuća prava pristupa određuju se zasebno za svaki subjekt. Stoga je nemoguće u potpunosti emulirati prava pristupa svojstvena NTFS-u pomoću SAMBA-e.

S klijentima koji trče Windows 9x, situacija je drugačija. Još od vremena djeda DOS-a, zbog činjenice da je sustav jednokorisnički i nije moglo biti govora o bilo kakvim korisnicima, a kamoli grupama, za FAT datotečni sustav definirana su samo četiri atributa - samo za čitanje, sustav, arhiva i skriveni. Osim toga, u Windowsima, za razliku od Unixa, ekstenzija datoteke ima posebno značenje - one koje su namijenjene za pokretanje imaju ekstenzije .exe, .com ili .bat. Prilikom kopiranja datoteka s Unix strojeva na Windows računala, atributi su postavljeni ovako:

samo za čitanje— čitanje, pisanje za vlasnika;

arhivski— ovrha za vlasnika;

sistemski— izvršenje za grupu;

skriveno - izvršenje za grupu.

Mreža Windows strojeva može se organizirati kao radna grupa, kada su računala neovisna jedno o drugom i svako ima vlastitu bazu lozinki i prijava s vlastitom sigurnosnom politikom, a također i kao NT domena. Upravlja se cjelokupnom osnovom za autentifikaciju korisnika i računala primarni kontroler domene (PDC, Primary Domain Controller), tj. centralizirano. Samba vam omogućuje da ograničite pristup na svim ovim razinama i djeluje kao "glavni preglednik" u kontekstu radne grupe ili kontrolera domene.

Riješili smo opća organizacijska pitanja. Pogledajmo sada konkretno implementaciju i konfiguraciju SAMBA poslužitelja u Linuxu. Da bi Samba poslužitelj radio, moraju biti pokrenuta dva demona: smbd, koji pruža uslugu ispisa i dijeljenja datoteka za Samba klijente (kao što su Windows svih vrsta), i nmbd, koji pokreće NetBIOS uslugu imena (također se može koristiti za postavljanje upita drugim demonima usluge naziva). Protokol se koristi za pristup klijentima TCP/IP. Samba se obično instalira s distribucijom Linuxa. Kako provjeriti? Samo dajte naredbu:

$gdje je samba

i trebali biste dobiti nešto poput ovoga:

Samba: /usr/sbin/samba /etc/samba /usr/share/man/man7/samba.7.gz

Ako nije uključen u standardnu ​​distribuciju, onda dobrodošli na ftp://ftp.samba.org/pub/samba/samba-latest.tar.gz ili na gotovo bilo koji poslužitelj s programima za Linux. Paket se lako instalira, pa da ne bi zauzimao prostor, pretpostavit ćemo da ga imate instaliran. Sada provjerimo radi li demon:

$ ps -aux | grep smbd root 1122 0,0 0,6 4440 380 ? S 16:36 0:00 smbd -D

Kao što vidite, već ga pokrećem. Ako ga nemate, a želite da se pokrene kad se sustav digne, onda u Linux Mandrakeu npr. označite željeni okvir u DrakConfpokretanje usluga ili u crveni šešir Upravljačka pločaKonfiguracija usluge, obično je ovo dovoljno. Ili pokrenite ručno: ./etc/rc.d/init.d/smb start. Jedina Samba konfiguracijska datoteka zove se smb.conf i obično se nalazi u /etc direktoriju (iako je u AltLinuxu, na primjer, u /etc/samba direktoriju). Usluga SAMBA čita je svakih 60 sekundi, tako da promjene u konfiguraciji stupaju na snagu bez ponovnog pokretanja, ali se ne odnose na već uspostavljene veze.

Zbog toga volim Linux, jer su konfiguracijske datoteke čisti tekst (i dobro komentirane unutra), a kako biste koristili većinu parametara, samo trebate odkomentirati odgovarajući redak. Datoteka smb.conf nije iznimka. Sastoji se od imenovanih odjeljaka koji počinju nazivom odjeljka u uglatim zagradama. Unutar svakog odjeljka nalazi se niz parametara u obliku ključ=vrijednost. Konfiguracijska datoteka sadrži četiri posebna odjeljka: , , i pojedinačne resurse (dionice). Kao što naziv sugerira, odjeljak sadrži najopćenitije karakteristike koje će se primjenjivati ​​posvuda, ali koje se, međutim, mogu nadjačati u odjeljcima za pojedinačne resurse. Neki parametri u ovom odjeljku također su relevantni za konfiguriranje Samba klijentskog dijela.

Vrijednosti tipičnih parametara odjeljka globalno:

Workgroup = group_name # naziv radne grupe na Windows mreži netbios name = naziv poslužitelja na mrežnom poslužitelju string = komentar koji je vidljiv u prozoru svojstava pregledavanja mreže guest ok = yes # dopuštanje prijave gosta (guest ok = ne - gost prijava je zabranjena) guest account = nitko # ime pod kojim je dozvoljena prijava gosta security = user # Razina pristupa. korisnik - na razini korisnika, sigurnost = dijeljenje - provjera autentičnosti na temelju korisničkog imena i lozinke. Prilikom pohranjivanja baze podataka lozinki na drugom SMB poslužitelju koriste se vrijednosti security = server i password server = name_server_NT. Ako je poslužitelj član domene, koristi se vrijednost security = domain, pristupna lozinka navedena je u datoteci definiranoj pomoću opcije smb passwd file = /path/to/file.

Osim toga, tijekom registracije možete koristiti šifrirane i nešifrirane (plain-text) lozinke. Potonji se koriste u stari Windowsi(Windows za radne grupe, Windows 95 (OSR2), sve verzije Windows NT 3.x, Windows NT 4 (do servisnog paketa 3)). Da biste omogućili opciju korištenja šifrirane lozinke, upotrijebite opciju encrypt password = yes. Obratite posebnu pozornost na ovu opciju. U starijim distribucijama Linuxa koje su stvorene tijekom ere Windows 95 (i kasnije), stara verzija Samba) enkripcija lozinke onemogućena je prema zadanim postavkama, a samba je do verzija 2.0 uopće ne podržava ovaj način rada (usput, ova opcija i slične - one koje se ne odnose na pristup određenim resursima - također se koriste u klijentu).

Za ispravan prikaz ruskih naziva datoteka potrebne su sljedeće opcije: kodna stranica klijenta = 866 i skup znakova = koi8-r. U distribucijama s dobrom lokalizacijom, na primjer, izvedenicama iz Mandrakea i ruskim, ovaj redak već postoji; ponekad je dovoljno samo odkomentirati ga, ali u većini drugih morate ga sami dodati.

Opcija sučelja = 192.168.0.1/24 određuje na kojoj mreži (sučelju) program treba raditi ako je poslužitelj spojen na nekoliko mreža odjednom. Prilikom postavljanja parametra samo sučelja vezanja = da, poslužitelj će odgovarati samo na zahtjeve iz ovih mreža.

domaćini dopuštaju = 192.168.1. 192.168.2. 127. — definira klijente kojima je dopušten pristup usluzi.

U globalnom dijelu možete koristiti razne varijable za fleksibilniju konfiguraciju poslužitelja. Nakon uspostavljanja veze, umjesto njih se zamjenjuju stvarne vrijednosti. Na primjer, u direktivi log file = /var/log/samba/%m.log, parametar %m pomaže definirati zasebnu log datoteku za svaki klijentski stroj. Ovo su najčešće varijable koje se koriste u globalnom odjeljku:

%a - OS arhitektura na klijentskom računalu (moguće vrijednosti - Win95, Win NT, NEPOZNATO itd.);

%m — NetBIOS naziv klijentskog računala;

%L — NetBIOS naziv SAMBA poslužitelja;

%v — SAMBA verzija;

%I — IP adresa klijentskog računala;

%T — datum i vrijeme;

%u je ime korisnika koji radi s uslugom;

%H je matični direktorij korisnika %u.

Također, za fleksibilniju konfiguraciju, koristi se direktiva include, koristeći gore navedene varijable. Na primjer: include = /etc/samba/smb.conf.%m - sada kada zatražite prodaju s računala i postoji datoteka /etc/samba/smb.conf.sales, konfiguracija će se preuzeti iz ove datoteke. Ako ne postoji posebna datoteka za određeni stroj, onda se za rad s njim koristi zajednička datoteka.

Postoji i jedna zanimljiva mogućnost stvaranje virtualni poslužitelj . Da biste to učinili, upotrijebite parametar netbios aliasa:

Netbios aliasi = administrator računovodstva prodaje

Sada govorimo Sambi da koristi vlastitu konfiguracijsku datoteku za svaki virtualni poslužitelj:

Uključi = /etc/samba/smb.conf.%L

U prozoru mrežnog preglednika bit će vidljiva tri poslužitelja: prodajni, računovodstvo, admin.

Omogućavanje opcija čuvanja malih i malih slova i kratkih čuvanja malih i velikih slova uzrokuje da poslužitelj sprema sav unos na način koji razlikuje velika i mala slova (u sustavu Windows velika i mala slova nisu osjetljiva na velika i mala slova, na svim Unix sustavima je obrnuto).

Odjeljak omogućuje korisnicima da se povežu na svoje radne direktorije bez njihovog eksplicitnog opisa. Kada klijent zatraži svoj direktorij //sambaserver/sergej, stroj traži odgovarajući opis u datoteci i, ako ga ne pronađe, traži prisutnost ovog odjeljka. Ako particija postoji, ona pretražuje datoteku lozinke kako bi pronašla radni direktorij korisnika koji je podnio zahtjev i, ako se pronađe, čini ga dostupnim korisniku.

Tipičan opis ovog odjeljka izgleda ovako:

Komentar = Home Directories # komentar koji je vidljiv u prozoru mrežnih svojstava browseable = no # određuje hoće li se izvor prikazati na popisu za pretraživanje. writable = yes # dozvoljava (ne - zabranjuje) pisanje u početni direktorij način kreiranja = 0750 # prava pristupa za novostvorene datoteke način rada direktorija = 0775 # također, ali samo za direktorije

Nakon konfiguriranja zadanih postavki, možete stvoriti mrežne resurse kojima može pristupiti određeni korisnik ili grupa korisnika. Takav se resurs stvara iz već postojećeg imenika; za to pišemo u datoteku:

Komentar = Javna staza = /home/samba public = da za pisanje = ne za ispis = nema liste za pisanje = administrator, @sales

Parametar staze pokazuje na direktorij u kojem se nalazi resurs; public parametar specificira može li se resurs koristiti od strane gosta, a printable parametar specificira može li se resurs koristiti za ispis. Parametar popisa pisanja omogućuje vam da definirate korisnike kojima je dopušteno pisati u resurs bez obzira na vrijednost za pisanje (u ovom primjeru, to su administratorski korisnik i prodajna grupa). Moguće je koristiti i suprotnu listu - čitaj listu. Ako je potrebno sakriti neke datoteke, tada u Unix/Linuxu naziv datoteke mora započeti s točkom (parametar hide dot files, koji kontrolira prikaz skrivene datoteke, prema zadanim postavkama Da). Osim toga, moguće je odrediti predloške za nazive skrivenih datoteka, za što se koristi parametar hide files. Svaki uzorak počinje i završava znakom kose crte (/) i može sadržavati znakove koji se koriste u regularnim izrazima. Na primjer: sakrij datoteke = /*.log/??.tmp/. Takvi trikovi koštaju korisnike Windowsa samo postavljanjem opcije “Prikaži skriveno i sistemske datoteke»Dirigent. Da biste pouzdano ograničili dostupnost (mogućnost brisanja) datoteke (imenika), upotrijebite parametre veto datoteka i brisanje datoteka veta.

Kod CD pogona situacija je nešto kompliciranija. Stvar je u tome što u sustavima sličnim Unixu ne postoji koncept diska kao takvog, a da bi se dobio pristup željenom uređaju, mora se prvo montirati u stablo direktorija (# mount -t iso9660 /dev/cdrom / mnt/cdrom) , i nakon upotrebe, kako se ne bi uništio sustav datoteka, mora biti odmontiran (# umount /dev/cdrom), inače uređaj jednostavno neće predati disk. Ako na vašem poslužitelju radi demon autofs, onda se problem lako rješava. Za automatsko isključivanje uređaja koji neko vrijeme nije korišten, postavite parametar vremenskog ograničenja u datoteci /etc/auto.master na željenu vrijednost. Na primjer:

/mnt/auto/etc/ --timeout=5

(sličan red već postoji, samo ga trebate odkomentirati). Zatim postavite opcije za odgovarajući uređaj u datoteci /etc/auto.tab:

Cdrom -fstype=auto,ro:/dev/cdrom

Nakon svega ovoga, pišemo sljedeće retke u /etc/smb.conf kako bi ovaj resurs bio dostupan:

Put = /mnt/cdrom za pisanje = br

Druga opcija je korištenje preexec i postexec direktiva, koje označavaju koje se naredbe moraju izvršiti prilikom pristupa resursu i nakon prekida veze s njim (ovi parametri se mogu specificirati za bilo koji resurs, pa čak iu globalnom dijelu, što otvara velike mogućnosti) .

Put = /mnt/cdrom read only = yes root preexec = mount /mnt/cdrom # Samo root ima pravo montirati resurs root postexec = umount /mnt/cdrom # Naravno, ove točke montiranja moraju biti opisane u /etc/ fstab datoteku, u suprotnom morate također navesti druge informacije.

Sada, kada se pristupa resursu, CD-ROM se automatski montira, a ponekad i demontira. Cijeli problem je u tome što odluku o zatvaranju resursa mora donijeti poslužitelj - klijenti, u pravilu, o tome ne obavještavaju. Ali obično se to događa jer resurs koristi nekoliko korisnika u isto vrijeme ili je ostavljen na jednom računalu otvorena datoteka na ovom resursu (Uređaj je zauzet). Stoga se CD-ROM ne odmontira automatski; jedini prihvatljivi način za oslobađanje resursa je traženje pomoću uslužnog programa smbstatus broj procesa koji koristi ovaj resurs i ubijte ga naredbom # kill pid_number (ili kill -s HUP pid_number).

Nakon što smo uspostavili potrebnu konfiguraciju, sada ćemo kreirati korisničke račune (s izuzetkom prijave gosta s minimalnim pravima nitko). Za identifikaciju SAMBA korisnika koristi se datoteka /etc/samba/smbpasswd koja sadrži korisnička imena i šifrirane lozinke. Budući da mehanizam šifriranja u mrežama Windows strojeva nije kompatibilan sa standardnim Unix mehanizmima, za ispunjavanje datoteke lozinke koristi se poseban uslužni program - smbpasswd.

# useradd -s /bin/false -d /home/samba/sergej -g prodaja sergej # smbpasswd -a sergej # smbpasswd -e sergej

Ovaj primjer dodaje novog korisnika sergej pripadnost grupi prodajni, s lažnom ljuskom (moguće opcije su /sbin/nologin, /dev/null) i početnim imenikom /home/samba/sergej. Zatim kreiramo lozinku za korisnika sergej i posljednji korak je omogućiti pristup korisniku, jer onemogućeno je prema zadanim postavkama. Zanimljiva točka koja ponekad može biti zbunjujuća. Činjenica je da prilikom spajanja na SAMBA poslužitelj na računalu sa sustavom Windows NT/2000 od korisnika se traži da unese, očekivano, prijavu i lozinku, a ako se za pristup koristi računalo sa sustavom Windows 9x/Me, onda od korisnika se traži da unese samo lozinku, a Prijava se automatski generira na temelju registracijskog imena.

Također možete mapirati više Windows korisnika na jednog Linux/Unix korisnika. Da biste to učinili, kreira se datoteka mapiranja /etc/smbusers.map u kojoj je svako mapiranje navedeno kao zaseban redak:

Korisnik_Linux = korisnik_win1 korisnik_win2 korisnik_winN

U odjeljku dodajte redak korisničko ime map = /etc/smbusers.map. pri čemu Windows korisnik mora biti registriran s lozinkom korisnika s kojim je povezan.

Pomoću SAMBA-e možete organizirati mrežni ispis s računala s operativnim sustavom Windows (ako planirate zasebni ispisni poslužitelj, tada je za to dovoljan stroj temeljen na procesoru 486).

Da biste to učinili, morate napisati sljedeće retke u odjeljku:

Printcap name = /etc/printcap # datoteka koja opisuje pisače spojene na sustav load printers = yes # označava potrebu za automatskim uključivanjem u popis mrežnih resursa printing = lprng # sustav ispisa (za Linux se može koristiti i bsd).

Put = /var/spool/samba # pokazuje na direktorij u koji su postavljeni poslovi ispisa pregledavanje = da ispis = da samo za čitanje = da

Nakon što izradite datoteku, testirajte je pomoću uslužnog programa testparm. Nažalost, korištenjem ovog programa možete detektirati samo sintaktičke pogreške, ne i logičke, tako da nema jamstva da će usluge opisane u datoteci ispravno raditi (tijekom testiranja bit će prikazane sve postavke, čak i one instalirane prema zadanim postavkama - stoga pažljivo pregledajte proizlaziti). Ali ako se program ne žali, možete se nadati da će datoteka biti preuzeta bez problema kada se pokrene. Ispravan rad pisača navedenih u datoteci /etc/printcap možete provjeriti sa SAMBA poslužiteljem koristeći pomoćni program testprns. Osim toga, ne zaboravite na .log datoteke: ako se pojave problemi, tamo ponekad možete pronaći rješenje.

Sada malo o dobrim stvarima. Konfiguriranje Sambe prilično je složeno, ali distribucija dolazi s web-upravljačkim alatom koji se zove spljeskati(Alat za web administraciju Samba, ). Swat radi kao usluga ili pomoću Apache poslužitelja i dizajniran je za uređivanje datoteke smb.conf, kao i za provjeru statusa, pokretanje i zaustavljanje Samba demona i promjenu korisničkih lozinki. Da bi radila kao usluga, datoteka /etc/services mora sadržavati redak swat 901/tcp, a datoteka /etc/inetd.conf mora sadržavati swat stream tcp nowait.400 root /usr/local/samba/bin/ swat swat (ovo je ako se koristi mrežni demon inetd, obično u starijim distribucijama; moderne distribucije koriste sigurniju opciju - xinetd). Kako biste koristili swat u direktoriju /etc/xinet.d, kreirajte swat datoteku sa sljedećim sadržajem:

Service swat ( disable = no port = 901 socket_type = stream wait = no only_from = 127.0.0.1 # ovo je linija koja se pokreće samo s lokalnog korisnika stroja = root server = /usr/sbin/swat log_on_failure += USERID )

Sada za pokretanje Swata u prozoru preglednika unesite:

http://localhost:901

Ali prije toga svakako kreirajte korisnika admin na gore opisani način. I nikada nemojte pokretati uslugu SAMBA u ime korijen.

Nakon svih promjena u datoteci smb.conf, ponekad ćete morati ponovno pokrenuti demon:

Smb: /etc/rc.d/init.d/smb ponovno pokretanje

Ako nakon svih gore navedenih koraka još uvijek nije bilo moguće organizirati pristup SAMBA resursima, tada se mogu koristiti uslužni programi kao što je ping(za provjeru dostupnosti čvora na mreži), nmblookup(za upite o imenima NetBIOS-a), ili u krajnjem slučaju tcpdump. I ne zaboravite na prava pristupa, jer dodjeljivanjem direktorija /gde/to/w/glubine korisniku, dat ćete mu mogućnost čitanja (pravog izvršavanja) prethodnih direktorija.

Sada razgovarajmo o korištenju Samba klijenta, jer mi (Linux korisnici) također želimo raditi s mrežom Windows resursi. Da biste saznali koji su resursi dostupni, morate unijeti naredbu /usr/bin/smbclient -L host_name. Program će tražiti lozinku, kao odgovor na koju u većini slučajeva samo trebate pritisnuti Enter. Sada, za spajanje na traženi resurs, unesite naziv računala i traženi resurs. Na primjer:

# /usr/bin/smbclient \\Alex\Sound

(ovdje se pokušavamo spojiti na mapu Sound na Alexovom računalu). Kao rezultat toga, ako je naredba ispravno unesena i mrežni resurs postoji, trebali biste biti upitani da unesete lozinku. Unesite je ili pritisnite Enter ako lozinka nije potrebna za pristup. Kao odgovor, dobit ćete samba klijentski prompt: smb: >. Daljnji rad odvija se kroz skup naredbi, s kojima možete izvršiti sve potrebne operacije za rad s datotekama (kopiranje, stvaranje, premještanje itd.). Za pomoć unesite smb: > pomoć. Ovaj način je donekle nezgodan, pa se u većini slučajeva koristi modul smbfs, dio sambe; ali u starijim distribucijama kernel se može kompajlirati bez podrške za smbfs, i tada će se morati ponovno izgraditi. Za montiranje potrebnog resursa upišite nešto poput ovoga:

Montiraj -t smbfs -o korisničko ime=korisnik,lozinka=123456,iocharset=koi8-r,codepage=866 //alex/sound /mnt/sound.

Ako ne navedete korisničko ime i lozinku, sustav će vas tražiti. Ne zaboravite da gledanjem datoteke ~HOME/.bash_history možete saznati lozinku na temelju naredbi koje ste upisali. Još jedna suptilnost: ako program smbclient ispravno prikazuje datoteke s ruskim nazivima, tada smbfs modul ponekad ne obraća nikakvu pozornost na drugo kodiranje, čak i ako ga izričito navedete. Kažu da se to može popraviti zakrpom, ali ja je još nisam pronašao za svoj Red Hat.

Ako želite da se SMB dijeljenje automatski montira pri pokretanju sustava, dodajte red poput ovog u svoju datoteku /etc/fstab:

//guest@alex/sound /mnt/alex/sound smbfs rw, noauto 0 0.

U ovom primjeru, u ime korisnika gost(ako resurs podržava ovog korisnika i ako ovaj korisnik ima pristup samo s lozinkom, onda ne brinite: sigurno će vam se to tražiti) zvučni mrežni resurs na alex računalu montiran je u /mnt/alex/sound mapu s mogućnošću pisanja u ovaj imenik. Usput, Samba klijent savršeno vidi skrivene mrežne resurse, tj. oni koji imaju ime mreže završava znakom $.

Kao što vidite, morate raditi s naredbeni redak, koji suvremenog korisnika izaziva tihi užas. I ovdje ga je OpenSource svijet upoznao na pola puta - stvoreni su mnogi uslužni programi koji vam omogućuju rad sa Samba resursima na poznatiji način, pritiskom na gumbe u grafičkim školjkama. Najviše popularan program, uključen u distribuciju Mandrakea i njegovih izvedenica, kao i Debiana - gnomba. U svakom slučaju, može se naći na većini poslužitelja s Linux softverom (sigurno sam ga vidio na ftp://ftp.altlinux.ru/). Ovaj uslužni program omogućuje vam pregled dostupnih mrežnih resursa () i, ako je potrebno, njihovo montiranje u željeni direktorij, dok je moguća opcija montiranja koja označava prijavu i lozinku za one resurse koji to zahtijevaju. Moguće lansiranje upravitelj datoteka kada je montiran (zadano gmc), kreiranje direktorija za montirane resurse, postavljanje opcije automatskog skeniranja pri pokretanju programa (prema zadanom moguće korištenje SMB protokola) i skeniranje po IP adresama (planirano korištenjem WINS protokola). Iz meni nepoznatih razloga u nekim distribucijama kod skeniranja preko SMB protokola nisu se prikazivali mrežni resursi, tako da uvijek koristim drugu metodu, jer radi besprijekorno, samo treba postaviti raspon IP adresa za skeniranje (ako znaš). Kako bi ruski nazivi datoteka bili ispravno prikazani, ne zaboravite instalirati koi8-r fontove na kartici Opcije > Odabir fonta, a također provjerite retke koji označavaju ćirilično kodiranje u datoteci smb.conf (vidi gore).

Ako gnomba može samo montirati i demontirati resurse, onda program xsmbrowser Također vam omogućuje da ih unesete kao mape na lokalnom računalu (). Istina, još nisam uspio natjerati ovaj program da razumije datoteke s ruskim nazivima, ali postoje i pozitivni aspekti: kada je ovaj program pokrenut, sve naredbe za montiranje i razni mrežni zahtjevi izlaze na konzolu, što vam omogućuje da razumijete njima dobro. KDE programeri su također pokušali: kroz Postavke > Informacije uslužni program dostupan Samba status, prikazujući sve veze do/od lokalno računalo, koji je također praktičan alat za pregledavanje .log datoteka. Uslužni program pruža slične informacije komba, koji se može pronaći na http://linux.tucows.com/().

Koliko god vam želio reći više, časopis je časopis - ne možete sve smjestiti. Zatim će vam u pomoć priskočiti sveprisutni čovjek i info. Također, sve potrebne referentne informacije mogu se dobiti iz uslužnog programa SWAT, a u Red Hat 7.3 je bila knjiga Using Samba Robert"a Eckstein"a(Engleski jezik - loše, potpuno besplatno - dobro: /usr/share/swat/using_samba), također dostupno od SWAT (). Dodatna dokumentacija, FAQ i primjeri konfiguracijskih datoteka mogu se pronaći u direktoriju /usr/share/doc/samba. Na raznim forumima možete pronaći prilično kontradiktorna mišljenja o radu Sambe, od izrazito negativnih do potpunog oduševljenja. Osobno sam na strani onih koji to podržavaju. Windows emulator NT, također na temelju rezultata ispitivanja s istom opremom Samba poslužitelj pokazuje performanse približno 25-30% veće od računala koje pokreće Microsoftov sustav. Sretno.

Samba- program koji vam omogućuje pristup mrežnim pogonima na različitim operativnim sustavima koristeći SMB/CIFS protokol. Ima klijentske i poslužiteljske dijelove. To je besplatni softver, objavljen pod GPL licencom.

Samba radi na većini Unix sličnih sustava, kao što su GNU/Linux, Solaris kompatibilan s POSIX-om i Mac OS X Server, razne BSD varijante, OS/2, Windows. Samba uključen u gotovo sve GNU/Linux distribucije, uključujući, naravno, Ubuntu.

Montaža

Da biste napravili dijeljenu mapu u Ubuntu radnoj površini, samo kliknite desnom tipkom miša na mapu i odaberite stavku izbornika "Objavi mapu". Nema potrebe za uređivanjem konfiguracijskih datoteka. Sve dolje opisano odnosi se samo na ručnu konfiguraciju, na primjer, u slučaju stvaranja poslužitelja datoteka.

Za instalaciju samo otvorite terminal i unesite:

Sudo apt-get instalirajte sambu

Aplikacija će se automatski preuzeti i instalirati.

postavke

Pomoću terminala napravit ćemo sigurnosnu kopiju početne konfiguracijske datoteke:

Sudo cp /etc/samba/smb.conf(,.bak)

Sada možete urediti datoteku postavki /etc/samba/smb.conf; da biste to učinili, otvorite je u bilo kojem uređivaču teksta s pravima superkorisnika. Na primjer, ovako:

Sudo nano /etc/samba/smb.conf

Ono što je dolje napisano općenito je samo jedan specifičan scenarij korištenja Sambe, a u velikom broju slučajeva sve je konfigurirano apsolutno krivo. Članak treba ispraviti, fokusirajući se na mogućnosti Sambe, a ne samo na korištenje ovog programa kao pohrane datoteka s lokalnim ovlaštenjem. Bolje je uključiti primjer s pohranom datoteka u poseban detaljan članak.

Primjer postavljanja Sambe kao samostalnog poslužitelja datoteka s autorizacijom:

; Globalne postavke poslužitelja; Opće postavke poslužitelja; Naziv računala koji će biti prikazan u mrežnom okruženju netbios name = main-server server string = ; Radna grupa klijenta radna grupa = WORKGROUP najava verzije = 5.0 opcije utičnice = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192 passdb backend = tdbsam sigurnost = korisnik null passwords = true ; Datoteka za pseudonime korisničkih imena mapa korisničkih imena = /etc/samba/smbusers name resolve order = hosts wins bcast ; wins podrška postavljena je na yes ako je vaš nmbd(8) u Sambi WINS poslužitelj. Nemojte postavljati ovaj parametar na yes osim ako imate više podmreža i ne želite da vaš nmbd djeluje kao WINS poslužitelj. Nikada ne postavljajte ovaj parametar na yes na više od jednog stroja unutar iste podmreže. dobiva podršku = ne; Printer support printing = CUPS printcap name = CUPS ; Dnevnici zapisnika = /var/log/samba/log.%m syslog = 0 samo syslog = ne ; Konfiguriranje vezanja na koja sučelja slušati, ako slušanja na svim sučeljima nisu navedena; sučelja = lo, eth0 ; vezati samo sučelja = istina; ; ; put = /var/lib/samba/printers ; pregledavanje = da; gost ok = da ; samo za čitanje = da ; napiši popis = korijen; kreiraj masku = 0664; maska ​​imenika = 0775 ; ; ; put = /tmp; ispis = da ; gost ok = da ; pregledavanje = ne; ; ;path = /media/cdrom ;browseable = yes ;read only = yes ;guest ok = yes ; Lopta tvrdog diska; Naziv lopti je vidljiv od klijenata; Put do zajedničkog diska path = /media/sda1 ; Je li moguće pregledavati browseable = da read only = no guest ok = no create mask = 0644 directory mask = 0755 ; Vezanje za određeno korisničko ime ili grupu, imena odvojena razmakom; forsirati korisnik = korisnik1 korisnik2; sila grupa = grupa1 grupa2 ; Drugi tvrdi disk, sličan onom gore staza = /media/sde1 pretraživa = da samo za čitanje = nema gosta ok = nema kreiranja maske = 0644 maska ​​direktorija = 0755

Sada se moramo pozabaviti korisnicima.

Samba koristi korisnike koji su već u sustavu, uzmimo ime user kao primjer, recimo da je već u sustavu, moramo ga dodati u SMB bazu podataka i dodijeliti lozinku za pristup zajedničkim resursima, mi ćemo učinite to naredbom:

Smbpasswd -korisnik

Od vas će se tražiti da unesete lozinku, korisnik će biti dodan u bazu podataka, sada morate omogućiti ovog korisnika.

Smbpasswd -e korisnik

Zatim, stvorimo alias za korisničko ime korisnika kako bismo lakše mogli pristupiti sa Windows računala na kojem imamo, na primjer, korisnika pod imenom Admin. Da bismo to učinili, kreirat ćemo i urediti datoteku /etc/ samba/smbusers:

Sudo touch /etc/samba/smbusers sudo gedit /etc/samba/smbusers

Napišite nekoliko redaka u datoteku

# Unix_name = SMB_name1 SMB_name2 korisnik = Admin

Ovo dovršava postavljanje, ponovno pokrenite Sambu.

Najjednostavniji GUI za Sambu možete instalirati naredbom:

Sudo apt-get install system-config-samba

Pokreće se naredbom:

Sudo system-config-samba

Zapisuje sve promjene u samba konfiguracijsku datoteku.

Savršen za daljinsku administraciju Sambe kao web sučelja za Sambu