ระบบจัดการไฟล์เซิร์ฟเวอร์ file ......

81
ระบบจัดการไฟล์เซิร์ฟเวอร์ File Server Management System มงคล ลีละป ญญา Mongkol Leelapanya สารนิพนธ์ฉบับนี 1เป็นส่วนหนึ 6งของการศึกษา หลักสูตรวิทยาศาสตรมหาบัณฑิต สาขาวิศวกรรมเครือข่าย คณะวิทยาการและเทคโนโลยีสารสนเทศ มหาวิทยาลัยเทคโนโลยีมหานคร ปีการศึกษา 2555

Upload: others

Post on 25-Mar-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ระบบจดการไฟลเซรฟเวอร File Server Management System

มงคล ลละปญญา Mongkol Leelapanya

สารนพนธฉบบน1เปนสวนหน6งของการศกษา หลกสตรวทยาศาสตรมหาบณฑต สาขาวศวกรรมเครอขาย

คณะวทยาการและเทคโนโลยสารสนเทศ มหาวทยาลยเทคโนโลยมหานคร

ปการศกษา 2555

Page 2: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

I

หวขอ ระบบจดการไฟลเซรฟเวอร ชอนกศกษา นายมงคล ลละปญญา รหสนกศกษา 5217660004 หลกสตร วทยาศาสตรมหาบณฑต สาขาวศวกรรมเครอขาย ปการศกษา 2555 อาจารยทปรกษา ผศ.ดร.ศภกร กงพศดาร

บทคดยอ

โครงงานน1นาเสนอระบบจดการไฟลเซรฟเวอร (File Server) ขององคกรท6เปดใหใชงานรวมกน โดยจาลองระบบผานระบบปฏบตการลนกซ (LINUX) และใชโปรแกรมแซมบา (SAMBA) เพ6อทาการควบคมการใหสทธ [การใชงาน และยกเลกสทธ [การใชงาน ในระบบไฟลเซรฟเวอรของแตละสวนงาน โดยมการตดต 1งระบบจดเกบรายงานขอมลการใชงาน อกท 1งปรบปรงใหสามารถจดการใหสทธ [การใชงานของผใชงานผาน Web Application

ระบบจดการไฟลเซรฟเวอร มวตถประสงคในการพฒนาข1นเพ6อใหผดแลระบบสามารถบรหารจดการไฟลเซรฟเวอรไดงาย รวมถงการกคนขอมลกทาไดงายเชนกน ซ6งจะทาใหธรกจขององคกรยงคงดาเนนการไดอยางตอเน6องและราบร6น ลดขอผดพลาด รวดเรว อกท 1งชวยลดคาใชจายขององคกร จากการท6ระบบถกพฒนาข1นจากการใชโปรแกรมตาง ๆ ท6แจกจายใหใชงานฟร ทาใหประหยดคาใชจายในการซ1อซอฟตแวร (Software) เพ6อควบคมระบบ

Page 3: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

II

กตตกรรมประกาศ

โครงงานจกสาเรจมไดเลย ถาปราศจากแนวความคดและการแนะนาถงแนวทางการดาเนนโครงงาน และองคความรตางๆ มากมายจากอาจารย ผศ.ดร.ศภกร กงพสดาร ซ6งเปนอาจารยท6ปรกษา อกท 1งเพ6อนๆ รนพ6 และอาจารยทกๆ ทาน ของมหาวทยาลยเทคโนโลยมหานคร ท6คอยชวยเหลอสนบสนน เพ6อประกอบการจดทาสารนพนธฉบบน1

ขอกราบขอบพระคณ พอ แม ครอบครวของขาพเจา และอาจารยท6ปรกษาเปนอยางสง และขอขอบคณเพ6อนๆ และรนพ6 เอาไว ณ ท6น1ดวย

มงคล ลละปญญา

Page 4: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

III

สารบญ

หนา

บทคดยอ I กตตกรรมประกาศ IIสารบญ III สารบญรป V สารบญตาราง VIII บทท� 1 บทนา 1

1.1 กลาวนา 1 1.2 ปญหาและแรงจงใจ 1 1.3 วตถประสงค 1

1.4 ขอบเขตการดาเนนงาน 1 1.5 โครงสรางของโครงงาน 2

1.6 ประโยชนท�คาดวาจะไดรบ 2 1.7 ระยะเวลาการดาเนนโครงงาน 2

บทท� 2 ทฤษฎท�เก�ยวของ 4 2.1 กลาวนา 4

2.2 ระบบจดการไฟลเซรฟเวอร 4 2.3 ทฤษฎท�เก�ยวของ 4

2.3.1 ระบบปฏบตการลนกซ (LINUX) 4 2.3.2 CentOS ลนกซ 6 2.3.3 Active Directory 8 2.3.4 โดเมน (Domain) 9 2.3.5 แซมบา (SAMBA) 11 2.3.5.1 Authentication Security 12

2.3.5.2 File Permissions and Attributes 12 2.3.5.3 Passwords 12 2.3.5.4 VFS Module 13 2.3.5.5 การควบคมการเขาถงแชรไฟล 14

2.3.6 APACHE 14 2.3.7 MySQL 15 2.3.8 PHP 16

Page 5: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

IV

สารบญ (ตอ) หนา

บทท� 3 วธการดาเนนงาน 18

3.1 ออกแบบโครงสรางระบบไฟลเซรฟเวอร 18 3.1.1 สวนงานและตาแหนงงานของผใชงาน 18 3.1.2 ขอมลแชรไฟลสวนกลาง 18 3.1.3 ขอบเขตความตองการของระบบไฟลเซรฟเวอร 20

3.2 ออกแบบโครงสรางระบบจดการไฟลเซรฟเวอร 21 3.2.1 Context Diagram 21 3.2.2 Data Flow Diagram 22 3.2.3 ER Diagram 25 3.2.4 พจนานกรมขอมล Data Dictionary 26 3.2.5 ตวอยางขอมลแสดงบน Web Application 27

บทท� 4 ผลการดาเนนงาน 28 4.1 โครงสรางหนาระบบจดการไฟลเซรฟเวอร 28 4.2 กอนเขาใชงานระบบไฟลเซรฟเวอร 29 4.3 หลงเขาใชงานระบบจดการไฟลเซรฟเวอร 31

4.3.1 หนาจดการ Service 31 4.3.2 หนาจดการผใชงานระบบไฟลเซรฟเวอร 33 4.3.3 หนาการต jงคาระบบไฟลเซรฟเวอร 34 4.3.4 หนาสารองขอมลระบบไฟลเซรฟเวอร 37 4.3.5 หนารายงานการใชระบบไฟลเซรฟเวอร 45

บทท� 5 สรปผลการทาโครงการ 47 5.1 สรปผลการทาโครงการ 47

เอกสารอางอง 48 ภาคผนวก

ภาคผนวก ก การตดต jงเคร�องเซรฟเวอร ภาคผนวก ข การตดต jงเคร�องลกขาย

Page 6: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

V

สารบญรป

หนา

รปท� 2.1 ตวอยางโครงสรางพjนฐานระบบไฟลในลนกซ 6 รปท� 2.2 ตวอยางการใช CentOS ลนกซทาเซรฟเวอร 7 รปท� 2.3 หนาดาวนโหลด DVD สาหรบตดต �ง CentOS ลนกซ 7 รปท� 2.4 แสดงแหลงหาไฟลแพกเกจตดต �งบนระบบปฏบตการลนกซ 8 รปท� 2.5 รปแบบ Active Directory 9 รปท� 2.6 รปแบบการทางานของ Domain Controller 10 รปท� 2.7 รปแบบท (วไปในการใชงานแซมบาเซรฟเวอร 11 รปท� 3.1 จาลอง organize chart 19 รปท� 3.2 ขอมลในไฟลเซรฟเวอร 19 รปท� 3.3 รายละเอยดของโปรแกรมแซมบา 20 รปท� 3.4 Context Diagram ของระบบจดการไฟลเซรฟเวอร 21 รปท� 3.5 DFD Level 1 ของระบบจดการไฟลเซรฟเวอร 22 รปท� 3.6 DFD Level 2 ของ Process 1 จดการ service 23 รปท� 3.7 DFD Level 2 ของ Process 2 จดการผใช 23 รปท� 3.8 DFD Level 2 ของ Process 3 ต jงคาระบบ 24 รปท� 3.9 DFD Level 2 ของ Process 4 สารองขอมล 24 รปท� 3.10 DFD Level 2 ของ Process 5 รายงานการใชระบบ 25 รปท� 3.11 Entity-Relationship Diagram ของระบบจดการไฟลเซรฟเวอร 25 รปท� 4.1 โครงสรางหนาระบบจดการไฟลเซรฟเวอร 28 รปท� 4.2 หนา Login เขาระบบจดการไฟลเซรฟเวอร 29 รปท� 4.3 แสดงผล Login ระบบผาน 29 รปท� 4.4 แสดงผล Login ระบบไมผาน 29 รปท� 4.5 แสดงผล Logout จากระบบ 30 รปท� 4.6 แสดงการเขาใชงานระบบดวยการใช History ของ Web Browser 30 รปท� 4.7 แสดงผลการไมอนญาตใหเขาใชงานเน�องจากยงไมได Login 30 รปท� 4.8 แสดงภาพรวมของหนาจดการ Service 31 รปท� 4.9 แสดงการ Start SAMBA Service เพ�อใหไฟลเซรฟเวอรเร�มทางาน 31 รปท� 4.10 แสดงผลลพธการสงคาส �ง PING 32 รปท� 4.11 แสดงรายงานการใชงานทรพยากรของไฟลเซรฟเวอร 32 รปท� 4.12 แสดงหนาจดการผใชงานระบบไฟลเซรฟเวอร 33 รปท� 4.13 แสดงการลบผใชงานออกจากไฟลเซรฟเวอร 33 รปท� 4.14 แสดงการปรบปรงกลมงานใหกบผใชงาน 34

Page 7: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

VI

สารบญรป (ตอ) หนา

รปท� 4.15 แสดงหนาต jงคาระบบไฟลเซรฟเวอร 34 รปท� 4.16 แสดงการแกไขคาไฟล smb.conf ผาน Web Application 35 รปท� 4.17 แสดงการยอนคนคา smb.conf 36 รปท� 4.18 หนาสารองขอมลระบบไฟลเซรฟเวอร 37 รปท� 4.19 แสดงหนาระบบ Backup ในสวนของ recycle bin 37 รปท� 4.20 แสดงการลบไฟลบนเคร�องลกขาย (1) 38 รปท� 4.21 แสดงการลบไฟลบนเคร�องลกขาย (2) 38 รปท� 4.22 แสดงรายงาน log ของระบบไฟลเซรฟเวอร 39 รปท� 4.23 แสดงไฟลท�ระบบทาสาเนาเกบไวใน recycle bin 39 รปท� 4.24 แสดงการกขอมลผาน Web Application 39 รปท� 4.25 แสดงรายงานผลการกขอมลผาน Web Application 40 รปท� 4.26 แสดงหนาระบบ Backup ในสวนของ rsync backup 40 รปท� 4.27 ยนยนเปดใชงานในสวนของ rsync backup 41 รปท� 4.28 แสดงผลการยนยนการเปดใชงาน rsync backup (1) 41 รปท� 4.29 แสดงคา crontab หลงจากยอมรบการเปดใชงาน rsync backup 41 รปท� 4.30 แสดงผลการยนยนการเปดใชงาน rsync backup (2) 42 รปท� 4.31 แสดงผลการปรบปรงฝ �ง backup ดวย rsync backup 42 รปท� 4.32 แสดงการลบไดเรคทอร� /whole ในระบบลนกซ 42 รปท� 4.33 แสดงผลการกขอมลกลบไดเรคทอร� /whole ดวย rsync backup 42 รปท� 4.34 แสดงขอมลในไดเรคทอร� /whole ในระบบลนกซ หลงกขอมลดวย rsync backup 43 รปท� 4.35 แสดงหนาระบบ Backup ในสวนของ tar backup 43 รปท� 4.36 แสดงขอความยนยนกอนส �งสารองขอมลดวย tar backup 43 รปท� 4.37 แสดงผลจากคาส �งสารองขอมลดวย tar backup 44 รปท� 4.38 แสดงหนาลบไฟล tar ท�มในระบบ tar backup 44 รปท� 4.39 แสดงหนาจดการกขอมลดวย tar backup 45 รปท� 4.40 แสดงหนาระบบรายงานการใชระบบไฟลเซรฟเวอร 45 รปท� 4.41 แสดงรายงานดวยการใชระบบไฟลเซรฟเวอรคนหา 46 รปท� 4.42 แสดงรายงานการเขาใชงานระบบไฟลเซรฟเวอรบนลนกซ 46 รปท� ก.1 แสดงแหลงดาวนโหลดไฟลตดต jงระบบปฏบตการ CentOS ลนกซ ก-1 รปท� ก.2 การต jงคาระบบคอมพวเตอรจาลองบน VMWARE ก-1 รปท� ก.3 เปดใชงานแซมบาระหวางตดต jง CentOS ลนกซ ก-2 รปท� ก.4 แสดงการตดต jง CentOS ลนกซ ก-3

Page 8: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

VII

สารบญรป (ตอ) หนา

รปท� ก.5 แสดงหนา Choose a Tool ในแบบ Text Mode ของลนกซ ก-3 รปท� ก.6 หนา setup สวน Network configuration ก-4 รปท� ก.7 โครงสรางขอมลสวนกลาง ก-5 รปท� ก.8 แสดงผลการทดสอบหลงส �ง PHP Script ทางานกบ Shell Script ก-21 รปท� ข.1 การต jงคาให Microsoft วนโดวส XP เขาใชโดเมนช�อ server ข-1 รปท� ข.2 แสดงหนา Login พรอมเขาใชโดเมนช�อ server ข-1

Page 9: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

VIII

สารบญตาราง หนา

ตารางท� 1.1 ข jนตอนการดาเนนงานโครงงาน 1 2 ตารางท� 1.2 ข jนตอนการดาเนนงานโครงงาน 2 3 ตารางท� 2.1 แสดงการสงรหสผานแบบเขารหสของระบบปฏบตการตาง ๆ 13 ตารางท� 3.1 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท� 1 26 ตารางท� 3.2 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท� 2 26 ตารางท� 3.3 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท� 3 26 ตารางท� 3.4 ตารางขอมลการใชงานในระบบไฟลเซรฟเวอร สวนท� 1 26 ตารางท� 3.5 ตารางขอมลการใชงานในระบบไฟลเซรฟเวอร สวนท� 2 26 ตารางท� 3.6 ตารางแสดงขอมล user ในระบบไฟลเซรฟเวอร 27 ตารางท� 3.7 ตารางแสดงขอมลการใชงานระบบไฟลเซรฟเวอร 27

Page 10: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

1

บทท�1 บทนา

1.1 กลาวนา

ในโลกของธรกจท�มการแขงขนกนหลากหลายในปจจบน ทาใหหลายองคกรตางตองการขอมลตาง ๆ เพ�อสนบสนนการตดสนใจในการลงทน และสบเน�องจากระบบเทคโนโลยสารสนเทศมขดความสามารถในการจดเกบขอมลตาง ๆ ไวไดหลากหลายรปแบบ อกท -งเขาถงไดอยางรวดเรว จงเปนเหตจงใจใหเจาของกจการ หรอผประกอบการ ตางกสนใจนาระบบเทคโนโลยสารสนเทศมาใชภายในองคกรมาลดภาระคาใชจายในการลดปรมาณการใชทรพยากรกระดาษ ซ�งไดแก ระบบโดเมน (Domain) ระบบฐานขอมล (Database) ซ�งรวมไปถงระบบเครอขาย (Network) ท�สามารถชวยสรางระบบไฟลเซรฟเวอร สาหรบแบงปนขอมลใชงานรวมกนในองคกรไดเปนอยางด

1.2 ปญหาและแรงจงใจ

จากการใชระบบเทคโนโลยสารสนเทศเพ�อเปดใหบรการใชไฟลขอมลเอกสารรวมกนแบบท �ว ๆ ไป ทาใหองคกรมความคลองตวในการทางาน น -น พบวามหลายคร -งท�ขอมลขององคกรสญหายโดยไมทราบสาเหต อกท -งไมสามารถกคนกลบได เน�องจากระบบท �วไป ไมสามารถตอบสนองตอปญหาท�พบ จงเปนเหตใหธรกจขององคกรดาเนนไมตอเน�อง หากขอมลท�สาคญเหลาน -นสญหาย ทาใหตองจดสรางขอมลใหม หากไมสามารถกคนได ซ�งส�งเหลาน-เปนส�งท�องคกรท�นาระบบเทคโนโลยสารสนเทศมาใชงาน ตางกไมอยากใหเกดข-น 1.3 วตถประสงค เพ�อใหองคกรดาเนนกจการไดอยางตอเน�อง ไมตดขด ลดความเส�ยงการสญเสยของขอมลสาคญตาง ๆ ท�อยในระบบสารสนเทศ อกท -งสามารถตรวจสอบการใชงานขอมลตาง ๆ ของพนกงานภายในองคกร เพ�อลดขอพพาท กรณขอมลถกยาย เปล�ยนแปลง หรอสญหาย 1.4 ขอบเขตการดาเนนงาน

1.4.1 ออกแบบระบบสทธ Kผใชงานไฟลเซรฟเวอร เพ�อใหเหมาะสมกบการใชงานของพนกงานในองคกร ใหเหมาะสมตามนโยบายขององคกร

1.4.2 ศกษาระบบลนกซ เพ�อหาแนวทางหรอรปแบบในการสรางระบบไฟลเซรฟเวอร ท�สอดคลองกบวตถประสงค

1.4.3 จดทาระบบรายงานการใชงานระบบไฟลเซรฟเวอร ซ�งระบบจะตองสามารถระบตวตนของผใชงานได

1.4.4 จดทาระบบใหสามารถกขอมลเหลาน -นกลบคนมาได

Page 11: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

2

1.4.5 จดทาระบบควบคมผาน Web Application ท�สามารถดแล จดการกาหนดสทธ K และออกรายงานขอมลเพ�อตรวจสอบการใชงานระบบไฟลเซรฟเวอรได 1.5 โครงสรางของโครงงาน โครงงานน-จะแบงเน-อหาออกเปน 5 บท ซ�งสามารถสรปไดดงน- บทท� 1 กลาวถงภาพรวมของโครงงาน บทท� 2 กลาวถงแนวคด ทฤษฏ และการทบทวนวรรณกรรมท�เก�ยวของ บทท� 3 กลาวถงการออกแบบ บทท� 4 กลาวถงการพฒนาระบบ และผลการทดลอง บทท� 5 เปนการสรปผลการทาโครงงาน 1.6 ประโยชนท�คาดวาจะไดรบ 1.6.1 ลดปญหาจากผใชลบขอมลท�อยบนไฟลเซรฟเวอร ท -งต -งใจ และไมต -งใจ ซ�งสามารถปองกนไดแมพนกงานลาออกไปแลว 1.6.2 ขอมลตาง ๆ ท�ใหบรการบนไฟลเซรฟเวอรขององคกรสามารถตรวจสอบได ทาใหสามารถดาเนนธรกจไดอยางตอเน�อง 1.6.3 ผดแลระบบ สามารถจดการ บรหาร ไฟลเซรฟเวอรไดโดยงาย 1.7 ระยะเวลาการดาเนนโครงงาน

ขอบเขตการดาเนนโครงงาน 1 จะเนนการสรางระบบ ใหสามารถใชงาน และเกบขอมลการใชงานระบบไฟลเซรฟเวอร ท�สามารถระบตวตนผใชงานได โดยมระยะการดาเนนงาน ดงตารางท� 1.1 ดงน- ตารางท� 1.1 ข -นตอนการดาเนนงานโครงงาน 1

รายละเอยดการปฏบตงาน ระยะเวลาดาเนนงาน พ.ศ. 2555

พ.ค. ม.ย. ก.ค. ส.ค. ก.ย. ต.ค. 1. ออกแบบระบบสทธ Kผใชงานในไฟลเซรฟเวอร 2. คนควาระบบลนกซใหสอดคลองกบวตถประสงค 3. ตดต -ง และปรบปรง ระบบไฟลเซรฟเวอร 4. สรปผลการทดลอง 5. จดทารายงานนาเสนอโครงงาน 1

Page 12: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

3

หลงจากน -น การดาเนนโครงงาน 2 จะเปนการพฒนาระบบเพ�อใหสามารถควบคมระบบไฟลเซรฟเวอร ผาน Web Application อกท -งใหสามารถแสดงรายงานขอมลรายละเอยดการใชงานระบบไฟลเซรฟเวอรท�สามารถระบตวตนผใชงาน ตารางท� 1.2 ข -นตอนการดาเนนงานโครงงาน 2

รายละเอยดการปฏบตงาน ระยะเวลาดาเนนงาน

พ.ศ. 2555 พ.ศ. 2556 พ.ย. ธ.ค. ม.ค. ก.พ.

1. ออกแบบระบบจดการไฟลเซรฟเวอรดวย Web Application 2. จดทาระบบ Web Application 3. ทดสอบ และแกไขขอบกพรอง Web Application 4. สรป และเขยนรายงานนาเสนอโครงงาน 2 5. จดทาเอกสารโครงงานฉบบสมบรณ

Page 13: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

4

บทท� 2 ทฤษฎท�เก�ยวของ 2.1 กลาวนา

จากการท�ระบบสารสนเทศไดถกเลอกมาใชในธรกจตาง ๆ ในปจจบน เน�องดวยการท�มเทคโนโลยท�หลากหลาย สามารถตอบสนองธรกจไดเปนอยางด ซ�งมสวนชวยใหประหยดเวลาการทางาน และสามารถลดคาใชจายไดเปนอยางมาก

ระบบ Active Directory เปนเทคโนโลยหน�งในระบบสารสนเทศท�มความสามารถในการจดการบรหารไฟลท�ใชงานรวมกนภายในองคกร เพ�อรองรบการขยายตวของธรกจในอนาคต ท <งยงสามารถจดการบรหารขอมลกลมผใชงาน และจดทารายงานการใชงานตอผบรหาร ใหสามารถควบคม ดแล และออกแบบระบบ ใหเหมาะสม สอดคลองกบแนวทางการดาเนนธรกจขององคกร ใหมความนาเช�อถอ และปลอดภย 2.2 ระบบจดการไฟลเซรฟเวอร

ระบบจดการไฟลเซรฟเวอร (File Server management system) เปนระบบท�มวตถประสงคเพ�อใชบรหารไฟลเซรฟเวอรขององคกรใหมประสทธภาพ สามารถจดการสทธใชงานไฟลเซรฟเวอรของพนกงานในองคกรตามระดบตาแหนงสวนงานพนกงานไดงายดายและเหมาะสม อกท -งยงสามารถแสดงรายละเอยดการใชงานไฟลเซรฟเวอรพรอมระบตวตนพนกงานผใชงาน เพ�อลดปญหาขอโตแยงกลาวหาผดแลระบบหากขอมลภายในไฟลเซรฟเวอรสญหาย และยงสามารถนาขอมลดงกลาวอางองเพ�อทาการกคนขอมลท�สญหายไดอยางรวดเรว มประสทธภาพ ลดคาใชจายการซ-อโปรแกรม อกท -งลดขอผดพลาดในการทางานไดเปนอยางด 2.3 ทฤษฎท�เก�ยวของ

ในการพฒนาระบบจดการไฟลเซรฟเวอร ใหสามารถบรหารผานระบบเวบแอพพลเคช �นบนระบบเครอขายอนทราเนต ทาใหตองมการศกษาแนวความคดและเทคโนโลยตาง ๆ ท�จะนามาประยกตใชในการพฒนาน- โดยสามารถจาแนกเทคโนโลยท�นามาใชดงน-

2.3.1 ระบบปฏบตการลนกซ (LINUX) วกพเดย สารานกรมเสร [1] ไดเขยนไววาระบบปฏบตการลนกซ เปนระบบปฏบตการท�

รจ กกนอกช�อ คอ กน/ลนกซ (GNU/LINUX) เปนระบบปฏบตการเชนเดยวกบ ดอส (DOS) ไมโครซอฟตวนโดวส (Microsoft Windows) หรอยนกซ (UNIX) ท -งน- ลนกซจดวาเปนระบบปฏบตการยนกซประเภทหน�ง และเปนระบบปฏบตการประเภทฟรแวร (Freeware) ซ�งหมายถงวาเปนระบบปฏบตการท�ไมเสยคาใชจายในการซ-อโปรแกรม อกท -งมความสามารถในการทางานเปนเซรฟเวอรของระบบภายใน (internal) ไดเปนอยางด

Page 14: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

5

ประวตความเปนมาของระบบปฏบตการลนกซ แตเดมน -นไดพฒนามาจากระบบ Minix (เปนระบบยนกซชนดหน�ง ท�ใชบนเคร�องไมโครคอมพวเตอร) ซ�งสามารถทางานไดท -งแบบหลาย ๆ งานพรอมกน (Multitasking) และการทางานแบบหลาย ๆ ผใชงานพรอม ๆ กน (Multiuser) โดยสมยน -นระบบ Minix เปนระบบท�ใชสาหรบการเรยนวชาระบบปฏบตการ แตเน�องจากวา ยงมความสามารถตอบสนองการทางานไมเพยงพอ ดงน -น ในป ค.ศ. 1989 (โดยประมาณ) นกศกษาภาควชา Computer Science จากมหาวทยาลยเฮลซงก (University of Helsinki) ประเทศ ฟนแลนดช�อ ลนส ทอรวลดล (Linus Benedict Torvalds) ไดออกแบบเขยนโคดข-นใหมโดยอางองกบ Minix เพ�อปรบปรงไฟลและพฒนาใหมการสนบสนน Hardware มากข-น โดยภายหลงเม�อพฒนาสาเรจแลวจงใหช�อระบบปฏบตการตวน-วา ลนกซ

ท <งน<ในยคท�ลนกซเร�มตนใหม ๆ น <น ระบบอนเตอรเนตยงมความเรวไมมากนก จงไมสะดวกเลยท�จะดาวนโหลดเคอรเนลลนกซและสวนประกอบตาง ๆ มาตดต -งใชงาน อกท -งข -นตอนการตดต -งท�แสนยงยาก รวมถงการตดต -งโปรแกรมตาง ๆ ท�เปนสวนประกอบของะบบปฏบตการลนกซ ยงคงอยในชวงของการพฒนาไปตามกาลงของผพฒนาโปรแกรมจากท �วโลก ดงน -นการนาไปใชงานน -น จงมสภาพท�คอนขาง “ดบ” อยพอสมควร โดยผลงานซอฟตแวรท�แจกจายน -นจะในสภาพของ โปรแกรมตนฉบบ (source code) และหากตองการนาไปใชงานจะตองผานข -นตอนทางเทคนคท�เรยกวา “การคอมไพลโปรแกรม” (Program Compilation) เทาน -น

ธรภทร มนตรศาสตร [2] ไดอธบายวา จากการท�จะไดมาซ�งซอฟตแวรระบบปฏบตการลนกซน -น กลายเปนวาผท�ตองการนาระบบลนกซมาใชงานจะตองมความรและความชานาญในการคอมไพลโปรแกรมอยพอสมควร จงจะสามารถตดต -งโปรแกรมใชงานได จงเปนสาเหตทาใหคนท �วไปมองวาระบบปฏบตการลนกซเปนอะไรท�เขาใจยาก และมผพฒนาและผใชงานระบบปฏบตการลนกซ ในวงแคบ ๆ ดงน -น การพฒนาระบบปฏบตการลนกซจงทาไดอยางยากลาบาก เพ�อแกปญหาท�เกดข-นน- จงเกดกลมบคคลท�ตองการใหระบบปฏบตการลนกซเปนท�นยมและแพรหลาย และทาการรวบรวมระบบปฏบตการลนกซ และซอฟตแวรจานวนมากมาเกบไวเปนชดเดยวกน พรอมจดทาใหสะดวกตอการตดต -ง ปรบแตง และใชงาน โดยจดทาเปนชดซอฟตแวร “พรอมใช” ซ�งการจดทาน- เราเรยกกนวา ลนกซดสทรบวช �น (Linux Distribution) หรอเรยกส -น ๆ กนวา “ลนกซดสโทร” ซ�งลนกซดสทรบวช �นท�ใชกนในปจจบน ไดแก CentOS, Red Hat, Fedora Core, Suse และ Slackware เปนตน

Page 15: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

6

รปท� 2.1 ตวอยางโครงสรางพ-นฐานระบบไฟลในลนกซ

Machtelt Garrels [3] ไดกลาวไววา โครงสรางไฟลระบบของลนกซจะเร�มตนท�สแลช

(slash) โดยภายในสแลชจะบรรจไฟลและไดเรคทอร� (directory) พ<นฐานท�จาเปนของระบบปฏบตการลนกซท <งหมด ซ�งสามารถกลาวไดวา ไดเรคทอร�สแลช ถอเปนไดเรคทอร�ราก (root) ของระบบไฟล ดงรปท� 2.1

2.3.2 CentOS ลนกซ

Arnut Ruttanatirakul [4] กลาวไววา CentOS ลนกซ เปนระบบปฏบตการลนกซดสทรบวช �นหน�ง ท�นยมใชอยางกวางขวางและฟร คาวา “CentOS” ยอมาจาก Community ENTerprise Operating System ซ�งเปนลนกซท�พฒนามาจากตนฉบบ RedHat Enterprise Linux (RHEL) โดยท� CentOS ไดนาเอาซอรสโคดตนฉบบของ RedHat มาทาการคอมไพลใหมโดยการพฒนายงเนนพฒนาเปนซอฟตแวร Open Source ท�ถอลขสทธ @แบบ GNU General Public License (GPL)

Page 16: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

7

รปท� 2.2 ตวอยางการใช CentOS ลนกซทาเซรฟเวอร

ปจจบน CentOS ลนกซ ถกนามาใชกนอยางกวางขวางเน�องจากเปนระบบปฏบตการท�

มตนแบบจาก RedHat ท�มความแขงแกรงสง (ปจจบนเนนพฒนาในเชงการคา) การตดต -งแพกเกจยอยภายในสามารถใชไดท -ง RPM, TAR, APT หรอใชคาส �ง YUM ในการอปเดทซอฟตแวรแบบอตโนมต ซ�งแพกเกจ (package) ยอยท�มอยกสามารถนามาใชทาเซรฟเวอรสาหรบองคกรไดหลากหลาย อาท เชน Web Server (APACHE), FTP Server (ProFTPd/VSFTPd), DNS Server (BIND), Database Server (MySQL/PostgreSQL), Mail Server (Sendmail/Postfix/Dovecot), File and Printer Server (SAMBA), DHCP Server (DHCPd), Streaming Server, RADIUS Server (FreeRADIUS), Control Panel (ISPConfig) เปนตน ดงรปท� 2.2

รปท� 2.3 หนาดาวนโหลด DVD สาหรบตดต -ง CentOS ลนกซ

CentOS ลนกซ สามารถดาวนโหลดไดจาก http://www.centos.org ดงรปท� 2.3

Page 17: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

8

รปท� 2.4 แสดงแหลงหาไฟลแพกเกจตดต -งบนระบบปฏบตการลนกซ

กรณตองการตดต -งแพกเกจยอยแลวไมพบในแผน DVD กยงมเวบไซตชวยเหลอซ�ง

ไดแกเวบไซต http://rpmfind.net ดงรปท� 2.4 หรอ http://freshrpms.net เปนตน

2.3.3 Active Directory นนาถ วนาพรรณ [5] ไดอธบาย Active Directory วาเปนท�เกบรวบรวมออบเจกตและ

ทรพยากรตาง ๆ ของระบบเนตเวรกเอาไว โดยเกบออบเจกตท�กลาวถง ไดแก บญชรายช�อผใช รายช�อเคร�องคอมพวเตอร รายช�อเคร�องพมพ ไฟลเอกสาร ฐานขอมล อเมลแดเดรส เปนตน ซ�งภายในออบเจกตยงจดเกบคณสมบต (Attributes) ของออบเจกตและทรพยากรน -นไวดวย เชนเคร�องพมพประเภทส หรอขาวดา ซ�งจะทาใหยสเซอรสามารถระบคาบางอยางในการคนหาออบเจกตไดอยางรวดเรวย�งข-น

ตวอยางของไดเรกทอรท�มอยท �วไปเชน สมดทะเบยนบาน ซ�งเกบรวบรวมขอมลเก�ยวกบ เจาบาน ลกบาน โดยมรายละเอยดช�อ-นามสกล หมายเลขบตรประชาชน ฯลฯ และเม�อเราตองการหาขอมลเจาบาน กเพยงแตเปดไปยงหนาท�มรายละเอยดของเจาบาน จงเปรยบไดวาสมดทะเบยนบานกเสมอนหน�งเปน Active Directory สวนรายละเอยดท�เราตองการทราบกเทยบไดกบออบเจกตท�เกบอยในฐานขอมลของ Active Directory น �นเอง ท -งน- Active Directory ประกอบดวยองคประกอบสองสวนในการทางานรวมกน คอ

- Active Directory Service ทาหนาท�ใหบรการแกผใชและผดแลระบบ เชน ผใชทาการเขาระบบท�เคร�องไมโครคอมพวเตอรผานไดเรกทอรเพ�อตรวจสอบสทธ @ ขณะท�ผดแลระบบทาการสรางหรอลบบญชรายช�อผใช การเปล�ยนรหสผาน การกาหนดนโยบายผใช การสรางแชรโฟลเดอร การสรางรายช�อเคร�องไมโครคอมพวเตอร เปนตน รวมถงการใหบรการคนหา

Page 18: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

9

ออบเจกตและทรพยากรตาง ๆ บนระบบเนตเวรก โดย Active Directory Service จะสนบสนนท -งโปรโตคอล DNS และ LDAP

- Active Directory Database เปนสวนท�เกบฐานขอมลท�จดเกบไดเรกทอร (ออบเจกต) ของระบบเนตเวรก เชน จดเกบบญชรายช�อผใช กลมผใช รวมถงรายช�อและคณสมบตของทรพยากรตาง ๆ (คอมพวเตอร เคร�องพมพ แชรโฟลเดอร เปนตน) ซ�งจะชวยใหผใชสามารถคนหาและเรยกใชทรพยากรตาง ๆ ไดงายและรวดเรวมากข-น

รปท� 2.5 รปแบบ Active Directory

เวบไซต TechNet Microsoft [6] ไดมรายละเอยดการอธบายวา Active Directory สามารถนาไปประยกตใชเปนศนยกลางบรหารระบบตาง ๆ ไดเปนอยางด ดงรปท� 2.5

2.3.4 โดเมน (Domain) ฝายพฒนาและบรการเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลย

อบลราชธาน [7] ไดใหความหมายของโดเมนวา เปนการรวมทรพยากรตาง ๆ บนระบบเนตเวรกเขาไวดวยกนท <งหมดเพ�อใชในการบรหารและการจดการทรพยากร เชน บญชรายช�อผใช เคร�องคอมพวเตอร เคร�องเซรฟเวอร เคร�องพมพ แชรโฟลเดอร และออบเจกตอ�น ๆ โดย

Page 19: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

10

ทรพยากรตาง ๆ ขางตนน <น จะตองอยภายใตช�อโดเมน (Domain Name) เดยวกน ซ�งช�อของโดเมนจะบงบอกถงช�อของหนวยงานหรอช�อขององคกรดวย โดยมผบรหารระบบโดเมนมสทธ |สงสดในการจดการทรพยากรตาง ๆ ท�อยภายในโดเมน ท <งน<ระบบโดเมนไดเร�มมการใชงานคร <งแรกบน Windows NT4 ซ�งฐานขอมลน<จะถกเรยกวา SAM (Security Account Manager) แตถาเปนโดเมนของวนโดวส 2000/2003 ฐานขอมลน<จะเรยกวา Active Directory Database โดยฐานขอมลดงกลาวน<จะถกจดเกบไวท�เคร�องเซรฟเวอรท�ทาหนาท�เปน "โดเมนคอนโทรลเลอร" (Domain Controller)

รปท� 2.6 รปแบบการทางานของ Domain Controller

จากรปท� 2.6 เวบไซต Windows IT Pro [8] ไดเขยนบทความเก�ยวกบการทางานระบบ

โดเมน โดยแสดงใหเหนวาการท�ผใชงานจะใชงานโดเมนไดน <น จะตองมโดเมนคอนโทรลเลอร ซ�งจะทาการตรวจสอบการ Login บญชรายช�อผใชท�เขามากอน วาตรงกบบญชรายช�อผใชท�มอยหรอไม หากมรายช�ออยในระบบกจะสามารถใชบรการเซรฟเวอรท <งหมดท�อยภายใตโดเมนเดยวกนได

ท <งน<การสรางบญชผใชงานน <นจะทาการสรางเพยงคร <งเดยว แตสามารถเขาถงทรพยากรท <งหมดในโดเมนไดน <นโดยตลอด กลาวคอ กรณท�มการเพ�มเคร�องเซรฟเวอรในอนาคต กเพยงแตตดต <งใหเซรฟเวอรเคร�องใหมน <นเขาเปนสมาชกของโดเมนท�มอยแลว กจะทาใหผใชสามารถเขาใชทรพยากรจากเซรฟเวอรไดทนท โดยไมตองคอยสรางบญชผใชคนเดมลงในเคร�องเซรฟเวอรใหมอกตอไป

Page 20: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

11

2.3.5 แซมบา (SAMBA) ภวดล ดานระหาญ [9] ไดใหคาอธบายเก�ยวกบโปรแกรมแซมบา วาเปนซอฟตแวรท�ม

ใหใชบนระบบปฏบตการลนกซ และยนกซ ท�ชวยใหสามารถแชรไฟลและเคร�องพมพใหกบระบบปฏบตการไมโครซอฟตวนโดวส 95, 98, 2000, NT รวมไปถงลนกซและยนกซเอง โดยมพอรต (Port) การทางานท�เก�ยวของคอ 137/UDP, 138/ UDP, 139/TCP ซ�งการทางานของโปรแกรมแซมบา ประกอบไปดวยสวนประกอบหลก ๆ ดงน- • smbd เปน daemon ท�ชวยแชรไฟลและเคร�องพมพใหกบเคร�องลกขายของแซมบา

โดยมไฟลต -งคาท�สาคญคอ /etc/samba/smb.conf ซ�งควบคมการทางานSMBD • nmbd รบผดชอบกระบวนการท�เก�ยวของกบ Name Resolution และ Browsing

Service ซ�งเก�ยวของกบ NetBIOS Name • smbclient เปนโปรแกรมท�ทาหนาท�เช�อมตอไปยงแซมบาเซรฟเวอร หรอ Microsoft

วนโดวสท�มการทาแชรไฟลไว โดยจะมลกษณะการใชงานเหมอนใช FTP • smbmount ใชสาหรบ Mount ไปยง Shared Directory

• testparm เปนโปรแกรมตรวจสอบการต -งคาไฟล /etc/samba/smb.conf วาถกตองหรอไม

• smbstatus ใชสาหรบแสดง status ของ SMBD Server โดยท �วไปไฟลสาหรบต -งคาของโปรแกรมแซมบาจะถกเกบไวท� /etc/samba/smb.conf ซ�งไฟลดงกลาวมรายละเอยดคอนขางมาก ผเขยนจงนาออปช �นบางสวนภายในไฟล smb.conf เพ�อเปนแนวทางในการ configuration ดงตอไปน-

รปท� 2.7 รปแบบท �วไปในการใชงานแซมบาเซรฟเวอร

Gerhard Mourani [10] ไดอธบายในบทความวาโปรแกรมแซมบาสามารถทางาน

รวมกบระบบปฏบตการไดหลากหลาย ดงรปท� 2.7

Page 21: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

12

2.3.5.1 Authentication Security แซมบาจะทาการแชรไฟลหรอเคร�องพมพใหแกผใชท�ไดรบอนญาตเทาน -น กรณท�ใหผใชงานอ�นเขามาใชงานโดยท�ไมไดรบอนญาตในระบบ เม�อตองการใชระบบจะตองทาการยนยนตวตนกบแซมบา ซ�งแซมบามวธในการเลอกการยนยนตวตนผานทางออปชน (Option) ท�ช�อวา security โดยสามารถเลอกใชงานไดท -งหมด 4 แบบดงน- • security = share ต -งใหแซมบา ทาการแจงแกเคร�องลกขายใหสงคารหสผานอยาง

เดยวเทาน -น ดงน -นหากผใชทราบรหสผานของผใชคนใดคนหน�งกสามารถใชงานในระบบได

• security = user ต -งใหแซมบา ทาการสงคาช�อผใชงาน และรหสผานมาเพ�อตรวจสอบตวตนผใช ซ�งในกรณน-จะเหมาะสาหรบผท�ใชระบบปฏบตการวนโดวส NT/2000 เปน client และใช username และรหสผานเปนชดเดยวกนกบแซมบาเซรฟเวอร

• security = server ต -งใหแซมบาทางานคลายกบแบบ security =user เพยงแตแซมบาเซรฟเวอร จะใช SMB เซรฟเวอรเคร�องอ�นเปนตวทาหนาท�ตรวจสอบช�อผใชงาน และรหสผานแทน

• security = domain ต -งใหแซมบาเปนสมาชกของวนโดวสโดเมนได ดงน -นเม�อผใชทาการยนยนตวตนกบ Primary Domain Controller (PDC) แลว กจะสามารถเขาใชงานแชรท�อยบนแซมบาเซรฟเวอรได

2.3.5.2 File Permissions and Attributes

สาหรบสทธ @การเขาถงแชรไฟล จะตองต -งคาในโปรแกรมแซมบา โดยมคาท�เก�ยวของดงน- • create mask ใชกาหนดคา Default Permission สงสด สาหรบไฟลท�สรางข-นมาใหม

เชน create mask = 0640 • directory mask ใชกาหนดคา Default Permission สงสด สาหรบไดเรกทอรท�สราง

ข-นมาใหม เชน directory mask = 750 2.3.5.3 Passwords

Jelmer R. Vernooij, John H. Terpstra and Gerald (Jerry) Carter [11] ไดเขยนอธบายไววา ภายในไฟล /etc/samba/smb.conf ตรงบรรทดท�ระบ encrypt passwords หากตอนต -งคาไดระบคาเปน no โปรแกรมแซมบาจะตรวจสอบรหสผานและช�อผใชงาน จากไฟล /etc/passwd แตถาหากคาเปน yes โปรแกรมแซมบาจะตรวจสอบรหสผานและช�อผใชงาน จาก ไฟล /etc/samba/smbpasswd แทน ท -งน-หากไฟล /etc/samba/smbpasswd ไมมอยจรง กจะทาใหไมมผใชรายใดสามารถเขาใชงานแชรท -งหมดได

Page 22: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

13

ในสวนการใชงาน Encrypt Passwords น -น จะมขอจากดในการใชโดยข-นอยกบความสามารถของระบบปฎบตการท�เปนเคร�องลกขายวาสนบสนนการเขารหสหรอไม ตามตารางท� 2.1 ตารางท� 2.1 แสดงการสงรหสผานแบบเขารหสของระบบปฏบตการตาง ๆ

2.3.5.4 VFS Module

The Samba Team [12] ไดอธบายการใชงาน VFS Module ซ�งเปนสวนเสรมความสามารถของตวแซมบา มความสามารถในการตรวจจบไฟลท�ถกลบจากการใชงานในระบบเครอขาย พรอมท -งสามารถจดทาสาเนาไฟลท�ถกลบเหลาน -นไปเกบไวใน path ท�ผดแลระบบไดต -งคาระบไว ทาใหสามารถปองกนไมใหไฟลตาง ๆ ในระบบสญหายหากเกดการลบโดยไมต -งใจ โดยคาท�จะตองทาการเพ�มเขาไป ไดแก • vfs objects = recycle เปนชนดของ VFS ท�ตองการใช ซ�ง recycle จะหมายถงการ

เปดการทางาน VFS ใหคอยทาสาเนาไฟลท�ถกลบลงใน recycle path • recycle:exclude = *.tmp,*.temp สวนน-จะหมายถงไฟลท�ลงทายดวย .tmp .temp

เม�อถกลบแลวไมตองจดทาสาเนาเกบไฟลเหลาน -นลงใน recycle path • recycle:keeptree = yes การจดเกบ recycle path ใหทาสาเนาไดเรคทอรใหเหมอน

ตามแบบตนฉบบไฟลท�ถกลบดวย • recycle:repository = .recycle/%U หลงจากท�ระบบพบวามการลบไฟล ใหใชรปแบบ

การทาสาเนาไฟลเหลาน -นไปเกบไวภายใน recycle path ตามดวยไดเรคทอร�ช�อของผท�ทาการลบไฟลน -น เชน recycle path คอ /recycled และผลบไฟลคอ a ดงน -นเม�อลบไฟลช�อ a.txt ระบบจะทาสาเนาไวท� /recycled/a/a.txt (%U คอผท�ทาการลบไฟล)

• recycle:versions = yes ระบใหสรางช�อแตกตางข-นใหมหากพบวาไฟลท�ถกสรางข-นจากการลบกอนหนามช�อเหมอนกน เชน เคยม a.txt อยแลวใน recycle path กจะสรางช�อใหมคอ a.txt~1

Operating System Encrypted or Non-encrypted

Windows 95 Non-encrypted

Windows 95 with SMB Update Encrypted

Windows 98 Encrypted

Windows NT 3.X Non-encrypted

Windows NT 4.0 before SP 3 Non-encrypted

Windows NT 4.0 after SP 3 Encrypted

Page 23: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

14

2.3.5.5 การควบคมการเขาถงแชรไฟล บณฑต จามรภต [13] ไดอธบายถงความปลอดภยในการแชรไฟล วาผดแลระบบควรจากดการเขาถงแชรใด ๆ ใหใชงานไดเฉพาะผท�สมควรไดรบสทธ @เทาน -น โดยมออปชนท�เก�ยวของดงน- • valid users = myuid, lersak, @staff ระบใหเฉพาะผใชท�มช�อในรายการน-เทาน -น จง

จะสามารถเขาถงแชรไฟลท�ระบ path น -นได (ใช @ สาหรบท -ง group) ท -งน-หากรายช�อผใชท�กาหนดไวใน valid users ไปปรากฏซ-ากบรายช�อใน invalid users กจะถอวาผใชรายน -นถกจดในกลม invalid users

• invalid users = kitisak, @guest เปนการต -งใหช�อผใชท�ระบไมมสทธ @ใชงานไฟลแชร

• writable = yes writeable = yes write ok = yes read only = no ออปชนท -งส�คาน-ตางใหผลลพธเหมอนกน คออนญาตใหผใชสามารถสรางไฟลหรอไดเรกทอรใหมได

• write list = lersak, phuwadon, siriwan เปนการใหสทธ @เขยนไฟลแกผใชท�มช�อในรายการน- แมวาจะมการระบวา read only = yes กตาม

• public = no และ guest ok = no ออปชน public และ guest ok สามารถใชแทนกนได ซ�งหากกาหนดคาเปน yes กจะทาใหสามารถเขาใชงานแชรไฟลไดโดยไมตอง Login

• read list = choawalit, kitisak แสดงรายช�อผใชท�มสทธ @ใชงานแชรไฟลแบบอานเทาน -น ไมสามารถทาการแกไขใด ๆ ได หากวาผใชใน read list มช�อใน list อ�น เชน write list, read only, writeable กจะถอวาผใชน -นมสทธ @เปน read only เทาน -น

2.3.6 APACHE วกพเดย สารานกรมเสร [14] ไดมการเขยนบทความเก�ยวกบ APACHE ไวโดยกลาววา

APACHE คอ โปรแกรมทา Web Server ท�พฒนามาจาก HTTPD Web Server โดย APACHE น<จะทาหนาท�ในการจดเกบ Homepage และสง Homepage ไปยง Browser ท�มการเรยกเขา ยง Web Server ท�เกบ Homepage น <นอย ซ�งปจจบนจดไดวาเปน Web Server ท�ม ความนาเช�อถอมาก เน�องจากเปนท�นยมใชกนท �วโลก อกท <ง APACHE ยงเปนซอฟตแวร แบบ โอเพนซอรส ท�เปดใหบคคลท �วไปสามารถเขามารวมพฒนาสวนตาง ๆ ของ APACHE ได ซ�งทาใหเกดเปนโมดลท�เกดประโยชนมากมาย เชน mod_perl, mod_python หรอ mod_php อกท <งยงสามารถทางานรวมกบภาษาอ�นได แทนท�จะเปนเพยงเซรฟเวอรท�ใหบรการเพยงแค HTML อยางเดยว ซ�งตวตดต <งโปรแกรม APACHE น <น สามารถหาดาวนโหลดไดจากเวบไซต (Website) ช�อวา http://www.apache.org

นอกจากน< APACHE ยงมความสามารถอ�น ๆ ดวย เ ชน การยนยนตวบคคล (mod_auth, mod_access, mod_digest) หรอเพ�มความปลอดภยในการส�อสารผาน โปรโตคอล https (mod_ssl) และยงมโมดลอ�น ๆ ท�ไดรบความนยมใช เชน mod_vhost ทาใหสามารถสรางโฮสทเสมอน (Virtual Host) ภายในเคร�องเดยวกนได หรอ mod_rewrite ซ�งเปนเคร�องมอท�จะชวยให URL ของเวบไซตน <นอานงายข<น ยกตวอยางเชน จากเดมตองพมพ

Page 24: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

15

http://mydomain.com/board/quiestion.php?qid=2xDffw&action=show&ttl=1187400 แตหากมการใชโมดล mod_rewrite เพ�มเตมเขาไป จะทาใหตองพมพเวบไซตน<พมพส <นลงโดยพมพแค http://mydomain.com/board/question/how_to_edit_wikipedia_content.html ซ�งท�อยเหลาน<จะข<นอยกบวาผดแลเวบไซต วาตองการใหอยในลกษณะใด

2.3.7 MySQL วกพเดย สารานกรมเสร [15] ไดอธบายวา MySQL คอ โปรแกรมระบบจดการ

ฐานขอมล ท�พฒนาโดยบรษท MySQL AB มหนาท�เกบขอมลอยางเปนระบบ รองรบคาส �ง SQL เปนเคร�องมอสาหรบเกบขอมล ท�ตองใชรวมกบเคร�องมอหรอโปรแกรมอ�นอยางบรณาการ เพ�อใหไดระบบงานท�รองรบ ความตองการของผใช เชน ทางานรวมกบเคร�องบรการเวบ (Web Server) เพ�อใหบรการแกภาษาสครปตท�ทางานฝ �งเคร�องบรการ (Server-Side Script) เชน ภาษา PHP ภาษา ASP.NET หรอภาษา JSP เปนตน หรอทางานรวมกบโปรแกรมประยกต (Application Program) เชน ภาษา Virtual Basic .Netภาษา JAVA หรอภาษา C# เปนตน โปรแกรมถกออกแบบใหสามารถทางานไดบนระบบปฏบตการท�หลากหลาย และเปนระบบฐานขอมล Open Source ท�ถกนาไปใชงานมากท�สด

ปจจบนบรษทซนไมโครซสเตมส (Sun Microsystems, Inc.) ไดเขาซ<อกจการของ MySQL AB เรยบรอยแลว ฉะน <นผลตภณฑภายใต MySQL AB ท <งหมดจะตกเปนของซน โดยไดแบงผลตภณฑออกเปนสามสายการผลต ไดแก รนท�ใหใชฟร รนสาหรบทาการคา และรนท�สนบสนนกบผลตภณฑ SAP (MAX DB) ความแตกตางคอเวอรชนคอมมวนต<น <นสามารถนาไปใชงานไดฟร แตขาดการสนบสนนหรอการชวยเหลอเม�อมปญหาเกดข<น สวนเวอรชนท�ใชสาหรบทาการคาน <น จะใหบรการดานความสนบสนนเม�อมปญหาในการใชงาน โดยสรปไดดงน<

• MySQL เอนเทอรไพรส Enterprise • MySQL คลสเตอร Cluster • MySQL Embedded • MySQL Community (รนท�ใหใชฟร)

สาหรบระบบปฏบตการ CentOS ลนกซ น <น มโปรแกรมท�สามารถใชงานเปนฐานขอมล

ใหผดแลระบบสามารถเลอกใชงานได หลายโปรแกรม เชน MySQL และ PostgreSQL ซ�งผดแลระบบสามารถเลอกตดต <งไดท <งในขณะท�ตดต <งระบบปฏบตการ CentOS ลนกซ หรอจะตดต <งเพ�มเตมภายหลงจากท�ตดต <งระบบปฏบตการเสรจเรยบรอยกได อยางไรกตาม สาเหตท�ผใชงานจานวนมากนยมใชงานโปรแกรม MySQL กเพราะ MySQL สามารถทางานไดอยางรวดเรว มความนาเช�อถอและใชงานไดงาย เม�อเปรยบเทยบประสทธภาพในการทางานระหวางโปรแกรม MySQL และ PostgreSQL โดยพจารณาจากการประมวลผลแตละคาส �ง นอกจากน <น MySQL ถกออกแบบและพฒนาข<นมาเพ�อทาหนาเปนเคร�องใหบรการรองรบการจดการกบ ฐานขอมล

Page 25: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

16

ขนาดใหญ ซ�งการพฒนายงคงดาเนนอยอยางตอเน�อง สงผลใหมฟงกชนการทางานใหม ๆ ท�อานวยความสะดวกแกผใชงานเพ�มข<นอยตลอดเวลา รวมไปถงการปรบปรงดานความตอเน�อง ความเรวในการทางาน และความปลอดภย ทาให MySQL เหมาะสมตอการนาไปใชงานเพ�อเขาถงฐานขอมลบนเครอขายอนเทอรเนต

2.3.8 PHP PHP เปนภาษาสครปตท�มวตถประสงคเพ�อการพฒนาเวบไซต โดยสามารถทางาน

รวมกบภาษา HTML ไดเปนอยางด ทาใหเกดความนยมใชอยางแพรหลาย จากประวตการเร�มตนของ PHP ไดมระบอยบนเวบไซตของPHP [16] ไววา ภาษา

PHP ถกรเร�มพฒนาข<นในป 1994 โดย Rasmus Lerdorf ซ�งเปนโปรแกรมเมอรชาวอเมรกนไดมแนวคดท�ต อ งการ เคร� อ งมอส าหรบพฒนา เวบส วนตวของ เขา โดยใชขอดขอ งภาษา C และ Perl เรยกวา Personal Home Page และไดสรางสวนตดตอกบฐานขอมลท�ช�อวา Form Interpreter (FI) รวมท <งสองสวน เรยกวา PHP/FI ซ�งกเปนจดเร�มตนของ PHP ตอมาไดมคนท�เขามาเย�ยมชมเวบไซตของเขาแลวเกดชอบจงตดตอขอเอาโคดไปใชบางและนาไปพฒนาตอ ในลกษณะของ Open Source จนมความนยมข<นเปนอยางมาก โดยภายใน 3 ปมไดมเวบไซตท�นา PHP/FI มาใชในตดตอฐานขอมลและแสดงผลแบบไดนามกและอ�น ๆ มากกวา 50,000 เวบไซต

ตอมาในชวงระหวาง 1995-1997 Rasmus Lerdorf ไดมผท�มาชวยพฒนาอก 2 คนคอ Zeev Suraski และAndi Gutmans ชาวอสราเอล ไดพฒนาปรบปรงโคดของ Lerdorf ใหมโดยใช C++ ใหมความสามารถจดการเก�ยวกบแบบฟอรมขอมลท�ถกสรางมาจากภาษา HTML และสนบสนนการตดตอกบโปรแกรมจดการฐานขอมล MySQL จงทาให PHP เร�มถกใชมากข<นอยางรวดเรว และเร�มมผสนบสนนการใชงาน PHP มากข<น โดยในปลายป 1996 PHP ถกนาไปใชประมาณ 15,000 เวบไซตท �วโลก และเพ�มจานวนข<นเร�อย ๆ ซ�งตอมากมผเขามาชวยพฒนาอก 3 คน คอ Stig Bakken รบผดชอบความสามารถในการตดตอ Oracle โดยมอบหมายให Shane Caraveo รบผดชอบดแล PHP บนไมโครซอฟตวนโดวส 95/98/NT และ Jim Winstead รบผดชอบการตรวจความบกพรองตาง ๆ และไดเปล�ยนช�อเปน Professional Home Page ในเวอรช �นท� 2 หรอ PHP2

จากน <นในยคถดมาชวงระหวางเดอน มถนายน 1997 ถง 1999 หลงจากน <น PHP3 กไดออกมาสสายตาของนกโปรแกรมเมอร โดยมคณสมบตเดนคอสนบสนนระบบปฏบตการท <ง ไมโครซอฟตวนโดวส 95/98/ME/NT, ลนกซ และเวบเซรฟเวอร อยาง IIS, PWS, APACHE, OmniHTTPd อกท <งยงสนบสนนระบบฐานขอมลไดหลายรปแบบเชน SQL Server, MySQL, mSQL, Oracle, Informix, ODBC

PHP4 ไดกาเนดข<นในชวงต <งแต 1999-2007 โดยมการพฒนาใหดย�งข<นกวาเดม โดยมการเพ�ม Functions ใหม ๆ ในการทางานใหมากข<น รวมถงการทาใหใชงานงายข<น โดยม

Page 26: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

17

บรษท Zend ซ�งมผกอต <ง คอ Zeev และ Andi Gutmans รวมกน และใชเวบไซตช�อ http://www.zend.com เปนศนยกลางการตดตอกบผใชงานในการพฒนา ตอมาภายหลงผพฒนาไดต <งช�อ PHP ข<นใหมวา PHP: Hypertext Preprocessor โดยเวอรช �นน<จะเปน Compile Script ซงตางจากเวอรช �นกอนท�เปน Embed Script Interpreter มาโดยตลอด

ปจจบน PHP ไดพฒนาจนออกมาเปน PHP5 โดยไดเร�มพฒนามาต <งแต 2007 โดยมการเพ�ม Functions ในการทางานในดานตาง ๆ เชน

* Object Oriented Model * การกาหนดสโคป public/private/protected * XML และ Web Service * Exception handling * MySQLi และ SQLite * Zend Engine 2.0

Page 27: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

18

บทท� 3 วธการดาเนนงาน

การดาเนนงานสรางระบบจดการไฟลเซรฟเวอร ไดวางแผน โดยแบงลกษณะการ

ดาเนนงาน ดงน 3.1 ออกแบบโครงสรางระบบไฟลเซรฟเวอร

การจาลองผใชงานในระบบ เพ&อเปนหลกเกณฑในการพจารณาการกาหนดสทธ -ขององคกรในการเขาถงระบบไฟลเซรฟเวอร โดยมดงน

3.1.1 สวนงานและตาแหนงงานของผใชงาน โดยพจารณาจากผใชงานวาสงกดอยในสวนงานใด จากน นจงการกาหนดสทธ -ในระบบ

ไฟลขอมลสวนกลางใหผใชงานสามารถใชงานตามท&ตวเองสงกดอยน นได โดยสงวนมใหเขาไปใชไฟลขอมลสวนกลางของสวนงานสงกดอ&น ๆ ดงเชน บคคลท&อยในสวนงานท& 1 สามารถใชงานในไฟลขอมลสวนกลางท&จดใหผท&เก&ยวของสวนงานท& 1 ใชงานโดยเฉพาะไดเทาน น โดยบคคลท&อยในสวนงานท& 2 จะไมสามารถเหนหรอเขามาใชงานในไฟลขอมลสวนกลางของสวนงานท& 1 ได ท งน ในเร&องของลาดบช นในแตละระดบของสวนงานกจะถกนามาพจารณาในการใหสทธ -ใชงานดวยเชนกน เพ&อใหสามารถเขาถงขอมลในสวนท&เปนสาระสาคญของบรษทแตกตางกนไปตามลาดบช นกลมงาน เชน กลมพนกงาน กลมผบรหาร หรอเจาของบรษท เปนตน

3.1.2 ขอมลแชรไฟลสวนกลาง เปนแหลงเกบไฟลขอมลตาง ๆ ท&ต งข นมาภายในระบบไฟลเซรฟเวอร เพ&อวตถประสงค

ใหองคกรใชงานรวมกน ตามสทธ -เขาถงไฟลขอมลสวนกลางของพนกงานในองคกร ท งน แหลงเกบไฟลขอมลท&มอยในระบบน จะถกตดต งคณลกษณะใหสามารถสงไฟลท&ถกลบ ไปจดเกบลงในแหลงเกบไฟลขอมลสารองอกแหง เพ&อปองกนไฟลขอมลถกลบโดยไมต งใจ อกท งสามารถปรบเปล&ยนสทธ -การเขาถงไดตามความเหมาะสม และมความยดหยนเพ&อใหสอดคลองกบนโยบายขององคกรน น ๆ

จากเกณฑการพจารณาดงกลาวขางตนน ไดนามาเปนแนวทางในการศกษาคนควาหา

ขอมลเพ&มเตม เพ&อใหไดระบบไฟลเซรฟเวอรท&ตรงตอวตถประสงค

Page 28: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

19

รปท� 3.1 จาลอง Organize Chart

จากรปท& 3.1 เปนการจาลองใหเหนลาดบช นของตาแหนงงาน ซ&งจะสมพนธกบการใช

งานระบบ กลาวคอ ให teach01 อยในช นตาแหนงบนสด หรอมสทธ -การเขาถงขอมลสวนกลางสงสด และ guest01 ท&อยในตาแหนงลางสดมสทธ -การเขาถงขอมลสวนกลางนอยท&สด ซ&งสทธ -การเขาถงโดยละเอยดน น จะนาเสนอในลาดบตอ ๆ ไป ท งน จากการท&ออกแบบจาลอง Organize Chart เปนท&เรยบรอยแลว ทาใหสามารถกาหนดกลมขอมลสวนกลางโดยมโครงสราง ดงตอไปน

รปท� 3.2 ขอมลในไฟลเซรฟเวอร

จากรปท& 3.2 แสดงใหเหนวาตอนน เราไดโครงสรางเบ องตนท&ใชเตรยมข นระบบไฟล

เซรฟเวอรแลว แตยงขาดโปรแกรมสนบสนนท&จะทาใหใชงานจรง จงตองศกษาเพ&มเตมดงหวขอตอไป

Page 29: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

20

3.1.3 ขอบเขตความตองการของระบบไฟลเซรฟเวอร • สามารถปองกนการลบไฟลขอมลจากผใชงานโดยไมต งใจ และไมสามารถกคนได จาก

การเปดใชงานระบบแบงปน (share) การใชงานไฟลขอมลรวมกนในลกษณะท &วไป • สามารถปองกนขอพพาท จากการท&ผใชงานคนหน&งทาการยาย เปล&ยนแปลง หรอลบ

ไฟลขอมลเอกสารตาง ๆ ในระบบแบงปนการใชงานไฟลขอมลรวมกนในลกษณะท &วไปทาใหผใชงานทานอ&นท&ตองการใชงานไฟลขอมลเอกสารชดเดยวกน ไมพบเอกสารเม&อตองการใชงาน

• สามารถบรหารสทธ -การเขาถงระบบแบงปนการใชงานไฟลขอมลรวมกน โดยจะตองยนยนตวตนผใชงานกอนเขาใชงาน

• สามารถทาการบนทกรายงานการใชงานไฟลตาง ๆ พรอมท งสามารถระบรายละเอยดตาง ๆ อนไดแก ชวงเวลาการใชงาน จดขอมลท&เปดใชงาน พรอมท งระบตวตวผใชงานขอมลน นได

รปท� 3.3 รายละเอยดของโปรแกรมแซมบา

จากความตองการดงกลาวขางตน และเม&อไดดขอมลโปรแกรมแซมบา ตามรปท& 3.3 จะ

เหนวาโปรแกรมแซมบา เปนโปรแกรมท&ทาหนาท&เปนไฟลเซรฟเวอร ท&พรอมใหเปดการใชงานอยแลวในระบบปฏบตการลนกซ โดยโปรแกรมน จ ดเปนประเภทโปรแกรมฟรแวร ซ&งตวโปรแกรมน นสามารถตอบสนองความตองการของระบบท&จะพฒนาในโครงงานน ได ซ&งหากสนใจรายละเอยดเพ&มเตมสามารถดไดท& http://www.samba.org/

Page 30: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

21

3.2 ออกแบบโครงสรางระบบจดการไฟลเซรฟเวอร ไดใช MySQL เปนโปรแกรมจดการฐานขอมลใหกบระบบจดการไฟลเซรฟเวอร เพ&อเกบขอมลผใชงานระบบไฟลเซรฟเวอร และให Web Application ตดตอในการจดการผใชงาน รวมถงการนาไปใชเกบขอมลจากประวตการใชงานระบบไฟลเซรฟเวอรของผชงานแตละคน ซ&งทาใหสามารถนาฐานขอมลเหลาน นมาแสดงผล ผาน Web Application เพ&อใหสบคนโดยงาย โดยภาพรวมของระบบและฐานขอมลไดจดทารายละเอยดดงน

3.2.1 Context Diagram

รปท� 3.4 Context Diagram ของระบบจดการไฟลเซรฟเวอร

Page 31: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

22

3.2.2 Data Flow Diagram

รปท� 3.5 DFD Level 1 ของระบบจดการไฟลเซรฟเวอร

Page 32: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

23

รปท� 3.6 DFD Level 2 ของ Process 1 จดการ service

รปท� 3.7 DFD Level 2 ของ Process 2 จดการผใช

Page 33: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

24

รปท� 3.8 DFD Level 2 ของ Process 3 ต งคาระบบ

รปท� 3.9 DFD Level 2 ของ Process 4 สารองขอมล

Page 34: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

25

รปท� 3.10 DFD Level 2 ของ Process 5 รายงานการใชระบบ

3.2.3 ER Diagram

รปท� 3.11 Entity-Relationship Diagram ของระบบจดการไฟลเซรฟเวอร

Page 35: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

26

3.2.4 พจนานกรมขอมล Data Dictionary ตารางท� 3.1 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท& 1

Attribute Name Description Data type Primary Key/Foreign Key Usr ช&อผใช VARCHAR(20) Primary Key Password รหสผาน LONGTEXT

ตารางท� 3.2 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท& 2

Attribute Name Description Data type Primary Key/Foreign Key IDUsr รหสผใช VARCHAR(20) Primary Key Usr ช&อผใช VARCHAR(20) Foreign Key IDUsrGrp รหสกลมผใชงาน VARCHAR(20)

ตารางท� 3.3 ตารางขอมล user ในระบบไฟลเซรฟเวอร สวนท& 3

Attribute Name Description Data type Primary Key/Foreign Key Grp ช&อกลมท&เปนสมาชก VARCHAR(20) Primary Key IDGrp รหสกลมท&เปนสมาชก VARCHAR(20) Usr ช&อผใช VARCHAR(20) Foreign Key

ตารางท� 3.4 ตารางขอมลการใชงานในระบบไฟลเซรฟเวอร สวนท& 1

Attribute Name Description Data type Primary Key/Foreign Key auID ลาดบขอมลในตาราง INT Primary Key auDate วนท&ใช DATE auTime เวลาใช TIME auUser ช&อผใชงาน VARCHAR(255) auPID Process ID ลนกซ INT auIP IP Address ขณะใช VARCHAR(15) auNdrv ไดรฟท&ใช VARCHAR(12) auDid ลกษณะการใช VARCHAR(10) ตารางท� 3.5 ตารางขอมลการใชงานในระบบไฟลเซรฟเวอร สวนท& 2

Attribute Name Description Data type Primary Key/Foreign Key paID ลาดบขอมลในตาราง INT Primary Key paDes เสนทางไดรฟท&ใช LONGTEXT

Page 36: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

27

3.2.5 ตวอยางขอมลแสดงบน Web Application ตารางท� 3.6 ตารางแสดงขอมล user ในระบบไฟลเซรฟเวอร User Name Group root root, bin, wheel, daemon, sys, adm, disk msit01 msit01, msit msne01 msne01, msne miss01 miss01, miss teach01 teach01, teach guest01 guest01, guests จากตารางท& 3.6 ไดดงขอมลจากตารางท& 3.1, 3.2 และ 3.3 มาใช ดงน User Name เปนการนาขอมลจาก Usr Group เปนการนาขอมลจาก Grp ตารางท� 3.7 ตารางแสดงขอมลการใชงานระบบไฟลเซรฟเวอร ลาดบ วนท� เวลา ผใช PID ผานIP Drive สถานะ folder/file

82 17-Mar-13 4:02:19 teach01 13034 192.168.226.146 public unlink test.txt 1492 17-Mar-13 4:41:00 teach02 13039 192.168.226.145 teach02 unlink profile/Recent/test.lnk 1984 17-Mar-13 4:41:06 teach01 13034 192.168.226.146 teach01 unlink profile/Recent/test.lnk 1986 17-Mar-13 4:41:06 teach01 13034 192.168.226.146 teach01 unlink profile/Recent/test (2).lnk 3898 17-Mar-13 5:17:24 teach01 757 192.168.226.146 teach01 unlink profile/Recent/test.lnk

จากตารางท& 3.7 ไดดงขอมลจากตารางท& 3.4 และ 3.5 มาใช ดงน ลาดบ เปนการนาขอมลจาก auID วนท& เปนการนาขอมลจาก auDate เวลา เปนการนาขอมลจาก auTime ผใช เปนการนาขอมลจาก auUser PID เปนการนาขอมลจาก auPID ผานIP เปนการนาขอมลจาก auIP Drive เปนการนาขอมลจาก auNdrv สถานะ เปนการนาขอมลจาก auDid folder/file เปนการนาขอมลจาก paDes

Page 37: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

28

บทท� 4 ผลการดาเนนงาน

4.1 โครงสรางหนาระบบจดการไฟลเซรฟเวอร จากการท�ไดพฒนาระบบจดการไฟลเซรฟเวอรและไดออกแบบใหสามารถจดการไดโดยผาน Web Application ซ�งทางานอยภายใตเคร�องเดยวกนกบเคร�องท�ใหบรการไฟลเซรฟเวอรน 8น จะตองอาศยการตดต 8งโปรแกรมเพ�มเตม ดงน8 • ตดต 8งโปรแกรม APACHE เพ�อบรการ Web Server สาหรบการเขยน Web Application • ตดต 8งโปรแกรม MySQL เพ�อเปนฐานขอมลหลก ไวแสดงผลบน Web Application • ตดต 8งโปรแกรมภาษา PHP เพ�อใหดงฐานขอมลหลกแสดงผลบน Web Application

รปท� 4.1 โครงสรางหนาระบบจดการไฟลเซรฟเวอร

ท 8งน8ในระบบจดการไฟลเซรฟเวอรไดใชรปแบบขอภาษา HTML เปนโครงพ8นฐานเขยนหนาเวบไซต โดยมรายละเอยดดงตอไปน8

• ใชไฟล CSS เปน Style Page เพ�อกาหนดรปแบบ ชนดตวอกษร, สตวอกษร และ พ8นหลง ของหนา Web Application ใหเปนไปในทศทางเดยวกน

• ใชแทก Frame ในโปรแกรมภาษา HTML เพ�อชวยกาหนดแบงหนาเปน 2 ดาน คอ ดานซายและดานขวา ดงรปท� 4.1 เพ�อใหเขาใจ และงายตอการใชงาน โดยกากบให Frame ดานซายทาหนาท�แสดง Menu ของระบบ และ Frame ดานขวาแสดงสวนจดการยอยตามการเลอกจาก Menu ท� Frame ดานซาย

Page 38: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

29

4.2 กอนเขาใชงานระบบไฟลเซรฟเวอร ระบบจดการไฟลเซรฟเวอร ไดกาหนดใหตองทาการ Login ผดแลระบบกอนเขาใชงานระบบ

จดการไฟลเซรฟเวอร เพ�อปองกนผท�ไมไดรบอนญาต เขามาใชงาน และอาจทาใหระบบเสยหายได โดยหลงจากทดสอบ ไดผลดงน8

รปท� 4.2 หนา Login เขาระบบจดการไฟลเซรฟเวอร

หนาแรกของการเขาไปยงหนาระบบจดการไฟลเซรฟเวอร จะพบขอความตามท�แสดงในรปท� 4.2 ซ�งหมายถงจะตองทาการ Login กอนใชงาน

รปท� 4.3 แสดงผล Login ระบบผาน

เม�อไดกรอกขอมลผดแลระบบ และรหสผานถกตอง ระบบจดการไฟลเซรฟเวอรจะแสดงขอความตอนรบใหทราบ ดงรปท� 4.3

รปท� 4.4 แสดงผล Login ระบบไมผาน

จากน 8นไดทดสอบโดยกรอกขอมลผดแลระบบไมถกตอง ระบบจะแสดงขอความและรายละเอยดสาเหตท�ไมอนญาตใหเขาใชงานระบบจดการไฟลเซรฟเวอร ดงรปท� 4.4

Page 39: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

30

รปท� 4.5 แสดงผล Logout จากระบบ

ในกรณท�ใชงานระบบจดการไฟลเซรฟเวอรเสรจแลว เม�อทาการ Logout ออกจากระบบ ระบบจะสงผใชงานไปสขอความหนา Logout ใหทราบ ดงรปท� 4.5

รปท� 4.6 แสดงการเขาใชงานระบบดวยการใช History ของ Web Browser

หลงจาก Logout เรยบรอยแลว ผเขยนไดทดสอบเขาไปหนาระบบจดการไฟลเซรฟเวอร ดวยวธการเรยกหนาเวบไซตของระบบจดการไฟลเซรฟเวอรท�เคยใชงานผาน History ของโปรแกรม Web Browser ดงรปท� 4.6

รปท� 4.7 แสดงผลการไมอนญาตใหเขาใชงานเน�องจากยงไมได Login

ซ�งภายหลงจากท�เลอกแลวจะเหนวา Web Browser จะแสดงผลดงรปท� 4.7 ซ�งหมายถงวาไมอนญาตใหใชงาน เน�องจากยงไมมการ Login เขาระบบอยางถกตอง โดยวธการท�เกดข8นในรปท� 4.7 น 8น เปนผลจากการเขยน PHP Script ดกจบการเขาระบบจดการไฟลเซรฟเวอรท�ใช SESSION ไมถกตองในการเขาระบบ ซ�ง SESSION น8จะถกสรางจากการ Login ท�ถกตอง และจะทาการ Clear SESSION ท 8งหมดออก เม�อมการ Logout ออกจากระบบ

Page 40: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

31

4.3 หลงเขาใชงานระบบจดการไฟลเซรฟเวอร เม�อไดทาการ Login เขามาใชงาน Web Application โดยผดแลระบบอยางถกตอง จะพบหนา

ระบบจดการไฟลเซรฟเวอร โดยมตวเลอกจดการระบบท 8งหมดม 5 สวน โดยมรายบะเอยดดงตอไปน8

รปท� 4.8 แสดงภาพรวมของหนาจดการ Service

4.3.1 หนาจดการสวนแรกน 8น จะเปนหนาจดการ Service ซ�งรวบรวมรายละเอยดพ8นฐานของ

การใชงานระบบไฟลเซรฟเวอร ไดแก สามารถส �งเปด-ปด บรการไฟลเซรฟเวอร การทดสอบระบบเครอขายเบ8องตนผานคาส �ง PING อกท 8งแสดงรายงานการใชทรพยากรของเคร�องเซรฟเวอรในขณะท�เปดใหบรการไฟลเซรฟเวอร ใหผดแลระบบไดทราบภาพรวมของระบบ ดงท�แสดงในรปท� 4.8

รปท� 4.9 แสดงการ Start SAMBA Service เพ�อใหไฟลเซรฟเวอรเร�มทางาน

Page 41: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

32

จากน 8นไดทดสอบระบบควบคมบรการระบบไฟลเซรฟเวอร โดยกดปม ‘Start smb’ ดงรปท� 4.9 พบวาระบบจะแสดงรายงการการเปดระบบ ใหทราบดวย ซ�งในสวนน8ไดทดสอบปมอ�น ๆ กสามารถทางานไดปกตเสมอนพมพคาส �ง Command Line ในลนกซ เลยทเดยว

รปท� 4.10 แสดงผลลพธการสงคาส �ง PING

ตอจากน 8นไดใส IP 192.168.226.1 เพ�อทดสอบการเช�อมตอเครอขายเบ8องตน เพ�อดการส�อสารระหวาง Web Application กบ เคร�องไฟลเซรฟเวอร กไดผลลพธ ดงรปท� 4.10

รปท� 4.11 แสดงรายงานการใชงานทรพยากรของไฟลเซรฟเวอร

ในสวนลางสดของหนาจดการ Service จะพบรายงานการใชทรพยากรของเคร�องไฟลเซรฟเวอร ซ�งจะทาการ Refresh หนาใหมทกคร 8ง เม�อคล8กเลอก ‘จดการ service’ จากเมนจดการระบบ จงทาใหผดแลระบบสามารถทราบสถานะของ CPU, RAM และ Hard Disk ของเคร�องไฟลเซรฟเวอร เพ�อใชตดสนใจในบรหารจดการปองกนระบบลม หรออพเกรด (Upgrade) ระบบในอนาคตได ดงรปท� 4.11

Page 42: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

33

4.3.2 สวนท� 2 น 8น จะเปนหนาจดการผใชงานระบบไฟลเซรฟเวอร ซ�งไดออกแบบใหสามารถบรหารจดการผใชงานระบบไฟลเซรฟเวอรในสวนของ ช�อผใชงาน กลมผใชงาน รวมถงสทธ tการใชงานของผใชงาน

รปท� 4.12 แสดงหนาจดการผใชงานระบบไฟลเซรฟเวอร

จากรปท� 4.12 เปนการแสดงภาพรวมของหนาจดการผใชงานระบบไฟลเซรฟเวอร ซ�งสามารถจดการเพ�ม-ลบ ผใชงาน รวมถงการแกไขสทธ tการใชงานระบบได อกท 8งไดนาความของสามารถ PHP Script ในการเช�อมตอกบ MySQL ใหสามารถสบคนช�อผใชงาน เพ�อตรวจสอบกลมงานไดอกดวย

รปท� 4.13 แสดงการลบผใชงานออกจากไฟลเซรฟเวอร

Page 43: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

34

จากรปท� 4.13 เปนการทดสอบลบช�อผใชงานออกจากระบบไฟลเซรฟเวอร ซ�งเม�อเลอก username แลวกดปม ‘ยนยนลบ user’ กพบวาสามารถตอบสนองการทางานไดเปนอยางด และรวดเรว พรอมท 8งรายงานผลการลบท�แสดงออกทางหนาจอใหทราบ

รปท� 4.14 แสดงการปรบปรงกลมงานใหกบผใชงาน

ตอมาไดทาการทดสอบเพ�มผใชคนใหม โดยต 8งใจใชช�อซ8ากบผใชคนเดมท�เคยมอยในระบบอยแลว โดยหลงจากท�กดปม ‘ยนยนเพ�ม user’ ตวระบบจะทาแสดงขอความปฏเสธการเพ�มผใชงานใหมใหทราบ ดงท�แสดงใหเหนในรปท� 4.14

4.3.3 สวนท� 3 เปนหนาการต 8งคาระบบไฟลเซรฟเวอร ซ�งเปนหนาสาหรบจดการในสวนคาท�ต 8งไวในไฟล /etc/samba/smb.conf ของโปรแกรมแซมบา

รปท� 4.15 แสดงหนาต 8งคาระบบไฟลเซรฟเวอร

Page 44: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

35

จากรปท� 4.15 ไดแสดงใหเหนวาระบบจดการไฟลเซรฟเวอร สามารถอานคาภายในไฟล /etc/samba/smb.conf ได อกท 8งมความสามารถในการแกไขคาภายในไฟล และยงสามารถทาการยอนคนคากอนการบนทกลาสดกลบคนมาใชงานไดอกดวย

รปท� 4.16 แสดงการแกไขคาไฟล smb.conf ผาน Web Application

เม�อทาการทดสอบแกไขไฟล ดงรปท� 4.16 แลวทาการบนทก เม�อเขาไปดใน Command Line พบวาคาใหมท�ไดเขยนเพ�มลงไปในไฟล /etc/samba/smb.conf เหมอนกบท�ใสไวใน Web Application จากส�งน8เองจงเปนขอยนยนแสดงใหเหนวา ผดแลระบบสามารถปรบปรงบรการระบบไฟลเซรฟเวอร ไดอยางสะดวก และงายดาย ซ�งไดแก การปรบเปล�ยนสทธ tการเขาถงของผใชงานระบบ การต 8งแชรไดรฟตามระดบผใชงาน อกท 8งรวมไปถงคาตาง ๆ ท�สามารถเพ�มเตมหรอปรบปรงในไฟล smb.conf ได ดวยการแกไขไฟลน8ผานทางระบบจดการไฟลเซรฟเวอร

Page 45: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

36

รปท� 4.17 แสดงการยอนคนคา smb.conf

ในรปท� 4.17 เปนการทดลองยอนคนคาไฟล smb.conf ซ�งถกออกแบบข8นมาเพ�อปองกนความผดพลาด จากการต 8งคาไฟล smb.conf ไมถกตองท�อาจเกดข8นได โดยเปนผลใหบรการระบบไฟลเซรฟเวอรอาจทางานไมถกตอง หรอหยดการบรการ ท 8งน8การทางานของระบบน8จะจดเกบคาไฟล smb.conf เปนรน (Version) ท�แตกตางกนไป โดยจะสรางกอนยนยนการแกไขไฟล smb.conf คร 8งลาสดบนหนา Web Application ซ�งคาเหลาน 8นสามารถเรยกข8นมาเพ�อดคาภายในกอนทาการตดสนใจทาการยนยนเพ�อยอนคนคาไฟล ท 8งน8การออกแบบไดเขยน PHP Script ใหเกบคาไฟลยอนหลงไดท 8งหมด 9 รนลาสด ซ�งการใชงานกเพยงแตเขามาในหนาจดการน8 แลวเลอกไฟล smb.conf รนท�ตองการ แลวกดปม ‘เรยกด’ ไฟลรนท�เลอกไวน 8นกจะแสดงคาในไฟลใหดบน Web Application ภายหลงจากท�ตรวจทานจนแนใจแลว กกดปม ‘บนทก’ แลวทาการส �งเร�มระบบไฟลเซรฟเวอรใหมอกคร 8ง โดยผานหนาจดการ service ซ�งรายละเอยดการเปด-ปด บรการไฟลเซรฟเวอร จะอยในหวขอ 4.3.1 ท 8งน8การทดสอบคร 8งน8ไดแสดงใหเหนวา PHP Script สามารถบรหารจดการไฟลท�อยในระบบปฏบตการลนกซไดเปนอยางด

Page 46: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

37

4.3.4 ในสวนท� 4 น8 จะหนาสารองขอมลระบบไฟลเซรฟเวอร ซ�งใชสาหรบสารองขอมลและกคนไฟลขอมลหรอไดเรคทอร�ท�อยในระบบไฟลเซรฟเวอรกลบคนมาใชงาน หากไฟลขอมลหรอไดเรคทอร�น 8นถกผใชงานลบโดยไมต 8งใจ หรอไมทราบสาเหต

รปท� 4.18 หนาสารองขอมลระบบไฟลเซรฟเวอร

จากรปท� 4.18 จะเหนวาหนาน8ไดออกแบบการสารองขอมลระบบไฟลเซรฟเวอรไว 3 แบบ เพ�อใหเลอกใชตามแตความถนดในการใชงานของผดแลระบบ ดงน8

รปท� 4.19 แสดงหนาระบบ Backup ในสวนของ recycle bin

• แบบท� 1 จะเปนหนาจดการเก�ยวกบ recycle bin ของระบบไฟลเซรฟเวอร ดงรปท� 4.19 ซ�ง

สวนน8จะเปนสวนท�ระบบไดทาการเปดใชงานอยแลว ตามคาไฟล smb.conf ท�ถกต 8งคาไวโดยดไดจากในสวนของภาคผนวก ก. กลาวคอ คาท�ต 8งไวน 8น จะทางานโดยการทาสาเนาไฟลขอมลทกคร 8ง เม�อมผใชงานในระบบไฟลเซรฟเวอรทาการลบไฟลหรอไดเรคทอร�ในระบบ

Page 47: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

38

รปท� 4.20 แสดงการลบไฟลบนเคร�องลกขาย (1)

รปท� 4.21 แสดงการลบไฟลบนเคร�องลกขาย (2)

เพ�อพสจนความสามารถในการกคนไฟลในสวน recycle bin จงทาการลบไฟลบนเคร�องลกขาย ในแชรไดรฟท�แตกตางกน โดยผใชงานคนเดยวกน ดงท�แสดงใน รปท� 4.20 และ 4.21 ตามลาดบ

Page 48: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

39

รปท� 4.22 แสดงรายงาน log ของระบบไฟลเซรฟเวอร

จากน 8น ทาการตรวจสอบรายงานจาก Log ของระบบไฟลเซรฟเวอร โดยเขาตรวจสอบผานทาง Command Line ในระบบลนกซ ซ�งไฟลรายงานดงกลาวจะอยท� โฟลเดอร /var/log/samba/ ซ�งปกตแลวช�อไฟลท�เกบรายงานจะช�อวา audit.log (ช�ออาจจะแตกตางจากน8ไดหากมการต 8งคาระบบ Log Rotate ของระบบลนกซไว) ดงท�แสดงในรปท� 4.22

รปท� 4.23 แสดงไฟลท�ระบบทาสาเนาเกบไวใน recycle bin

จากน 8นเม�อส �งแสดงไฟลขอมลท�อยในไดเรคทอร� /recycled ผาน Command Line ในสวนของผใชงานช�อ teach02 กจะพบไฟลท�ถกลบ แสดงดงรปท� 4.23

รปท� 4.24 แสดงการกขอมลผาน Web Application

Page 49: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

40

เม�อกลบมาท�หนา Web Application แลวทาการทดสอบกไฟลขอมล ดวยการเรยกรายงานการใชระบบใหแสดงข8นมา กพบวารายงานท�ไดน 8นไดแสดงรายงานตรงกบท�ตรวจสอบใน Command Line ของระบบลนกซ ท�แสดงไวในรปท� 4.22 จากน 8นทดสอบตอดวยการกดปม ‘กขอมล’ ดงรปท� 4.24 เพ�อดผลลพธของคาส �ง

รปท� 4.25 แสดงรายงานผลการกขอมลผาน Web Application

ภายหลงจากท�ส �งกขอมล เพยงรอระบบทางานไมนานกจะไดรบรายงานผลการกขอมลท�ผดแลระบบไดเลอกไวกอนหนา ดงท�ในรปท� 4.25 ซ�งบอกถงไดเรคทอร�ท�กกลบไปใหทราบอกดวย ในการทดสอบคร 8งน8แสดงใหเหนวา หากมการลบไฟลในระบบไฟลเซรฟเวอรเม�อใด กจะสามารถกไฟลขอมลเหลาน 8นกลบไปยงโฟลเดอรปลายทางเดมของไฟลท�ถกลบไดทนท โดยบรรลตามวตถประสงคท�เคยกลาวไวในบทท� 1

รปท� 4.26 แสดงหนาระบบ Backup ในสวนของ rsync backup

• แบบท� 2 จะเปนหนา rsync backup ซ�งสวนน8ไดออกแบบเเพ�ออานวยความสะดวกในการใชงาน

การสารองและการกขอมล ผานคาส �ง rsync ของระบบลนกซ ใหสามารถใชงานผานบน Web Application ไดงาย โดยไมตองพมพ Command Line ดงท�แสดงไวในรปท� 4.26

Page 50: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

41

รปท� 4.27 ยนยนเปดใชงานในสวนของ rsync backup

สาหรบการใชงานในสวนท� 2 น8 จะตองไดรบการยนยอมจากผดแลระบบ ซ�งเปนผเปดการใชงานดวยตนเอง ดวยการเลอกท�ปม ‘สราง policy’ แลวยนยนท�ปม OK ดงท�แสดงไวท�รป 4.27

รปท� 4.28 แสดงผลการยนยนการเปดใชงาน rsync backup (1)

เม�อยนยนเปดระบบแลว ระบบจะตอบรบโดยแสดงขอความยนยน ดงรปท� 4.28

รปท� 4.29 แสดงคา crontab หลงจากยอมรบการเปดใชงาน rsync backup

เม�อลองเขาไปดในระบบลนกซ ผาน Command Line จะพบบวาคาใน crontab ไดถกฝง script ท�ระบบใหคอยทางานโดยส �งไฟล /backup/rsync.sh ทกวนในชวงเวลา 22.00 น. เรยบรอยแลว ดงท�แสดงไวในรปท� 4.29

Page 51: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

42

รปท� 4.30 แสดงผลการยนยนการเปดใชงาน rsync backup (2)

จากน 8นไดทดลองกดปม ‘สราง policy’ ซ8าอกคร 8ง พบวาระบบจะแจงกลบวามการเปดใชงาน policy ของ rsync backup น8อยแลว หรอกลาวอกอยางคอ rsync backup พรอมทางานแลว ดงรปท� 4.30

รปท� 4.31 แสดงผลการปรบปรงฝ �ง backup ดวย rsync backup

จากรปท� 4.31 เปนการตอบรบจากระบบ เม�อกดปม ‘ปรบปรงฝ �ง backup’

รปท� 4.32 แสดงการลบไดเรคทอร� /whole ในระบบลนกซ

จากน 8น ทาการลบขอมลใน /whole ท 8งหมด เพ�อทดสอบการทางาน rsync วาสารองขอมลจรงหรอไม โดยรปท� 4.32 ไดแสดงใหเหนวาส �งลบทกไฟลภายในไดเรคทอร� /whole แลวทาการแสดงขอมลภายใน /whole กพบวาไมเหลอไฟลใด ๆ อยในไดเรคทอร�น8แลว

รปท� 4.33 แสดงผลการกขอมลกลบไดเรคทอร� /whole ดวย rsync backup

Page 52: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

43

จากน 8นในรปท� 4.33 ทาการกดปม ‘คนขอมลกลบไฟลเซรฟเวอร’ แลวไดรบการแจงจากระบบวากขอมลใหเรยบรอยแลว

รปท� 4.34 แสดงขอมลในไดเรคทอร� /whole ในระบบลนกซ หลงกขอมลดวย rsync backup

จงกลบเขามาท� Command Line อกคร 8ง เพ�อแสดงขอมลภายในไดเรคทอร� /whole กพบวามขอมลไดเรคทอร�ท 8งหมดกลบมาเหมอนกอนทาการลบ ดงท�แสดงในรปท� 4.34 ซ�งผลจากการทดสอบในสวนน8ไดแสดงใหเหนวาระบบ rsync backup สามารถทางานไดอยางมประสทธภาพ ดงท�คาดหวงไว

รปท� 4.35 แสดงหนาระบบ Backup ในสวนของ tar backup

• แบบท� 3 ไดออกแบบระบบสารองขอมลแบบ tar backup มาใหใชงานเพ�มเตม ซ�งมผใชงานเปน

จานวนมากท�นยมใช tar ในการสารองขอมลเชนกน โดยผดแลระบบจะตองเปนผเปดการใชงานดวยตนเองเชนกนกบ rsync backup ซ�งหลงจากน 8นกจะสามารถใชงานคาส �งปมตาง ๆ ท�เก�ยวของกบคาส �ง tar น8ได โดยภาพรวมในแบบท� 3 น8 ไดแสดงใหเหนดงรปท� 4.35

รปท� 4.36 แสดงขอความยนยนกอนส �งสารองขอมลดวย tar backup

Page 53: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

44

หลงจากเปดระบบ tar backup เรยบรอยแลว กทาการสารองขอมลโดยกดปม ‘สารองขอมลวนน8’ ท�แสดงอยในรปท� 4.36

รปท� 4.37 แสดงผลจากคาส �งสารองขอมลดวย tar backup

จากน 8นกไดขอความตอบรบจากระบบใหทราบถงการสารองขอมลเสรจส8น ดงรปท� 4.37

รปท� 4.38 แสดงหนาลบไฟล tar ท�มในระบบ tar backup

เน�องจากการสารองขอมลแบบ tar backup จะสารองขอมลแบบ 1 วน ตอ 1 ไฟล จงอาจทาใหใชพ8นท� Hard Disk ส8นเปลองมากในการจดเกบ เพ�อปองกนปญหาดงกลาวน8 จงไดออกแบบใหมหนาลบไฟล tar เพ�มเตม ดงรปท� 4.38 เพ�อใหสามารถบรหารจดการพ8นท� Harddisk หากไฟล tar ท�มอยไมมการใชงานหรอเปนรนท�เกามากแลว

Page 54: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

45

รปท� 4.39 แสดงหนาจดการกขอมลดวย tar backup

ในสวนของการทดสอบกขอมลผานระบบ tar backup กใหผลเปนท�นาพอใจเชนเดยวกนกบการทดสอบ rsync backup โดยการสารองขอมลระหวาง rsync กบ tar น 8น มขอแตกตางกนท� rsync จะสารองขอมลแบบไดเรคทอร�กบไดเรคทอร� ขณะท� tar จะสารองขอมลแบบ 1 วน ตอ 1 ไฟล ท 8งน8การเกบสารองขอมลในแบบ tar จะมความยดหยนมากกวาในการกคนไฟลขอมลท�เปนไฟลงานเกา ๆ ได ดงรปท� 4.39

4.3.5 ในสวนท� 5 ของระบบ จะเปนหนารายงานการใชระบบไฟลเซรฟเวอร

รปท� 4.40 แสดงหนาระบบรายงานการใชระบบไฟลเซรฟเวอร

ในหนารายงานการใชระบบไฟลเซรฟเวอรน8 สามารถออกรายงานไดจากการดงฐานขอมลใน MySQL มาแสดง โดยท�ฐานขอมลท 8งหมดไดนาเขามาจากไฟล Log ของโปรแกรมแซมบา ท�มการจดเกบขอมลนบต 8งแตผใชงานไดทาการ Login เขาระบบโดเมนคอนโทรลเลอร ซ�งผดแลระบบสามารถเลอกรายงานใหแสดงไดตามตองการ เพยงแตกรอกขอมลท�ตองการลงในกลองขอความ แลวกดปม ‘ดขอมลการใชงาน ดงท�แสดงใหเหนในรปท� 4.40

Page 55: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

46

รป 4.41 แสดงรายงานดวยการใชระบบไฟลเซรฟเวอรคนหา

หลงจากน 8นรายงานกจแสดงผานทางหนาจอ ดงรปท� 4.41

รปท� 4.42 แสดงรายงานการเขาใชงานระบบไฟลเซรฟเวอรบนลนกซ

จากน 8นไดลองเปดไฟล Log ของระบบลนกซ ดงรปท� 4.42 เพ�อเปรยบเทยบรายงานท�แสดงบน Web Application พบวาใหรายงานท�เหมอนกน แตมบางจดในไฟล Log ของระบบลนกซท�อานไมเขาใจ ดงเชนรายงานบน Web Application จากการทดลองในสวนท� 5 น8 พบวาระบบจดการไฟลเซรฟเวอรน8 สามารถแสดงรายงานการใชงานระบบไฟลเซรฟเวอรไดตรงตามวตถประสงคในบทท� 1 เพ�อลดขอพพาทเม�อผใชงานหาไฟลงานไมเจอ

Page 56: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

47

บทท� 5

สรปผลการทาโครงการ

5.1 สรปผลการทาโครงการ

โครงการพฒนาระบบจดการไฟลเซรฟเวอรท�ไดจดทาข นในกรณศกษา กเพ�อกอใหเกดความเขาใจถงข นตอนกระบวนการตาง ๆ ในการจดทาโครงการ โดยเร�มต งแตการนาเสนอ การออกแบบ รวบรวมขอมลและวเคราะหขอมล ตลอดจนการแกปญหาท�พบเจอระหวางการดาเนนโครงการ ซ�งสามารถนาความรและประสบการณน เปนพ นฐานไปประยกตใชในโครงการอ�น ๆ ตอไป การจดทาระบบจดการไฟลเซรฟเวอรน ไดดาเนนการออกแบบระบบ ดวยเหตเพราะระบบเดมท�ใชงานอยน นตอบสนองไมเพยงพอตอความตองการ โดยเฉพาะความปลอดภยของกรณขอมลสญหายท�ไมสามารถกกลบมาใชงานได อกท งกรณเกดขอพพาทจากขอมลสญหายจากระบบ โดยไมสามารถหาสาเหตได ซ�งเปนเหตใหการประสานงานภายในองคกรเกดความลาชา และเม�อภายหลงระบบจดการไฟลเซรฟเวอรตามโครงการน เสรจส น พบวาสามารถปองกนขอมลสญหายไดเปนอยางด อกท งสามารถสบหาสาเหตไดจากการตรวจสอบผานรายงานการใชระบบจดการไฟลเซรฟเวอร และเพ�มความรวดเรวในการกขอมล เน�องจากสามารถสบหาไฟลท�หายได จากรายงานในสวนของหนารายงานการใชระบบไฟลเซรฟเวอร สาหรบปญหาท�พบในการใชงานระบบจดการไฟลเซรฟเวอรยงคงมบางเลกนอย จากการเขยน PHP ใหสงคาส �ง Command Line ของลนกซผาน Web Application ในสวนของการกขอมลจากหนาสารองขอมลระบบไฟลเซรฟเวอร ในบทท� 4 เร�องท� 4.3.4 ในสวนของการกไฟล ซ�งสามารถทาไดเฉพาะไฟลท�อยบนไดเรคทอร�ท�มจานวนลาดบช นไมเกน 1 ลาดบช นเทาน น แตในสวนน หากผดแลระบบมความชานาญในการใชงานลนกซอยแลว กสามารถใช Command Line ส �งไดโดยตรง

สาหรบบทสรปสดทาย จากการทดลองระบบจดการไฟลเซรฟเวอร พบวามประสทธ Pภาพท�นาพงพอใจ สามารถรองรบการใชงานในสวนตาง ๆ ท�ตองการตามวตถประสงคของโครงงานน ท�ไดกลาวไวในบทท� 1 อกท งชวยลดเวลาการจดการระบบไฟลเซรฟเวอรไดเปนอยางด

Page 57: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

48

เอกสารอางอง [1] วกพเดย สารานกรมเสร. ลนกซ. [Online]. Available: https://th.wikipedia.org/wiki/ลนกซ [2] ธรภทร มนตรศาสตร. เลอกลนกซดสทรบวช �นใหเหมาะกบตวคณ. [Online]. Available: http://www.itdestination.com/articles/linux-distro/ [3] Machtelt Garrels. Chapter 3 About files and the file system. [Online]. Available: http://tldp.org/LDP/intro-linux/html/sect_03_01.html [4] Arnut Ruttanatirakul. CentOS Linux เซรฟเวอรทางเลอกสาหรบองคกร. [Online]. Available: http://www.arnut.com/b/CentOS [5] นนาถ วนาพรรณ, คมอ Windows Server 2003 R2. กรงเทพฯ: โปรวช �น, 2550, pp.187-247. [6] TechNet Microsoft Site. Active Directory Collection. [Online]. Available: http://technet.microsoft.com/en-us/library/cc780036(v=ws.10).aspx [7] ฝายพฒนาและบรการเทคโนโลยสารสนเทศ คณะวทยาศาสตร มหาวทยาลยอบลราชธาน. [Online]. Available: http://scinet.sci.ubu.ac.th/document/joinDomain/index.cfm [8] Windows IT Pro Website. How does Windows learn about a user's group memberships if the Kerberos logon process involves different Windows domains? [Online]. Available: http://windowsitpro.com/security/q-how-does-windows-learn-about-users-group-memberships-if-kerberos-logon-process-involves-d [9] ภวดล ดานระหาญ. Samba Security. [Online]. Available: http://hospital.moph.go.th/sapphaya/DownLoad/Download/Samba%20Security.htm [10] Gerhard Mourani and OpenDocs, LLC. Chapter 31 Software -Server/File Sharing-Network. [Online]. Available: http://www.faqs.org/docs/securing/chap29sec280.html [11] Jelmer R. Vernooij, John H. Terpstra and Gerald (Jerry) Carter (12th April 2005). The official Samba-3 HOWTO and Reference Guide. [Online]. pp.353-360. Available: http://www.klevze.si/samba/docs/Samba-HOWTO-Collection.pdf [12] The Samba Team. Chapter 23 Stackable VFS modules Part III. Advanced Configuration. [Online]. Available: http://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/VFS.html [13] บณฑต จามรภต. คมภร Ubuntu Linux Server เลม 2. กรงเทพฯ: Bandhit Press, 2553, pp.158-202. [14] วกพเดย สารานกรมเสร. อะแพช เวบเซรฟเวอร. [Online]. Available: http://th.wikipedia.org/wiki/อะแพช_เวบเซรฟเวอร [15] วกพเดย สารานกรมเสร. มายเอสควเอล. [Online]. Available: https://th.wikipedia.org/wiki/มายเอสควเอล [16] PHP Site. History of PHP. [Online]. Available: http://www.php.net/manual/en/history.php

Page 58: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ภาคผนวก ก การตดต �งเคร�องเซรฟเวอร

Page 59: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-1

การตตด �งระบบปฏบตการลงบน VMWARE ผเขยนไดนาโปรแกรม VMWARE มาใชจาลองเคร#องเซรฟเวอร รวมถงเคร#องลกขาย

มาใชทดสอบการใชงานระบบไฟลเซรฟเวอร ท#จาลองอยบนระบบเครอขายเดยวกน โดยในสวน ภาคผนวก ก น2 จะกลาวถงการวธการตดต 2งเคร#องเซรฟเวอร เพ#อใหรองรบการตดต 2งระบบจดการไฟลเซรฟเวอร ดงรายละเอยดตอไปน2

เร#มดวยการเลอกตดต 2งระบบปฏบตการ CentOS ลนกซ เพอใหบรการระบบไฟลเซรฟเวอร

รปท� ก.1 แสดงแหลงดาวนโหลดไฟลตดต 2งระบบปฏบตการ CentOS ลนกซ

ซ#งกอนอ#นจะตองดาวนโหลด (Download) โปรแกรมปฏบตการน2เสยกอน โดยโหลดไดท#http://www.centos.org/modules/tinycontent/index.php?id=30 ดงรปท# ก.1

รปท� ก.2 การต 2งคาระบบคอมพวเตอรจาลองบน VMWARE

จากน 2น เปดโปรแกรม VMWARE แลวต 2งคาเคร#องเซรฟเวอรจาลอง ดงรปท# ก.2

Page 60: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-2

ซ#งการใช CentOS ลนกซเปนระบบปฏบตการของเคร#องเซรฟเวอร จงควรต 2งคาข 2นต#าไวดงตอไปน2

- Memory ข 2นต#า 256 MB - Processors ข 2นต#า 1 processor - Hard disk ข 2นต#า 5 GB - Network Adapter ใบท# 1 เลอกแบบ NAT - Network Adapter ใบท# 2 เลอกแบบ Custom - CD/DVD ใหเลอก Image ไฟลของระบบปฏบตการ CentOS ลนกซ - ในสวนอ#น สามารถปรบปรงไดตามความเหมาะสม ไมกาหนดตายตว

รปท� ก.3 เปดใชงานแซมบาระหวางตดต 2ง CentOS ลนกซ

จากน 2นให VMWARE ทาการตดต 2งตดต 2งระบบปฏบตการ CentOS ลนกซ จาก Image ไฟล ท#เลอกไวในสวนของ CD/DVD โดยระหวางการเลอกตดต 2งโปรแกรมใหเลอกโปรแกรมแซมบา ตดต 2งไปพรอมกนดวย ซ#งโปรแกรมดงกลาวจะเปนแพกเกจยอยท#อยใน Servers แลวเลอก Windows File Server ตามรปท# ก.3 และเม#อเลอกสวนยอยท 2งหมดท#ตองการเปนท#เรยบรอยแลวจงทาการกดปม Next ไปเร#อย ๆ เพ#อเขาสข 2นตอนการตดต 2งในสวนตอไป

Page 61: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-3

รปท� ก.4 แสดงการตดต 2ง CentOS ลนกซ

จากรปท# ก.4 ระบบกาลงตดต 2ง ซ#งในระหวางน2ใหรอจนกระท #งตดต 2งเรยบรอย และระบบจะบงคบใหเคร#องเซรฟเวอรเร#มทางานใหมโดยอตโนมต ต �งคา Network ของระบบปฏบตการ

เม#อเคร#องเซรฟเวอรเร#มทางานใหม ใหรอจนระบบปฏบตการ CentOS ลนกซ เขาสโหมดพรอมรบคาส #ง จงเร#มทาการ Login เขาระบบ และเร#มต 2งคาระบบโดยพมพคาส #งดงตอไปน2 # setup

รปท� ก.5 แสดงหนา Choose a Tool ในแบบ Text Mode ของลนกซ

เม#อใสคาส #งแลวจะพบหนา ‘Choose a Tool’ ดงรปท# ก.5 ใหเลอกไปท# Network configuration

Page 62: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-4

รปท� ก.6 หนา setup สวน Network configuration

จากรปท# ก.6 เลอก Edit Devices > แลวเลอก Device (eth0) > set คา IP ของเคร#องเซรฟเวอร จากน 2น Save > Save&Quit > Quit แลวทาข 2นตอนตอไป เม#อต 2งคาเรยบรอยแลวใหทาการเร#มระบบ Network ดวยคาส #ง # service network restart ปดระบบความปลอดภยของระบบปฏบตการ

เพ#อใหการทดสอบเปนไปอยางราบร#น จงตองทาการปดระบบความปลอดภยของระบบปฏบตการ โดยส#งท#ตองปด มดงน2 ปดระบบ firewall ดวยคาส #ง # service iptables stop # iptables -L # service iptables save ปดการทางาน SELINUX โดยแกคาในไฟล /etc/selinux/config # vi /etc/selinux/config เม#อเปดไฟล config แลว ใหแกไข SELINUX=disabled ตามคาดานลาง แลวบนทกไฟล # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled.

Page 63: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-5

SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted ปด GUI โหมดของระบบปฏบตการ ทาการต 2งคาระบบปฏบตการใหเเร#มระบบแบบ Text Mode หรอ TUI (Text Unit Interface) เม#อเปดเคร#อง โดยใหแกไขในไฟล /etc/inittab โดยเปล#ยนจาก โหมด Graphic Mode หรอ GUI (Graphic Unit Interface) ดงน2 # vi /etc/inittab เม#อเขามาในไฟล inittab แลวใหหาบรรทดท#เขยนวา “id:5:initdefault:” แลวแกไขใหเปน “id:3:initdefault:” จากน 2นทาการบนทกไฟล

รปท� ก.7 โครงสรางขอมลสวนกลาง

สรางระบบไฟลเซรฟเวอร

เตรยมโครงสรางไดเรคทอร#ของระบบไฟลเซรฟเวอร โดยสรางตามท#ออกแบบไวในขอท# 3.1.2 เม#อสรางเสรจแลว จะไดตามรปท# ก.7

จากน 2นทาการต 2งคาโปรแกรมแซมบา ใหเปน Primary Domain Controller (PDC) โดยต 2งช#อ Domain ของแซมบาวา server โดยแกคาในไฟล /etc/samba/smb.conf โดยใสคาดงตอไปน2 # This is the main Samba configuration file. You should read the # smb.conf(5) manual page in order to understand the options listed # here. Samba has a huge number of configurable options (perhaps too # many!) most of which are not shown in this example

Page 64: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-6

# # For a step to step guide on installing, configuring and using samba, # read the Samba-HOWTO-Collection. This may be obtained from: # http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf # # Many working examples of smb.conf files can be found in the # Samba-Guide which is generated daily and can be downloaded from: # http://www.samba.org/samba/docs/Samba-Guide.pdf # # Any line which starts with a ; (semi-colon) or a # (hash) # is a comment and is ignored. In this example we will use a # # for commentry and a ; for parts of the config file that you # may wish to enable # # NOTE: Whenever you modify this file you should run the command "testparm" # to check that you have not made any basic syntactic errors. # #--------------- # SELINUX NOTES: # # If you want to use the useradd/groupadd family of binaries please run: # setsebool -P samba_domain_controller on # # If you want to share home directories via samba please run: # setsebool -P samba_enable_home_dirs on # # If you create a new directory you want to share you should mark it as # "samba-share_t" so that selinux will let you write into it. # Make sure not to do that on system directories as they may already have # been marked with othe SELinux labels. # # Use ls -ldZ /path to see which context a directory has # # Set labels only on directories you created!

Page 65: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-7

# To set a label use the following: chcon -t samba_share_t /path # # If you need to share a system created directory you can use one of the # following (read-only/read-write): # setsebool -P samba_export_all_ro on # or # setsebool -P samba_export_all_rw on # # If you want to run scripts (preexec/root prexec/print command/...) please # put them into the /var/lib/samba/scripts directory so that smbd will be # allowed to run them. # Make sure you COPY them and not MOVE them so that the right SELinux context # is applied, to check all is ok use restorecon -R -v /var/lib/samba/scripts # #=============== Global Settings ============== [global] # ----------------------- Network Related Options ------------------------- # # workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH # # server string is the equivalent of the NT Description field # # netbios name can be used to specify a server name not tied to the hostname # # Interfaces lets you configure Samba to use multiple interfaces # If you have multiple network interfaces then you can list the ones # you want to listen on (never omit localhost) # # Hosts Allow/Hosts Deny lets you restrict who can connect, and you can # specifiy it as a per share option as well # ; workgroup = MYGROUP

Page 66: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-8

workgroup = SERVER ; server string = Samba Server Version %v server string = SERVER %v ; netbios name = MYSERVER ;netbios name = FSERVER netbios name = smbpro ; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 interfaces = lo eth0 eth1 ; hosts allow = 127. 192.168.12. 192.168.13. ; hosts allow = 127. 192.168.226. # --------------------------- Logging Options ----------------------------- # # Log File let you specify where to put logs and how to split them up. # # Max Log Size let you specify the max size log files should reach # logs split per machine ; log file = /var/log/samba/%m.log # max 50KB per log file, then rotate ; max log size = 50 # ----------------------- Standalone Server Options ------------------------ # # Security can be set to user, share(deprecated) or server(deprecated) # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd is available for backwards # compatibility. tdbsam requires no further configuration. ; security = user ; passdb backend = tdbsam

Page 67: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-9

# ----------------------- Domain Members Options ------------------------ # # Security must be set to domain or ads # # Use the realm option only with security = ads # Specifies the Active Directory realm the host is part of # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd is available for backwards # compatibility. tdbsam requires no further configuration. # # Use password server option only with security = server or if you can't # use the DNS to locate Domain Controllers # The argument list may include: # password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] # or to auto-locate the domain controller/s # password server = * ; security = domain ; passdb backend = tdbsam ; realm = MY_REALM ; password server = <NT-Server-Name> # ----------------------- Domain Controller Options ------------------------ # # Security must be set to user for domain controllers # # Backend to store user information in. New installations should # use either tdbsam or ldapsam. smbpasswd is available for backwards # compatibility. tdbsam requires no further configuration. # # Domain Master specifies Samba to be the Domain Master Browser. This

Page 68: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-10

# allows Samba to collate browse lists between subnets. Don't use this # if you already have a Windows NT domain controller doing this job # # Domain Logons let Samba be a domain logon server for Windows workstations. # # Logon Scrpit let yuou specify a script to be run at login time on the client # You need to provide it in a share called NETLOGON # # Logon Path let you specify where user profiles are stored (UNC path) # # Various scripts can be used on a domain controller or stand-alone # machine to add or delete corresponding unix accounts # security = user ; passdb backend = tdbsam domain master = yes domain logons = yes # the login script name depends on the machine name ; logon script = %m.bat # the login script name depends on the unix user used logon script = %u.bat ; logon path = \\%L\Profiles\%u # disables profiles support by specifing an empty path ; logon path = add user script = /usr/sbin/useradd "%u" -n -g users add group script = /usr/sbin/groupadd "%g" add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u" delete user script = /usr/sbin/userdel "%u" delete user from group script = /usr/sbin/userdel "%u" "%g" delete group script = /usr/sbin/groupdel "%g"

Page 69: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-11

# logs split per user log file = /var/log/samba/%U.log # logs split per machine ; log file = /var/log/samba/%m.log ; log file = /var/log/samba/log.%m # all log information in one file ; log file = /var/log/samba/smblog.txt log level = 2 # max 50KB per log file, then rotate max log size = 50000 # ----------------------- Browser Control Options ---------------------------- # # set local master to no if you don't want Samba to become a master # browser on your network. Otherwise the normal election rules apply # # OS Level determines the precedence of this server in master browser # elections. The default value should be reasonable # # Preferred Master causes Samba to force a local browser election on startup # and gives it a slightly higher chance of winning the election local master = no ; os level = 33 os level = 65 ; preferred master = yes preferred master = yes #----------------------------- Name Resolution ------------------------------- # Windows Internet Name Serving Support Section: # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both # # - WINS Support: Tells the NMBD component of Samba to enable it's WINS Server #

Page 70: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-12

# - WINS Server: Tells the NMBD components of Samba to be a WINS Client # # - WINS Proxy: Tells Samba to answer name resolution queries on # behalf of a non WINS capable client, for this to work there must be # at least one WINS Server on the network. The default is NO. # # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names # via DNS nslookups. wins support = yes ; wins server = w.x.y.z wins proxy = yes dns proxy = yes # --------------------------- Printing Options ----------------------------- # # Load Printers let you load automatically the list of printers rather # than setting them up individually # # Cups Options let you pass the cups libs custom options, setting it to raw # for example will let you use drivers on your Windows clients # # Printcap Name let you specify an alternative printcap file # # You can choose a non default printing system using the Printing option load printers = yes cups options = raw ; printcap name = /etc/printcap #obtain list of printers automatically on SystemV ; printcap name = lpstat ; printing = cups

Page 71: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-13

# --------------------------- Filesystem Options --------------------------- # # The following options can be uncommented if the filesystem supports # Extended Attributes and they are enabled (usually by the mount option # user_xattr). Thess options will let the admin store the DOS attributes # in an EA and make samba not mess with the permission bits. # # Note: these options can also be set just per share, setting them in global # makes them the default for all shares ; map archive = no ; map hidden = no ; map read only = no ; map system = no ; store dos attributes = yes # ---------------------- Additional from Admin ------------------------ vfs objects = full_audit recycle ;vfs full_audit full_audit:prefix = %u %d %I %S ;full_audit:prefix = %T %u %d %I %S full_audit:failure = connect full_audit:success = connect disconnect opendir mkdir rmdir closedir close read pread write pwrite sendfile rename unlink chmod fchmod chown fchown chdir ftruncate lock symlink readlink link mknod realpath full_audit:facility = local5 full_audit:priority = notice ;vfs recycle recycle:repository = /recycled/%U recycle:exclude = ~* *.tmp *.temp Thumbs.db recycle:keeptree = yes

Page 72: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-14

recycle:versions = yes recycle:maxsize = 5000000000 recycle:directory_mode = 777 recycle:subdir_mode = 777 hide dot files = yes # --------------- End of Additional from Admin ------------------ #========= Share Definitions ========== [homes] comment = Home Directories browseable = no writable = yes ; valid users = %S ; valid users = MYDOMAIN\%S [printers] comment = All Printers path = /var/spool/samba browseable = no guest ok = no writable = no printable = yes # Un-comment the following and create the netlogon directory for Domain Logons [netlogon] comment = Network Logon Service path = /whole/netlogon guest ok = yes browseable = no writable = no share modes = no

Page 73: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-15

# Un-comment the following to provide a specific roving profile share # the default is to use the user's home directory ; [Profiles] ; path = /var/lib/samba/profiles ; browseable = no ; guest ok = yes # A publicly accessible directory, but read only, except for people in # the "staff" group [public] comment = Public for all sharing ; path = /home/samba path = /whole/public guest ok = yes writable = yes directory mask = 0777 create mask = 0777 ; printable = no ; write list = +staff ;write list = @mut #========= End STD Share ======== [whole] comment = all of data. path = /whole valid users = root write list = @root [teach] comment = all of data. path = /whole/teach valid users = @teach

Page 74: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-16

write list = @teach force group = teach directory mask = 0770 create mask = 0770 [msit] comment = all of data. path = /whole/msit valid users = @msit write list = @msit force group = msit directory mask = 0770 create mask = 0770 [miss] comment = all of data. path = /whole/miss valid users = @miss write list = @miss force group = miss directory mask = 0770 create mask = 0770 [msne] comment = all of data. path = /whole/msne valid users = @msne write list = @msne force group = msne directory mask = 0770 create mask = 0770 [www] comment = website project.

Page 75: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-17

path = /var/www valid users = root ;browseable = no write list = @root force group = apache directory mask = 0770 create mask = 0770 [recycle] comment = recycle bin. path = /recycled ;browseable = no valid users = root write list = @root ;group list = @root directory mask = 0770 create mask = 0770 เม#อใสคาเรยบรอย ใหทาการบนทกไฟล smb.conf แลวส #งใหแซมบาเร#มทางานใหม ดวยคาส #ง #service smb restart ตอนน2โปรแกรมแซมบาไดทางานใหบรการไฟลเซรฟเวอร แกเคร#องลกขายท#อยภายในเครอขายเดยวกนแลว ตดต �งโปรแกรมปรบปรงรายงานของแซมบา

จากท#ผเขยนไดเขาไปดขอมล Log ของแซมบา เพ#อศกษาการสรางรายงานการใชระบบไฟลเซรฟเวอรใหแสดงบน Web Application น 2น พบวาขอมลภายใน Log ของแซมบาน 2น ทาความเขาใจในการอานยาก ซ#งจากคนหาแนวทางการแกปญหาพบวาโปรแกรม syslog-ng สามารถแกไข Log ของแซมบาใหอานเขาใจไดงายข2น โดยโปรแกรม syslog-ng จะทาการเรยบเรยงขอมลรายงานใหใหมตามแต Template ท#ผดแลระบบต 2งคาไว เม#อไดแนวทางการแกปญหาน2แลว จงเร#มทาการตดต 2งโปรแกรม syslog-ng ดงน2 # yum install syslog-ng –y # service syslog stop # service syslog-ng start

Page 76: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-18

# chkconfig syslog off # chkconfig syslog-ng on # chkconfig --list syslog-ng syslog-ng 0:off 1:off 2:on 3:on 4:on 5:on 6:off จากน 2นแกไขคา /etc/samba/smb.conf เพ#มเตม โดยแกในสวน Additional from Admin โดยลบคาเดมท 2งหมด แลวนาคาท#แสดงดานลางทบลงไปแทน ดงน2 # ---------------------- Additional from Admin ------------------------ vfs objects = full_audit recycle recycle:repository = /recycled/%U recycle:exclude = ~* *.tmp *.temp Thumbs.db recycle:keeptree = yes recycle:versions = yes recycle:faculity = local5 recycle:maxsize = 5000000000 recycle:directory_mode = 777 recycle:subdir_mode = 777 full_audit:prefix = %u %d %I %S full_audit:failure = connect pread full_audit:success = connect disconnect opendir mkdir rmdir closedir close read pread write pwrite sendfile rename unlink chmod full_audit:facility = local5 full_audit:priority = notice hide dot files = yes # --------------- End of Additional from Admin ------------------

Page 77: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-19

ตอดวยการปรบปรงคา Templete ของโปรแกรม syslog-ng โดยเขาไปแกไขไฟล /etc/syslog-ng/syslog-ng.conf ดงน2 #vi /etc/syslog-ng/syslog-ng.conf เม#อดคาภายในไฟลของ syslog-ng.conf จะเหนวามบรรทดท#เขยนวา log { source(s_sys); destination(messages); }; ใหทาการแทรกบรรทดตามตอไปน2 ไวดานบนของบรรทด log { source(s_sys); destination(messages); }; destination m_samba_audit { file("/var/log/samba/audit.log" template("$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC $HOST $MSG\n") template_escape(yes) ); }; filter f_local5 {facility(local5);}; log { source(s_sys); filter(f_local5);destination(m_samba_audit); flags(final); }; เม#อแทรกเรยบรอยแลว ใหทาการบนทกไฟล syslog-ng.conf น2 แลวทาการเร#มระบบโปรแกรมแซมบาและโปรแกรม syslog-ng ข2นใหม เพ#อใหคาท#ถกแกไขทางาน #restart smb restart && restart syslog-ng restart จากน 2น เม#อเขาไปดไฟล /var/log/samba/audit.log จะพบรายงานของแซมบาเปล#ยนไป โดยแสดงผลออกมาดงน2 2013-01-23 13:25:12 smbpro smbd_audit: teach02 4637 192.168.226.1 www|closedir|ok| 2013-01-23 13:25:12 smbpro smbd_audit: teach02 4637 192.168.226.1 www|opendir|ok|html/dcenter 2013-01-23 13:25:12 smbpro smbd_audit: teach02 4637 192.168.226.1 www|closedir|ok| ตดต �งโปรแกรมฐานขอมล MySQL

จากรายงานท#อานงายของไฟล audit.log น 2น ทาใหผเขยนม #นใจวาจะสามารถนารายงานน2ไปใชงานบนฐานขอมลของโปรแกรม MySQL ได ซ#งจะทาใหพฒนาไปแสดงรายงานน2บนหนา Web Application ตอไป จงเร#มตดต 2งโปรแกรม MySQL Server เพ#อใหเปนเซรฟเวอรฐานขอมลแกระบบจดการไฟลเซรฟเวอร ดวยคาส #งตอไปน2 #yum install mysql-server

Page 78: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-20

เม#อตดต 2ง MySQL แลว ส#งท#ตองทาตอไป คอ การสรางผใชงานหลกของฐานขอมลข2นมา ซ#งในท#น2คอ root โดยใชคาส #งดงน2 (เพ#อใหจางายตอการทดสอบระบบ จะใช password คอ 123456) #mysql -u root –p ตดต �งโปรแกรม APACHE ทา Web Server

เน#องจากระบบท#จะสรางตองใชงานผาน Web Browser จงจาเปนตองตดต 2งโปรแกรม APACHE เพ#อเปดบรการ WEB SERVER อกท 2งตองตดต 2ง PHP Script ใหสนบสนนการทางานรวมกบ MySQL ดวยคาส #งตอไปน2 # yum install http # yum install php # yum install php-mysql ปรบปรงให PHP Script ทางานกบ Shell Script

จากบทท# 3 ท#กลาวในเร#องการออกแบบระบบจดการไฟลเซรฟเวอร น 2น ผเขยนมความจาเปนตองใช PHP Script ส #งงาน Shell Script ของระบบลนกซ ผานโปรแกรม APACHE เพ#อใชในการปรบปรงฐานขอมลของ MySQL รวมถงการส #งงานตาง ๆ ในระบบลนกซ แตเน#องดวยขอจากดเร#องความปลอดภยของระบบลนกซ ซ#งไมอนญาตใหโปรแกรม APACHE ทางานรวมกบ Shell Script ได จงจาเปนตองปรบปรงระบบความปลอดภยเลกนอย เพ#อแกไขปญหาดงกลาว ซ#งจากการคนควาพบวาจะตองแกไขไฟล /etc/sudoers ซ#งมดวยกนจานวน 2 จด โดยเร#มส #งแกไขไฟล ดงคาส #งตอไปน2 #visudo หรอ #vi /etc/sudoers (กรณใช #vi/etc/sudoers จะตองส #ง #chmod 777 /etc/sudoers กอน และเม#อแกไฟลเสรจใหคนคากลบไปเปน 440 ดวยคาส #ง #chmod 440 /etc/sudoers) จดท# 1 คนหาบรรทด “root ALL=(ALL) ALL=(ALL) ALL” แลวแทรกบรรทดไวดานลางลงไป เพ#อเปนการอนญาตผใชช#อ apache ใหทางานรวมกบ Shell Script ตามน2 root ALL=(ALL) ALL=(ALL) ALL apache ALL=(ALL) NOPASSWD: ALL จดท# 2 หาบรรทดท#ระบวา “Defaults requiretty” แลวใส “!” ไวหนา requiretty ใหไดตามน2 Defaults !requiretty เม#อแทรกบรรทดท 2ง 2 จด แลวทาการบนทกไฟล กจะจบข 2นตอนการปรบปรงให PHP Script ทางานกบ Shell Script เรยบรอยแลว

Page 79: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ก-21

จากน 2นใหเขยนไฟล PHP ส #ง Shell Script ข2นมาทดสอบ โดยสรางไฟลช#อ example.php ไวท# /var/www/html ซ#ง ภายใน Script เขยนคาไวดงน2 <? exec(“sudo -u root touch /root/test.file”); ?> จากน 2นส #งทดสอบ PHP Script วาทางานกบคาส #ง Shell Script ท#เขยนคาไวภายในไฟล example.php ดวยการเปดหนา http://localhost/example.php ตอไปทาการตรวจสอบโดยเขาระบบลนกซ ดวย Command Line แลวใชคาส #ง # ls -l /root/test.file

รปท� ก.8 แสดงผลการทดสอบหลงส #ง PHP Script ทางานกบ Shell Script

หากพบไฟล /root/test.file ตามรปท# ก.8 แสดงวาไดต 2งคาใหระบบลนกซอนญาต PHP Script ทางานกบ Shell Script เปนผลสาเรจ ข 2นตอนสดทายใหต 2งคา APACHE และ MySQL ทางานทกคร 2งเม#อเปดเคร#องเซรฟเวอร ดงน2 # chkconfig httpd on # chkconfig mysqld on ในสวนของภาคผนวก ก ท 2งหมดน2 จาเปนตองทาใหสาเรจกอนจดทาระบบจดการไฟลเซรฟเวอรตามวตถประสงคของโครงงาน

Page 80: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ภาคผนวก ข การตดต �งเคร�องลกขาย

Page 81: ระบบจัดการไฟล์เซิร์ฟเวอร์ File ... ระบบ...IV สารบ ญ (ต อ) หน า บทท ˆ 3 ว ธ การด าเน

ข-1

ต �งคาระบบเคร�องลกขาย ตดต 2งระบบปฏบตการ Microsoft วนโดวส XP จานวน 2 เคร#อง โดยใหเช#อมตอเขากบ

โดเมนช#อ server ตามท#คอนฟกไวในเซรฟเวอร ตามภาคผนวก ก เพ#อทดสอบการใชงานระบบ ในฐานะผใชงาน

รปท� ข.1 การต 2งคาให Microsoft วนโดวส XP เขาใชโดเมนช#อ server

โดยเม#อตดต 2งเรยบรอยแลว ใหทาการต 2งคา ดงรปท# ข.1 ท 2ง 2 เคร#องเพ#อใหเปนสมาชกโดเมนของเคร#องเซรฟเวอรท#ไดตดต 2งไวตามภาคผนวก ก เม#อกดปม OK แลว จะตองทาการเร#มระบบเคร#องลกขายใหม เพ#อใหเคร#องลกขายเร#มการ Login เขาระบบโดเมนตอไป

รปท� ข.2 แสดงหนา Login พรอมเขาใชโดเมนช#อ server

เม#อเคร#องลกขายเร#มระบบใหม แลวพบหนาแสดงผล ดงรปท# ข.2 กแสดงวา เคร#องลกขาย พรอมท#จะใหทาการทดสอบใชงานระบบไฟลเซรฟเวอรแลว