Samba - birinchi qadamlar. Samba fayl serveri samba nima

Asosiy Samba konfiguratsiya fayli /etc/samba/smb.conf. Asl konfiguratsiya faylida turli xil konfiguratsiya direktivalarini hujjatlashtirish uchun ko'plab izohlar mavjud.

Barcha mumkin bo'lgan variantlar standart konfiguratsiya fayliga kiritilmagan. Qo'llanmaga qarang man smb.conf yoki batafsil ma'lumot uchun Samba FAQ.

1. Birinchidan, bo'limda quyidagi kalit / qiymat juftlarini o'zgartiring /etc/samba/smb.conf fayli:

Ishchi guruh = MISOL ... xavfsizlik = foydalanuvchi

Parametr xavfsizlik bo'limida ancha pastda joylashgan va sukut bo'yicha izohlanadi. Shuningdek, almashtiring MISOL sizning muhitingizga ko'proq mos keladigan narsa.

2. Fayl oxirida yangi bo'lim yarating yoki baham ko'rmoqchi bo'lgan katalog uchun misollardan birini izohdan olib tashlang:

Izoh = Ubuntu fayl serverini almashish yo'li = / srv / samba / ko'rib chiqilishi mumkin bo'lgan almashish = ha mehmon OK = ha faqat o'qish = yo'q niqob yaratish = 0755

    izoh: umumiy manbaning qisqacha tavsifi. Sizning qulayligingiz uchun foydalaniladi.

    yo'l: umumiy katalogga yo'l.

    Ushbu misolda / srv / samba / sharename ishlatiladi, chunki fayl tizimi ierarxiyasi (FHS) standartiga ko'ra, / srv katalogi ma'lum bir saytga tegishli barcha ma'lumotlar bo'lishi kerak. Texnik jihatdan Samba ulushi faylga asoslangan kirish cheklovlari ruxsat etilgan fayl tizimining istalgan joyida joylashgan bo'lishi mumkin, ammo standartlarga rioya qilish tavsiya etiladi.

    ko'rish mumkin: Windows mijozlariga Windows Explorer yordamida umumiy katalog mazmunini ko'rish imkonini beradi.

    mehmon yaxshi: Mijozlarga umumiy manbaga parol ko'rsatmasdan ulanish imkonini beradi.

    faqat o'qish: Resurs faqat o'qish yoki yozish huquqiga ega ekanligini aniqlaydi. Yozish imtiyozlari faqat belgilangan vaqtda mavjud yo'q bu misolda ko'rsatilganidek. Agar qiymat bo'lsa ha, keyin resursga kirish faqat o'qish uchun bo'ladi.

    niqob yaratish: Yaratilgan yangi fayllar uchun qanday ruxsatlar oʻrnatilishini aniqlaydi.

3. Endi Samba sozlangan, siz katalog yaratishingiz va unga ruxsatlarni o'rnatishingiz kerak. Terminalga kiriting:

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

parametr -p mkdir-ga agar mavjud bo'lmasa, to'liq katalog daraxtini yaratishni aytadi.

4. Va nihoyat, yangi sozlamalarni qo'llash uchun samba xizmatlarini qayta ishga tushiring:

Sudo restart smbd sudo restart nmbd

Endi siz Windows mijozi yordamida Ubuntu fayl serverini topishingiz va uning umumiy kataloglarini ko'rib chiqishingiz mumkin. Agar mijoz sizning umumiy resurslaringizni avtomatik ravishda ko'rsatmasa, serveringizga IP-manzil orqali kirishga harakat qiling, masalan, Windows Explorer oynasidan \\ 192.168.1.1. Hammasi ishlayotganini tekshirish uchun Windows ulushingizda katalog yaratishga harakat qiling.

Qo'shimcha aktsiyalarni yaratish uchun /etc/samba/smb.conf da yangi bo'lim yarating va Samba-ni qayta ishga tushiring. Faqat umumiy katalog yaratilganiga va to'g'ri ruxsatlarga ega ekanligiga ishonch hosil qiling.

Umumiy resurs "" va yo'l / srv / samba / ulashing misollar xolos. Resurs nomi va katalog nomini muhitingizga mos ravishda o'rnating. Resurs nomi sifatida fayl tizimidagi uning katalog nomidan foydalanish maqsadga muvofiqdir. Boshqacha qilib aytganda, resurs / srv / samba / qa katalogi uchun ko'rsatilishi mumkin.

Ushbu maqolada Samba-dan foydalangan holda Windows, Linux, Android turli xil operatsion tizimlar bilan ishlaydigan qurilmalar uchun simsiz lokal tarmoq yaratishga e'tibor qaratiladi.

Hozirgi kunda deyarli har bir kvartirada Wi-Fi tarmog'i mavjud, shuningdek, turli xil qurilmalar (noutbuklar, smartfonlar, planshetlar, Android TV Box) mavjud. Shu munosabat bilan, ertami-kechmi har qanday gadjetdan barcha turdagi fayllarga erkin kirish uchun foydalanish uchun mavjud bo'lgan barcha qurilmalarni bitta uy tarmog'iga birlashtirish zarurati tug'iladi.

Aslida, bu asarda muhokama qilinadigan narsa. Shunday qilib, keling, boshlaylik.

Tarmoqni qurish uchun biz Samba deb nomlangan tayyor echimdan foydalanamiz. Bu bepul ochiq kodli dasturiy ta'minot to'plami bo'lib, u o'zining SMB / CIFS protokolidan foydalangan holda turli xil operatsion tizimlardagi tarmoq drayverlari, printerlar va boshqa jihozlarga ulanish imkonini beradi.

Dasturiy ta'minot ikki qismdan iborat - server va mijoz. Samba serverini ta'rifi bo'yicha usta bo'ladigan qurilmalardan biriga va boshqa barcha Samba mijozlariga o'rnating.

Samba server tomonini o'rnatish

Mening holatimda, server qurilmasi uchun men Windows 7 va Ubuntu Mate 16.04 parallel ravishda o'rnatilgan noutbukni tanladim. Quyida biz ikkala operatsion tizim uchun Samba-ni o'rnatish va sozlash jarayonini batafsil ko'rib chiqamiz.

Linux ostida samba serverini sozlash

Samba sukut bo'yicha Ubuntu'da o'rnatilmagan, shuning uchun davom etishdan oldin buni qilishingiz kerak. Shu bilan bir qatorda, Samba konfiguratsiya faylini terminal orqali keyinroq tahrir qilmaslik uchun biz Samba server paketlariga qo'shimcha ravishda grafik interfeysni o'z ichiga olgan Gadmin-Samba dasturini o'rnatamiz.

O'rnatish uchun biz terminalga yozamiz:

Sudo apt o'rnatish gadmin-samba

O'rnatish tugallangach, Gadmin Samba-ni ishga tushiring. Ilova interfeysi ruslashtirilgan emas, lekin sozlamalarni tushunish juda oson.


Dasturda juda ko'p sozlamalar mavjud, ammo umuman olganda, bizning holatlarimizda biz "foydalanuvchilar" yorlig'iga qiziqamiz. Unga o'ting va yangi foydalanuvchi qo'shing.


"Yangi foydalanuvchi" tugmasini bosing, yangilangan oynada foydalanuvchi nomini kiriting, parol yarating, uni guruhga qo'shing ("velosiped ixtiro qilmaslik", mavjudini, ya'ni "sambauzerlarni" belgilang) va uyni o'rnating. fayllar uchun katalog. Shundan so'ng "Ilova" tugmasini bosing.


HD Videobox - Yangi foydalanuvchi

O'zgarishlarni qo'llash uchun serverni qayta ishga tushiring, mos ravishda dastur oynasining yuqori chap burchagida joylashgan "o'chirish" va "faollashtirish" tugmalari.


Umumiy foydalanish uchun "umumiy" papkalarga ruxsatlarni o'rnatishni ham unutmang. Buni terminal orqali ham, nautilus fayl tadqiqotchisining grafik interfeysi orqali ham amalga oshirish mumkin.


Nautilus - ruxsatlarni o'zgartirish


Nautilus - fayllarni yozish uchun ruxsat

Windows ostida samba serverini sozlash

Windows holatida hamma narsa ancha prozaikdir, chunki Samba ushbu operatsion tizimda sukut bo'yicha ishlatiladi.

Asos sifatida siz mavjud hisobdan foydalanishingiz yoki mehmonlarga kirishni yoqishingiz mumkin. Shu bilan bir qatorda, siz boshqa hisob yaratishingiz mumkin, uning ma'lumotlari tarmoqqa kirish uchun ishlatiladi.

Yangi hisob yaratish uchun siz "boshqarish paneli" ga o'tishingiz, "foydalanuvchi hisobini boshqarish" ni tanlashingiz va parol bilan yangi hisob yaratishingiz kerak.


Yangi hisob qo'shilmoqda

Yangi foydalanuvchi yaratishda siz hisob turini tanlashingiz, ism va parolni topishingiz kerak bo'ladi.


Oxirgi bosqichda siz "birgalikda" papkalarga kiritilgan o'zgarishlarni ko'rish huquqlarini o'rnatishingiz kerak bo'ladi. Buni standart Windows Explorer-da kerakli papkaga nisbatan "Xususiyatlar" kontekst menyusi orqali amalga oshirish mumkin.


Jildni "almashish"


Foydalanuvchi qo'shing va papkaga ruxsatlarni o'zgartiring

Yangi foydalanuvchi yaratish protsedurasidan so'ng, o'zgarishlar kuchga kirishi uchun joriy seansga kirganingizga ishonch hosil qiling.

Samba mijozini Android-ga o'rnatish

Samba serveriga va shunga mos ravishda Android-da ishlaydigan qurilmalarda tarmoq drayverlariga kirish uchun men Root Explorer ilovasidan foydalanishni tavsiya qilaman (maqola oxirida reklamasiz to'liq versiyani yuklab olish uchun havola).

Samba - bu SMB / CIFS protokoli yordamida turli xil operatsion tizimlardagi tarmoq drayverlariga kirish imkonini beruvchi dastur. Mijoz va server qismlari mavjud. Bu GPL litsenziyasi ostida chiqarilgan bepul dastur.
Samba GNU / Linux, POSIX-mos keluvchi Solaris va Mac OS X Server, turli xil BSD lazzatlari, OS / 2, Windows kabi Unix-ga o'xshash tizimlarda ishlaydi. Samba deyarli barcha GNU/Linux distributivlariga, shu jumladan Ubuntu-ga kiritilgan.
O'rnatish

Ubuntu ish stolida umumiy jild yaratish uchun jildni o'ng tugmasini bosing va "Jildni nashr etish" menyu bandini tanlang. Hech qanday konfiguratsiya fayllarini tahrirlashingiz shart emas. Quyida tavsiflangan hamma narsa faqat qo'lda sozlash uchun amal qiladi, masalan, fayl serverini yaratishda.
O'rnatish uchun terminalni oching va quyidagilarni kiriting:

sudo apt-get o'rnatish samba

Ilova avtomatik ravishda yuklab olinadi va o'rnatiladi.

Moslashtirish

Terminal yordamida dastlabki konfiguratsiya faylining zaxira nusxasini yarataylik:

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

Endi siz /etc/samba/smb.conf sozlamalar faylini superfoydalanuvchi huquqlariga ega istalgan matn muharririda ochish orqali tahrirlashingiz mumkin. Masalan, bu kabi:

Sudo nano /etc/samba/smb.conf Samba-ni avtorizatsiya bilan mustaqil fayl serveri sifatida sozlash misoli:; Global server sozlamalari; Umumiy server sozlamalari; Tarmoq muhitida ko'rsatiladigan kompyuter nomi netbios nomi = asosiy server server satri =; Mijoz ishchi guruhi = WORKGROUP versiyasini e'lon qilish = 5.0 rozetka opsiyalari = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF = 8192 SO_SNDBUF = 8192 passdb backend = tdbsam xavfsizligi = foydalanuvchi null parollari = haqiqiy; Foydalanuvchi taxalluslari uchun fayl foydalanuvchi nomi xaritasi = / etc / samba / smbusers nomini hal qilish tartibi = xostlar bcastni yutadi; Agar Samba'dagi nmbd (8) WINS serveri bo'lsa, wins qo'llab-quvvatlashi "ha"ga o'rnatiladi. Agar sizda bir nechta pastki tarmoq mavjud bo'lmasa va nmbd WINS serveri sifatida ishlashini istamasangiz, bu parametrni "ha" ga o'rnatmang. Hech qachon bitta quyi tarmoq ichidagi bir nechta mashinada bu parametrni “ha” ga o‘rnatmang. g'alaba qozonadi qo'llab-quvvatlash = yo'q; Printer yordamida chop etish = CUPS printcap nomi = CUPS; Jurnallar jurnali fayli = /var/log/samba/log.%m syslog = faqat 0 syslog = yo'q; Barcha interfeyslarda tinglash ko'rsatilmagan bo'lsa, tinglash uchun interfeyslarga ulanishni sozlash; interfeyslar = lo, eth0; faqat interfeyslarni ulash = rost; ; ; yo'l = / var / lib / samba / printerlar; ko'rish mumkin = ha; mehmon ok = ha; faqat o'qish = ha; ro'yxatni yozish = ildiz; niqob yaratish = 0664; katalog niqobi = 0775; ; ; yo'l = / tmp; chop etish mumkin = ha; mehmon ok = ha; ko'rish mumkin = yo'q; ; ; yo'l = / media / cdrom; ko'rish mumkin = ha; faqat o'qish = ha; mehmon ok = ha; Qattiq disk to'pi; Mijozlar tomonidan ko'rilgan to'plarni nomlash; Umumiy disk yo'liga yo'l = / media / sda1; Koʻrib chiqish mumkinmi = ha faqat oʻqiladi = mehmon yoʻq OK = niqob yaratilmaydi = 0644 katalog niqobi = 0755; Muayyan foydalanuvchi nomi yoki guruhga bog'lash, bo'sh joy bilan ajratilgan nomlar; majbur foydalanuvchi = user1 user2; kuch guruhi = guruh1 guruh2; Yuqoridagi yo'lga o'xshash boshqa qattiq disk = / media / sde1 ko'rib chiqilishi mumkin = ha faqat o'qiladi = mehmon yo'q OK = niqob yaratilmaydi = 0644 katalog niqobi = 0755

Endi biz foydalanuvchilar bilan ishlashimiz kerak.

Samba allaqachon tizimda bo'lgan foydalanuvchilardan foydalanadi, foydalanuvchi nomini misol qilib oling, aytaylik, u allaqachon tizimda, siz uni SMB ma'lumotlar bazasiga qo'shishingiz va umumiy resurslarga kirish uchun parol belgilashingiz kerak, buni buyruq bilan bajaring. :

Smbpasswd - foydalanuvchi

Sizdan parolni kiritish so'raladi, foydalanuvchi ma'lumotlar bazasiga qo'shiladi, endi siz ushbu foydalanuvchini yoqishingiz kerak.

Smbpasswd -e foydalanuvchisi

Keyinchalik, biz Windows mashinasidan kirishni osonlashtirish uchun foydalanuvchi nomi foydalanuvchisi uchun taxallus yaratamiz, masalan, Admin ismli foydalanuvchi, buning uchun biz / etc / samba / smbusers faylini yaratamiz va tahrirlaymiz:

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

Faylga bir necha qator yozing

# Unix_name = SMB_name1 SMB_name2 user = Admin

Bu konfiguratsiyani tugatadi, Samba-ni qayta ishga tushiring.

Windows tarmog'i uchun Samba fayl serveri

Samba ko'pincha Windows tarmog'ida fayl serverini yaratish uchun ishlatiladi.

Active Directory domenidagi fayl serveri

Active Directory domeniga integratsiyalangan fayl serverini yaratish uchun avval Ubuntu kompyuteringizni domenga kiritishingiz kerak. Bunga alohida maqola bag'ishlangan:

Fayl serverini yaratish uchun siz PAM ni sozlashingiz shart emas, faqat Winbind orqali tizimga domen foydalanuvchilari va guruhlarini qo'shishingiz kerak.

Domenga muvaffaqiyatli kirganingizdan so'ng, siz faqat kompyuteringizdagi umumiy resurslarni sozlashingiz kerak.

Bu erda darhol bir muhim narsani ta'kidlash kerak: Samba Windows fayllaridagi ruxsatlarni Unix ruxsatnomalariga loyihalashtirishga harakat qiladi, ammo ruxsat berish mexanizmlaridagi tub farqlar tufayli bu har doim ham mumkin emas. Esda tutingki, fayllarga bo'lgan huquqlar har doim va har qanday holatda ham Ubuntu-ga ega kompyuterda fayl tizimingiz tomonidan boshqariladi, samba faqat ularga moslasha oladi, lekin ularning xatti-harakatlarini o'zgartirmaydi.

Shuning uchun, sukut bo'yicha, umumiy resurslar juda kam kirishni boshqarish imkoniyatlariga ega bo'ladi - foydalanuvchiga, guruhga va boshqalarga turli huquqlarni tayinlash. Biroq, fayl tizimingizga POSIX ACL yordamini qo'shish orqali buni tuzatish oson. Bunday holda, xuddi Windows tizimidagi kabi turli xil foydalanuvchilar va guruhlarga turli huquqlarni belgilash mumkin bo'ladi.

POSIX ACL qo'llab-quvvatlashi kamida ext3 / 4 da, uni faollashtirish uchun kerakli bo'limning o'rnatish opsiyalariga acl parametrini qo'shishingiz kifoya.

Samba orqali baham ko'rmoqchi bo'lgan katalog acl opsiyasi bilan o'rnatilgan diskda bo'lishi muhim. Aks holda, siz odatda to'plardagi fayllarga kirish huquqlarini farqlash mexanizmidan foydalana olmaysiz.

Yana bir muhim jihat bor: POSIX ACL-lar ota-kataloglardan kirish huquqlarini meros qilib olishni qo'llab-quvvatlamaydi va Windows-da bu xususiyat mavjud. Shu sababli, Samba fayl tizimining kengaytirilgan atributlaridan foydalanadigan kirish huquqlarini meros qilib olish haqidagi ma'lumotlarni saqlash uchun qo'shimcha mexanizmni amalga oshiradi. Shu sababli, Samba-ning huquqlar merosini to'g'ri boshqarishi uchun, acl-dan tashqari, kengaytirilgan atributlarni qo'llab-quvvatlashni yoqish uchun aniq javobgar bo'lgan fayl tizimini o'rnatish opsiyalariga user_xattr parametrini qo'shish kerak.

Misol uchun, men umumiy resurslarni tartibga solish uchun har doim alohida LVM disklaridan foydalanaman va ular uchun mening fstab liniyalari quyidagicha ko'rinadi:

/ dev / mapper / ma'lumotlar profillari / var / ma'lumotlar / profillar ext3 sukut bo'yicha, noexec, acl, user_xattr 0 2

Noexec opsiyasi zarur, chunki Windows to'plarida 100% Linux bajariladigan fayllar bo'lmasligi kerak va uni yana xavfsiz o'ynash zarar qilmaydi.

Ubuntu-da acl bilan ishlash uchun siz tegishli yordamchi dasturlar to'plamini o'rnatishingiz kerak:

Sudo aptitude install acl

Shundan so'ng siz buyruq yordamida fayl yoki katalogdagi kengaytirilgan huquqlarni (masalan, ACL) ko'rishingiz mumkin.

Getfacl fayli

Va buyruq bilan o'rnating

Setfacl fayli

Har holda, men sizning e'tiboringizni POSIX ACL mexanizmining Samba bilan hech qanday aloqasi yo'qligiga qaratmoqchiman - bu oddiy Linux imtiyoz mexanizmiga qo'shimcha. Shunga ko'ra, Samba undan foydalanishi mumkin, lekin uni hech qanday tarzda o'zgartira olmaydi yoki ishlamaydi.

Kengaytirilgan fayl tizimining atributlari bilan ishlash uchun sizga buyruq bilan o'rnatilishi mumkin bo'lgan acl - attr ga juda o'xshash yordamchi dastur paketi kerak.

Sudo aptitude install attr

Kengaytirilgan atributlarni ko'rish uchun siz buyruqdan foydalanishingiz mumkin

Getfattr fayli

Va o'rnatish uchun

Setfattr fayli

Biroq, bitta kichik nosozlik bor. Gap shundaki, Samba meros haqidagi barcha ma'lumotlarni ikkilik shaklda bitta kengaytirilgan atribut foydalanuvchisida saqlaydi.SAMBA_PAI. Shuning uchun, kengaytirilgan atributlarni butunlay olib tashlamaguningizcha, setfattr yordamida biror narsani o'zgartira olmaysiz (ba'zida buni qilish kerak bo'lishi mumkin).

Xo'sh, ushbu tizimning standart vositalaridan foydalangan holda Windows mashinasidan huquqlarning merosini boshqarishingiz kerak bo'ladi. Yoki smbcacls yordam dasturidan foydalanib, agar siz undan qanday foydalanishni tushuna olsangiz.

Shuningdek, eksperimental VFS moduli acl_xattr mavjud bo'lib, u NT ACL larini kengaytirilgan atributlarda to'liq saqlash imkonini beradi. Afsuski, bu haqda hech qanday hujjat yo'q, shuning uchun bu haqda tushunarli narsa aytish qiyin. Samba 4 to'liq integratsiyalashgan NT ACL qo'llab-quvvatlashiga ega bo'lishi kutilmoqda, ammo hozircha siz undan foydalanishingiz mumkin.

Samba-da kengaytirilgan atributlar va ular bilan qanday ishlash haqida qo'shadigan biror narsangiz bo'lsa, forumdagi ushbu mavzuga yozing. Mavzu bo'yicha har qanday havolalar, maqolalar va sharhlar uchun minnatdor bo'laman.

Bundan tashqari, kengaytirilgan fayl tizimi atributlari Samba-ga yashirin, arxivlangan va hokazo kabi DOS fayl atributlarini to'liq qo'llab-quvvatlash imkonini beradi.

Shunday qilib, sizda Samba orqali baham ko'rmoqchi bo'lgan tizimda katalogingiz bor deb taxmin qilamiz (va u acl va user_xattr qo'llab-quvvatlashi bilan o'rnatilgan diskda joylashgan). Endi siz uni almashishni sozlashingiz kerak. Buning uchun /etc/samba/smb.conf fayliga tegishli ma'lumotlarni kiritishingiz kerak.

Keling, ushbu faylning bo'limiga qo'shilishi mumkin bo'lgan umumiy sozlamalardan boshlaylik (bu barcha mumkin bo'lgan parametrlardan uzoqdir, faqat bir nechta foydali parametrlar):

# Printerni almashishni o'chirib qo'ying. Albatta, siz ularni baham ko'rishni xohlamasangiz. # Uni toʻliq oʻchirib qoʻyish uchun pastdagi barcha 4 qatorni koʻrsatish kerak printerlarni yuklash = printerni qoʻshish ustasi koʻrsatilmaydi = printcap nomi yoʻq = / dev / null disable spoolss = ha # Windows-dan koʻrilganda quyidagi nomlar bilan yashirin fayllarni yarating. fayllarni yashirish = / $ RECYCLE .BIN / desktop.ini / yo'qolgan + topildi / Thumbs.db / # Mehmon mehmon hisobi sifatida umumiy almashish uchun keyingi UNIX foydalanuvchisidan foydalaning = hech kim # Ro'yxatdan o'tmagan foydalanuvchilarni mehmonga mehmon xaritasi sifatida ko'ring = Yomon foydalanuvchi ## Kengaytirilgan fayl yordamida sozlamalar tizim atributlari # Kengaytirilgan FS atributlaridan foydalangan holda huquqlar merosini boshqaring map acl inherit = yes # DOS atributlarini saqlash uchun kengaytirilgan FS atributlaridan foydalaning dos atributlari = ha # UNIX huquqlarida DOS atributlarini xaritalashni o‘chirib qo‘yish, sukut bo‘yicha yoqilgan # Man smb.conf ga ko‘ra, qachon kengaytirilgan atributlardan foydalangan holda, bu parametrlar o'chirib qo'yilishi kerak xarita arxivi = xarita tizimi yo'q = xarita yashirilmagan = xarita faqat o'qish uchun yo'q = n o

Endi to'g'ridan-to'g'ri umumiy manba sozlamalari. Men chaqiraman profillar, va jismonan u joylashgan Ubuntu mashinasida / var / ma'lumotlar / profillar:

# Sharh izohi = Foydalanuvchi profillari # Biz baham ko'radigan papkaga yo'l = / var / ma'lumotlar / profillar / # Ulanishga cheksiz kirish huquqiga ega foydalanuvchilar # Menda domen administratorlari guruhi bor. # Fayllar bilan ishlaganda, bu foydalanuvchilar mahalliy root administrator foydalanuvchilari sifatida ko'riladi = "@DOMAIN \ Domain Administrators" # Foydalanuvchi kirish huquqiga ega bo'lmagan papkalarni yashirish o'qilmaydi = ha # Faqat o'qish uchun ruxsat emas = yo'q # Maskalar yaratilgan fayllar - o'z xohishiga ko'ra o'rnatilishi mumkin #niqob yaratish = 0600 #katalog niqobi = 0700 # Qulflarni o'chirish - qulflashni o'chirib qo'yish yaxshidir = yo'q

Boshqa ko'plab variantlar mavjud - batafsil ma'lumot uchun Samba hujjatlariga qarang.

Siz baham ko'rayotgan papkaga to'g'ri egasini va kirish huquqlarini qo'yishni unutmang, aks holda samba sozlamalariga qaramay, unga Linux huquqlari darajasida yozish taqiqlanishi mumkin. Men odatda shunday qilaman:

Sudo chmod ug + rwx / var / ma'lumotlar / profillar sudo chown ildizi: "domen foydalanuvchilari" / var / ma'lumotlar / profillar

Esda tutingki, Ubuntu kompyuteringiz domen aʼzosi boʻlgani uchun siz Ubuntuʼda domen foydalanuvchilari va guruhlarini fayl egalari sifatida ishlatishingiz mumkin.

Buyruq yordamida Samba konfiguratsiyasi to'g'ri ekanligini tekshiring

Testparm

Keyin Samba-ni qayta ishga tushiring:

Sudo /etc/init.d/samba-ni qayta ishga tushiring

Endi siz domendagi istalgan mashinadan umumiy manbaga kirishingiz mumkin.

Aytgancha, kataloglar uchun SGID va Sticky bitlar haqida unutmang. Ular sizga egalar guruhini meros qilib olish imkonini beradi va foydalanuvchilarning o'zlaridan boshqa fayllarni o'chirishiga yo'l qo'ymaydi - bu ko'p foydalanuvchili omborlar uchun juda qulay bo'lishi mumkin. Biroq, Windows-dan tahrirlash huquqlaridan farqli o'laroq, umumiy resursdagi papkalardagi bu bitlarni o'zgartirish ishlamaydi - faqat to'g'ridan-to'g'ri Ubuntu kompyuterida qo'lda.

Boshqa narsalar qatorida, Samba sizga fayllarning oldingi versiyalarini saqlashni tashkil qilish imkonini beradi, bu ba'zan foydalanuvchi ma'lumotlari bilan aktsiyalarni yaratishda foydalidir.

Mustaqil fayl serveri

Hamma ham Active Directory domeniga ega emas. Shuning uchun, ko'pincha o'z avtorizatsiya tizimiga ega bo'lgan Linux mashinasida avtonom fayllarni saqlashni tashkil qilish kerak. Buni qilish juda oson.

Fayllarni saqlashni bunday tashkil etishning asosiy xususiyati shundaki, foydalanuvchilar haqidagi barcha ma'lumotlar Samba ma'lumotlar bazasida saqlanadi, mos ravishda samba-ga foydalanuvchilarni qo'shish va o'chirish qo'lda bajarilishi kerak.

Eng muhimi, manbaga kirishning ishlatiladigan usulini tanlashdir. Uni o'zgartirish uchun faylning /etc/samba/smb.conf bo'limida xavfsizlik parametrining qiymatini to'g'ri belgilashingiz kerak. Ushbu parametr haqida ko'proq o'qishingiz yoki rasmiy hujjatlarni o'qishingiz mumkin.

Odatda qiymat ulush yoki foydalanuvchi hisoblanadi.

Avtorizatsiyasiz mustaqil fayl serveri

Hamma hammani ko'rishi uchun uy uchun qulay. Buni faylning /etc/samba/smb.conf bo'limiga 4 qator qo'shish orqali amalga oshirish mumkin. Ba'zilari allaqachon mavjud bo'lishi mumkin.

[global] ishchi guruhi = Mehmonga WORKGROUP xaritasi = Yomon foydalanuvchi netbios nomi = NOTEBOOK xavfsizligi = foydalanuvchi

NOTEBOOK - tarmoqda bo'ladigan kompyuterning nomi. Bundan tashqari, siz qo'shimcha dasturlarni o'rnatishingiz kerak:

sudo apt-get o'rnatish samba

Kubuntu uchun smb4k-ni ham o'rnatishingiz kerak. Konfiguratsiyalarni tahrir qilgandan so'ng, xizmatlarni qayta ishga tushirishingiz kerak. Systemd da (15.04 dan boshlab) qayta ishga tushirish quyidagicha ko'rinadi:

sudo systemctl smbd.service nmbd.service-ni qayta ishga tushiring

Siz "to'plar" ni nautilus, konkueror yoki shu kabi fayl brauzeri orqali ko'rishingiz mumkin:

Smbclient -L 127.0.0.1

... Ingliz tilida rasmiy hujjatlar.

Ubuntuda jildni almashish

Fayllarni almashish uchun papka yarating.

mkdir ~ / ulashing

/etc/samba/smb.conf faylining oxiriga quyidagi qatorlarni qo'shing, yuraku1504 ni samba kompyuterining foydalanuvchi nomi bilan almashtiring:

[MyShareWork] comment = Anonim Samba Baham ko'rish yo'li = / uy / yuraku1504 / mehmonni baham ko'ring ok = ha ko'rib chiqilishi mumkin = ha yozilishi mumkin = ha faqat o'qilishi = majburiy foydalanuvchi yo'q = yuraku1504 kuch guruhi = yuraku1504

O'qish va yozish uchun papka ochiladi.

Endi bir xil mahalliy tarmoqda Linux va Windows bilan ishlaydigan kompyuterlarni topish juda keng tarqalgan. Ushbu simbiozning sabablari boshqacha bo'lishi mumkin: masalan, Internet-kafelar egalarida barcha kompyuterlar uchun litsenziyalangan OT sotib olish uchun etarli mablag' yo'q edi yoki tizim ma'muri shunchaki Linuxning ijobiy tomonlari bilan o'ziga tortildi. Microsoft operatsion tizimlarining mashhurligi asosan Windows uchun mijoz dasturi bilan belgilanadi. Hech kimga sir emaski, ushbu dasturiy ta'minot sektori yuqori darajada rivojlangan. Ko'pgina kompaniyalar bu borada jiddiy sa'y-harakatlarni amalga oshirdilar va haqiqatan ham yaxshi, eng muhimi, oddiy foydalanuvchi ham oson o'zlashtira oladigan, foydalanish uchun qulay dasturlarni yaratdilar. Ammo server sifatida Windowsning pozitsiyasi endi unchalik aniq emas. Unix-da ishlaydigan server an'anaviy ravishda ishonchliligi, ish barqarorligi, xavfsizlik va tizim resurslariga nisbatan past talablar bilan ajralib turadi. Ammo har qanday holatda, turli xil dasturiy platformalarga ega kompyuterlarni tarmoqqa ulash orqali biz kutilgan natijaga erisha olmaymiz. Butun muammo shundaki, bu ikki tizim bir-biriga mos kelmaydigan tarmoq resurslarini tashkil qilishning turli tamoyillaridan foydalanadi.
Microsoft-ning inoyatini kutishning hojati yo'qligi va Windows standart vositalar yordamida Unix tarmoq fayl tizimi (NFS) bilan ishlashni o'rganishi dargumon va rostini aytsam, men eng mashhur bo'lgan uchinchi tomon dasturlarini bilmayman. Unix-ni Windows NT-ga o'xshab ko'rsatishga o'rgatish yo'lidir.

Windows operatsion tizimida ishlaydigan kompyuterlar tarmog'idagi o'zaro ta'sir protokoldan foydalanishga asoslanadi SMB (Server xabar bloki)- server xabarlari bloklari. U ushbu holatlarda ochish va yopish, o'qish va yozish, fayllarni qidirish, kataloglarni yaratish va o'chirish, chop etish vazifasini o'rnatish va uni o'sha erdan o'chirish uchun zarur bo'lgan barcha vazifalarni bajarishni ta'minlaydi. Buning uchun zarur bo'lgan barcha harakatlar Unix-ga o'xshash operatsion tizimlarda paket yordamida amalga oshiriladi SAMBA... Uning imkoniyatlarini shartli ravishda ikki toifaga bo'lish mumkin: Windows mijozlari uchun resurslar bilan ta'minlash (bu printer tizimi va fayllarga kirishni anglatadi) va mijoz resurslariga kirish. Ya'ni, Linux kompyuteri ham server, ham mijoz vazifasini bajara oladi. Boshlash uchun keling, SAMBA server variantini ko'rib chiqaylik.

Windows mashinalari tarmog'ida normal ishlashi uchun SAMBA nimani ta'minlashi kerak? Birinchidan, kirishni boshqarish, u yoki ulashish darajasida, tarmoqdagi manbaga parol tayinlanganda va tegishli foydalanish qoidalari (masalan, "faqat o'qish uchun") bo'lsa, foydalanuvchi nomi mutlaqo mavjud emas. qiymat yo'q; yoki foydalanuvchi darajasida yanada mukammal va moslashuvchan tashkilot, har bir foydalanuvchi uchun hisob qaydnomasi yaratilganda, ism va paroldan tashqari, resursga kirish huquqlari haqida barcha kerakli ma'lumotlarni o'z ichiga oladi. Kerakli resursga kirishdan oldin, har bir foydalanuvchi autentifikatsiya qilinadi, shundan so'ng unga hisoblar bo'yicha huquqlar beriladi. Ikkinchidan, fayl tizimi tomonidan belgilangan kirish huquqlariga taqlid qilish kerak. Gap shundaki, ko'rib chiqilayotgan tizimlar diskdagi fayllar va kataloglarga turli xil kirish huquqlariga ega. An'anaga ko'ra, Unix fayl foydalanuvchilarining uchta toifasiga ega: egasi, guruh va dam olish (boshqa)... Ushbu mavzularning har biri bilan ta'minlanishi mumkin o'qish ruxsatnomalari, yozish va bajarmoq... Windows NT da kirish tizimi biroz moslashuvchan bo'lib, kirish bir necha guruh yoki foydalanuvchilarga beriladi va tegishli kirish huquqlari har bir mavzu uchun alohida belgilanadi. Shuning uchun SAMBA-dan foydalanib NTFS-ga kirish huquqlarini to'liq taqlid qilish mumkin emas.

Ishlayotgan mijozlar bilan Windows 9x, vaziyat boshqacha. DOS-ning bobosi davridan beri, tizim bir foydalanuvchili ekanligi va hech qanday foydalanuvchilar, hatto guruhlar haqida gap bo'lishi mumkin emasligi sababli, FAT fayl tizimi uchun faqat to'rtta atribut aniqlangan - faqat o'qish, tizim, arxiv va yashirin... Bundan tashqari, Windows-da, Unix-dan farqli o'laroq, fayl kengaytmasi alohida ma'noga ega - bajarilishi uchun mo'ljallangan kengaytmalar .exe, .com yoki .bat kengaytmalariga ega. Unix kompyuterlaridan Windows operatsion tizimida ishlaydigan kompyuterlarga fayllarni nusxalashda atributlar quyidagicha o'rnatiladi:

faqat o'qish uchun- egasi uchun o'qish, yozish;

arxiv- egasi uchun ijro;

tizimli- guruh uchun ijro;

yashirin - guruh uchun ijro.

Windows mashinalari tarmog'i kompyuterlar bir-biridan mustaqil bo'lganda va har biri o'zining xavfsizlik siyosatiga ega parollar va loginlar ma'lumotlar bazasiga, shuningdek, NT domeniga ega bo'lganda ishchi guruh sifatida tashkil etilishi mumkin. Foydalanuvchi va kompyuter autentifikatsiyasining butun bazasi boshqariladi Asosiy domen boshqaruvchisi (PDC), ya'ni. markazlashtirilgan. Samba sizga ushbu darajalarning barchasida kirishni cheklash imkonini beradi va ishchi guruh yoki domen boshqaruvchisi kontekstida "bosh brauzer" vazifasini bajaradi.

Biz umumiy tashkiliy masalalarni hal qildik. Endi Linuxda SAMBA serverini amalga oshirish va sozlashni alohida ko'rib chiqamiz. Samba serveri ishlashi uchun ikkita demon ishlayotgan bo'lishi kerak: smbd Samba mijozlari uchun chop etish va fayl almashish xizmatini taqdim etadi (masalan, barcha chiziqlardagi Windows) va nmbd NetBIOS nomlash xizmatlarini taqdim etadi (u boshqa nomlash xizmati demonlarini so'rash uchun ham ishlatilishi mumkin). Protokol mijozlarga kirish uchun ishlatiladi TCP / IP... Odatda, Samba Linux tarqatish bilan birga o'rnatiladi. Qanday tekshirish kerak? Faqat buyruq bering:

$ samba qaerda

va siz shunga o'xshash narsani olishingiz kerak:

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

Agar u standart taqsimotga kiritilmagan bo'lsa, ftp://ftp.samba.org/pub/samba/samba-latest.tar.gz saytiga yoki Linux dasturlari bo'lgan deyarli har qanday serverga xush kelibsiz. Paketni o'rnatish oson, shuning uchun joyni tejash uchun siz uni o'rnatgan deb hisoblaymiz. Keling, demon ishlayotganligini tekshirib ko'ramiz:

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

Ko'rib turganingizdek, men buni allaqachon boshlaganman. Agar sizda u yo'q bo'lsa va tizim yuklanganda ishga tushishini istasangiz, masalan, Linux Mandrake-da kerakli elementni tekshiring. DrakConfxizmatlarni ishga tushirish yoki ichida Red Hat boshqaruv paneliXizmat konfiguratsiyasi bu odatda etarli. Yoki qo'lda boshlang: ./etc/rc.d/init.d/smb start. Yagona Samba konfiguratsiya fayli smb.conf deb ataladi va odatda / etc / katalogida topiladi (garchi AltLinuxda, masalan, u / etc / samba katalogida joylashgan). SAMBA xizmati uni har 60 soniyada o'qiydi, shuning uchun konfiguratsiyaga kiritilgan o'zgartirishlar qayta yuklanmasdan kuchga kiradi, lekin allaqachon o'rnatilgan ulanishlarga ta'sir qilmaydi.

Shuning uchun men Linuxni yaxshi ko'raman, chunki konfiguratsiya fayllari oddiy matndir (bundan tashqari, ular ichida yaxshi sharhlangan) va ko'pgina parametrlardan foydalanish uchun siz tegishli qatorni izohlashingiz kerak. Smb.conf fayli bundan mustasno emas. U bo'lim nomidan boshlanadigan, kvadrat qavs ichiga olingan nomli bo'limlardan iborat. Har bir bo'limda kalit = qiymat shaklidagi bir qator parametrlar mavjud. Konfiguratsiya faylida to'rtta maxsus bo'lim mavjud:, va alohida resurslar (ulushlar). Nomidan ko'rinib turibdiki, bo'lim hamma joyda qo'llaniladigan eng umumiy xususiyatlarni o'z ichiga oladi, ammo keyinchalik ularni alohida resurslar uchun bo'limlarda qayta belgilash mumkin. Ushbu bo'limdagi bir nechta variantlar Samba mijozini sozlash uchun tegishli.

Oddiy bo'lim parametrlarining qiymatlari global:

Workgroup = group_name # Windows tarmog'idagi ishchi guruhi nomi netbios nomi = tarmoq serveridagi server nomi qatori = tarmoqni ko'rish xususiyatlari oynasida ko'rinadigan izoh mehmon ok = ha # mehmonga kirish ruxsati (mehmon ok = yo'q - mehmonga kirish rad etilgan) mehmon hisobi = hech kim # mehmonga kirishga ruxsat berilgan nom xavfsizlik = foydalanuvchi # Kirish darajasi. foydalanuvchi - foydalanuvchi darajasida, xavfsizlik = almashish - foydalanuvchi nomi va parolga asoslangan autentifikatsiya. Parol ma'lumotlar bazasini boshqa SMB serverida saqlashda xavfsizlik = server va parol serveri = name_server_NT qiymatlari qo'llaniladi. Agar server domenning a'zosi bo'lsa, xavfsizlik = domen qiymati ishlatiladi, kirish uchun parol smb opsiyasi passwd fayli = / path / to / file bilan ko'rsatilgan faylda ko'rsatiladi.

Bundan tashqari, ro'yxatdan o'tishda siz foydalanishingiz mumkin shifrlangan va oddiy matnli parollar... Ikkinchisi eski Windows da (Windows for Workgroups, Windows 95 (OSR2), Windows NT 3.x ning barcha versiyalari, Windows NT 4 (Service Pack 3 gacha)) ishlatiladi. Shifrlangan paroldan foydalanish opsiyasini yoqish uchun shifrlash paroli = ha variantidan foydalaning. Iltimos, ushbu variantga alohida e'tibor bering. Windows 95 (va Samba'ning eski versiyasi bilan) davrida yaratilgan eski Linux distribyutorlarida parolni shifrlash sukut bo'yicha o'chirib qo'yilgan va sambagacha 2.0 versiyasi ushbu rejimni umuman qo'llab-quvvatlamaydi (Aytgancha, ushbu parametr va shunga o'xshashlar - ma'lum resurslarga kirish bilan bog'liq bo'lmaganlar - mijozda ham qo'llaniladi).

Ruscha fayl nomlarini to'g'ri ko'rsatish uchun sizga quyidagi variantlar kerak bo'ladi: mijoz kod sahifasi = 866 va belgilar to'plami = koi8-r. Yaxshi lokalizatsiyaga ega bo'lgan tarqatishlar, masalan, Mandrake va rus tilidan olingan lotinlar allaqachon ushbu qatorga ega, ba'zida uni shunchaki izohlash kifoya qiladi, lekin ko'pchilikda uni o'zingiz qo'shishingiz kerak.

Interfeyslar = 192.168.0.1/24 opsiyasi, agar server bir vaqtning o'zida bir nechta tarmoqlarga ulangan bo'lsa, dastur qaysi tarmoqda (interfeysda) ishlashi kerakligini belgilaydi. Agar siz ulanish interfeyslarini faqat = ha parametrini o'rnatsangiz, server faqat ushbu tarmoqlar so'rovlariga javob beradi.

xostlar ruxsat beradi = 192.168.1. 192.168.2. 127. - xizmatdan foydalanishga ruxsat berilgan mijozlarni belgilaydi.

Global bo'limda server ishini yanada moslashuvchan konfiguratsiya qilish uchun turli xil o'zgaruvchilardan foydalanish mumkin. Ulanish o'rnatilgandan so'ng, ular uchun haqiqiy qiymatlar almashtiriladi. Masalan, direktiv jurnal faylida = /var/log/samba/%m.log,% m parametri har bir mijoz mashinasi uchun alohida jurnal faylini aniqlashga yordam beradi. Global bo'limda ishlatiladigan eng keng tarqalgan o'zgaruvchilar:

% a - mijoz mashinasida OS arxitekturasi (mumkin qiymatlar - Win95, Win NT, noma'lum va boshqalar);

% m - mijoz kompyuterining NetBIOS nomi;

% L - SAMBA serveri NetBIOS nomi;

% v - SAMBA versiyasi;

% I - mijoz kompyuterining IP manzili;

% T - sana va vaqt;

% u - xizmat bilan ishlaydigan foydalanuvchining nomi;

% H - foydalanuvchi% u ning uy katalogi.

Bundan tashqari, yanada moslashuvchan sozlash uchun, yuqoridagi o'zgaruvchilar yordamida include direktivasi ishlatiladi. Masalan: include = /etc/samba/smb.conf.%m - endi, agar /etc/samba/smb.conf.sales fayli mavjud bo'lsa, kompyuter savdosidan so'rov yuborilganda, konfiguratsiya ushbu fayldan olinadi. Agar ba'zi bir mashina uchun alohida fayl bo'lmasa, u bilan ishlash uchun umumiy fayl ishlatiladi.

Bundan tashqari, qiziqarli imkoniyat mavjud virtual server yaratish... Buning uchun netbios taxalluslari parametri ishlatiladi:

Netbios taxalluslari = savdo hisobi boshqaruvchisi

Endi biz Samba-ga har bir virtual server uchun o'z konfiguratsiya faylidan foydalanishni buyuramiz:

O'z ichiga = /etc/samba/smb.conf.%L

Tarmoq brauzeri oynasida uchta server ko'rinadi: sotish, buxgalteriya hisobi, admin.

Rejimni saqlash va kichik registrlarni saqlash opsiyalarini yoqish serverni barcha kiritilgan ma'lumotlarni katta-kichik harflarga sezgir tarzda saqlashga majbur qiladi (Windows da, katta harflar muhim emas; barcha Unix'larda, aksincha).

Bo'lim foydalanuvchilarga o'zlarining ishchi kataloglariga ularni aniq tasvirlamasdan ulanish imkonini beradi. Mijoz o'z katalogiga // sambaserver / sergej so'raganda, mashina fayldan tegishli tavsifni qidiradi va agar uni topa olmasa, ushbu bo'limning mavjudligini qidiradi. Agar kalit mavjud bo'lsa, parol fayli so'ragan foydalanuvchining ishchi katalogini topish uchun skanerdan o'tkaziladi va agar topilsa, uni foydalanuvchiga taqdim etadi.

Ushbu bo'lim uchun odatiy tavsif quyidagicha ko'rinadi:

Izoh = Bosh sahifa kataloglari # tarmoq xususiyatlari oynasida ko'rinadigan sharh ko'rib chiqilishi mumkin = yo'q # ko'rib chiqish ro'yxatida resursni ko'rsatish yoki ko'rsatishni aniqlaydi. yoziladigan = ha # uy katalogiga yozishga ruxsat beradi (yo'q - ruxsat bermaydi) yaratish rejimi = 0750 # yangi yaratilgan fayllar katalogi rejimi uchun ruxsatlar = 0775 # ham, lekin faqat kataloglar uchun

Standart sozlamalarni o'rnatganingizdan so'ng, ma'lum bir foydalanuvchi yoki foydalanuvchilar guruhi tomonidan foydalanilishi mumkin bo'lgan tarmoq ulushlarini yaratishingiz mumkin. Bunday resurs mavjud katalogdan yaratilgan, buning uchun biz faylga yozamiz:

Izoh = Ommaviy ma'lumotlar yo'li = / uy / samba public = ha yozilishi mumkin = chop etilmaydi = yozish ro'yxati yo'q = administrator, @sales

Yo'l parametri resurs joylashgan katalogga ishora qiladi; umumiy parametr mehmon resursdan foydalana oladimi yoki yo'qligini ko'rsatadi va chop etilishi berilgan resursdan chop etish uchun foydalanish mumkinligini bildiradi. Yozish ro'yxati parametri yozilishi mumkin bo'lgan qiymatdan qat'iy nazar (ushbu misolda foydalanuvchi ma'muri va savdo guruhi) resursga yozishga ruxsat berilgan foydalanuvchilarni aniqlash imkonini beradi. Qarama-qarshi ro'yxat - o'qish ro'yxatidan foydalanish ham mumkin. Agar ba'zi fayllarni yashirish zarurati tug'ilsa, buning uchun Unix/Linux-da fayl nomi nuqta bilan boshlanishi kerak (yashirin fayllarni ko'rsatishni boshqaruvchi maxfiy nuqta fayllari parametri sukut bo'yicha ha). Bundan tashqari, yashirin fayllarning nomlari uchun shablonlarni o'rnatish mumkin, ular uchun hide files parametri ishlatiladi. Har bir naqsh qiyshiq chiziq (/) bilan boshlanadi va tugaydi va muntazam ifodalarda ishlatiladigan belgilarni o'z ichiga olishi mumkin. Masalan: fayllarni yashirish = /*.log/??.tmp/. Bunday fokuslar Windows foydalanuvchilari uchun faqat Explorer-da "Yashirin va tizim fayllarini ko'rsatish" rejimini o'rnatish orqali chetlab o'tiladi. Faylning (katalogning) foydalanish imkoniyatini (o'chirish qobiliyatini) ishonchli cheklash uchun veto fayllaridan foydalaning va veto fayllari parametrlarini o'chiring.

CD drayvlar bilan vaziyat biroz murakkabroq. Gap shundaki, Unix-ga o'xshash tizimlarda disk tushunchasi mavjud emas va kerakli qurilmaga kirish uchun uni avval katalog daraxtiga o'rnatish kerak (# mount -t iso9660 / dev / cdrom / mnt / cdrom) va foydalanilgandan so'ng, fayl tizimini yo'q qilmaslik uchun uni o'chirib qo'yish kerak (# umount / dev / cdrom), aks holda qurilma shunchaki diskdan voz kechmaydi. Agar sizning serveringizda ishlaydigan daemon bo'lsa autofs, keyin muammoni oddiygina hal qilish mumkin. Bir muncha vaqt foydalanilmagan qurilmani avtomatik ravishda uzish uchun /etc/auto.master faylida kutish vaqti parametri uchun kerakli qiymatni o'rnating. Masalan:

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

(shunga o'xshash qator allaqachon mavjud, siz shunchaki izohni olib tashlashingiz kerak). Keyin /etc/auto.tab faylida tegishli qurilma uchun parametrlarni o'rnating:

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

Bularning barchasidan so'ng, ushbu manbani mavjud qilish uchun /etc/smb.conf-ga quyidagi qatorlarni yozamiz:

Yo'l = / mnt / cdrom yozilishi = yo'q

Ikkinchi variant preexec va postexec direktivalaridan foydalanish bo'lib, ular resursga kirishda va undan uzilgandan so'ng qaysi buyruqlar bajarilishi kerakligini ko'rsatadi (bu parametrlar istalgan resurs uchun va hatto global bo'limda ham ko'rsatilishi mumkin, bu katta imkoniyatlar ochadi). .

Yo'l = / mnt / cdrom faqat o'qiladi = ha root preexec = mount / mnt / cdrom # faqat ildiz manba ildizini o'rnatishi mumkin postexec = umount / mnt / cdrom # tabiiy ravishda, bu o'rnatish nuqtalari / etc / fstab faylida tasvirlangan bo'lishi kerak, aks holda siz qolgan ma'lumotlarni ham belgilashingiz kerak.

Endi resursga kirishda CD-ROM avtomatik ravishda o'rnatiladi, ba'zan esa o'chiriladi. Muammo shundaki, resursni yopish to'g'risida qaror server tomonidan qabul qilinishi kerak - mijozlar, qoida tariqasida, bu haqda xabar bermaydilar. Ammo, odatda, bu resurs bir vaqtning o'zida bir nechta foydalanuvchilar tomonidan ishlatilishi yoki ushbu resursda bitta kompyuterda ochiq fayl qoldirilganligi sababli sodir bo'ladi (Qurilma band). Shuning uchun, CD-ROM avtomatik ravishda o'chirilmaydi, resursni bo'shatishning yagona maqbul usuli bu yordamchi dasturga qarashdir. smbstatus ushbu resursdan foydalangan holda jarayonning raqami va uni # kill pid_number buyrug'i bilan o'ldiring (yoki kill -s HUP pid_number).

Kerakli konfiguratsiyani o'rnatgandan so'ng, endi biz foydalanuvchi hisoblarini yaratamiz (hech kimning minimal imtiyozlari bilan mehmon kirishidan tashqari). SAMBA foydalanuvchilarini aniqlash uchun foydalanuvchi nomlari va shifrlangan parollarni o'z ichiga olgan / etc / samba / smbpasswd faylidan foydalaniladi. Windows mashinalari tarmoqlaridagi shifrlash mexanizmi standart Unix mexanizmlari bilan mos kelmaganligi sababli, parol faylini to'ldirish uchun alohida yordamchi dastur ishlatiladi - smbpasswd.

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

Ushbu misol yangi foydalanuvchini qo'shadi sergej guruhga mansub sotish, qo'g'irchoq qobiq bilan (variantlar / sbin / nologin, / dev / null) va uy katalogi / home / samba / sergej. Keyin biz sergej foydalanuvchisi uchun parol yaratamiz va oxirgi qadam sifatida foydalanuvchiga kirishni yoqamiz. u sukut bo'yicha o'chirilgan. Ba'zida chalkashtirib yuborishi mumkin bo'lgan qiziqarli nuqta. Haqiqat shundaki, Windows NT / 2000 operatsion tizimiga ega kompyuter SAMBA serveriga ulanganda, foydalanuvchidan foydalanuvchi nomi va parolni kiritish so'raladi va agar kirish uchun Windows 9x/Me kompyuteridan foydalanilgan bo'lsa, keyin foydalanuvchidan faqat parolni kiritish so'raladi va login avtomatik ravishda ro'yxatdan o'tish nomi asosida yaratiladi.

Bundan tashqari, bir nechta Windows foydalanuvchilarini bitta Linux / Unix foydalanuvchisi bilan taqqoslash mumkin. Buning uchun /etc/smbusers.map xaritalash fayli yaratiladi, unda har bir xaritalash alohida qatorga o'rnatiladi:

Linux_user = user_win1 user_win2 user_winN

Bo'limda foydalanuvchi nomi xaritasi = /etc/smbusers.map qatorini qo'shing. Bunday holda, Windows foydalanuvchisi u bilan bog'langan foydalanuvchining paroli bilan tizimga kirishi kerak.

SAMBA-dan foydalanib, siz Windows-da ishlaydigan kompyuterlardan tarmoq orqali chop etish imkoniyatini tashkil qilishingiz mumkin (agar alohida chop etish serveri rejalashtirilgan bo'lsa, buning uchun 486 protsessoriga asoslangan mashina etarli bo'lishi mumkin).

Buning uchun bo'limga quyidagi qatorlarni yozing:

Printcap nomi = / etc / printcap # tizimga ulangan printerlarni tavsiflovchi fayl printerlarni yuklaydi = ha # tarmoq resurslari ro'yxatiga avtomatik kiritish zarurligini bildiradi chop = lprng # bosib chiqarish tizimi (Linux uchun, bsd hali ham ishlatilishi mumkin).

Path = / var / spool / samba # chop etish vazifalari joylashtirilgan katalogga ishora qiladi.

Faylni yaratgandan so'ng, uni yordamchi dastur bilan sinab ko'ring testparm... Afsuski, ushbu dastur yordamida siz mantiqiy emas, balki faqat sintaksis xatolarini aniqlashingiz mumkin, shuning uchun faylda tavsiflangan xizmatlarning to'g'ri ishlashiga kafolat yo'q (sinov paytida barcha sozlamalar, hatto o'rnatganlar ham ko'rsatiladi. sukut bo'yicha - shuning uchun natijani diqqat bilan ko'rib chiqing). Ammo agar dastur qasam ichmasa, faylni ishga tushirishda muammosiz yuklanishiga umid qilishingiz mumkin. SAMBA serveri bilan / etc / printcap faylida ko'rsatilgan printerlarning to'g'ri ishlashini yordamchi dastur yordamida tekshirish mumkin. testprns... Bundan tashqari, .log fayllari haqida unutmang: agar muammolaringiz bo'lsa, ba'zan u erda yechim topishingiz mumkin.

Endi yaxshilik haqida bir oz. Samba-ni sozlash juda murakkab protsedura, ammo tarqatish veb-ga asoslangan boshqaruv vositasi bilan birga keladi swat(Samba Web Administration Tool,). Swat xizmat sifatida yoki Apache serveridan foydalangan holda ishga tushiriladi va smb.conf faylini tahrirlash, shuningdek, holatni tekshirish, Samba demonlarini ishga tushirish va to'xtatish hamda foydalanuvchi parollarini o'zgartirish uchun mo'ljallangan. Uning xizmat sifatida ishlashi uchun swat 901 / tcp liniyasi / etc / services faylida va swat oqimi tcp hozirda bo'lishi kerak. 400 root / usr / local / samba / bin / swat swat /etc/inetd ichida .conf fayli (agar tarmoq demoni ishlatilsa inetd odatda eski taqsimotlarda; zamonaviy tarqatishlar xavfsizroq variantdan foydalanadi - xinetd). /etc/xinet.d katalogida swat-dan foydalanish uchun quyidagi tarkibga ega swat faylini yarating:

Xizmat swat (o'chirish = port yo'q = 901 socket_type = oqim kutish = no only_from = 127.0.0.1 # bu faqat mahalliy mashina foydalanuvchisidan ishga tushadigan qator = root server = / usr / sbin / swat log_on_failure + = USERID)

Endi brauzer oynasida Swat dasturini ishga tushirish uchun quyidagilarni kiriting:

Http: // localhost: 901

Lekin bundan oldin foydalanuvchi yaratganingizga ishonch hosil qiling admin yuqorida tavsiflanganidek. Va hech qachon SAMBA xizmatini ishga tushirmang ildiz.

Smb.conf faylidagi barcha o'zgarishlardan so'ng, ba'zan demonni qayta ishga tushirishingiz kerak bo'ladi:

Smb: /etc/rc.d/init.d/smb qayta ishga tushirish

Agar yuqoridagi barcha qadamlardan so'ng, SAMBA resurslariga kirishni tashkil qilishning iloji bo'lmasa, u holda bunday yordam dasturlari ping(tarmoqdagi tugun mavjudligini tekshirish uchun), nmblookup(NetBIOS nomlarini so'rash uchun) yoki oxirgi chora sifatida tcpdump... Va ruxsatlar haqida unutmang, chunki foydalanuvchiga / gde / to / w / glubine katalogini belgilash orqali siz unga oldingi kataloglarni o'qish (bajarish) qobiliyatini berasiz.

Endi Samba mijozidan foydalanish haqida gapiraylik, chunki biz (Linux foydalanuvchilari) ham Windows tarmoq resurslari bilan ishlashni xohlaymiz. Qanday resurslar mavjudligini bilish uchun siz / usr / bin / smbclient -L host_name buyrug'ini kiritishingiz kerak. Dastur parol so'raydi, unga javoban ko'p hollarda Enter tugmasini bosish kifoya. Endi kerakli resursga ulanish uchun kompyuter nomini va kerakli resursni kiriting. Masalan:

# / usr / bin / smbclient \\ Aleks \ Ovoz

(bu erda biz Aleksning kompyuteridagi Sound papkasiga ulanishga harakat qilmoqdamiz). Natijada, agar buyruq to'g'ri kiritilgan bo'lsa va bunday tarmoq resursi mavjud bo'lsa, siz parol so'rovini olishingiz kerak. Uni kiriting yoki kirish uchun parol talab qilinmasa, Enter tugmasini bosing. Bunga javoban siz samba mijoz so'rovini olasiz: smb:>. Kelajakda ish fayllar bilan ishlash uchun barcha kerakli operatsiyalarni (nusxa olish, yaratish, ko'chirish va h.k.) bajarishingiz mumkin bo'lgan buyruqlar to'plami bilan amalga oshiriladi. Yordam uchun smb:> help ni kiriting. Ushbu rejim biroz noqulay, shuning uchun ko'p hollarda modul ishlatiladi. smbfs sambaning bir qismi bo'lgan; lekin eski tarqatishlarda yadro smbfs yordamisiz qurilishi mumkin, bu holda uni qayta tiklash kerak bo'ladi. Kerakli manbani o'rnatish uchun shunday yozing:

Mount -t smbfs -o foydalanuvchi nomi = foydalanuvchi, parol = 123456, iocharset = koi8-r, kod sahifasi = 866 // alex / sound / mnt / sound.

Agar siz foydalanuvchi nomi va parolni ko'rsatmasangiz, tizimning o'zi buni sizdan so'raydi. Shuni unutmangki, ~ HOME / .bash_history fayliga qarab, parolni bilish uchun siz kiritgan buyruqlardan foydalanishingiz mumkin. Yana bir nozik jihat: agar smbclient dasturi ruscha nomli fayllarni to'g'ri ko'rsatsa, smbfs moduli ba'zan boshqa kodlashga umuman e'tibor bermaydi, hatto siz uni aniq ko'rsatsangiz ham. Ular buni yamoq bilan tuzatish mumkinligini aytishadi, lekin men Red Hatim uchun hali topa olmadim.

Agar siz SMB ulushi tizim ishga tushganda avtomatik ravishda o'rnatilishini istasangiz, / etc / fstab fayliga quyidagi qatorni qo'shing:

//[elektron pochta himoyalangan]/ tovush / mnt / alex / tovush smbfs rw, noauto 0 0.

Ushbu misolda, foydalanuvchi nomidan mehmon(agar resurs ushbu foydalanuvchini qo'llab-quvvatlasa va agar bu foydalanuvchi faqat parol bilan kirish imkoniga ega bo'lsa, tashvishlanmang: ular sizdan albatta so'raydi) alex kompyuteridagi ovoz tarmog'i resursi / mnt / alex / ovoz papkasiga o'rnatilgan. ushbu katalogga yozish uchun. Aytgancha, Samba mijozi yashirin tarmoq resurslarini mukammal ko'radi, ya'ni. tarmoq nomi $ bilan tugaydiganlar.

Ko'rib turganingizdek, siz zamonaviy foydalanuvchi uchun jim dahshatga olib keladigan buyruq qatori bilan ishlashingiz kerak. Va bu erda OpenSource dunyosi u bilan uchrashish uchun ketdi - grafik qobiqlardagi tugmachalarni bosish orqali Samba resurslari bilan tanishroq ishlashga imkon beruvchi ko'plab yordamchi dasturlar yaratilgan. Mandrake va derivativlar distributiviga kiritilgan eng mashhur dastur, shuningdek Debian - gnomba... Qanday bo'lmasin, uni Linux uchun dasturiy ta'minotga ega serverlarning aksariyatida topish mumkin (men buni ftp://ftp.altlinux.ru/ saytida ko'rganman). Ushbu yordamchi dastur mavjud tarmoq resurslarini () ko'rish va kerak bo'lganda kerakli katalogga o'rnatish imkonini beradi, shu bilan birga buni talab qiladigan manbalar uchun login va parolni ko'rsatgan holda o'rnatish imkoniyati mavjud. O'rnatish paytida fayl menejerini ishga tushirish mumkin (sukut bo'yicha gmc), o'rnatilgan resurslar uchun kataloglarni yaratish, dasturni ishga tushirishda avtomatik skanerlash (ehtimol standart SMB protokoli yordamida) va IP manzillari bo'yicha skanerlash (WINS protokoli yordamida rejalashtirilgan) opsiyasini o'rnatish. Men aniqlamagan sabablarga ko'ra, ba'zi tarqatishlarda, SMB protokoli yordamida skanerlashda tarmoq resurslari ko'rsatilmagan, shuning uchun men har doim ikkinchi usuldan foydalanaman, chunki u benuqson ishlaydi, shunchaki skanerlash uchun bir qator IP manzillarini o'rnatishingiz kerak ( bilsangiz). To'g'ri ruscha fayl nomlarini ko'rsatish uchun yorliqda koi8-r shriftlarini o'rnatishni unutmang. Variantlar > Shrift tanlash smb.conf faylida kirillcha kodlashni ko'rsatuvchi qatorlarni ham tekshiring (yuqoriga qarang).

Agar gnomba faqat resurslarni o'rnatishi va o'chirishi mumkin bo'lsa, u holda dastur xsbrowser shuningdek, ularni mahalliy kompyuterda papkalar sifatida kiritish imkonini beradi (). To'g'ri, men hali bu dasturni ruscha nomli fayllarni tushuna olmadim, lekin ijobiy tomonlari ham bor: bu dastur ishlayotganda konsolda barcha o'rnatish buyruqlari va turli tarmoq so'rovlari ko'rsatiladi, bu esa ularni tushunish imkonini beradi. yaxshi. KDE ishlab chiquvchilari ham sinab ko'rdi: orqali Parametrlar> Ma'lumot yordam dasturi mavjud Samba holati, mahalliy kompyuterga / dan barcha ulanishlarni ko'rsatadi, bir vaqtning o'zida .log fayllarini ko'rishning qulay vositasidir. Yordamchi dastur shunga o'xshash ma'lumotlarni taqdim etadi. komba uni http://linux.tucows.com/ () da topish mumkin.

Qanchalik ko'p gapirmoqchi bo'lsam-da, lekin jurnal jurnal - hamma narsani sig'dira olmaysiz. Bundan tashqari, hamma joyda bo'lgan odam va ma'lumotlar sizga yordam beradi. Shuningdek, barcha kerakli yordam ma'lumotlarini SWAT yordam dasturidan olish mumkin, bundan tashqari Red Hat 7.3 da Samba-dan foydalanish kitobi mavjud edi. Robert "ekshteyn" a(Ingliz tili - yomon, mutlaqo bepul - yaxshi: / usr / share / swat / using_samba), SWAT () dan ham mavjud. Qo'shimcha hujjatlar, tez-tez so'raladigan savollar va namuna konfiguratsiya fayllarini / usr / share / doc / samba katalogida topish mumkin. Turli forumlarda siz Samba ishi haqida juda salbiy fikrlardan tortib to to'liq ishtiyoqgacha juda qarama-qarshi fikrlarni topishingiz mumkin. Shaxsan men ushbu Windows NT emulyatorining tarafdorlari tomonidaman, bundan tashqari, xuddi shu uskuna bilan sinov natijalariga ko'ra, Samba serveri Microsoft tizimida ishlaydigan kompyuterga qaraganda 25-30% yuqori ish faoliyatini ko'rsatadi. Omad.

Samba- SMB / CIFS protokoli yordamida turli xil operatsion tizimlardagi tarmoq drayverlariga kirish imkonini beruvchi dastur. Mijoz va server qismlari mavjud. Bu GPL litsenziyasi ostida chiqarilgan bepul dastur.

Samba GNU / Linux, POSIX-mos keluvchi Solaris va Mac OS X Server, turli BSD tatlar, OS / 2, Windows kabi Unix-ga o'xshash tizimlarning ko'pchiligida ishlaydi. Samba deyarli barcha GNU/Linux distributivlariga, shu jumladan, albatta Ubuntu-ga kiritilgan.

O'rnatish

Ubuntu ish stolida umumiy jild yaratish uchun jildni o'ng tugmasini bosing va "Jildni nashr etish" menyu bandini tanlang. Hech qanday konfiguratsiya fayllarini tahrirlashingiz shart emas. Quyida tavsiflangan hamma narsa faqat qo'lda sozlash uchun amal qiladi, masalan, fayl serverini yaratishda.

O'rnatish uchun terminalni oching va quyidagilarni kiriting:

Sudo apt-get samba-ni o'rnating

Ilova avtomatik ravishda yuklab olinadi va o'rnatiladi.

Moslashtirish

Terminal yordamida dastlabki konfiguratsiya faylining zaxira nusxasini yarataylik:

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

Endi siz /etc/samba/smb.conf sozlamalar faylini superfoydalanuvchi huquqlariga ega istalgan matn muharririda ochish orqali tahrirlashingiz mumkin. Masalan, bu kabi:

Sudo nano /etc/samba/smb.conf

Quyida, odatda, Samba uchun faqat bitta maxsus foydalanish holati keltirilgan va juda ko'p hollarda hamma narsa mutlaqo boshqacha tarzda tuzilgan. Maqola Samba-ning imkoniyatlariga e'tibor qaratib, nafaqat ushbu dasturdan mahalliy ruxsatnoma bilan fayllarni saqlash joyi sifatida foydalanishga e'tibor qaratib, tuzatilishi kerak. Faylni saqlashga misolni alohida batafsil maqolada olish yaxshiroqdir.

Samba-ni avtorizatsiya bilan mustaqil fayl serveri sifatida sozlash misoli:

; Global server sozlamalari; Umumiy server sozlamalari; Tarmoq muhitida ko'rsatiladigan kompyuter nomi netbios nomi = asosiy server server satri =; Mijoz ishchi guruhi = WORKGROUP versiyasini e'lon qilish = 5.0 rozetka opsiyalari = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF = 8192 SO_SNDBUF = 8192 passdb backend = tdbsam xavfsizligi = foydalanuvchi null parollari = haqiqiy; Foydalanuvchi taxalluslari uchun fayl foydalanuvchi nomi xaritasi = / etc / samba / smbusers nomini hal qilish tartibi = xostlar bcastni yutadi; Agar Samba'dagi nmbd (8) WINS serveri bo'lsa, wins qo'llab-quvvatlashi "ha"ga o'rnatiladi. Agar sizda bir nechta pastki tarmoq mavjud bo'lmasa va nmbd WINS serveri sifatida ishlashini istamasangiz, bu parametrni "ha" ga o'rnatmang. Hech qachon bitta quyi tarmoq ichidagi bir nechta mashinada bu parametrni “ha” ga o‘rnatmang. g'alaba qozonadi qo'llab-quvvatlash = yo'q; Printer yordamida chop etish = CUPS printcap nomi = CUPS; Jurnallar jurnali fayli = /var/log/samba/log.%m syslog = faqat 0 syslog = yo'q; Barcha interfeyslarda tinglash ko'rsatilmagan bo'lsa, tinglash uchun interfeyslarga ulanishni sozlash; interfeyslar = lo, eth0; faqat interfeyslarni ulash = rost; ; ; yo'l = / var / lib / samba / printerlar; ko'rish mumkin = ha; mehmon ok = ha; faqat o'qish = ha; ro'yxatni yozish = ildiz; niqob yaratish = 0664; katalog niqobi = 0775; ; ; yo'l = / tmp; chop etish mumkin = ha; mehmon ok = ha; ko'rish mumkin = yo'q; ; ; yo'l = / media / cdrom; ko'rish mumkin = ha; faqat o'qish = ha; mehmon ok = ha; Qattiq disk to'pi; Mijozlar tomonidan ko'rilgan to'plarni nomlash; Umumiy disk yo'liga yo'l = / media / sda1; Koʻrib chiqish mumkinmi = ha faqat oʻqiladi = mehmon yoʻq OK = niqob yaratilmaydi = 0644 katalog niqobi = 0755; Muayyan foydalanuvchi nomi yoki guruhga bog'lash, bo'sh joy bilan ajratilgan nomlar; majbur foydalanuvchi = user1 user2; kuch guruhi = guruh1 guruh2; Yuqoridagi yo'lga o'xshash boshqa qattiq disk = / media / sde1 ko'rib chiqilishi mumkin = ha faqat o'qiladi = mehmon yo'q OK = niqob yaratilmaydi = 0644 katalog niqobi = 0755

Endi biz foydalanuvchilar bilan ishlashimiz kerak.

Samba allaqachon tizimda bo'lgan foydalanuvchilardan foydalanadi, foydalanuvchi nomini misol qilib oling, aytaylik, u allaqachon tizimda, siz uni SMB ma'lumotlar bazasiga qo'shishingiz va umumiy resurslarga kirish uchun parol belgilashingiz kerak, buni buyruq bilan bajaring. :

Smbpasswd - foydalanuvchi

Sizdan parolni kiritish so'raladi, foydalanuvchi ma'lumotlar bazasiga qo'shiladi, endi siz ushbu foydalanuvchini yoqishingiz kerak.

Smbpasswd -e foydalanuvchisi

Keyinchalik, biz Windows mashinasidan kirishni osonlashtirish uchun foydalanuvchi nomi foydalanuvchisi uchun taxallus yaratamiz, masalan, Admin ismli foydalanuvchi, buning uchun biz / etc / samba / smbusers faylini yaratamiz va tahrirlaymiz:

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

Faylga bir necha qator yozing

# Unix_name = SMB_name1 SMB_name2 user = Admin

Bu konfiguratsiyani tugatadi, Samba-ni qayta ishga tushiring.

Samba uchun eng oddiy grafik interfeysni buyruq bilan o'rnatishingiz mumkin:

Sudo apt-get install system-config-samba

Bu buyruq bilan boshlanadi:

Sudo tizimi-config-samba

U samba konfiguratsiya fayliga barcha o'zgarishlarni yozadi.

Masofaviy boshqaruv uchun Samba veb-interfeysi sifatida Samba uchun juda mos keladi