การแชร์การเข้าถึงทรัพยากรเครือข่าย ต่อสู้กับไวรัสและโครงสร้างพื้นฐาน หรือปิดการใช้งาน SMB v1

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

ไซเซล คีเนติค

พวกเขาเชื่อมต่อมันและเก็บมันออกไป... เช่น ในตู้เสื้อผ้า

การกำหนดค่า

ก่อนอื่นคุณต้องสร้างอาร์เรย์
มาสร้าง RAID โดยใช้การปรับแต่งง่ายๆ บน CFI B8253-JDGG ที่ติดตั้งดิสก์ 4TV

ที่ด้านหลังของอุปกรณ์มีสวิตช์ DIP และไดอะแกรมที่ชัดเจนของฮาร์ดแวร์ตัวควบคุม RAID ฉันตั้งค่า RAID5 บนดิสก์ขนาด 4 TB เราเริ่มต้นดิสก์โดยเพียงเชื่อมต่อไดรฟ์กับพีซีที่ใช้ Win 7 ในขั้นตอนนี้ การกำหนดค่า DAS เสร็จสมบูรณ์ เราได้รับ GPT NTFS ขนาด 16TB

ตอนนี้เรามาดูการกำหนดค่ากันดีกว่า เราเตอร์ไซเซลกระตือรือร้น
ไปที่ WebUI แล้วทำเครื่องหมายหลายช่อง

เราเปิดใช้งาน CIFS บนเราเตอร์ การติดตั้งอัตโนมัติเพื่อให้อุปกรณ์ของเราไม่หลุดและอนุญาตการเข้าถึงโดยไม่ได้รับอนุญาต (จากนั้นเราจะดาวน์โหลดและติดตั้งแพ็คเกจสำหรับเราเตอร์ที่จะช่วยให้เราแยกความแตกต่างสิทธิ์การเข้าถึงตามบัญชี)
เราเตอร์ช่วยให้เราสามารถกำหนดค่าสิทธิ์การเข้าถึงไดรฟ์เครือข่ายได้ เราสามารถสร้างบัญชีโปรโตคอลการเข้าถึงเครือข่ายของเราเองสำหรับไฟล์ เครื่องพิมพ์ และอื่นๆ ทรัพยากรเครือข่ายบนเครือข่าย Windows คุณสามารถกำหนดค่าสิทธิ์การเข้าถึงสำหรับผู้ใช้และโฟลเดอร์แต่ละรายการได้ เป็นไปได้ ประเภทต่อไปนี้สิทธิ์การเข้าถึง:

เมื่อเชื่อมต่อ DAS กับเราเตอร์ เราจะเห็นส่วนของเรา:

ตอนนี้เรามาแยกสิทธิ์การเข้าถึงกัน เพื่อสิ่งนี้ ฉันจึงติดตั้งองค์ประกอบหลายอย่าง:

ส่วนประกอบเหล่านี้อนุญาตให้คุณไปที่แท็บ "สิทธิ์การเข้าถึง"

นอกจากนี้ยังมีการสร้างผู้ใช้และการควบคุมการเข้าถึงอีกด้วย

การกระจายสิทธิ์การเข้าถึง

ทำไมเราต้องเชื่อมต่อ DAS กับเราเตอร์เลย?
ง่ายมาก เราเตอร์มีไคลเอนต์ BitTorrent ในตัว ซึ่งคุณสามารถดาวน์โหลดภาพยนตร์/เพลง ฯลฯ ไปยัง DAS ได้ทันที และกระจายไปทั่วเครือข่าย
เราให้สิทธิ์ผู้ดูแลระบบในการฝนตกหนัก

มาเปิดใช้งานไฟล์สลับตามที่อธิบายไว้ในภาพหน้าจอ

Transmission ได้รับการติดตั้งในเราเตอร์ของฉันแล้ว ไปที่ 192.168.1.1 :8090/ ในเบราว์เซอร์และเข้าสู่ระบบในฐานะผู้ดูแลระบบ

มาป้อนไฟล์ทอร์เรนต์กันเถอะ

ดังที่เราเห็น ระบบทำงานได้และระบบการส่งข้อมูลที่ติดตั้งบนเราเตอร์ก็สามารถใช้ความจุภายนอกที่จัดไว้ให้เพื่อจัดเก็บเนื้อหาที่ได้รับได้สำเร็จ
และตอนนี้มาถึงสิ่งที่สำคัญที่สุด ทุกอย่างใช้งานได้ แต่ความเร็วในการอ่าน/เขียนเมื่อเข้าถึง DAS ผ่านเครือข่ายเป็นเท่าใด
มาลองบันทึก/อัพโหลดไฟล์ผ่าน SAMBA กัน
ผลลัพธ์:

คุณต้องเข้าใจว่าความเร็วผลลัพธ์ของการแลกเปลี่ยนเครือข่ายโดยตรงนั้นขึ้นอยู่กับประสิทธิภาพของโปรเซสเซอร์และอินเทอร์เฟซของเราเตอร์ นั่นก็คือใน ในกรณีนี้เราไม่เห็นความเร็วของ DAS CFI แต่เป็นความเร็วที่ Zyxel Keenetic สามารถ "แยกแยะและส่งออก" ผ่าน USB ไปยังเครือข่ายผ่าน SAMBA ตัวชี้วัดไม่ค่อยดีนัก แต่สำหรับวิธีแก้ปัญหาบ้านและงบประมาณก็เพียงพอแล้ว แม้ว่าความเร็วของการเข้าถึงโดยตรงจะต่ำแม้ว่าจะเป็นที่ยอมรับ แต่ก็เพียงพอแล้วสำหรับการรับสตรีมวิดีโอจาก DAS ไปยังทีวีหรือเครื่องเล่นสื่อหรือแท็บเล็ตรอบ ๆ อพาร์ตเมนต์ผ่าน Wi-Fi

มาเชื่อมต่อ DAS กับพีซีผ่าน USB3.0 และตรวจสอบให้แน่ใจว่าความเร็วถูกจำกัดด้วยแบนด์วิดท์ ความสามารถของยูเอสบีอินเทอร์เฟซของ Zyxel Keenetic
ผลลัพธ์:

เมื่อเชื่อมต่อโดยตรงกับพีซีของ DAS เอง ก็ให้ความเร็วมากกว่า 200MB/s ด้วย RAID5 ดังนั้นด้วยการเพิ่มประสิทธิภาพของเราเตอร์หรือเพียงแค่เลือกเราเตอร์อื่น (ถ้าเป็นไปได้ฉันจะตรวจสอบและแนบ UPD) ความเร็วอาจเปลี่ยนแปลงและฉันอยากจะหวังว่าจะดีขึ้น

ด้านการค้าของระบบประกอบในขณะที่เขียน:
CFI-B8253JDGG - จาก 10,756 รูเบิล, ZyxelKeenetic - 990 รูเบิล รวมน้อยกว่า 12,000 รูเบิล และถ้าคุณเปรียบเทียบกับ 4 ดิสก์ NAS(ราคาเริ่มต้นที่ 18,000 รูเบิล) ผลประโยชน์ทางเศรษฐกิจชัดเจน
การแก้ปัญหาไม่ได้เป็นเพียงวิธีเดียวเท่านั้น แต่ยังใช้ได้ผลและให้ความบันเทิงอีกด้วย

วิธีหนึ่งในการเข้าถึงไฟล์ที่อยู่ในคอมพิวเตอร์เครือข่ายจาก STB คือโปรโตคอล การเข้าถึงสาธารณะ SMB ซึ่งเป็นโปรโตคอล Microsoft Windows มาตรฐานและมีฟังก์ชันการทำงาน “เครือข่าย ไมโครซอฟต์ วินโดวส์» และ “การแชร์ไฟล์และเครื่องพิมพ์”.
แซมบ้า - การใช้งานโปรโตคอล SMB ฟรีสำหรับระบบปฏิบัติการที่มีลักษณะคล้าย UNIX และระบบปฏิบัติการอื่นๆ

การใช้โปรโตคอล SMB / Samba ช่วยให้สามารถเข้าถึงจาก STB (ที่ใช้ Linux OS) ไปยังโฟลเดอร์และไฟล์ที่อยู่ในคอมพิวเตอร์เครือข่าย (ใช้ Linux OS, Windows ฯลฯ ) ดังนั้น ผู้ใช้ STB จึงมีโอกาสเล่นไฟล์สื่อ (วิดีโอ เสียง รูปภาพ) บน STB ซึ่งตั้งอยู่บนคอมพิวเตอร์เครือข่ายที่ใช้ระบบปฏิบัติการประเภทใดประเภทหนึ่งที่รองรับโปรโตคอล SMB หรือ SAMBA

มาตรการ SMB/แซมบ้าคือ โปรโตคอลแอปพลิเคชัน(ในแง่ของรูปแบบเครือข่าย OSI) ใช้โปรโตคอลการขนส่ง TCP/IP สำหรับการแลกเปลี่ยนข้อมูล
โปรโตคอล SMB / Samba ใช้สถาปัตยกรรมไคลเอนต์ - เซิร์ฟเวอร์: พีซีทำหน้าที่เป็นเซิร์ฟเวอร์ซึ่งมีทรัพยากรเครือข่าย (โฟลเดอร์) ที่มีไฟล์สื่ออยู่และ STB ทำหน้าที่เป็นไคลเอนต์ที่ใช้เล่นไฟล์สื่อ

ทรัพยากรเครือข่ายจะแสดงใน STB ในเมนูตามสถาปัตยกรรมเครือข่าย LAN มาตรฐานของ Windows OS: เครือข่าย / เวิร์กกรุ๊ป / คอมพิวเตอร์ / โฟลเดอร์

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

การเข้าถึงโฟลเดอร์ผ่านเครือข่ายมีสองประเภท (ประเภทการเข้าถึงถูกกำหนดที่ฝั่งคอมพิวเตอร์):

  • ด้วยรหัสผ่าน - ในการเข้าถึงโฟลเดอร์เครือข่ายจากฝั่ง STB จะใช้ขั้นตอนการอนุญาต (คุณต้องป้อนชื่อ (เข้าสู่ระบบ) ผู้ใช้เฉพาะคอมพิวเตอร์และรหัสผ่าน
  • ไม่มีรหัสผ่าน - การเข้าถึงโฟลเดอร์เครือข่ายเปิดอยู่สำหรับผู้ใช้ทุกคนโดยไม่ต้องใส่รหัสผ่าน

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

นอกจากนี้ยังสามารถเชื่อมต่อโฟลเดอร์เครือข่ายด้วยตนเองได้ (หากตรวจไม่พบโดยอัตโนมัติ) การกำหนดค่าและการเข้าถึงทรัพยากรเครือข่ายโดยใช้โปรโตคอล ธุรกิจขนาดกลางและขนาดย่อม/ แซมบ้าบน STB จะดำเนินการในเมนู บ้าน สื่อ .

ด้านล่างนี้เป็นตัวอย่างวิธีเชื่อมต่อโฟลเดอร์เครือข่ายบนพีซี Windows 10 เพื่อเล่นไฟล์มีเดียจาก STB
บันทึก.รองรับโปรโตคอลธุรกิจขนาดกลางและขนาดย่อม ระบบปฏิบัติการ Windows 10 ถูกเปิดใช้งานตามค่าเริ่มต้น

ตัวอย่างการตั้งค่าการเชื่อมต่อระหว่าง STB และพีซีที่ใช้ Windows 10

พารามิเตอร์พื้นฐานที่ใช้ในตัวอย่าง

คอมพิวเตอร์ (ไฟล์เซิร์ฟเวอร์):

  • ระบบปฏิบัติการ - วินโดวส์ 10 64 บิต;
  • ชื่อคอมพิวเตอร์ – ของฉัน_ คอมพิวเตอร์(เลือกเป็นตัวอย่าง);
  • กลุ่มทำงาน - คณะทำงาน (ชื่อ กลุ่มทำงาน“ค่าเริ่มต้น” ใน OS “หน้าต่าง»);
  • ไอพีที่อยู่พีซี: 192.168.1.186.
  • แหล่งข้อมูลสำหรับ “การแชร์” (โฟลเดอร์ที่มีไฟล์มีเดีย) - โฟลเดอร์ วีดีโอ_ อี1.
  • ชื่อผู้ใช้ - สหรัฐ

เอสทีบี (ลูกค้า)

  • ไอพีที่อยู่เอสทีบี: 192.168.1.230

ตรวจสอบความพร้อมใช้งานของการเชื่อมต่อเครือข่ายระหว่างพีซีและ STB

ก่อนตั้งค่าการเชื่อมต่อ ตรวจสอบให้แน่ใจว่าการเชื่อมต่อเครือข่ายระหว่างพีซีและ STB นั้นพร้อมใช้งาน - “ส่ง Ping” STB จากพีซี

การตั้งค่าบนฝั่งพีซี (การเปิดการเข้าถึงโฟลเดอร์)

  1. แชร์โฟลเดอร์ วิดีโอ_E1: คุณสมบัติ เข้าถึง⇒ การแบ่งปัน.
  2. หากคุณต้องการให้สิทธิ์การเข้าถึงโฟลเดอร์สำหรับผู้ใช้พีซีปัจจุบันเท่านั้น ให้เหลือเฉพาะผู้ใช้ปัจจุบันไว้ในรายชื่อผู้ใช้ ( สหรัฐ). ในกรณีนี้ การเข้าถึงโฟลเดอร์จะได้รับโดยใช้รหัสผ่าน - เพื่อเชื่อมต่อกับโฟลเดอร์บน STB จะมีการร้องขอการเข้าสู่ระบบ (ชื่อผู้ใช้คอมพิวเตอร์) และรหัสผ่าน (รหัสผ่านผู้ใช้คอมพิวเตอร์)

โปรดทราบ!ถ้าการเข้าถึงถูกจำกัดเฉพาะผู้ใช้ปัจจุบัน คุณต้องใช้ค่ารหัสผ่านเฉพาะสำหรับบัญชีผู้ใช้ การไม่มีรหัสผ่านจะทำให้ไม่สามารถเข้าถึงโฟลเดอร์ได้!

รูปด้านล่างแสดงตัวเลือกสำหรับการตั้งค่าการเข้าถึงโฟลเดอร์โดยไม่ต้องใช้รหัสผ่าน วิดีโอ_E1สำหรับผู้ใช้เครือข่ายทุกคน

5. เปิดบนพีซี “ศูนย์เครือข่ายและการแบ่งปัน”และกำหนดการตั้งค่าการแชร์สำหรับสามโปรไฟล์ ( ส่วนตัว แขก หรือสาธารณะและ ทุกเครือข่าย):

ส่วนตัว

แขกหรือประชาชน

ทุกเครือข่าย

การเชื่อมต่อกับโฟลเดอร์เครือข่ายทางฝั่ง STB

  1. ในพอร์ทัลในตัว ให้ไปที่ หน้าต่างหลัก บ้านสื่อ เครือข่าย กลุ่มงาน

2. ในโฟลเดอร์ กลุ่มงานคอมพิวเตอร์เครือข่ายในกลุ่มงานจะปรากฏขึ้น
เปิดทางลัดไปยังคอมพิวเตอร์เครือข่ายที่ต้องการ - ของฉัน_ คอมพิวเตอร์(ในโฟลเดอร์ ของฉัน_ คอมพิวเตอร์โฟลเดอร์ที่แชร์จะปรากฏขึ้น)

3. สำหรับการควบคุม การตรวจจับอัตโนมัติทรัพยากรเครือข่ายและประเภทโปรโตคอลคุณต้องเลือกโฟลเดอร์และใช้ปุ่ม "i" (INFO) บนรีโมทคอนโทรล:

4. เปิดโฟลเดอร์ วิดีโอ_E1. ภายในโฟลเดอร์ ปฏิบัติตามเส้นทางที่มีไฟล์มีเดียที่คุณต้องการเล่น

5. หากมีการตั้งค่าการเข้าถึงรหัสผ่านสำหรับโฟลเดอร์หรือด้วยเหตุผลบางอย่าง STB ไม่สามารถ "เมานต์" โฟลเดอร์ได้ (นั่นคือเข้าถึงได้ - ดูหัวข้อ) จากนั้นเมื่อคุณพยายามเปิดโฟลเดอร์นี้หน้าต่างจะเปิดขึ้น "การเชื่อมต่อเครือข่าย".

6. เปิดไฟล์มีเดีย

บังคับให้เชื่อมต่อกับโฟลเดอร์เครือข่าย

ในบางกรณี (หากมีปัญหากับการเชื่อมต่ออัตโนมัติ) จะมีการกำหนดค่าการเข้าถึงโฟลเดอร์เครือข่ายด้วยตนเอง:
  • ที่จะเข้ามา หน้าต่างหลักบ้านสื่อเครือข่ายกลุ่มงาน
  • หน้าต่างการโทร การดำเนินงาน (การดำเนินงาน) - ปุ่ม เมนูบนรีโมทคอนโทรล
  • คลิก ภูเขาแบ่งปัน (เชื่อมต่อทรัพยากร).
  • ในหน้าต่าง " การเชื่อมต่อโฟลเดอร์เครือข่าย" ("เชื่อมต่อโฟลเดอร์เครือข่าย") ป้อนพารามิเตอร์การเชื่อมต่อ
    • ที่อยู่เซิร์ฟเวอร์ – ที่อยู่ IP ของพีซี (ไฟล์เซิร์ฟเวอร์) ซึ่งเป็นที่ตั้งของโฟลเดอร์เครือข่ายที่ต้องการ
    • โฟลเดอร์บนเซิร์ฟเวอร์ (โฟลเดอร์เซิร์ฟเวอร์) – ชื่อของโฟลเดอร์ “แชร์” บนพีซี
    • โฟลเดอร์ในเครื่อง – ชื่อของโฟลเดอร์บน STB (โดยปกติจะเหมือนกับชื่อโฟลเดอร์บนเซิร์ฟเวอร์)
    • ประเภทการเชื่อมต่อ – SMB
    • เข้าสู่ระบบ - เช่นเดียวกับชื่อผู้ใช้พีซี - ป้อนหากใช้การเข้าถึงรหัสผ่านสำหรับโฟลเดอร์
    • รหัสผ่าน – รหัสผ่านการเข้าถึงโฟลเดอร์ - ป้อนหากใช้การเข้าถึงรหัสผ่านสำหรับโฟลเดอร์

ปิดการใช้งานโฟลเดอร์เครือข่าย เปลี่ยนการตั้งค่าการเชื่อมต่อบน STB

หากต้องการบังคับให้ปิดใช้งานโฟลเดอร์เครือข่ายเฉพาะ ให้ใช้คำสั่งสำหรับโฟลเดอร์นั้น ปิดการใช้งาน NFS/SMB.

หากคุณต้องการเปลี่ยนแปลงการตั้งค่าการเชื่อมต่อด้านข้าง ให้ใช้คำสั่งสำหรับโฟลเดอร์นี้ แก้ไขการแชร์.

การติดตั้งโฟลเดอร์

การสร้างการเชื่อมต่อกับโฟลเดอร์เฉพาะตามที่อธิบายไว้ในส่วนย่อย และ จะมาพร้อมกับการติดตั้งโฟลเดอร์บน STB โดยอัตโนมัติ หากโฟลเดอร์บางโฟลเดอร์ "ติดตั้ง" บน STB ทางลัดของโฟลเดอร์นั้นจะปรากฏขึ้น ระดับบนเมนู สื่อภายในบ้าน.

ผู้ใช้ยังสามารถเมานต์ได้ โฟลเดอร์ที่ต้องการด้วยตนเอง (สิ่งนี้ยังนำไปสู่ การเชื่อมต่อโฟลเดอร์) คำสั่งนี้ใช้เพื่อจุดประสงค์นี้ เมานต์แชร์.
หากต้องการ "unmount" โฟลเดอร์ใน STB (ซึ่งนำไปสู่การตัดการเชื่อมต่อโฟลเดอร์จาก STB ด้วย) ให้ใช้คำสั่ง ยกเลิกการต่อเชื่อมการแชร์.

ปัญหาในการเข้าถึงทรัพยากรเครือข่าย

  1. ในหน้าต่าง « สื่อภายในบ้าน » บุ๊กมาร์กไม่เปิด "เครือข่าย", "กลุ่มงาน":
    • ตรวจสอบการตั้งค่าเครือข่ายและสถานะเครือข่ายบน STB และฝั่งคอมพิวเตอร์
    • ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ (พีซีที่ใช้กำหนดค่าการเข้าถึง) รองรับโปรโตคอล SMB เวอร์ชัน 1 และ 2 ที่เปิดใช้งาน
    • รีบูท STB และพีซี

2. ถ้าส่วนต่างๆ "เครือข่าย", "กลุ่มงาน"ปรากฏขึ้น แต่ทางลัดไปยังคอมพิวเตอร์เครือข่ายที่ต้องการไม่แสดง:

    • ตรวจสอบว่าคอมพิวเตอร์ของคุณอยู่ในรายการด้านล่าง "สุทธิ"บนคอมพิวเตอร์;
    • ส่ง Ping STB จากฝั่งพีซี (ตรวจสอบให้แน่ใจว่าอุปกรณ์ทั้งสองสามารถสื่อสารผ่านเครือข่ายได้)
    • เพื่อรีสตาร์ทคอมพิวเตอร์

3. หากโฟลเดอร์ที่มีอยู่ไม่แสดงบน STB หรือการเข้าถึงโฟลเดอร์ถูกปฏิเสธ:

    • ตรวจสอบว่าโฟลเดอร์ที่แชร์ปรากฏในไฟล์ "สุทธิ"บนคอมพิวเตอร์;
    • หากเป็นไปได้ ให้ตรวจสอบว่าสามารถเข้าถึงโฟลเดอร์ได้จากคอมพิวเตอร์เครือข่ายอื่นหรือไม่
    • บนคอมพิวเตอร์ของคุณ ให้ตรวจสอบการตั้งค่าการแชร์ในคุณสมบัติโฟลเดอร์และ « ตัวเลือกพิเศษการเข้าถึงทั่วไป โปรไฟล์".
    • รีบูต STB

4. หากเมื่อเปิดโฟลเดอร์เครือข่ายบน STB คุณจะได้รับแจ้งให้ดำเนินการอนุญาต แต่ไม่ได้กำหนดการเข้าถึงรหัสผ่านให้กับโฟลเดอร์:

    • ตรวจสอบว่าคุณสมบัติโฟลเดอร์ถูกตั้งค่าให้ผู้ใช้สามารถเข้าถึงได้ "ทั้งหมด";

5. หากเมื่อเปิดโฟลเดอร์บน STB คุณได้รับแจ้งให้ดำเนินการอนุญาต (ป้อนข้อมูลเข้าสู่ระบบ รหัสผ่าน) แต่ไม่ได้ระบุค่ารหัสผ่าน (รหัสผ่านว่างเปล่า):

    • ตั้งค่าเฉพาะสำหรับรหัสผ่านผู้ใช้คอมพิวเตอร์
    • หากไม่ได้กู้คืนการเข้าถึง ให้รีบูต STB

6. หากไฟล์ไม่เปิดขึ้นมา:

    • ตรวจสอบว่าไฟล์นั้นเล่นในเครื่องพีซีหรือไม่
    • พยายามเปิดไฟล์อื่นจาก STB จากโฟลเดอร์เครือข่ายเดียวกันจากโฟลเดอร์เครือข่ายอื่น
    • ลองเล่นไฟล์ในรูปแบบอื่น (แนะนำให้ตรวจสอบไฟล์ที่เคยเล่นบน STB เช่นจากไดรฟ์ USB) รูปแบบไฟล์นี้อาจไม่รองรับโดยเครื่องเล่น STB

1.3 เทคโนโลยี CIFS และ SMB

โปรโตคอลการเข้าถึงไฟล์อินเทอร์เน็ตทั่วไป ระบบไฟล์- CIFS) มีต้นกำเนิดมาจากเทคโนโลยี Server Message Block (SMB) ซึ่งปรากฏตัวครั้งแรกใน MS DOS 3.3 มาตรฐาน SMB อธิบายโปรโตคอลสำหรับการส่งคำสั่ง ระบบไฟล์(เปิดไฟล์ อ่าน เขียน ล็อคและปิด) จากไคลเอนต์ไปยังไฟล์เซิร์ฟเวอร์
ก่อนที่จะพูดคุยถึงรายละเอียดทางเทคนิคของเทคโนโลยี CIFS และ SMB สิ่งสำคัญคือต้องเข้าใจความแตกต่างที่สำคัญระหว่างเทคโนโลยีทั้งสอง เริ่มแรกมีเพียงเทคโนโลยี SMB เท่านั้นที่ใช้เป็นโปรโตคอลไฟล์ไคลเอนต์-เซิร์ฟเวอร์ในโลก คอมพิวเตอร์ส่วนบุคคล. ในช่วงกลางทศวรรษ 1980 Microsoft ตั้งชื่อการใช้งานโปรโตคอล SMB CIFS และเริ่มวางตำแหน่ง CIFS เป็น คู่แข่งโดยตรงมาตรฐาน WebNFS และ NFS Microsoft ได้ส่ง RFC เบื้องต้นไปยัง IETF (Internet Engineering Task Force) และเอกสารดังกล่าวก็หมดอายุในเวลาต่อมาโดยไม่ได้พยายามแปลง RFC ให้เป็นข้อกำหนด IETF
ผู้จำหน่าย NAS ที่ไม่ขึ้นอยู่กับ Microsoft ได้เริ่มพัฒนาข้อกำหนด CIFS และได้จัดกิจกรรมต่างๆ มากมายเพื่อส่งเสริม CIFS SNIA (Storage Networking Industry Association) ทำหน้าที่เผยแพร่ CIFS Microsoft ยังเผยแพร่ข้อกำหนด CIFS (เรียกว่า Common Internet Filesystem โปรโตคอลการเข้าถึง) แจกฟรี
ข้อกำหนด SNIA CIFS และ Microsoft CIFS ที่คล้ายกันจะอธิบายโปรโตคอลที่ใช้โดยไคลเอนต์ Windows NT 4.0 เพื่อเข้าถึงทรัพยากรบนเซิร์ฟเวอร์ Windows NT ข้อมูลจำเพาะทั้งสองไม่ได้ระบุถึง SMB ซึ่งใช้ใน Windows เวอร์ชันใหม่กว่า (เช่น ไม่ได้ระบุถึงการแคชไคลเอ็นต์ ซึ่งได้รับการสนับสนุนใน Windows 2000) นอกจากนี้ ข้อมูลจำเพาะไม่ได้อธิบายโปรโตคอลการสื่อสารทั้งหมดระหว่างเซิร์ฟเวอร์ มาตรฐาน SMB ใหม่ซึ่งไม่ใช่ข้อกำหนดฟรี ได้รับการอธิบายไว้ในข้อกำหนดที่เกี่ยวข้องซึ่งเผยแพร่โดย Microsoft โดยมีค่าธรรมเนียม ซึ่งเกิดขึ้นได้โดยการตัดสินของศาลจากสหภาพยุโรปและรัฐบาลสหรัฐอเมริกา
ดังนั้น Microsoft จึงเริ่มเรียกการใช้งานเทคโนโลยีที่อธิบายไว้อีกครั้งว่าบล็อก SMB โดยพื้นฐานแล้ว SMB ของ Microsoft คือ โปรโตคอลปิดซึ่งเป็นเวอร์ชันขยายของมาตรฐานอุตสาหกรรม CIFS
นอกจากนี้ ให้สังเกตความสัมพันธ์ในอดีตระหว่าง SMB/CIFS และ NetBIOS เปิดอินเทอร์เฟซการเขียนโปรแกรม NetBIOS (เลเยอร์เซสชันในโมเดล OSI) ช่วงเวลานี้ล้าสมัยอย่างสิ้นหวัง อินเทอร์เฟซใช้เลเยอร์นามธรรมที่ช่วยให้แอปพลิเคชันทำงานกับโปรโตคอลการขนส่งต่างๆ เช่น TCP/IP, NetWare หรือโปรโตคอล XNS (Xerox Network System) ที่ถูกลืมไปแล้ว ต้องการสำหรับ อินเทอร์เฟซซอฟต์แวร์แอปพลิเคชันที่ให้ความสามารถในการสร้างแอปพลิเคชันที่ไม่ขึ้นอยู่กับโปรโตคอลเครือข่ายยังคงมีอยู่ในปัจจุบัน อย่างไรก็ตามใน ตอนนี้เพื่อจุดประสงค์นี้ โดยปกติจะใช้อินเทอร์เฟซซ็อกเก็ต โดยเฉพาะอย่างยิ่งในโลก Windows อินเทอร์เฟซ Winsock
Microsoft ใช้ NetBIOS สำหรับการจำแนกชื่อ (แปลงชื่อเซิร์ฟเวอร์เป็น ที่อยู่เครือข่าย) แต่นี่คือสิ่งที่บริการ DNS มาตรฐานได้รับการออกแบบมาในตอนนี้
ในตอนแรก Microsoft ไม่ได้ใช้ TCP/IP เป็น โปรโตคอลการขนส่งซึ่งเปลี่ยนแปลงไปอย่างมากเมื่อเวลาผ่านไป แต่การรองรับ NetBIOS ยังคงมีอยู่ อย่างไรก็ตาม บทบาทของ NetBIOS ได้ลดลงอย่างต่อเนื่อง หลังจากกำหนดพอร์ต TCP/IP ให้แล้ว ไฟล์เซิร์ฟเวอร์การพึ่งพา SMB บน NetBIOS ได้รับการ "รักษาให้หายขาด" อย่างสมบูรณ์ อย่างน้อยในบริบท โปรโตคอลพื้นฐาน. แต่สถานการณ์ยังคงสับสนเนื่องจากบริการรองบางอย่างบนไคลเอนต์และเซิร์ฟเวอร์ Windows ยังคงต้องใช้โปรโตคอล NetBIOS ตัวอย่างที่ดีคือการที่เซิร์ฟเวอร์โฆษณาการแสดงตนบนเครือข่ายและจัดทำรายการบริการที่มีอยู่ และเพื่อให้เซิร์ฟเวอร์อื่นส่งโฆษณาเหล่านี้ไปยังไคลเอนต์ เมื่อเวลาผ่านไป บริการต่างๆ ได้รับการออกแบบใหม่และ NetBIOS ก็ถูกยุติการใช้งานโดยสิ้นเชิง การเปิดตัววินโดวส์ 2000.
สุดท้ายนี้ คุณสามารถเห็นมรดกของ SMB ได้ในทุกคำขอ CIFS เนื่องจากทุกคำขอและการตอบกลับจะต้องเริ่มต้นด้วยค่า "0xFF" ตามด้วยอักขระ ASCII เช่น "SMB"

1.3.1 การเปลี่ยนแปลงของมาตรฐาน CIFS

น่าเสียดายที่ไม่มีคำจำกัดความที่ชัดเจนของมาตรฐาน CIFS หลากหลายชนิดโปรโตคอล SMB เรียกว่าภาษาถิ่น ต่อไปนี้เป็นตัวเลือกที่เป็นไปได้บางส่วน:
■ ใช้โดยไคลเอนต์ DOS และ Windows 3.x;
■ ใช้เมื่อเชื่อมต่อกับเซิร์ฟเวอร์ที่ไม่ได้ใช้ Windows;
■ ใช้โดยไคลเอนต์ที่ใช้ Windows NT
บ่อยครั้งที่ไคลเอนต์ส่งคำขอไปยังเซิร์ฟเวอร์เพื่อสร้างเซสชันและส่งรายการตัวเลือกโปรโตคอลที่รองรับทั้งหมด เซิร์ฟเวอร์เลือกตัวเลือกที่ใช้งานได้ดีที่สุดและส่งคำขอที่เกี่ยวข้องไปยังไคลเอนต์ ขึ้นอยู่กับโปรโตคอลที่ไคลเอ็นต์และเซิร์ฟเวอร์ได้ "ตกลง" ไว้ คำขอบางรายการและการตอบกลับที่เกี่ยวข้องอาจไม่ถูกต้อง เวอร์ชันโปรโตคอลที่ตกลงร่วมกันไม่ได้กำหนดการใช้งานจริงของฟังก์ชันโปรโตคอลอย่างชัดเจน ซึ่งเพิ่มความสับสนเพิ่มเติม การตั้งค่าสถานะบางอย่างสามารถตั้งค่าหรือล้างได้เพื่อบ่งชี้ถึงการสนับสนุนคุณสมบัติบางอย่าง กล่าวอีกนัยหนึ่ง แม้ว่าจะเลือกโปรโตคอลก็ตาม ตัวเลือกต่างๆคุณลักษณะที่มีให้: ตัวอย่างเช่น หนึ่งในแฟล็กอาจระบุถึงการรองรับชื่อไฟล์แบบยาว
ตามที่อธิบายไว้ใน Microsoft RFC (ปัจจุบันล้าสมัยตามกฎ IETF) CIFS ให้การโต้ตอบระหว่างไคลเอนต์และเซิร์ฟเวอร์สำหรับการเข้าถึงและจัดการไฟล์ คุณสมบัติต่างๆ เช่น การโฆษณาความพร้อมของเครื่องพิมพ์และเซิร์ฟเวอร์บนเครือข่ายนั้นอยู่นอกเหนือความสามารถของโปรโตคอล CIFS
SNIA ยังคงดำเนินการตามข้อกำหนด CIFS ต่อไป นอกจากนี้ SNIA ยังเป็นเจ้าภาพการประชุม CIFS ประจำปีและกิจกรรมอื่นๆ ที่หารือเกี่ยวกับการทำงานร่วมกันของ CIFS
ข้อกำหนด SMB ได้กลายเป็นมาตรฐานตั้งแต่ปี 1992 (ข้อกำหนด X/Open CAE C209) และอธิบาย SMB ว่าเป็นโปรโตคอลสำหรับการโต้ตอบระหว่างคอมพิวเตอร์ที่ใช้ DOS, Windows, OS/2 และ UNIX

1.3.2 คำอธิบายของโปรโตคอล CIFS

คำขอและการตอบกลับของ CIFS มีโครงสร้างที่ชัดเจนและเข้าใจได้ ฟิลด์ในแพ็กเก็ต SMB ยังเป็นมาตรฐานเช่นกัน และความแตกต่างขึ้นอยู่กับรสชาติ CIFS ที่เลือกและคุณสมบัติที่ทั้งไคลเอนต์และเซิร์ฟเวอร์รองรับ
โปรดทราบว่าจะแสดงเฉพาะองค์ประกอบทั่วไปสำหรับรุ่น SMB ทั้งหมด รายละเอียดโครงสร้างของชุดแพ็คเกจ SMB แต่ละรายการอยู่นอกเหนือขอบเขตของบทความนี้
บางฟิลด์ในตารางจำเป็นต้องมีข้อมูลเพิ่มเติม คำอธิบายแบบเต็ม. ฟิลด์คำสั่งมีขนาดหนึ่งไบต์และอธิบายประเภทของคำขอ เซิร์ฟเวอร์จะคัดลอกค่านี้ไปเป็นการตอบกลับ โดยอนุญาตให้ไคลเอ็นต์แยกวิเคราะห์ค่าหลังได้ ข้อกำหนด CIFS มีความหมายและคำจำกัดความสำหรับฟิลด์นี้ คำสั่งที่อธิบายไว้ช่วยให้คุณสามารถดำเนินการต่างๆ เช่น การเปิดไฟล์ การอ่าน การเขียน และการล็อคช่วงเฉพาะของไฟล์ การดำเนินการทั้งหมดนี้ดำเนินการเพื่อตอบสนองต่อคำขอแอปพลิเคชัน
นอกจากนี้ คำขอไคลเอ็นต์ CIFS (และการตอบกลับของเซิร์ฟเวอร์ที่เกี่ยวข้อง) จะเริ่มต้นโดยโค้ดตัวเปลี่ยนเส้นทางโดยไม่มีการแทรกแซงแอปพลิเคชันอย่างชัดเจน ตัวอย่างจะเป็นการแคชและการล็อคแบบฉวยโอกาส ข้อกำหนด CIFS RFC และ SNIA รวมถึง Open Group กำหนดความหมายและความหมายของโค้ดคำสั่ง CIFS ขนาด 1 ไบต์

โต๊ะโครงสร้างส่วนหัวของ SMB

สนาม

ขนาด

คำอธิบาย

มีค่า 0 xFFSMB เสมอ

การระบุประเภทคำขอ

รหัสข้อผิดพลาด 32 บิต (สร้างโดยเซิร์ฟเวอร์ Windows NT และส่งกลับเป็นรหัสข้อผิดพลาด 32 บิตไปยังไคลเอนต์ที่รองรับรหัส ข้อผิดพลาดของ Windows NT) หรือ

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

■ คลาสข้อผิดพลาด 8 บิต ซึ่งระบุประเภทของข้อผิดพลาด เช่น ไม่ว่าข้อผิดพลาดนี้จะถูกรายงานโดยระบบปฏิบัติการเซิร์ฟเวอร์หรือโดยเซิร์ฟเวอร์เอง หรืออาจเป็นข้อผิดพลาดของฮาร์ดแวร์หรือโปรโตคอล SMB

■ ตัวเลข 8 หลักจะถูกละเว้น;

■ รหัสข้อผิดพลาด 16 บิตที่มีความหมายเฉพาะภายในระดับข้อผิดพลาดเฉพาะเท่านั้น

ความหมายแสดงอยู่ในตาราง 3.2

ความหมายแสดงอยู่ในตาราง 3.3

การกรอก/

กรอก/ลงนาม. อยู่ระหว่างการพิจารณา

ในข้อความส่วน

Tid-value

ใช้เพื่อระบุทรัพยากรเซิร์ฟเวอร์ที่ลูกค้าร้องขอ ระบุโดยใช้คำขอ SMB TreeConnect

คำอธิบาย

ตัวระบุ

2 ไบต์ แต่

ติดตั้งโดยลูกค้า หมายเหตุเกี่ยวกับ

กระบวนการ (พิด)

ในกรณีที่จำเป็น

กระบวนการของลูกค้าที่ดำเนินการ

ขอ. ใช้โดยเซิร์ฟเวอร์สำหรับ

อาจจะ

ติดตามโหมดการเปิดไฟล์

ขยายเป็น

และสำหรับการปิดกั้น ส่งโดยเซิร์ฟเวอร์

กลับไปยังไคลเอนต์พร้อมกับตัวระบุมัลติเพล็กเซอร์ (กลาง) สำหรับอันที่ไม่ซ้ำ การระบุคำขอที่เซิร์ฟเวอร์ตอบสนอง

ตัวระบุ

ติดตั้งและใช้งานโดยลูกค้า

มัลติเพล็กเซอร์

เซิร์ฟเวอร์ส่งคืน Mid ที่ได้รับในการตอบกลับ

เมื่อมีการร้องขอ. ลูกค้าใช้ค่า Mid และ Pid เพื่อระบุคำขอที่ได้รับการตอบกลับ

ค่า UID

กำหนดโดยเซิร์ฟเวอร์หลังจากการตรวจสอบสิทธิ์ไคลเอ็นต์ ลูกค้าต้องใช้ Uid ในคำขอทั้งหมด

ตัวเลือก

ตัวแปร

ประกอบด้วยตัวนับคำ 16 บิต ซึ่งระบุจำนวนคำ 16 บิตที่อยู่หลังตัวนับ สำหรับแต่ละคำสั่ง SMB โดยทั่วไปตัวนับนี้จะเป็นค่าคงที่โดยมีตัวนับคำหนึ่งสำหรับคำสั่งและตัวที่สองสำหรับการตอบกลับ โดยทั่วไปตัวนับนี้มีค่า 5 หรือน้อยกว่า

ตัวแปร

ประกอบด้วยตัวนับคำ 16 บิตที่ระบุจำนวนไบต์ (คำ 8 บิต) ของข้อมูลที่อยู่หลังตัวนับ เมื่อเทียบกับฟิลด์พารามิเตอร์ ฟิลด์ข้อมูลสามารถมีได้มาก ขนาดใหญ่ขึ้นเช่น 1 KB ขึ้นไป ในคำขออ่านและเขียน SMB ฟิลด์นี้ประกอบด้วยข้อมูลจริงที่กำลังอ่านหรือเขียน

โปรดจำไว้ว่าค่าฟิลด์และความหมายใหม่อาจปรากฏขึ้นโดยไม่มีการเตือนเมื่อมีการเปิดตัวใหม่ เวอร์ชันของ Windowsเนื่องจากโปรโตคอล CIFS ยังคงพัฒนาต่อไป
มีหลายคำสั่งในการดำเนินการพื้นฐานเดียวกัน ตัวอย่างเช่น มีคำสั่งส่วนตัวสำหรับเปิด อ่าน และเขียนหลายครั้ง คำสั่งบางคำสั่งจะไม่ถูกใช้อีกต่อไป และในบางกรณีอาจใช้คำสั่งทางเลือก ขึ้นอยู่กับภาษาถิ่นของโปรโตคอลที่เลือก
ต่อไปนี้เป็นตัวอย่างของฟังก์ชันที่อธิบายไว้ในฟิลด์คำสั่ง
■ การเลือกประเภท SMB
■ สร้างเซสชันการสื่อสาร
■ การนำทางไดเร็กทอรีและรายการไฟล์และไดเร็กทอรี
■ เปิด สร้าง ปิด หรือลบไฟล์
■ การล็อคและการปลดล็อคเฉพาะส่วนของไฟล์
■ การดำเนินการพิมพ์
■ การแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงไฟล์และไดเร็กทอรี
■ ธุรกรรมที่ระบุข้อมูล พารามิเตอร์ และการดำเนินการ เซิร์ฟเวอร์ CIFS ดำเนินการตามที่ร้องขอและส่งคืนผลลัพธ์ - ข้อมูลและพารามิเตอร์ ตัวอย่างของธุรกรรมประกอบด้วยลิงก์ในระบบไฟล์แบบกระจายและการจัดการคุณลักษณะเพิ่มเติม

โต๊ะความหมายของฟิลด์ Flags

ความหมาย

คำอธิบาย

ที่สงวนไว้. ใช้โดยแบบสอบถามแบบเดิม

ที่สงวนไว้. จะต้องเป็นศูนย์

บ่งชี้ว่าชื่อไฟล์ต้องคำนึงถึงขนาดตัวพิมพ์

และแคตตาล็อก

ที่สงวนไว้

ที่สงวนไว้. ใช้โดยแบบสอบถามแบบเดิม

ที่สงวนไว้. ใช้โดยแบบสอบถามแบบเดิม

บ่งชี้ว่านี่คือการตอบกลับของ SMB

ฟิลด์ Flag2 อธิบายฟังก์ชันเสริมเพิ่มเติม ค่าของฟิลด์นี้แสดงอยู่ในตารางด้านล่าง
ฟิลด์เติม/ลายเซ็นเดิมเป็นลำดับของไบต์จำลอง เมื่อเวลาผ่านไป ความหมายของฟิลด์นี้ก็เปลี่ยนไป ฟิลด์กรอกข้อมูลสามารถมีองค์ประกอบต่อไปนี้:

โต๊ะความหมายของฟิลด์ Flags2

ความหมาย

คำอธิบาย

ไคลเอนต์รองรับชื่อไฟล์แบบยาว เซิร์ฟเวอร์อาจส่งคืนชื่อไฟล์แบบยาว

ไคลเอนต์รองรับคุณสมบัติเพิ่มเติมของ OS/2

เปิดใช้งานการลงนามแพ็คเก็ต SMB แล้ว

ที่สงวนไว้

ที่สงวนไว้

ที่สงวนไว้

ชื่อพาธแต่ละชื่อในคำขอเป็นชื่อยาว

ที่สงวนไว้

ที่สงวนไว้

ที่สงวนไว้

ที่สงวนไว้

บ่งชี้ถึงการใช้กลไกความปลอดภัยแบบขยาย ซึ่งจะกล่าวถึงในหัวข้อ 3.3.3

เส้นทางในคำขอจะต้องแปลโดยใช้ระบบไฟล์แบบกระจาย

หน้า I/O ระบุว่าควรอนุญาตให้อ่านได้เมื่อไคลเอ็นต์มีสิทธิ์ที่เหมาะสม

บ่งชี้ว่ามีการส่งคืนรหัสข้อผิดพลาด 32 บิต หากไม่ได้ตั้งค่าสถานะ ระบบจะใช้รหัสข้อผิดพลาดสไตล์ DOS

หากตั้งค่าสถานะ เส้นทางในแพ็กเก็ต SMB จะอยู่ในรูปแบบ Unicode มิฉะนั้นจะนำไปใช้ การเข้ารหัส ASCII

■ ID กระบวนการ 2 ไบต์ อนุญาตให้ระบุ ID กระบวนการ 32 บิต;
■ 8 ไบต์เพื่อจัดเก็บลายเซ็นแพ็คเก็ต SMB หากเปิดใช้งานฟังก์ชันนี้ (ดูคำอธิบายของฟิลด์ Flags2)
■ 2 ไบต์ที่ไม่ได้ใช้

1.3.3 การรักษาความปลอดภัย CIFS

โปรโตคอล CIFS ให้ความปลอดภัยฝั่งเซิร์ฟเวอร์ ผู้ดูแลระบบสามารถปิดการใช้งานการรักษาความปลอดภัย CIFS ในตัว ซึ่งไม่จำเป็น ดังนั้นการรักษาความปลอดภัยจะถูกเปิดใช้งานตามค่าเริ่มต้น
CIFS เวอร์ชันเก่าอนุญาตให้ส่งโดยไม่เข้ารหัส รหัสผ่านข้อความจากไคลเอนต์ไปยังเซิร์ฟเวอร์ ซึ่งไม่แนะนำโดยเด็ดขาด โปรโตคอล CIFS อนุญาตให้ทรัพยากรเซิร์ฟเวอร์ได้รับการปกป้องโดยใช้รหัสผ่านผู้ใช้แต่ละราย (ซึ่งเรียกว่าความปลอดภัยระดับผู้ใช้) เพื่อให้มั่นใจถึงความเข้ากันได้แบบย้อนหลัง เซิร์ฟเวอร์ CIFS รองรับการป้องกันการแชร์โดยใช้รหัสผ่านที่เหมือนกันสำหรับผู้ใช้ทุกคน เนื่องจากทรัพยากรจะถูกแชร์ วิธีการนี้จึงเรียกว่าความปลอดภัยระดับทรัพยากร ไม่แนะนำการรักษาความปลอดภัยระดับทรัพยากร และไม่พร้อมใช้งานใน Windows 2000 Server แพ็กเก็ต SMB แรกที่ไคลเอ็นต์ส่งไปยังเซิร์ฟเวอร์เรียกว่า SMB_NEG0TIATE_PR0T0C0L แพ็คเกจใช้เลือกประเภท CIFS เพื่อตอบสนองต่อคำขอ SMB_NEG0TIATE_PR0T0C0L เซิร์ฟเวอร์จะรายงานกลไกความปลอดภัยที่ใช้ (ระดับผู้ใช้หรือทรัพยากร)
เริ่มต้นด้วย Windows NT4 SP3 และ Windows 2000 Microsoft ได้จัดเตรียมความสามารถในการวางลายเซ็นดิจิทัลในแพ็คเกจ SMB สามารถกำหนดค่าเซิร์ฟเวอร์ให้ต้องใช้ลายเซ็นดิจิทัลจากไคลเอนต์ได้ มิฉะนั้นไคลเอนต์จะถูกปฏิเสธการเข้าถึงทรัพยากร การใช้ลายเซ็นดิจิทัลส่งผลต่อประสิทธิภาพของทั้งเซิร์ฟเวอร์และไคลเอนต์ แต่นี่คือราคาที่คุณต้องจ่ายเพื่อความปลอดภัย โปรดทราบว่าการลงนามและการตรวจสอบความถูกต้องมีลักษณะเป็นสองทิศทาง กล่าวคือ ไคลเอ็นต์ลงนามในคำขอที่ส่ง เซิร์ฟเวอร์ตรวจสอบลายเซ็นของลูกค้าและลงนามในการตอบสนองที่ส่ง จากนั้นไคลเอ็นต์จะตรวจสอบลายเซ็นของเซิร์ฟเวอร์ ลายเซ็นแพ็คเก็ต SMB จะถูกจัดเก็บไว้ในฟิลด์เติม/ลายเซ็น
การตอบสนองต่อคำขอ SMB_NEG0TIATE_PR0T0C0L ถูกใช้เพื่อให้ไคลเอ็นต์ทราบข้อมูลเกี่ยวกับการสนับสนุนของเซิร์ฟเวอร์สำหรับการลงนามแพ็คเก็ต SMB และว่าจำเป็นต้องมีการลงนามแพ็คเก็ต SMB หรือไม่

1.3.4 การรับรองความถูกต้อง CIFS

โปรโตคอล CIFS ช่วยให้คุณสามารถกำหนดระดับความปลอดภัยระหว่างเซิร์ฟเวอร์และไคลเอนต์ได้ เซิร์ฟเวอร์อาจถูกกำหนดค่าให้ปฏิเสธการให้บริการแก่ลูกค้าที่เสนอมากเกินไป ระดับต่ำความปลอดภัย.
โปรโตคอล CIFS จัดเตรียมกลไกการตรวจสอบสิทธิ์ที่จำเป็นสำหรับเซิร์ฟเวอร์ในการตรวจสอบสิทธิ์ไคลเอ็นต์ นอกจากนี้ยังมีวิธีการตรวจสอบความถูกต้องของเซิร์ฟเวอร์โดยไคลเอนต์อีกด้วย ใน ระดับพื้นฐานสำหรับการตรวจสอบสิทธิ์ ไคลเอนต์จะระบุชื่อผู้ใช้และรหัสผ่านที่ไม่ได้เข้ารหัส ด้วยเหตุผลที่ชัดเจน แนวทางนี้จึงไม่พึงปรารถนา นอกจากนี้ เซิร์ฟเวอร์ยังสามารถกำหนดค่าให้ปฏิเสธการให้บริการแก่ลูกค้าที่ส่งรหัสผ่านในรูปแบบข้อความที่ชัดเจน
การรับรองความถูกต้องสามารถทำได้โดยใช้เทคโนโลยีที่เรียกว่าโปรโตคอลการท้าทาย/การตอบสนอง เมื่อไคลเอนต์ส่งแพ็กเก็ต SMB_NEGOTIATE_PROTOCOL เพื่อเลือกประเภท CIFS ค่าสถานะในการตอบสนองของเซิร์ฟเวอร์บ่งชี้ว่าสามารถใช้โปรโตคอลคำขอ/ตอบกลับได้ หากเซิร์ฟเวอร์รองรับโปรโตคอลนี้ ระบบจะระบุความท้าทายขนาด 8 ไบต์ในการตอบกลับของเซิร์ฟเวอร์ ข้อความค้นหาเป็นค่าสุ่มซึ่งมีความเป็นไปได้น้อยมากที่จะถูกสร้างขึ้นใหม่ ทั้งไคลเอ็นต์และเซิร์ฟเวอร์สร้างคีย์จากรหัสผ่านของผู้ใช้ หลังจากนั้น คำขอจะถูกเข้ารหัสโดยใช้คีย์และอัลกอริธึม DES (มาตรฐานการเข้ารหัสข้อมูล) ไคลเอนต์ส่งคำขอไปยังเซิร์ฟเวอร์ และเซิร์ฟเวอร์จะเปรียบเทียบการตอบสนองกับค่าที่คำนวณได้ของตัวเอง หากค่าทั้งสองตรงกัน ลูกค้าจะพิสูจน์ความรู้เกี่ยวกับรหัสผ่านและยืนยันความถูกต้อง
นอกจากนี้ โปรโตคอล CIFS รองรับการรักษาความปลอดภัยแบบขยาย (คุณอาจไม่คาดคิดว่าผู้อ่านที่เดาข้อบ่งชี้ของการสนับสนุนการรักษาความปลอดภัยแบบขยายในการตอบสนองของเซิร์ฟเวอร์ต่อคำขอ SMB_NEGOTIATE_PROTOCOL จะได้รับรางวัล) กลไกการรักษาความปลอดภัยขั้นสูงให้ความสามารถในการรองรับโปรโตคอลการตรวจสอบความถูกต้องแบบกำหนดเองภายในโปรโตคอล CIFS เมื่อคุณเลือกการรักษาความปลอดภัยแบบขยาย จะมีการจัดเตรียม Blob การรักษาความปลอดภัยแรกเพื่อตอบสนองต่อคำขอ SMB_NEGOTIATE_PROTOCOL ออบเจ็กต์ไบนารีความปลอดภัยไม่ได้รับการประมวลผลโดยโปรโตคอล CIFS ในการดำเนินการนี้ ต้องอาศัยกลไกไคลเอ็นต์และเซิร์ฟเวอร์เพื่อสร้างและประมวลผลอ็อบเจ็กต์ไบนารี Blob การรักษาความปลอดภัยที่ตามมาอาจถูกส่งพร้อมกับข้อมูล SMB
การใช้กลไกความปลอดภัยขั้นสูงทำให้ Microsoft สามารถให้การสนับสนุนโปรโตคอล Kerberos ใน Windows 2000 และเวอร์ชันที่ใหม่กว่าได้ การใช้ Kerberos ใน Windows 2000 เป็นตัวอย่างของการใช้องค์ประกอบส่วนตัว ตัวอย่างเช่น ช่องข้อมูลประจำตัว Kerberos บางช่องใช้เพื่อถ่ายทอดข้อมูลเกี่ยวกับกลุ่มที่ลูกค้าเป็นสมาชิก การใช้ Kerberos ของ Microsoft ช่วยให้มีการตรวจสอบสิทธิ์ร่วมกัน โดยที่ไม่เพียงแต่เซิร์ฟเวอร์จะตรวจสอบสิทธิ์ไคลเอ็นต์เท่านั้น แต่ในทางกลับกัน ไคลเอ็นต์จะตรวจสอบสิทธิ์เซิร์ฟเวอร์ด้วย
Microsoft เสนอวิธีอื่นในการสร้างเซสชันระหว่างไคลเอนต์และเซิร์ฟเวอร์ที่เรียกว่า Netlogon สิ่งนี้ใช้ข้อมูลเกี่ยวกับคอมพิวเตอร์ (ไม่ใช่ผู้ใช้) Netlogon จำเป็นในการสร้างเซสชัน RPC ที่ปลอดภัยและมีความสามารถมากกว่ามาก เนื่องจากรองรับโทเค็นการเข้าถึงของผู้ใช้ ซึ่งไม่รองรับการเข้าสู่ระบบ CIFS โดยทั่วไป Netlogon จะใช้สำหรับการสื่อสารระหว่างเซิร์ฟเวอร์ (เซิร์ฟเวอร์หนึ่งทำหน้าที่เป็นไคลเอ็นต์ของเซิร์ฟเวอร์อื่น)
สุดท้ายนี้ เซิร์ฟเวอร์ CIFS ไม่จำเป็นต้องจัดเตรียมกลไกการรับรองความถูกต้อง โปรโตคอล CIFS รองรับการตรวจสอบสิทธิ์แบบ end-to-end โดยที่เซิร์ฟเวอร์ได้รับคำขอจากเซิร์ฟเวอร์อื่น ส่งคำขอนั้นไปยังไคลเอนต์ และส่งการตอบสนองของไคลเอนต์ไปยังเซิร์ฟเวอร์การตรวจสอบความถูกต้อง ในกรณีนี้ หากเซิร์ฟเวอร์การตรวจสอบความถูกต้องตอบสนองในเชิงบวก ไคลเอนต์จะได้รับสิทธิ์ในการเข้าถึงทรัพยากรที่ร้องขอ กลไกนี้เรียกว่าการรับรองความถูกต้องจากต้นทางถึงปลายทาง

1.3.5 ตัวเลือกการเพิ่มประสิทธิภาพ CIFS

โปรโตคอล CIFS มีความสามารถที่หลากหลายเพื่อเพิ่มประสิทธิภาพการโต้ตอบระหว่างไคลเอนต์และเซิร์ฟเวอร์

1.3.5.1 ฟังก์ชัน CIFS AndX

โปรโตคอล CIFS ช่วยให้คุณสร้างลำดับคำขอที่ต้องพึ่งพาซึ่งกันและกัน ดังนั้นการปรับการดำเนินการเหล่านี้ให้เหมาะสมจะทำให้คุณสามารถดำเนินการตามคำขอได้ในการเรียกไปยังเซิร์ฟเวอร์เพียงครั้งเดียว คุณลักษณะนี้เรียกว่า AndX; ระบบไฟล์ เวอร์ชัน NFS 4 มีฟังก์ชันที่คล้ายกันในรูปแบบของโพรซีเดอร์ COMPOUND ตัวอย่างจะส่งคำขอ OpenAndRead หรือ WriteAndClose ไปยังเซิร์ฟเวอร์ CIFS แทนที่จะส่งคำขอสองคำขอแยกกัน เช่น เปิด แล้วอ่าน และได้รับการตอบกลับสองรายการ คำขอ OpenAndRead หนึ่งคำขอจะถูกส่งไปและได้รับการตอบกลับหนึ่งรายการ นี่เป็นสิ่งสำคัญอย่างยิ่งเมื่อเวลาคำขอ/การตอบกลับยาวเกินไป

1.3.5.2 การสกัดกั้นแบบฉวยโอกาส

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

ลองนึกภาพแอปพลิเคชันที่เปิดไฟล์ เซิร์ฟเวอร์เครือข่ายอ่าน-เขียนและเขียนบันทึกขนาด 128 ไบต์ลงในไฟล์ หากไม่มี oplocking การเขียนแต่ละครั้งขนาด 128 ไบต์จะต้องถ่ายโอนข้อมูลผ่านเครือข่าย การใช้ oplock ช่วยให้คุณสามารถแคชไฟล์ไว้ในระบบไคลเอ็นต์และรวมการเขียนหลายรายการไว้ในไฟล์เดียวซึ่งส่งผลให้มีการถ่ายโอนข้อมูลผ่านเครือข่าย ตัวอย่างเช่น สมมติว่าไคลเอนต์ใช้บัฟเฟอร์ 4096 และเขียน 128 ไบต์ลงในไฟล์ตามลำดับ บัฟเฟอร์แรกจะมีข้อมูลการเขียน 32 ครั้ง (4096/128 = 32) และข้อมูลการเขียนทั้งหมด 32 ครั้งจะถูกถ่ายโอนผ่านเครือข่ายในคำขอเขียนครั้งเดียวไปยังไฟล์ หากไม่สามารถแคชการเขียนได้ การเขียน 32 รายการจะถูกส่งผ่านเครือข่าย (แทนที่จะเป็นเพียงหนึ่งรายการเหมือนกับการแคช) การลดจำนวนการเขียนจาก 32 เหลือ 1 รายการส่งผลให้โหลดเครือข่ายลดลงอย่างมาก และประสิทธิภาพเพิ่มขึ้นอย่างมาก
วัตถุประสงค์ที่สองของการบล็อกแบบฉวยโอกาสคือเพื่อขยายเงื่อนไขภายใต้การบล็อกดังกล่าวที่เป็นไปได้ ด้วยการใช้ oplock คุณสามารถเพิ่มประสิทธิภาพการแคชได้ การขยายเงื่อนไขภายใต้การบล็อกแบบฉวยโอกาสที่เป็นไปได้นั้นให้ประโยชน์เพิ่มเติมหลายประการ สมมติว่าอินสแตนซ์ของแอปพลิเคชันเปิดไฟล์ (บนเซิร์ฟเวอร์เครือข่าย) เพื่อการอ่านและการเขียน สิ่งนี้ร้องขอและให้สิทธิ์ oplock รหัสไคลเอ็นต์อาจแคชการเขียนลงในไฟล์ สมมติว่าอินสแตนซ์อื่นของแอปพลิเคชันเดียวกันกำลังทำงานบนไคลเอ็นต์อื่น วิธีหนึ่งที่จะออกจากสถานการณ์นี้คือการลบ oplock และใช้ I/O เครือข่ายเพื่อส่งคำขอเขียนไปยังไฟล์จากทั้งสองแอปพลิเคชัน อีกวิธีหนึ่งคือปล่อย oplock เมื่ออินสแตนซ์ที่สองของแอปพลิเคชันพยายามดำเนินการเขียน บ่อยครั้งแอปพลิเคชันไม่ได้ดำเนินการเขียนเลย
เมื่อเงื่อนไขเปลี่ยนแปลง เซิร์ฟเวอร์จะส่งการแจ้งเตือนไปยังไคลเอนต์เพื่อปล่อย oplock ตัวอย่างของสถานการณ์ที่เซิร์ฟเวอร์ส่งการแจ้งเตือนเพื่อปล่อย oplock จะเป็นคำขอให้ไคลเอ็นต์อื่นเข้าถึงหรือเขียนข้อมูลลงในไฟล์ เซิร์ฟเวอร์ทำให้แน่ใจว่าข้อมูลสถานะเซิร์ฟเวอร์ได้รับการล้างข้อมูล (รวมถึงการปิดเซสชันไคลเอนต์) หากไคลเอนต์ไม่ตอบสนองต่อคำขอเพื่อปล่อย oplock ลูกค้าร้องขอ oplock เมื่อจำเป็นเท่านั้น ตัวอย่างเช่น หากแอปพลิเคชันร้องขอให้เปิดไฟล์เพื่อการเข้าถึงแบบเอกสิทธิ์เฉพาะบุคคล การขอ oplock ก็ไม่สมเหตุสมผล
การบล็อกแบบฉวยโอกาสถูกนำมาใช้ในสามรูปแบบ:

ลำดับการดำเนินการสำหรับการล็อคแบบฉวยโอกาสพิเศษ

■ การปิดกั้นโอกาสพิเศษ;
■การปิดกั้นโอกาสชุด;
■ การปิดกั้นโอกาสระดับที่สอง สถานการณ์เหล่านี้อธิบายไว้โดยละเอียดด้านล่าง

การปิดกั้นโอกาสพิเศษ

ตัวเลือกการล็อคนี้ร้องขอโดยตัวเปลี่ยนเส้นทางขนาดเล็ก CIFS เมื่อแอปพลิเคชันเปิดไฟล์เพื่ออ่านหรือเขียน เซิร์ฟเวอร์ให้สิทธิ์ oplock หากไฟล์ไม่ได้ถูกเปิดโดยไคลเอนต์อื่น ลำดับการดำเนินการแสดงไว้ในภาพ
ในการเริ่มต้น ไคลเอนต์รายแรกส่งคำขอเพื่อเปิดไฟล์ โดยขอ oplock แบบเอกสิทธิ์เฉพาะบุคคล เซิร์ฟเวอร์ทำการตรวจสอบที่จำเป็นและจัดเตรียมให้ ไคลเอ็นต์แรกเริ่มแคชไฟล์ โดยดำเนินการอ่านล่วงหน้าและเขียนแบบ Lazy Write หลังจากนั้นครู่หนึ่ง ไคลเอนต์อื่น เช่น ไคลเอนต์ 2 จะส่งคำขอไปยังเซิร์ฟเวอร์เพื่อเปิดไฟล์เดียวกัน เซิร์ฟเวอร์ตั้งข้อสังเกตว่าไคลเอ็นต์ 1 มี oplock พิเศษในไฟล์ที่ร้องขอ และส่งการแจ้งเตือนการปลดล็อคไปยังไคลเอนต์ 1 ไคลเอนต์ 1 ล้างบัฟเฟอร์ข้อมูลโดยการออกคำขอเขียนและล็อคที่จำเป็นในไฟล์ เมื่อเขียนข้อมูลสถานะไฟล์แล้ว ไคลเอนต์ 1 จะแจ้งให้เซิร์ฟเวอร์ทราบว่าการประมวลผลการแจ้งเตือนการเปิดตัว oplock เสร็จสิ้นแล้ว ณ จุดนี้ เซิร์ฟเวอร์จะส่งการตอบกลับไปยังไคลเอนต์ 2 เพื่อให้สามารถเปิดไฟล์ได้ ไคลเอนต์ 1 ยังคงทำงานกับไฟล์ต่อไปโดยไม่ต้องทำการแคชในเครื่อง ในกรณีนี้ จะถือว่าไคลเอ็นต์ 1 เปิดไฟล์ในโหมดที่อนุญาตให้ไคลเอ็นต์อื่นเปิดไฟล์ได้

การปิดกั้นโอกาสระดับที่สอง

เป็นเรื่องปกติมากที่ไคลเอนต์จะเปิดไฟล์ในโหมดอ่าน/เขียน และไม่เขียนสิ่งใดลงในไฟล์จนกว่าจะปิด การล็อคระดับ 2 ได้รับการออกแบบมาเพื่ออนุญาตการแชร์ไฟล์และการแคชในสถานการณ์นี้ Exclusive oplock และ oplock แบบแบตช์ (จะกล่าวถึงในหัวข้อถัดไป) จะพร้อมใช้งานเสมอตามคำขอของลูกค้า แต่ไคลเอนต์ไม่เคยร้องขอ oplocking ระดับที่สอง ลูกค้าเริ่มต้นด้วยการร้องขอ oplock พิเศษ หากอนุญาตการล็อคดังกล่าว เซิร์ฟเวอร์อาจดาวน์เกรด oplock เอกสิทธิ์เฉพาะบุคคลเป็นการล็อคระดับที่สองหากตรงตามเงื่อนไขบางประการ (อธิบายไว้ด้านล่าง)
ไคลเอนต์ 1 เริ่มต้นด้วยการร้องขอ oplock พิเศษ และเริ่มแคชไฟล์ในเครื่อง โดยเฉพาะอย่างยิ่ง ไคลเอนต์ 1 ดำเนินการอ่านล่วงหน้าและแคชข้อมูลที่ล็อคไว้ในเครื่อง โปรดจำไว้ว่าในกรณีนี้ไคลเอนต์จะไม่เขียนข้อมูลลงในไฟล์ ในบางจุด ไคลเอนต์ 2 ร้องขอการเข้าถึงไฟล์เดียวกัน เซิร์ฟเวอร์ส่งการแจ้งเตือน 1 รายการไปยังไคลเอนต์เพื่อขอให้ดาวน์เกรด oplock เอกสิทธิ์เป็นการล็อคระดับที่สอง ไคลเอนต์ปลดล็อคและรายงานว่าการประมวลผลการแจ้งเตือนเสร็จสมบูรณ์ จากนั้น เซิร์ฟเวอร์จะส่งข้อความไปยังไคลเอนต์ 2 ว่าไฟล์ถูกเปิดสำเร็จ และให้สิทธิ์ oplock ระดับที่สองแก่ไคลเอนต์ ในกรณีนี้ จะถือว่าไคลเอ็นต์ 1 แจ้งเซิร์ฟเวอร์ว่าไคลเอ็นต์อื่นสามารถเข้าถึงไฟล์ได้เช่นกัน โดยการเปิดไฟล์
เมื่อใช้ oplocking ระดับที่สอง ไคลเอนต์จะถูกห้ามไม่ให้บัฟเฟอร์ข้อมูลที่ล็อค ข้อดีของการออกแบบนี้คือ การเชื่อมโยงข้อมูลจะง่ายขึ้นบนฝั่งเซิร์ฟเวอร์ ในขณะที่ไคลเอนต์จะแคชข้อมูลที่อ่าน จึงช่วยลดปริมาณข้อมูลที่ถ่ายโอนผ่านเครือข่าย ทันทีที่ไคลเอนต์รายหนึ่งออกคำขอเขียน เซิร์ฟเวอร์จะปล่อย oplock ระดับที่สอง หลังจากนั้นจะไม่มีการล็อคเหลือเลย เนื่องจากไม่มีไคลเอ็นต์บัฟเฟอร์ข้อมูลที่ถูกล็อคเมื่อมีการล็อคระดับที่สอง การดำเนินการเขียนที่สำเร็จหมายความว่ามีการดำเนินการเขียนไปยังพื้นที่ของไฟล์ที่ไม่ได้ถูกล็อคโดยไคลเอนต์อื่น เมื่อเปิดตัว oplock ระดับที่สองแล้ว ไคลเอ็นต์จะถูกป้องกันไม่ให้บัฟเฟอร์ข้อมูลการอ่าน

การปิดกั้นโอกาสระดับที่สอง

การล็อคแบทช์

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

การล็อคแบทช์

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

การเรียนรู้ Linux, 302 (สภาพแวดล้อมแบบผสม)

บูรณาการกับโปรโตคอล CIFS

การใช้ Linux เป็นไคลเอ็นต์สำหรับเซิร์ฟเวอร์ SMB/CIFS

ซีรี่ส์เนื้อหา:

เกี่ยวกับซีรีย์นี้

บทความชุดนี้จะช่วยให้คุณเชี่ยวชาญงานการจัดการระบบปฏิบัติการ Linux คุณสามารถใช้เนื้อหาในบทความเหล่านี้เพื่อเตรียมตัวสำหรับการสอบ LPIC ระดับ 3 (LPIC-3)

หากต้องการดูคำอธิบายบทความในชุดนี้และรับลิงก์ โปรดดูที่ของเรา รายการนี้ได้รับการอัปเดตอย่างต่อเนื่องพร้อมบทความใหม่ๆ ตามที่พร้อมและมี เป้าหมายปัจจุบัน (ณ เดือนพฤศจิกายน พ.ศ. 2553)การสอบรับรอง LPIC-3

บทความนี้ครอบคลุมหัวข้อต่อไปนี้:

  • โปรโตคอล Server Message Block (SMB) และ Common Internet File System (CIFS)
  • คุณสมบัติและประโยชน์ของการใช้ CIFS
  • การติดตั้งการแชร์ไฟล์ CIFS บนไคลเอนต์ Linux

บทความนี้จะช่วยคุณเตรียมความพร้อมสำหรับการสอบ LPI 302 (ความเชี่ยวชาญด้านสภาพแวดล้อมแบบผสม) และมีเนื้อหาจากวัตถุประสงค์ 314.1 ของหัวข้อ 314 วัตถุประสงค์มีน้ำหนัก 3

ข้อกำหนดเบื้องต้น

เพื่อให้ได้รับประโยชน์สูงสุดจากบทความของเรา คุณต้องมีความรู้ขั้นสูงเกี่ยวกับ Linux และมีคอมพิวเตอร์ Linux ที่ใช้งานได้ซึ่งสามารถรันคำสั่งทั้งหมดที่คุณพบได้ โดยเฉพาะอย่างยิ่ง สันนิษฐานว่าผู้อ่านรู้วิธีการทำงานกับบรรทัดคำสั่ง Linux รู้พื้นฐานของการกำหนดค่า Samba และมีความเข้าใจทั่วไปเกี่ยวกับโครงสร้างของ ไฟล์การกำหนดค่า smb.conf. คุณต้องรู้พื้นฐานของการติดตั้งในพื้นที่และ ไฟล์ที่ถูกลบระบบต่างๆ (โดยใช้ คำสั่งเมานต์และไฟล์ /etc/fstab) ความรู้เกี่ยวกับคำสั่ง ftp ที่รวมอยู่ในชุดมาตรฐาน คำสั่งข้อความยินดีต้อนรับ Linux แม้ว่าจะไม่จำเป็นก็ตาม

SMB/CIFS คืออะไร

เกี่ยวกับการสอบเสริม LPI-302

เช่นเดียวกับหลายๆ โปรแกรม โปรแกรม Linux Professional Institute Certification (LPIC) มีระดับการรับรองที่แตกต่างกัน โดยแต่ละระดับต้องใช้ความรู้ขั้นสูงและประสบการณ์จริงที่มากขึ้น การสอบ LPI-302 เป็นการสอบวิชาเลือกระดับ 3 ในโปรแกรม LPIC ที่ต้องใช้ความรู้ขั้นสูงเกี่ยวกับการดูแลระบบ Linux

หากต้องการได้รับการรับรอง LPIC ระดับ 3 (LPIC-3) คุณต้องผ่านการสอบระดับ 1 สองครั้ง (101 และ 102) การสอบระดับ 2 สองครั้ง (201 และ 202) และการสอบระดับ 3 Core 301 (LPIC-3) หากคุณผ่านการรับรองระดับ 3 เรียบร้อยแล้ว คุณอาจสอบวิชาเลือกในสาขาวิชาเฉพาะทางบางสาขาได้ เช่น การสอบ LPI-302

ก่อนที่จะไปยังวิธีใช้ Linux เป็นไคลเอ็นต์สำหรับเซิร์ฟเวอร์ SMB/CIFS จะมีประโยชน์ที่จะพูดถึงคุณลักษณะของโปรโตคอลเหล่านี้ และดูว่าโปรโตคอลเหล่านี้ให้การใช้งานระบบไฟล์ได้ครบถ้วนเพียงใดเมื่อทำงานกับ Linux เราจะอธิบายว่าการเรียนรู้โปรโตคอล SMB ดั้งเดิมทำงานอย่างไร และฟีเจอร์ใหม่ใดบ้างที่ถูกนำไปใช้ในการปรับเปลี่ยน CIFS คุณอาจต้องการอ้างอิงบทความของ DeveloperWorks สำหรับ LPI Exam Objective 310.1 ซึ่งครอบคลุมแนวคิด SMB/CIFS พื้นฐานบางประการ (ดูลิงก์ใต้ )

คุณสมบัติสำคัญของ SMB

SMB มีหลายอย่าง โอกาสพิเศษจากมุมมองของเครือข่าย รวมถึงระบบการตั้งชื่อคอมพิวเตอร์ของตัวเอง (ระบบอินพุต/เอาท์พุตพื้นฐานของเครือข่าย, NetBIOS) กลุ่มงาน และโปรโตคอลการตรวจสอบความถูกต้อง เพื่อทำความเข้าใจว่า SMB และ CIFS ทำงานอย่างไรกับไคลเอนต์แชร์ไฟล์ Linux เราจำเป็นต้องพูดถึงคุณสมบัติที่สำคัญที่สุดของโปรโตคอลเหล่านี้: ชุดของเมตาดาต้าที่มีให้

ข้อมูลเมตา- นี่คือข้อมูลที่เกี่ยวข้องกับไฟล์ แต่ไม่ใช่ส่วนหนึ่งของไฟล์ ตัวอย่างของข้อมูลเมตา ได้แก่ การประทับเวลา เจ้าของ สิทธิ์ และแม้แต่ชื่อไฟล์ ไม่ต้องสงสัยเลยว่าคุณจะทราบถึงวิธีการใช้ข้อมูลเมตาบางวิธี คอมพิวเตอร์ลินุกซ์และบางทีอาจเกี่ยวกับความแตกต่างบางประการใน Linux และระบบปฏิบัติการอื่น ๆ เช่น Windows เนื่องจากโปรโตคอล SMB ได้รับการพัฒนาสำหรับ DOS, Windows และ IBM Operating System/2® (OS/2) จึงประกอบด้วยข้อมูลเมตาจำนวนมากที่เฉพาะเจาะจงสำหรับระบบปฏิบัติการเหล่านั้น อย่างไรก็ตาม ที่สำคัญกว่านั้น SMB ไม่รองรับข้อมูลเมตา UNIX® และ Linux เช่น เจ้าของ กลุ่ม และการอนุญาตส่วนใหญ่ นอกจากนี้ SMB ไม่รองรับลิงก์สัญลักษณ์ ฮาร์ดลิงก์ หรือไฟล์ประเภทพิเศษอื่นๆ เช่น ไฟล์อุปกรณ์ SMB มีเมตาดาต้าหลายประเภทที่ปกติแล้ว Linux ไม่รู้จัก เช่น บิต ที่ซ่อนอยู่(ที่ซ่อนอยู่) คลังเก็บเอกสารสำคัญ(จดหมายเหตุ) และ ระบบ(เป็นระบบ) บิตแบบอ่านอย่างเดียวสามารถแมปกับบิตสิทธิ์การเขียนใน Linux

สร้างช่องของคุณเอง

คุณสามารถสร้างฟีดอัปเดต RSS, Atom หรือ HTML ของคุณเอง และรับการแจ้งเตือนเกี่ยวกับบทความใหม่หรือบทความที่อัปเดตบนเว็บไซต์ของเรา โดยไปที่หน้าเลือกโซน ลินุกซ์ให้เลือกช่อง บทความและป้อน Linux Professional Institute เป็นข้อความรหัสผ่าน จากนั้นเลือกประเภทช่องที่ต้องการ

ข้อจำกัดอีกประการหนึ่งของ SMB ก็คือ ขนาดสูงสุดไฟล์เท่ากับสองกิกะไบต์ ข้อจำกัดนี้เป็นปัญหาที่ชัดเจนในโลกปัจจุบันที่มีไฟล์เก็บถาวรหลายกิกะไบต์ ไฟล์มัลติมีเดีย ฯลฯ

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

คุณจำเป็นต้องรู้เกี่ยวกับพอร์ตเครือข่ายที่ใช้โดยโปรโตคอล SMB เหล่านี้คือพอร์ต UDP (User Datagram Protocol) 137 และ 138 รวมถึงพอร์ต TCP 139 (บริการเซสชัน - กล่าวอีกนัยหนึ่งคือการถ่ายโอนไฟล์) คุณจะต้องใช้ข้อมูลนี้เมื่อทำการดีบัก SMB โดยใช้ สาธารณูปโภคระดับต่ำการวินิจฉัยเครือข่าย

ส่วนขยาย CIFS สำหรับโปรโตคอล SMB

ในช่วงกลางทศวรรษ 1990 Microsoft® เปลี่ยนชื่อโปรโตคอล SMB เป็น ซีไอเอฟเอสและในเวลาเดียวกันได้เพิ่มคุณสมบัติใหม่จำนวนหนึ่ง รวมถึงการรองรับสัญลักษณ์และฮาร์ดลิงก์ รวมถึงไฟล์ขนาดใหญ่ CIFS ยังรองรับการเข้าถึงเซิร์ฟเวอร์ผ่านพอร์ต TCP ที่ปลอดภัย 445 นอกเหนือจากนั้น พอร์ตมาตรฐาน 139.

ส่วนขยาย CIFS อื่นๆ ได้รับการพิสูจน์แล้วว่ามีความสำคัญพอๆ กับส่วนขยาย SMB ของ Microsoft โดยเฉพาะชุดฟังก์ชันที่เรียกว่า ส่วนขยายยูนิกซ์(ส่วนขยาย UNIX) ให้การสนับสนุนความเป็นเจ้าของไฟล์และการอนุญาตพร้อมกับข้อมูลเมตา UNIX ประเภทอื่น ๆ หากทั้งไคลเอนต์และเซิร์ฟเวอร์รองรับส่วนขยายเหล่านี้ การใช้โปรโตคอล CIFS แทนโปรโตคอล SMB จะให้ผลที่ดีกว่ามาก งานที่มีประสิทธิภาพลูกค้าภายใต้ การควบคุมลินุกซ์. อย่างที่คุณคาดหวัง ระบบปฏิบัติการในตระกูลไม่รองรับส่วนขยายเหล่านี้ วินโดวส์เซิร์ฟเวอร์® ดังนั้นจึงมีประโยชน์เฉพาะเมื่อไคลเอนต์ Linux เชื่อมต่อกับเซิร์ฟเวอร์ Samba เซิร์ฟเวอร์จะต้องได้รับการกำหนดค่าดังต่อไปนี้ พารามิเตอร์ระดับโลก:

ส่วนขยายยูนิกซ์ = ใช่

ตามค่าเริ่มต้น การตั้งค่านี้ถูกกำหนดเป็นไม่ในทุกเวอร์ชันของ Samba ที่น้อยกว่า 3.0 แต่ใน Samba 3.0 จะถูกตั้งค่าเป็นใช่ตามค่าเริ่มต้น ทำให้ไม่จำเป็นต้องกำหนดค่าด้วยตนเอง

การใช้ smbclient

บางทีวิธีที่ง่ายที่สุดในการเข้าถึงเซิร์ฟเวอร์ SMB/CIFS ก็คือการใช้ ไคลเอนต์ลินุกซ์- นี่คือการใช้ยูทิลิตีบรรทัดคำสั่ง smbclient ยูทิลิตี้นี้คล้ายกับคำสั่ง ftp แบบคลาสสิก ดังนั้นหากคุณคุ้นเคยกับ ftp คุณจะเชี่ยวชาญ smbclient ได้อย่างง่ายดาย หากคุณไม่คุ้นเคยกับ ftp ก็เพียงพอที่จะรู้ว่าโปรแกรมนี้มีการเชื่อมต่อกับเซิร์ฟเวอร์ ปราศจากการติดตั้งการแชร์ไฟล์แบบมาตรฐาน แต่ผู้ใช้จะดำเนินการคำสั่งต่างๆ เพื่อดู ลบ ดาวน์โหลด หรือถ่ายโอนไฟล์แทน

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

ตารางที่ 1. คำสั่ง smbclient ที่สำคัญที่สุด
ทีมการกระทำ
? หรือช่วยแสดงรายการคำสั่งทั้งหมด
ซีดีเปลี่ยนไดเร็กทอรีการทำงานเป็น เซิร์ฟเวอร์ระยะไกล
เดลลบไฟล์
ผบ. หรือ lsแสดงรายการไฟล์ในไดเร็กทอรีปัจจุบัน (หรือที่ระบุ)
ออกหรือออกสิ้นสุดเซสชั่น
รับถ่ายโอนไฟล์จากเซิร์ฟเวอร์ไปยังไคลเอนต์
จอแอลซีดีเปลี่ยนไดเร็กทอรีการทำงานเป็น คอมพิวเตอร์ท้องถิ่น
md หรือ mkdirสร้างไดเร็กทอรีบนเซิร์ฟเวอร์ระยะไกล
รับถ่ายโอนไฟล์หลายไฟล์จากเซิร์ฟเวอร์ไปยังไคลเอนต์
มากกว่าแสดงรายการไฟล์ที่ถูกลบโดยใช้คำสั่งเพจท้องถิ่น
พูดถ่ายโอนไฟล์หลายไฟล์จากไคลเอนต์ไปยังเซิร์ฟเวอร์ระยะไกล
ใส่ถ่ายโอนไฟล์จากไคลเอนต์ไปยังเซิร์ฟเวอร์ระยะไกล
rd หรือ rmdirลบไดเร็กทอรี
เปลี่ยนชื่อเปลี่ยนชื่อไฟล์บนเซิร์ฟเวอร์ระยะไกล
RMลบหนึ่งไฟล์ขึ้นไปบนเซิร์ฟเวอร์ระยะไกล

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

เซสชันกับ smbclient มีลักษณะดังนี้:

รายการ 1. ตัวอย่างเซสชันกับ smbclient
$ smbclient //TANGO/GORDON/ ป้อนรหัสผ่านของกอร์ดอน: Domain= OS= Server= smb: \> cd mystuff smb: \mystuff\> ls . D 0 จันทร์ที่ 16 พฤษภาคม 19:20:08 2554 .. D 0 จันทร์ 16 พฤษภาคม 19:18:12 2011 xv-3.10a-1228.1.src.rpm 3441259 อังคาร 18 พฤษภาคม 19:09:26 2010 License.txt 27898 จันทร์ที่ 16 พฤษภาคม 19:17:15 2011 xorg.conf 1210 ศุกร์ 21 มกราคม 04: 18:13 2011 51198 บล็อกขนาด 2097152 มี 2666 บล็อก smb: \mystuff\> get xorg.conf รับไฟล์ \mystuff\xorg.conf ขนาด 1210 เป็น xorg.conf (9.4 KiloBytes/sec) (เฉลี่ย 9.4 KiloBytes/sec ) smb:\mystuff\> ออก

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

การติดตั้งการแชร์ไฟล์ SMB/CIFS

แม้จะมีประสิทธิภาพทั้งหมด แต่ smbclient ไม่อนุญาตให้คุณเข้าถึงเซิร์ฟเวอร์อย่างโปร่งใสเช่นเดียวกับเมื่อทำงานกับไคลเอนต์ Windows หากนี่คือสิ่งที่คุณต้องการ คุณจะต้องใช้วิธีการอื่นเพื่อเมานต์การแชร์ SMB/CIFS ซึ่งสามารถทำได้โดยใช้มาตรฐาน คำสั่งลินุกซ์เมานต์หรือโดยการแก้ไขไฟล์ /etc/fstab เพื่อเมานต์การแชร์ SMB/CIFS โดยอัตโนมัติเมื่อคอมพิวเตอร์บูท

เพิ่มจำนวนหุ้นชั่วคราว

การแชร์ไฟล์ SMB/CIFS สามารถติดตั้งได้โดยใช้คำสั่ง mount ซึ่งใช้สำหรับการติดตั้งด้วยเช่นกัน ปริมาณท้องถิ่นหรือหุ้น NFS คุณสามารถระบุประเภทระบบไฟล์ cifs ได้ หรือในกรณีส่วนใหญ่ การเมาท์จะกำหนดว่าจำเป็นต้องใช้ไดรเวอร์เฉพาะตามไวยากรณ์คำสั่งหรือไม่ หรือคุณสามารถเรียกโปรแกรมอรรถประโยชน์ mount.cifs ได้โดยตรง โดยพื้นฐานแล้ว การติดตั้งระบบไฟล์ภายในและระยะไกลจะแตกต่างกันเฉพาะกับประเภทของอุปกรณ์ที่จะติดตั้งเท่านั้น ดังนั้น หากต้องการเมานต์ทรัพยากร GORDON ที่อยู่บนเซิร์ฟเวอร์ TANGO เพียงรันคำสั่งต่อไปนี้ในฐานะผู้ใช้รูท:

# เม้าท์ //TANGO/GORDON/mnt

ในทางปฏิบัติ คำสั่งนี้สามารถสร้างปัญหาได้ โดยส่งผ่านชื่อ root ไปยังเซิร์ฟเวอร์เป็นชื่อผู้ใช้ และหากผู้ใช้รายนั้นไม่ได้รับอนุญาตให้เชื่อมต่อกับเซิร์ฟเวอร์ การเมานต์จะล้มเหลว ปัญหานี้สามารถแก้ไขได้โดยใช้ตัวเลือก -o user=name เพื่อส่งชื่อผู้ใช้ไปยังเซิร์ฟเวอร์

# mount -o user=gordon //TANGO/GORDON /mnt รหัสผ่าน:

สามารถใช้ตัวเลือกการเมานท์อื่นๆ ได้หลายตัว โดยส่งผ่านไปยังคำสั่ง mount โดยใช้ตัวเลือก -o ตัวเลือกที่มีประโยชน์ที่สุดแสดงอยู่ในตารางที่ 2 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกที่เหลือ โปรดดูที่หน้าคู่มือ mount.cifs

ตารางที่ 2. อ็อพชัน mount.cifs ที่สำคัญที่สุด
ตัวเลือกการกระทำ
ผู้ใช้= ชื่อหรือชื่อผู้ใช้= ชื่อ ระบุชื่อผู้ใช้ที่ส่งไปยังเซิร์ฟเวอร์
รหัสผ่าน= ผ่าน กำหนดรหัสผ่านที่จะส่งไปยังเซิร์ฟเวอร์ หากไม่มีการระบุรหัสผ่าน mount.cifs จะใช้ค่า ตัวแปรสภาพแวดล้อมรหัสผ่าน; หากไม่ได้ระบุค่า PASSWD โปรแกรมจะแจ้งให้ผู้ใช้ใส่รหัสผ่าน
หนังสือรับรอง= ชื่อไฟล์ กำหนดไฟล์ที่มีชื่อผู้ใช้ รหัสผ่าน และชื่อเวิร์กกรุ๊ปเสริม แต่ละค่าจะแสดงรายการในบรรทัดแยกกัน โดยเริ่มต้นด้วยชื่อผู้ใช้= , รหัสผ่าน= และเวิร์กกรุ๊ป= ตามลำดับ
uid= UID กำหนด ID ผู้ใช้ที่จะเป็นเจ้าของไฟล์ทรัพยากรที่เมาท์
กิ๊ด= จีไอดี เช่นเดียวกับตัวเลือก uid= UIDแต่ใช้กับตัวระบุกลุ่ม (GID) แทนที่จะเป็นตัวระบุผู้ใช้ (UID)
file_mode= โหมด ตั้งค่าโหมดไฟล์ (สิทธิ์) ในรูปแบบตัวเลขที่จะกำหนดให้กับไฟล์บนเซิร์ฟเวอร์
dir_mode= โหมด คล้ายกับตัวเลือก file_mode=mode แต่ไม่ใช้กับไฟล์ แต่ใช้กับไดเร็กทอรี
แขกป้องกันการแจ้งรหัสผ่าน โดยทั่วไป ตัวเลือกนี้จะใช้งานได้ก็ต่อเมื่อทรัพยากรรองรับการเข้าถึงของผู้เยี่ยมชมเท่านั้น
แข็งหากเซิร์ฟเวอร์ไม่พร้อมใช้งาน กระบวนการที่พยายามเข้าถึงไฟล์ที่อยู่ในเซิร์ฟเวอร์นั้นจะยังคงค้างอยู่จนกว่าการเข้าถึงเซิร์ฟเวอร์จะได้รับการกู้คืน
อ่อนนุ่มหากเซิร์ฟเวอร์ไม่พร้อมใช้งาน กระบวนการที่พยายามเข้าถึงไฟล์ที่อยู่บนเซิร์ฟเวอร์จะได้รับข้อความแสดงข้อผิดพลาด นี่คือการกระทำเริ่มต้น

โดยทั่วไปพารามิเตอร์ uid, gid, file_mode และ dir_mode เป็นทางเลือกเมื่อเชื่อมต่อกับเซิร์ฟเวอร์ที่รองรับส่วนขยาย UNIX ที่นำมาใช้ใน CIFS อย่างไรก็ตาม การตั้งค่าเหล่านี้สามารถใช้เพื่อแทนที่ค่าที่ตั้งไว้บนเซิร์ฟเวอร์ได้ โปรดทราบว่าตัวเลือกทั้งหมดเหล่านี้ส่งผลต่อการมองเห็นไฟล์ ให้กับลูกค้า; ไม่ส่งผลกระทบต่อการอนุญาตหรือการเป็นเจ้าของไฟล์บนเซิร์ฟเวอร์

เมื่อเมานต์การแชร์ SMB/CIFS แล้ว คุณจะสามารถเข้าถึงได้ในลักษณะเดียวกับ ดิสก์ภายในเครื่องหรือวอลุ่ม NFS คุณสามารถคัดลอกและลบไฟล์โดยใช้คำสั่ง cp และ rm แก้ไขในโปรแกรมแก้ไขข้อความหรือโปรแกรมอื่นๆ เป็นต้น อย่างไรก็ตาม โปรดจำไว้ว่าหากเซิร์ฟเวอร์ไม่รองรับคุณสมบัติบางอย่าง คุณจะไม่สามารถใช้คุณสมบัติเหล่านั้นได้ ตัวอย่างเช่น คุณไม่สามารถเปลี่ยนโหมดของไฟล์โดยใช้ chmod ได้หากเซิร์ฟเวอร์ไม่รองรับส่วนขยาย UNIX (ข้อยกเว้นเฉพาะในกรณีของ chmod คือความสามารถในการเปลี่ยนสิทธิ์ในการเขียน - สิทธิ์เหล่านี้จะถูกแมปผกผันกับบิตอ่านอย่างเดียวของ SMB มาตรการ).

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

#จำนวน/เดือน
การติดตั้งการแชร์ไฟล์โดยใช้ SMB

เคอร์เนล Linux ก่อนเวอร์ชัน 2.6.37 มีไดรเวอร์ SMB และ CIFS แยกต่างหาก และอนุญาตให้ติดตั้งการแชร์โดยใช้โปรโตคอล SMB ดั้งเดิม ในการดำเนินการนี้ คุณต้องระบุ smbfs เป็นประเภทระบบไฟล์ หรือใช้คำสั่ง smbmount สิ่งนี้ทำงานเหมือนกับการใช้ประเภทระบบไฟล์ cifs หรือคำสั่ง mount.cifs แม้ว่ารายละเอียดจะมีความแตกต่างบางประการก็ตาม การใช้โปรโตคอล SMB ทำให้ไม่สามารถใช้คุณลักษณะเฉพาะของ CIFS เช่น ส่วนขยาย UNIX ได้

ในอดีต บางครั้งการใช้ SMB ก็สมเหตุสมผล ตัวอย่างเช่น สามารถติดตั้งการแชร์ไฟล์บนคอมพิวเตอร์ Windows 9x/Me เก่ามากได้โดยใช้ไดรเวอร์ Linux smbfs แต่ไม่ได้ใช้ cif ทุกวันนี้ สถานการณ์ดังกล่าวเกิดขึ้นได้ยากมาก เนื่องจากการใช้งาน cif สมัยใหม่ได้ขจัดการใช้ โอข้อจำกัดส่วนใหญ่ที่มีอยู่ครั้งหนึ่ง อย่างไรก็ตาม หากคุณพบปัญหาที่คล้ายกัน ให้ลองติดตั้ง เคอร์เนลลินุกซ์ด้วยเวอร์ชันก่อน 2.6.37 และตรวจสอบว่าไดรเวอร์ smbfs จะช่วยแก้ปัญหาได้หรือไม่

การติดตั้งหุ้นอย่างถาวร

หากคุณต้องการเมานต์การแชร์ไฟล์ SMB/CIFS อย่างถาวร คุณจะต้องเพิ่มรายการลงในไฟล์ /etc/fstab การเปลี่ยนแปลงเหล่านี้คล้ายกับการเปลี่ยนแปลงอื่นๆ ทั้งหมดในไฟล์ /etc/fstab ที่เกิดขึ้นโดยเป็นส่วนหนึ่งของคำสั่ง mount อย่างไรก็ตาม มีทางเลือกหนึ่งที่สมควรได้รับ ความสนใจเป็นพิเศษในสถานการณ์เช่นนี้ ได้แก่ ข้อมูลประจำตัว เนื่องจากเซิร์ฟเวอร์ SMB/CIFS ส่วนใหญ่ใช้รหัสผ่านในการตรวจสอบสิทธิ์ เพื่อเมานต์ทรัพยากรไฟล์โดยใช้ /etc/fstab จึงจำเป็นต้องจัดเก็บ รหัสผ่านถาวร. แม้ว่ารหัสผ่านจะสามารถจัดเก็บไว้ในไฟล์ /etc/fstab ได้โดยตรง (โดยใช้ตัวเลือกรหัสผ่าน) เราไม่แนะนำให้ทำเช่นนี้ เนื่องจากผู้ใช้ทุกคนจะต้องสามารถอ่านไฟล์ /etc/fstab ได้ ผู้ใช้ทุกคนจึงสามารถดูรหัสผ่านได้เช่นกัน การใช้ตัวเลือกข้อมูลรับรองทำให้คุณสามารถจัดเก็บรหัสผ่านในไฟล์ที่ผู้ใช้รูทเท่านั้นที่สามารถอ่านได้ ซึ่งจะเพิ่มความปลอดภัย

รายการทำงานในไฟล์ /etc/password สำหรับการแชร์ SMB/CIFS อาจมีลักษณะดังนี้:

// TANGO/สำรองข้อมูล /saveit cifs credentials=/etc/samba/creds.txt 0 0

ข้อมูลรับรองที่เกี่ยวข้องอาจมีลักษณะดังนี้:

ชื่อผู้ใช้=รหัสผ่านผู้ใช้=Iw2bUmS)