از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش نصب و پیکربندی Samba در CentOS 7
سرفصلهای مطلب
Samba یک پیادهسازی مجدد رایگان و منبع باز است پروتکل اشتراک فایل شبکه SMB/CIFS
که به کاربران نهایی امکان دسترسی به فایل ها، چاپگرها و سایر منابع مشترک را می دهد.
در این آموزش روش نصب سامبا را نشان خواهیم داد CentOS 7 و آن را به عنوان یک سرور مستقل پیکربندی کنید تا اشتراک فایل را در سیستم عامل های مختلف از طریق یک شبکه فراهم کند.
ما اشتراکگذاریها و کاربران Samba زیر را ایجاد میکنیم.
کاربران:
- سادمین – یک کاربر اداری با دسترسی خواندن و نوشتن به همه اشتراکها.
- جاش – یک کاربر معمولی با اشتراک فایل خصوصی خودش.
سهام:
- کاربران – این اشتراک با مجوز خواندن/نوشتن توسط همه کاربران قابل دسترسی خواهد بود.
- جاش – این اشتراک با مجوز خواندن/نوشتن فقط توسط کاربران جاش و سادمین قابل دسترسی خواهد بود.
به اشتراک گذاری فایل از همه دستگاه های موجود در شبکه شما قابل دسترسی خواهد بود. بعداً در آموزش، دستورالعملهای دقیقی در مورد روش اتصال به سرور Samba از کلاینتهای لینوکس، ویندوز و macOS ارائه خواهیم داد.
پیش نیازها
قبل از شروع، مطمئن شوید که به سیستم خود وارد شده اید CentOS سیستم 7 به عنوان یک کاربر با امتیازات sudo.
نصب Samba در CentOS
سامبا از استاندارد موجود است CentOS مخازن برای نصب آن بر روی خود CentOS سیستم دستور زیر را اجرا می کند:
sudo yum install samba samba-client
پس از اتمام نصب، سرویسهای Samba را راهاندازی کنید و آنها را فعال کنید تا به طور خودکار در هنگام بوت شدن سیستم شروع شوند:
sudo systemctl start smb.service
sudo systemctl start nmb.service
sudo systemctl enable smb.service
sudo systemctl enable nmb.service
را smbd
سرویس خدمات اشتراک گذاری و چاپ فایل را ارائه می دهد و به پورت های TCP 139 و 445 گوش می دهد. nmbd
سرویس خدمات نامگذاری NetBIOS را از طریق IP به مشتریان ارائه می دهد و در پورت UDP 137 گوش می دهد.
پیکربندی فایروال
اکنون که Samba بر روی شما نصب شده و در حال اجرا است CentOS دستگاه، باید فایروال خود را پیکربندی کرده و پورت های لازم را باز کنید. برای انجام این کار، دستورات زیر را اجرا کنید:
firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --zone=public --add-service=samba
ایجاد کاربران سامبا و ساختار دایرکتوری
برای نگهداری راحت تر و انعطاف پذیری به جای استفاده از دایرکتوری های خانگی استاندارد (/home/user
) تمام دایرکتوری ها و داده های Samba در قسمت قرار خواهند گرفت /samba
فهرست راهنما.
با ایجاد آن شروع کنید /samba
فهرست راهنما:
sudo mkdir /samba
یک گروه جدید به نام ایجاد کنید sambashare
. بعداً همه کاربران سامبا را به این گروه اضافه خواهیم کرد.
sudo groupadd sambashare
را تنظیم کنید /samba
مالکیت گروه دایرکتوری به sambashare
:
sudo chgrp sambashare /samba
سامبا از کاربران لینوکس و سیستم مجوز گروه استفاده می کند، اما مکانیسم احراز هویت خود را جدا از احراز هویت استاندارد لینوکس دارد. ما کاربران را با استفاده از لینوکس استاندارد ایجاد خواهیم کرد useradd
ابزار و سپس رمز عبور کاربر را با smbpasswd
سودمندی
همانطور که در مقدمه ذکر کردیم، یک کاربر معمولی ایجاد خواهیم کرد که به اشتراک فایل خصوصی و یک حساب مدیریتی با دسترسی خواندن و نوشتن به همه اشتراکگذاریها در سرور سامبا دسترسی خواهد داشت.
ایجاد کاربران سامبا
برای ایجاد یک کاربر جدید به نام josh
، از دستور زیر استفاده کنید:
sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh
را useradd
گزینه ها معانی زیر را دارند:
-M
-دایرکتوری خانگی کاربر را ایجاد نکنید. ما به صورت دستی این دایرکتوری را ایجاد می کنیم.-d /samba/josh
– فهرست اصلی کاربر را روی آن تنظیم کنید/samba/josh
.-s /usr/sbin/nologin
– دسترسی پوسته را برای این کاربر غیرفعال کنید.-G sambashare
– کاربر را بهsambashare
گروه
فهرست اصلی کاربر را ایجاد کنید و مالکیت دایرکتوری را به کاربر تنظیم کنید josh
و گروه sambashare
:
sudo mkdir /samba/josh
sudo chown josh:sambashare /samba/josh
دستور زیر بیت setgid را به آن اضافه می کند /samba/josh
دایرکتوری بنابراین فایل های تازه ایجاد شده در این دایرکتوری گروه دایرکتوری والد را به ارث می برند. به این ترتیب، مهم نیست که کدام کاربر یک فایل جدید ایجاد کند، فایل صاحب گروه خواهد بود sambashare
. برای مثال، اگر مجوزهای دایرکتوری را روی آن تنظیم نکنید 2770
و sadmin
کاربر یک فایل جدید برای کاربر ایجاد می کند josh
قادر به خواندن/نوشتن در این فایل نخواهد بود.
sudo chmod 2770 /samba/josh
اضافه کردن josh
حساب کاربری به پایگاه داده سامبا با تنظیم رمز عبور کاربر:
sudo smbpasswd -a josh
از شما خواسته می شود که رمز عبور کاربر را وارد و تایید کنید.
New SMB password:
Retype new SMB password:
Added user josh.
پس از تنظیم رمز عبور، حساب Samba را با تایپ کردن فعال کنید:
sudo smbpasswd -e josh
Enabled user josh.
برای ایجاد یک کاربر دیگر همین کار را تکرار کنید process مانند هنگام ایجاد کاربر josh
.
بعد، بیایید یک کاربر و گروه ایجاد کنیم sadmin
. همه اعضای این گروه دارای مجوزهای اداری خواهند بود. بعداً اگر میخواهید مجوزهای مدیریتی را به کاربر دیگری بدهید، کافی است آن کاربر را به آن اضافه کنید sadmin
گروه .
کاربر مدیریت را با تایپ کردن ایجاد کنید:
sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin
دستور بالا همچنین یک گروه ایجاد می کند sadmin
و کاربر را به هر دو اضافه کنید sadmin
و sambashare
گروه ها.
رمز عبور تنظیم کنید و کاربر را فعال کنید:
sudo smbpasswd -a sadmin
sudo smbpasswd -e sadmin
بعد، ایجاد کنید Users
اشتراک گذاری دایرکتوری:
sudo mkdir /samba/users
مالکیت دایرکتوری را به کاربر تنظیم کنید sadmin
و گروه sambashare
:
sudo chown sadmin:sambashare /samba/users
این فهرست برای همه کاربران احراز هویت شده قابل دسترسی خواهد بود. دستور زیر دسترسی نوشتن/خواندن را برای اعضای آن پیکربندی میکند sambashare
گروه در /samba/users
فهرست راهنما:
sudo chmod 2770 /samba/users
پیکربندی سهام سامبا
فایل پیکربندی Samba را باز کنید و بخش ها را اضافه کنید:
sudo nano /etc/samba/smb.conf
[users]
path = /samba/users
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
valid users = @sambashare @sadmin
[josh]
path = /samba/josh
browseable = no
read only = no
force create mode = 0660
force directory mode = 2770
valid users = josh @sadmin
گزینه ها دارای معانی زیر هستند:
[users]
و[josh]
– نام سهام هایی که هنگام ورود به سیستم از آنها استفاده خواهید کرد.path
– مسیر سهم.browseable
– آیا سهم باید در لیست سهام موجود درج شود یا خیر. با تنظیم بهno
سایر کاربران نمی توانند اشتراک گذاری را ببینند.read only
– آیا کاربران مشخص شده درvalid users
لیست قادر به نوشتن به این اشتراک هستند.force create mode
– مجوزهای فایل های جدید ایجاد شده در این اشتراک را تنظیم می کند.force directory mode
– مجوزهای دایرکتوری های جدید ایجاد شده در این اشتراک را تنظیم می کند.valid users
– لیستی از کاربران و گروه هایی که اجازه دسترسی به اشتراک را دارند. پیشوند گروه ها با the است@
سمبل.
برای کسب اطلاعات بیشتر در مورد گزینه های موجود به آدرس زیر مراجعه کنید فایل پیکربندی سامبا
مستندات page.
پس از اتمام، خدمات Samba را با استفاده از:
sudo systemctl restart smb.service
sudo systemctl restart nmb.service
در بخشهای بعدی، روش اتصال به اشتراکگذاری Samba از کلاینتهای لینوکس، macOS و ویندوز را به شما نشان خواهیم داد.
اتصال به Samba Share از لینوکس
کاربران لینوکس می توانند از طریق خط فرمان با استفاده از مدیر فایل به اشتراک سامبا دسترسی داشته باشند یا سهم سامبا را مونت کنند.
با استفاده از کلاینت smbclient
smbclient
ابزاری است که به شما امکان می دهد از طریق خط فرمان به سامبا دسترسی پیدا کنید. را smbclient
بسته در اکثر توزیعهای لینوکس از قبل نصب نشده است، بنابراین باید آن را با مدیر بسته توزیع خود نصب کنید.
برای نصب smbclient
در اجرای اوبونتو و دبیان:
sudo apt install smbclient
برای نصب smbclient
بر CentOS و فدورا اجرا می کنند:
sudo yum install samba-client
نحو دسترسی به یک اشتراک سامبا به شرح زیر است:
mbclient //samba_hostname_or_server_ip/share_name -U username
به عنوان مثال برای اتصال به اشتراکی به نام josh
در سرور سامبا با آدرس IP 192.168.121.118
به عنوان کاربر josh
شما می دوید:
smbclient //192.168.121.118/josh -U josh
از شما خواسته می شود که رمز عبور کاربر را وارد کنید.
Enter WORKGROUP\josh's password:
پس از وارد کردن رمز عبور وارد رابط خط فرمان Samba خواهید شد.
Try "help" to get a list of possible commands.
smb: \>
نصب سهم سامبا
برای نصب اشتراک سامبا در لینوکس ابتدا باید آن را نصب کنید cifs-utils
بسته بندی
در اوبونتو و دبیان اجرا می شود:
sudo apt install cifs-utils
بر CentOS و فدورا اجرا می کنند:
sudo yum install cifs-utils
بعد، یک نقطه اتصال ایجاد کنید:
sudo mkdir /mnt/smbmount
با استفاده از دستور زیر، اشتراک را نصب کنید:
sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount
به عنوان مثال برای سوار کردن یک اشتراک به نام josh
در سرور سامبا با آدرس IP 192.168.121.118
به عنوان کاربر josh
به /mnt/smbmount
نقطه سواری که می خواهید اجرا کنید:
sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount
از شما خواسته می شود که رمز عبور کاربر را وارد کنید.
Password for josh@//192.168.121.118/josh: ********
با استفاده از رابط کاربری گرافیکی
Files، مدیر فایل پیشفرض در Gnome دارای یک گزینه داخلی برای دسترسی به اشتراکگذاریهای Samba است.
- Files را باز کنید و روی “Other Locations” در نوار کناری کلیک کنید.
- در «اتصال به سرور»، آدرس اشتراک سامبا را در قالب زیر وارد کنید
smb://samba_hostname_or_server_ip/sharename
. - روی “اتصال” کلیک کنید و صفحه زیر ظاهر می شود:
- “کاربر ثبت نام” را انتخاب کنید، نام کاربری و رمز عبور Samba را وارد کنید و روی “اتصال” کلیک کنید.
- فایل های روی سرور سامبا نمایش داده می شوند.
اتصال به Samba Share از macOS
در macOS، میتوانید از طریق خط فرمان یا با استفاده از Finder پیشفرض مدیر فایل macOS به Samba Shares دسترسی پیدا کنید. مراحل زیر روش دسترسی به اشتراک گذاری با استفاده از Finder را نشان می دهد.
- “Finder” را باز کنید، “Go” را انتخاب کنید و روی “Connect To” کلیک کنید.
- در «اتصال به»، آدرس اشتراک سامبا را در قالب زیر وارد کنید
smb://samba_hostname_or_server_ip/sharename
.
- روی “اتصال” کلیک کنید و صفحه زیر ظاهر می شود:
- “کاربر ثبت نام” را انتخاب کنید، نام کاربری و رمز عبور Samba را وارد کنید و روی “اتصال” کلیک کنید.
- فایل های روی سرور سامبا نمایش داده می شوند.
اتصال به Samba Share از ویندوز
کاربران ویندوز همچنین گزینه ای برای اتصال به اشتراک سامبا از طریق خط فرمان و رابط کاربری گرافیکی دارند. مراحل زیر روش دسترسی به اشتراک گذاری با استفاده از Windows File Explorer را نشان می دهد.
- File Explorer را باز کنید و در قسمت سمت چپ روی “This PC” راست کلیک کنید.
- “انتخاب مکان شبکه سفارشی” را انتخاب کنید و سپس روی “بعدی” کلیک کنید.
- در «آدرس اینترنت یا شبکه»، آدرس اشتراک سامبا را در قالب زیر وارد کنید
\\samba_hostname_or_server_ip\sharename
.
- روی «بعدی» کلیک کنید و از شما خواسته میشود که اعتبار ورود به سیستم را مطابق شکل زیر وارد کنید:
- در پنجره بعدی می توانید یک نام دلخواه برای مکان شبکه تایپ کنید. پیش فرض توسط سرور سامبا انتخاب می شود.
- روی «بعدی» کلیک کنید تا به آخرین صفحه جادوگر تنظیم اتصال بروید.
- روی «پایان» کلیک کنید و فایلهای روی سرور سامبا نشان داده میشوند.
نتیجه
در این آموزش روش نصب سرور سامبا را روی آن یاد گرفتید CentOS 7 و ایجاد انواع اشتراک گذاری و کاربران. همچنین روش اتصال به سرور سامبا را از دستگاه های لینوکس، macOS و ویندوز به شما نشان داده ایم.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-27 19:04:03