0

معرفی و راه اندازی سرویس SAMBA، فایل Sharing بین ویندوز و لینوکس

در این مقاله شما را با سرویس SAMBA که سرویسی برای اشتراک گذاری یا Sharing بین سیستم های لینوکس ویندوز است، آشنا خواهیم کرد.

معرفی:

خب مطمئن هستم که همه ی شما خوانندگان عزیز با مفهوم اشتراک گذاری یا Share کردن یک فایل در شبکه آشنایی دارید.

معمولا در شبکه، برای این کار از یک فایل سرور استفاده می شود تا مدیریت داده ها آسان تر باشد.

همان طور که می دانید، SMB پروتکل معروفی برای اشتراک گذاری می باشد که در سیستم های ویندوزی قابل استفاده است.

اما ممکن است در شبکه، سرور یا کاربرهای دوست دار لینوکس نیز وجود داشته باشند.

برای برقراری ارتباط اشتراک گذاری میان سیستم های لینوکسی و ویندوزی، از سرویس SAMBA استفاده می شود.

سرویس SAMBA یک سرویس رایگان و کاملا متن باز (Open Source) می باشد.

به کمک سرویس SAMBA نه تنها بین سیستم های لینوکسی، بلکه میان سیستم های ویندوزی و لینوکسی نیز می توان File Sharing راه اندازی کرد.

بریم سراغ راه اندازی…

مرحله اول راه اندازی :

سناریو به صورت زیر است که بر روی Ubuntu 18 راه اندازی شده است:

what is SAMBA in Linux

در ابتدا باید پکیج SAMBA را نصب کنید:

# apt-get update

# apt-get install samba

فایل کانفیگ این سرویس به صورت پیش فرض در دایرکتوری زیر قرار دارد:

# /etc/samba/smb.conf

قبل این که شروع به ادیت این فایل کنید، حتما یک کپی از آن را تهیه کنید:

# cp /etc/samba/smb.conf /etc/samba/smb.conf.org

حال فایل را با استفاده از یک ادیتور باز کنید:

# vim /etc/samba/smb.cong

در فایل کانفیگ، شما با یک بلوک Global مواجه می شوید که پالیسی ها و تنظیمات اصلی مربوط به این سرویس، در این بلوک قرار می گیرد.

به صورت پیش فرض، در این بلوک یک سری تنظیمات وجود دارد.

اگر دستورات زیر در این بلوک وجود نداشتند، آن ها را کپی کرده و وارد فایل کنید:

server string = samba_server

server role = standalone server

interfaces = lo your_network_interface

bind interfaces only = yes

disable netbios = yes

smb ports = 445

log file = /var/log/samba/smb.log

server string صرفا یک نام است که به فایل سرور داده می شود.

server role نقش فایل سرور را مشخص می کند که در این سناریو نقش سرور، standalone می باشد.

interfaces مشخص می کند که روی کدام کارت شبکه سرویس دهی شود.

bind interfaces only برای سرور مشخص می کند که فقط روی کارت شبکه هایی که در interfaces مشخص شده است، سرویس دهی شود.

disable netbios نیز از جمله موارد امنیتی است که بهتر است فعال باشد.

smb port پرت سرویس را مشخص می کند که به صورت پیش فرض ۴۴۵ می باشد.

log files محل ذخیره سازی لاگ ها را مشخص می کند.

تنظیمات بالا را ذخیره کرده و با دستورtestparm از صحت آن اطمینان حاصل یابید.

حال نوبت به تنظیمات Share File می رسد.

مرحله دوم راه اندازی :

به ازای هر فولدری که می خواهید Share شود، نیاز است که یک بلوک در فایل کانفیگ اضافه کنید.

در این سناریو، قرار است دو فولدر Share شود.

روی فولدر اول فقط یوزر geek1 دسترسی دارد و حتی این فولدر برای هیچکس قابل مشاهده نیست.

روی فولدر دوم یوزرهای geek1 و geek2 دسترسی دارند.

در ابتدا باید این دو یوزر ساخته شود:

# adduser geek1

# adduser geek2

حال دایرکتوری هایی که نیاز است را بسازید:

# mkdir /home/geek1/share

# mkdir /home/geek2/share

حال باید دو بلوک به صورت زیر ایجاد کنید:

[GEEK1]

comment = public anonymous access

path = /home/share_folder

browsable = no

writable = yes

guest ok = no

valid users = geek1

در قسمتpath مشخص می شود که فایل Share شده شما از کجا خوانده شود.

گزینه browsable به شما این امکان را می دهد که این فولدر برای هیچکس قابل مشاهده نباشد.

گزینه writable اجازه ی نوشتن را به کاربر می دهد.

گزینه guest ok به این معناست که یوزرهای guest اجازه ی دسترسی نداشته باشند.

گزینه valid users نیز یوزرهایی را مشخص می کند که اجازه دسترسی داشته باشند ( طبق سناریوی ما فقط یوزر geek1 می باشد ).

همین دستورات برای بلوک دوم نیز به کار گرفته می شود اما با تغییرات زیر:

[EveryOne]

path = /home/geek2/share

browsable = yes

valid users = geek1 geek2

تنظیمات بالا را ذخیره کرده و خارج شوید. سپس با استفاده از testparm درستی دستورات را چک کنید.

SAMBA یک دیتابیس کوچک درونی دارد و یوزرهایی که قرار است از Share File های موجود بر روی سرور استفاده کنند، در این دیتابیس اضافه می شوند:

# smbpasswd -a geek1

# smbpasswd -e geek1

# smbpasswd -a geek2

# smbpasswd -e geek2

در مرحله آخر باید دسترسی های سیستمی لازم بر روی دایرکتوری ها را به یوزرها بدهید:

# chmode -R 777 /home/geek2/share

# chown -R geek1 /home/geek1/

در نهایت یک بار سرویس خود را ریست کنید:

# service smbd restart

حال نوبت به تست سناریو می رسد.

آدرس سرور را در ران ویندوز وارد کنید:

what is samba

همانطور که پیداست تنها فولدر EveryOne قابل مشاهده است و هردو یوزر باید به آن دسترسی داشته باشند.

what is samba

همچنین برای دسترسی به فولدر دوم باید آدرس آن را به صورت مستقیم وارد کنید و فقط یوزر geek1 باید دسترسی داشته باشد:

what is samba

این بود از راه اندازی File Sharing بین سیستم های لینوکسی و ویندوزی.

امتیاز ما
برای امتیاز به این پست کلیک کنید
[کل: 1 میانگین: 5]
ارسال دیدگاه