در این مقاله نحوه نصب و پیکربندی سرور سامبا ، روی سرور لینوکس اوبونتو ۱۴٫۱۰ آموزش داده خواهد شد. سامبا یک مجموع نرم افزار منبع باز و رایگان تحت مجوز GNU General Public است که برای انتقال امن و سریع اطلاعات ، فایل ها و چاپگرها، بین همه کلاینت هایی که از پروتکل SMB / CIFS استفاده میکنند نظیر تمام نسخه های DOS و ویندوز ، OS/2 ، لینوکس و … طراحی شده است .
در این آموزش برای نصب سرور سامبا ، سروری مبتنی بر اوبونتو ۱۴٫۱۰ نصب و راه اندازی شده است . البته برای چک کردن سرور سامبا به یک سرور مجازی ویندوز هم نیاز دارید که باید به سرور اوبونتو دسترسی داشته باشد. در این سرور اوبونتو از ۱۹۲٫۱۶۸٫۰٫۱۰۰ به عنوان آدرس IP و از server1.example.com به عنوان نام هاست استفاده شده است.
شما می توانید سرور اوبونتو را با توجه به مقاله ی زیر نصب کنید:
http://www.howtoforge.com/ubuntu-14.10-utopic-unicorn-server
نکته: سرور مجازی ویندوز باید در همان workgroup باشد. برای بررسی مقادیر سیستم ویندوز ، دستور زیر را cmd prompt اجرا کنید :
۱
|
net config workstation
|
آموزش نصب سرور سامبا روی لینوکس Ubuntu
ماشین مجازی ویندوز شما باید در همان workstation سرور اوبونتو باشد . در این آموزش از WORKGROUP به عنوان Workstation استفاده شده است.
برای قابل دسترس کردن ماشین مجازی ویندوز ، دستور زیر را در ترمینال اجرا کرده و IP آدرس سرور خود را وارد کنید:
۱
|
notepad C:\\Windows\System32\drivers\etc\hosts
|
سپس این تغییرات را ذخیره کنید :
۱
۲
|
[...]
۱۹۲٫۱۶۸٫۰٫۱۰۰ server1.example.com ubuntu
|
ابتدا روش نصب سامبا بصورت anonymous sharing شرح داده خواهد شد. برای نصب سامبا دستور زیر را اجرا کنید :
۱
|
apt–get install samba samba–common python–glade2 system–config–samba
|
این دستور ، نسخه version 4.1.11-Ubuntu سامبا را نصب خواهد کرد.
آموزش نصب سرور سامبا روی لینوکس Ubuntu
اکنون برای پیکربندی سامبا فایل /etc/samba/smb.conf را ویرایش کنید ، قبل از ایجاد تغییرات یک فایل بک آپ با عنوان /etc/samba/smb.conf.bak از فایل اصلی ایجاد کنید:
۱
۲
|
cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /dev/null > /etc/samba/smb.conf
|
فایل را با اجرای دستور زیر باز کرده و اطلاعات زیر را وارد کنید :
۱
|
vi /etc/samba/smb.conf
|
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
|
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = ubuntu
security = user
map to guest = bad user
dns proxy = no
#============================ Share Definitions ==============================
[Anonymous]
path = /samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no
|
۱
|
mkdir –p /samba/anonymous
|
۱
|
service smbd restart
|
اکنون میتونید مطابق عکس زیر از ویندوز به Ubuntu Sharing دسترسی داشته باشید:
آموزش نصب سرور سامبا روی لینوکس Ubuntu
بعد از جستجوی فولدر مورد نظر از سرور مجازی ویندوز و تلاش برای ایجاد یک فایل متنی ، با ارور permission denied مواجه خواهید شد.
آموزش نصب سرور سامبا روی لینوکس Ubuntu
آموزش نصب سرور سامبا روی لینوکس Ubuntu
مجوز فولدرِ به اشتراک گذاشته شده را ، بررسی کنید.
۱
|
ls –l /samba/
|
۱
۲
۳
۴
|
root@server1:~# ls -l /samba/
total 4
drwxr–xr–x 2 root root 4096 Nov ۷ ۰۸:۳۳ anonymous
root@server1:~#
|
برای دادن مجوزهای لازم به کاربر anonymous دستور زیر را اجرا کنید:
۱
۲
۳
۴
|
cd /samba
chmod –R 0755 anonymous/
chown –R nobody:nogroup anonymous/
ls –l
|
۱
۲
۳
۴
|
root@server1:/samba# ls -l
total 4
drwxr–xr–x 2 nobody nogroup 4096 Nov ۷ ۰۸:۳۳ anonymous
root@server1:/samba#
|
اکنون مجوز جستجو فولدر و ایجاد محتویات آن به کاربر anonymous داده شد.
آموزش نصب سرور سامبا روی لینوکس Ubuntu
شما میتوانید محتویات فولدر را در سرور نیز چک کنید:
۱
|
ls –l anonymous/
|
۱
۲
۳
۴
|
root@server1:/samba# ls -l anonymous/
total 0
–rwxr—r— 1 nobody nogroup 0 Nov ۷ ۱۰:۱۹ anonymous_share.txt
root@server1:/samba#
|
دسترسی امن به سرور سامبا:
برای دسترسی به سرور سامبا با یک اکانت مناسب ، ابتدا یک گروه به نام smbgrp و یک کاربر به نام srijan ایجاد کنید.
۱
|
addgroup smbgrp
|
۱
|
useradd srijan –G smbgrp
|
۱
|
smbpasswd –a srijan
|
۱
۲
۳
۴
۵
|
root@server1:~# smbpasswd -a srijan
New SMB password:<—yoursambapassword
Retype new SMB password:<—yoursambapassword
Added user srijan.
root@server1:~#
|
اکنون باید پوشه secured را در فولدر /samba ایجاد کنید:
۱
۲
۳
|
mkdir –p /samba/secured
cd /samba
chmod –R 0770 secured/
|
بار دیگر فایل پیکربندی را ویرایش کرده و اطلاعات زیر را به آخر فایل اضافه کنید:
۱
|
nano /etc/samba/smb.conf
|
۱
۲
۳
۴
۵
۶
۷
|
[...]
[secured]
path = /samba/secured
valid users = @smbgrp
guest ok = no
writable = yes
browsable = yes
|
۱
|
service smbd restart
|
تنظیمات را به شرح زیر بررسی کنید :
۱
۲
|
cd
testparm
|
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲
۲۳
۲۴
۲۵
۲۶
|
root@server1:~# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section “[Anonymous]”
Processing section “[secured]”
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions<—ENTER
[global]
netbios name = UBUNTU
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : backend = tdb
[Anonymous]
path = /samba/anonymous
read only = No
guest ok = Yes
[secured]
path = /samba/secured
valid users = @smbgrp
read only = No
root@server1:~#
|
سپس فولدر را در سرور مجازی ویندوز با اکانت معتبر چک کنید . در این آموزش نام کاربری srijan و پسورد yoursambapassword می باشد.
آموزش نصب سرور سامبا روی لینوکس Ubuntu
شما بار دیگر با این ارور مواجه خواهید شد که کاربر srijan مجوز دسترسی به این فولدر را ندارد .
آموزش نصب سرور سامبا روی لینوکس Ubuntu
۱
۲
|
cd /samba
chown –R srijan:smbgrp secured/
|
اکنون به کاربر سرور سامبا( srijan ) مجوز نوشتن در این فولدر داده شد.
آموزش نصب سرور سامبا روی لینوکس Ubuntu
شما می توانید فایل را در سرور اوبونتو چک کنید:
۱
|
ls –l /samba/secured/
|
۱
۲
۳
۴
|
root@server1 # ls -l /samba/secured
total 0
–rwxr—r— 1 srijan srijan 0 Nov ۷ ۱۱:۳۲ secured_test.txt
root@server1 #
|
بدون دیدگاه