สร้างเซิร์ฟเวอร์ Samba อย่างง่ายด้วยคอมพิวเตอร์ทรัพยากรต่ำ

มีวรรณกรรมมากมายเกี่ยวกับเรื่องนี้อย่างแน่นอน แซมบ้า เพื่อสร้างที่เรียบง่ายหรือแข็งแกร่ง เซิร์ฟเวอร์จัดเก็บแต่หลายครั้งพวกเขาไม่ได้นำเราไปสู่ประเด็นโดยตรงในตัวเลือกที่ใช้งานได้จริงที่สุดด้วยคำชี้แจงตามลำดับและสถานการณ์การใช้งานจริงที่เป็นไปได้นั่นคือเรามักจะพบข้อมูลมากมาย แต่ไม่ได้ปรับให้เข้ากับความต้องการของหลาย ๆ คนและโดยเฉพาะอย่างยิ่งมือใหม่หรือผู้เริ่มต้นใน พื้นที่.

ลปิ

อย่างไรก็ตามฉันฝากประสบการณ์ไว้ในโพสต์นี้ในหัวข้อ:

ก่อนอื่นฉันปล่อยให้คุณทราบลักษณะทางเทคนิคของคอมพิวเตอร์ทรัพยากรต่ำที่ใช้:

ฮาร์ดแวร์:

ซอฟต์แวร์:

จากนั้นฉันก็ทำการติดตั้งและกำหนดค่าแพ็คเกจแซมบ้าบนเซิร์ฟเวอร์ของสาวน้อยของฉัน เครือข่าย LAN โฮมเมดดังต่อไปนี้:

1.- ติดตั้ง samba ด้วยคำสั่ง command:

aptitude install samba samba-common smbclient samba-doc smbfs winbind

2.- ฉันดำเนินการสำรองข้อมูลการกำหนดค่าแซมบ้าเริ่มต้นที่อยู่ในไฟล์กำหนดค่า smb.conf ด้วยคำสั่ง command:

cp /etc/samba/smb.conf /etc/samba/smb.conf.bck
  1. จากนั้นแก้ไขไฟล์คอนฟิกูเรชันด้วยโปรแกรมแก้ไขที่ฉันต้องการโดยใช้คำสั่ง command:
vi /etc/samba/smb.conf

ทิ้งไว้ดังนี้:


#======================= Global Settings =======================

[global]

## Browsing/Identification ###

workgroup = WORKGROUP
dns proxy = no
; wins support = no
; wins server = w.x.y.z
; server string = %h server
; name resolve order = lmhosts host wins bcast

#### Networking ####

; interfaces = 127.0.0.0/8 eth0
; bind interfaces only = yes

#### Debugging/Accounting ####

log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
; syslog only = no

####### Authentication #######

server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
security = user
username map = /etc/samba/smbusers
; encrypt passwords = true

########## Domains ###########

; server role = primary classic domain controller
; server role = backup domain controller
; server role = domain logons
; logon path = \\%N\profiles\%U
; logon path = \\%N\%U\profile
; logon drive = H:
; logon home = \\%N\%U
; logon script = logon.cmd
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account" -d /var/lib/samba -s /bin/false %u
; add group script = /usr/sbin/addgroup --force-badname %g
; domain logons = yes

############ Misc ############

usershare allow guests = yes
; usershare max shares = 100
; include = /home/samba/etc/smb.conf.%m
; domain master = auto
; idmap uid = 10000-20000
; idmap gid = 10000-20000
; template shell = /bin/bash
; winbind enum groups = yes
; winbind enum users = yes
; usershare max shares = 100
; SO_RCVBUF=8192 SO_SNDBUF=8192
; socket options = TCP_NODELAY
; message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &


#======================= Share Definitions =======================

[homes]

comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S

; [netlogon]

; comment = Network Logon Service
; path = /home/samba/netlogon
; guest ok = yes
; read only = yes

; [profiles]

; comment = Users profiles
; path = /home/samba/profiles
; guest ok = no
; browseable = no
; create mask = 0600
; directory mask = 0700

[printers]

comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700

[print$]

comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
; write list = root, @lpadmin

; [cdrom]
; comment = Samba server's CD-ROM
; read only = yes
; locking = no
; path = /cdrom
; guest ok = yes
; /dev/scd0   /cdrom  iso9660 defaults,noauto,ro,user   0 0
; preexec = /bin/mount /cdrom
; postexec = /bin/umount /cdrom

# EJEMPLO DE RECURSO COMPARTIDO

[RECURSO_COMPARTIDO]

comment = Servidor Disco Duro 500 GB
path = /media/usuario-sysadmin/RESPALDO
writeable = yes
browseable = yes
public = yes
valid users = usuario_samba
create mask = 0755
directory mask = 0755
guest ok = no
; read only = no
; write list = usuario_samba
; force group = usuario_samba
; hide dot files = yes
; guest only = yes
; guest account = nobody
; delete veto files = yes
; veto files = /*.exe/*.com/*.dll/*.mp3/*.avi/*.mkv/*.msi/*.mpg/*.wmv/*.wma

ดังที่ฉันได้บอกคุณไปแล้วบนอินเทอร์เน็ตมีข้อมูลมากมายเกี่ยวกับแซมบ้าและแต่ละตัวเลือกจะต้องได้รับการกำหนดค่าภายในไฟล์ smb.conf ซึ่งไม่ใช่ความตั้งใจของสิ่งพิมพ์นี้ อย่างไรก็ตามฉันฝากลิงก์บางส่วนไว้ให้คุณในเรื่องนี้:

จากนั้นฉันก็สร้างไฟล์ ผู้ใช้ samba "samba_user" ข้างในของฉัน เซิร์ฟเวอร์แซมบ้าซึ่งฉันเคยทำ บริหาร (จัดการ) แชร์ทรัพยากรจากระยะไกลจากคอมพิวเตอร์เครื่องอื่นของฉันด้วย GNU / Linux และ MS Windows  ในกรณีเฉพาะของฉันฉันจะไม่ทำงานร่วมกัน โฟลเดอร์ แต่สมบูรณ์ของฉัน ฮาร์ดไดรฟ์ รองของ 500 GB. ด้วยเหตุนี้ฉันต้องการให้ติดตั้งดิสก์นี้โดยอัตโนมัติเมื่อเซิร์ฟเวอร์เริ่มทำงานแม้ว่าจะไม่ได้โหลดอินเทอร์เฟซแบบกราฟิกก็ตามดังนั้นฉันจึงดำเนินการตามขั้นตอนต่อไปนี้:

ติดตั้งไฟล์ ฮาร์ดไดรฟ์ 500GB ภายใน เวที เซิร์ฟเวอร์

a) ตรวจสอบ (ฉันจดบันทึก) ของไฟล์ จุดเชื่อมต่อและโฟลเดอร์ในเครื่อง ของฉันอยู่ที่ไหน เวที ติดตั้งฮาร์ดไดรฟ์ 500GB โดยอัตโนมัติ มิฉะนั้นฉันสามารถสร้างโฟลเดอร์ที่จะเชื่อมต่อทรัพยากรในเครื่องเพื่อแชร์ด้วยคำสั่ง command: mkdir -p / กำหนด _ เส้นทาง / กำหนด _folder จากนั้นให้สิทธิ์ผู้ใช้กับผู้ใช้หลักของฉันที่เรียกว่าเซิร์ฟเวอร์ "ผู้ดูแลระบบผู้ใช้".

b) แก้ไขไฟล์ fstab ด้วยคำสั่งคำสั่ง "นาโน / etc / fstab" และใส่สายการประกอบต่อไปนี้:

/ dev / sdb1 / media / user-sysadmin / BACKUP / ntfs-3g rw, user_id = 1000, group_id = 1000

หมายเหตุ: ใช้ "Ntfs-3g" เนื่องจากดิสก์ของฉันถูกฟอร์แมตเป็นไฟล์ NTFS. คุณสามารถเพิ่มหรือไม่เพิ่มตัวเลือกก็ได้ รถยนต์ ของสายการประกอบใน fstab ขึ้นอยู่กับความต้องการหรือความต้องการของคุณ สำหรับฉันโดยเฉพาะอย่างยิ่งตัวเลือกนี้ทำให้ฉันไม่เสถียร (ไม่ต่อเนื่อง) เมื่อติดตั้งทรัพยากรระหว่างการเริ่มต้น เวที. คุณสามารถรีสตาร์ทเซิร์ฟเวอร์เพื่อตรวจสอบการติดตั้งฮาร์ดไดรฟ์อัตโนมัติหรือทดสอบโดยดำเนินการคำสั่งคำสั่ง "เมา - อะ" เพื่อทดสอบจุดยึด หากทุกอย่างเป็นไปด้วยดีให้รีบูตเพื่อลองเมานต์อีกครั้งตั้งแต่ต้น บรรทัดนี้สามารถกำหนดค่าได้หลายวิธีและมีรายละเอียดมากขึ้น แต่จะเหลือไว้สำหรับการค้นคว้าส่วนตัวเนื่องจากไม่ใช่หัวข้อของสิ่งพิมพ์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือก fstabคลิก Aqui

หลังจากนี้ฉันก็สร้างไฟล์ ผู้ใช้ในท้องถิ่น ฉันจะใช้อะไรใน แซมบ้า เพื่อจัดการหุ้นของฉันจากระยะไกล ซึ่งสามารถทำได้ 2 วิธี:

1.- พื้นฐาน:

1.1) สร้างผู้ใช้ในท้องถิ่นเพื่อจัดการแซมบ้า:

adduser user_samba

2.- ขั้นสูง:

2.1) สร้างโฟลเดอร์โฮมของผู้ใช้ในเครื่องเพื่อจัดการ samba:

mkdir / given_path / samba_user

2.2) สร้างกลุ่มผู้ใช้ samba:

groupadd user_group

2.2) สร้างโปรไฟล์ผู้ใช้ samba:

ผู้ใช้เพิ่ม -g user_samba -d / given_path / samba_user -c "โฟลเดอร์หน้าแรกของผู้ใช้" -s / bin / false user_group

ถัดไปและหลังจากติดตั้งและกำหนดค่า samba แล้วเปิดใช้งานและติดตั้งทรัพยากรการแชร์สร้างผู้ใช้ภายในเราต้อง

เพิ่มผู้ใช้ภายใน al เซิร์ฟเวอร์ Samba (บริการ) ติดตั้งพร้อมรับคำสั่ง:

adduser user_samba แซมบาแชร์

สร้างรหัสผ่านการเข้าถึง เขาจะมีอะไร ผู้ใช้ท้องถิ่นใน Samba ด้วยคำสั่ง command:

smbpasswd -ก user_samba

เริ่มบริการ Samba ใหม่:

a) บริการโหลดแซมบ้าซ้ำ

b) บริการ smbd เริ่มต้นใหม่

c) บริการ nmbd เริ่มต้นใหม่

ตอนนี้เราต้องทำ ตรวจสอบการเข้าถึงจากคอมพิวเตอร์บนเครือข่ายเพื่อแชร์. สำหรับสิ่งนี้เราต้อง เปิด file explorer สำรวจสภาพแวดล้อมเครือข่ายและดูการแชร์จากเซิร์ฟเวอร์. อย่างไรก็ตามหากต้องการดูความพร้อมใช้งานผ่านเทอร์มินัลคุณสามารถดำเนินการคำสั่งคำสั่งต่อไปนี้รู้หรือไม่ IP หรือชื่อของเซิร์ฟเวอร์ Samba:

1) smbclient –list = 192.168.XX

2) smbclient –list = 192.168.XX –user = samba_user

3) สแกน 192.168.0.0/24

4) nmblookup samba_server_name

และในการเข้าถึงการแชร์จากคอมพิวเตอร์บนเครือข่ายให้เปิด file explorer สำรวจสภาพแวดล้อมเครือข่ายและทำ ดับเบิลคลิกที่แชร์ จากเซิร์ฟเวอร์ใน ป้อนข้อมูลการเข้าถึง (ผู้ใช้ / รหัสผ่าน / โดเมน)หรือวางเส้นทางตรงในรูปแบบต่อไปนี้: smb: //192.168.xx/SHARED_RESOURCE. เพื่อเชื่อมต่อผ่านเทอร์มินัลเรียกใช้คำสั่งต่อไปนี้: smbclient –user = samba_user //192.168.xx/SHARED_RESOURCE

สุดท้ายและหากจำเป็นคุณสามารถกำหนดค่าให้รีซอร์สที่แชร์นี้โหลดโดยอัตโนมัติบนอุปกรณ์เครือข่ายของคุณโดยใช้ขั้นตอนต่อไปนี้:

ก) สร้างโฟลเดอร์ในเครื่อง ที่ซึ่งทรัพยากรที่ใช้ร่วมกันจะถูกเมาท์ด้วยคำสั่ง command:

mkdir -p / กำหนด _ เส้นทาง / กำหนด _folder

b) แก้ไขไฟล์ fstab ด้วยคำสั่งคำสั่ง "นาโน / etc / fstab" และใส่สายการประกอบต่อไปนี้:

//192.168.XX/SHARED_RESOURCE/ / ผู้ใช้ cifs ที่กำหนด / กำหนด / กำหนดโฟลเดอร์, rw, ชื่อผู้ใช้ = samba_user, รหัสผ่าน = samba_user_password, gid = 100 ?, Uid = 100?, Iocharset = utf8, dir_mode = 0755, file_mode = 0755 0 2

หมายเหตุ: ใช้ "Cifs" เนื่องจากเป็นโปรโตคอลแซมบ้าสมัยใหม่ที่แซมบ้าเพื่อเชื่อมต่อกับทรัพยากรเครือข่ายในบางกรณีคุณอาจต้องใช้ «smb » แทน «cifs ». ประเภทของสิทธิ์ที่กำหนดใน dir_mode y file_mode จะขึ้นอยู่กับสิ่งที่คุณกำหนดและ / หรือผู้ใช้โฟลเดอร์ที่แชร์ต้องการแม้ว่าควรจะเป็นสิ่งเดียวกับที่กำหนดไว้ในไฟล์ smb.conf สำหรับทรัพยากรที่แชร์ดังกล่าว และค่าที่สอดคล้องกันใน id y UID ต้องเหมาะสมนั่นคือของผู้ใช้ที่จะต่อเชื่อมทรัพยากรบนคอมพิวเตอร์ระยะไกล นอกจากนี้คุณสามารถเพิ่มหรือไม่เพิ่มตัวเลือกก็ได้ รถยนต์ ของสายการประกอบใน fstab ขึ้นอยู่กับความต้องการหรือความต้องการของคุณ สำหรับฉันโดยเฉพาะอย่างยิ่งตัวเลือกนี้ทำให้ฉันไม่เสถียร (ไม่ต่อเนื่อง) เมื่อติดตั้งทรัพยากรระหว่างการเริ่มต้น เวที. คุณสามารถรีสตาร์ทเซิร์ฟเวอร์เพื่อตรวจสอบการติดตั้งฮาร์ดไดรฟ์อัตโนมัติหรือทดสอบโดยดำเนินการคำสั่งคำสั่ง "เมา - อะ" เพื่อทดสอบจุดยึด หากทุกอย่างเป็นไปด้วยดีให้รีบูตเพื่อลองเมานต์อีกครั้งตั้งแต่ต้น บรรทัดนี้สามารถกำหนดค่าได้หลายวิธีและมีรายละเอียดมากขึ้น แต่จะเหลือไว้สำหรับการค้นคว้าส่วนตัวเนื่องจากไม่ใช่หัวข้อของสิ่งพิมพ์ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือก fstabคลิก Aqui

ฉันหวังว่าคุณจะชอบโพสต์นี้พร้อมกับขั้นตอนและคำแนะนำที่ต่ำต้อยของฉันเพื่อจุดประสงค์นั้น


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   จื่อวี่ dijo

    ที่น่าสนใจมาก

    และสำหรับเซิร์ฟเวอร์เมลธรรมดา ... ?

    อาศิรพจน์

  2.   Jose Albert dijo

    ฉันจะพยายามทำให้ได้!

  3.   ออสการ์ซิลวา dijo

    เรียนจำเป็นต้องเพิ่มรายละเอียดเล็กน้อยเกี่ยวกับการเชื่อมต่อจากคอมพิวเตอร์ที่ใช้ Windows ...

    ทักทาย🙂