การนำาopen-source software มาใช้...

143
การนำา Open-Source Software มาใช้ สำาหรับการให้บริการเครือข่ายคอมพิวเตอร์ ในสถานศึกษา ฉัตรชัย จันทร์พริ้ม [email protected] ภาควิชาวิศวกรรมคอมพิวเตอร์ มหาวิทยาลัยสงขลานครินทร์ วิทยาเขตหาดใหญ่

Upload: others

Post on 06-Aug-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

การนำา Open-Source Software มาใชสำาหรบการใหบรการเครอขายคอมพวเตอร

ในสถานศกษา

ฉตรชย จนทรพรม[email protected]

ภาควชาวศวกรรมคอมพวเตอร มหาวทยาลยสงขลานครนทร

วทยาเขตหาดใหญ

Page 2: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

คำานำา

รายงานฉบบนเปนสวนหนงของลาการปฏบตงานเพอเพมพนความรในหวขอ การนำา Open-Source Software มาใชสำาหรบการใหบรการเครอขายคอมพวเตอร ในสถานศกษา ผเขยนขอขอบคณภาควชาวศวกรรมคอมพวเตอร และคณะวศวกรรมศาสตร ซงไดอนญาตใหผเขยนใชเวลามากกวา 1 ปในการลาเพอปฏบตงานและเขยนรายงานฉบบน

ฉตรชย จนทรพรม15 สค. 56

Page 3: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

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

รายงานฉบบนจะไมสามารถสำาเรจออกมาเปนรปเลมเชนนได หากไมมผใหความชวยเหลอทสำาคญเหลาน ผศ.ดร. สนทร วทรสรพจน ผชวยปรบโครงสรางของรายงาน ชใหเหนสวนทจำาเปนและสำาคญ และเสนอแนะใหตดสวนทไมจำาเปนออก ลดระดบความซบซอนจนรายงานอยในระดบทผเขยนสามารถจดการได คณปฏมากร จนทรพรม “คณภรรยา” ทชวยชใหเหนถงทางออก ในยามทภาพรวมของงานอยในระดบททำาใหผเขยนรสกหมดหวง ทจะทำาใหเสรจภายในชวงเวลาทกำาหนด รศ.ดร. มตรชย จงเชยวชำานาญ ผอานรายงานฉบบอยางตงใจ และใหคำาแนะนำาซงทำาใหรายงานฉบบนอยในรปแบบทดขน ผเขยนขอขอบคณทานทงสามเปนอยางยง

ฉตรชย จนทรพรม15 สค. 2556

Page 4: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สารบญบทท 1 บทนำา.................................................................................................... 1

1.1 คอมพวเตอรและระบบเครอขาย..........................................................................................11.2 องคประกอบรายงาน............................................................................................................2

บทท 2 การตดตงเดเบยนลนกซ (Debian Linux).............................................42.1 การตดตงระบบปฎบตการ....................................................................................................42.2 การตดตงระบบปฎบตการเดเบยนลนกซ (Debian Linux).................................................62.3 การตดตงเดเบยนลนกซ (Debian Linux) ผานเครอขาย.....................................................72.4 การกำาหนดคอนฟกสำาหรบการตดตงโดยใชพรสด (Preseed).............................................82.5 การตดตงโปรแกรมเพมเตม................................................................................................112.6 การใชคำาสงเพอหาขอมลของแพคเกจของ Debian...........................................................112.7 การควบคมการใหบรการของเซรฟเวอร.............................................................................12

บทท 3 การตดตงและปรบแตงเราทเตอร.........................................................153.1 การตดตงเพอใชงานเปนแบบเราทเตอร.............................................................................153.2 การตดตงเพอใชงานเปนเราทเตอร โดยใชเดเบยนลนกซ...................................................173.3 ซอฟตแวรแพกเกจทตองใช................................................................................................203.4 เนทเวรคแอดเดรสทรานสเลชน.........................................................................................22

บทท 4 การตดตงดเอชซพเซรฟเวอร (DHCP Server).....................................264.1 โปรโตคอลสำาหรบการกำาหนดหมายเลขของโฮสตแบบไดนามค........................................264.2 การตดตงและปรบแตงไอเอสซ ดเอชซพเซรฟเวอร............................................................274.3 ตวอยางการกำาหนดคอนฟกของดเอสซพเซรฟเวอร...........................................................284.4 การตรวจสอบการทำางานของดเอชซพเซรฟเวอร...............................................................324.5 การใชงานดเอชซพรเลย (DHCP Relay)............................................................................33

บทท 5 การตดตงทเอฟทพเซรฟเวอร (TFTP Server).....................................345.1 ทเอฟทพเซรฟเวอร (TFTP Server)...................................................................................345.2 การตดตงทเอฟทพเซรฟเวอร.............................................................................................345.3 การคอนฟกดเอชซพเซรฟเวอรเพอใหเครองคอมพวเตอรบทจากทเอฟทพเซรฟเวอร.......36

Page 5: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

5.4 การแกไขคอนฟกเพอเพมพรสดสำาหรบเนทบท..................................................................36บทท 6 การตดตงดเอนเอสเซรฟเวอร (DNS Server).......................................39

6.1 โดเมนเนมซสเตม (Domain Name System – DNS)......................................................396.2 การจดลำาดบชนของโดเมนเนม (Domain Name Hierachy)...........................................406.3 การตดตงไอเอสซบายดไนนดเอนเอสเซรฟเวอร.................................................................446.4 การคอนฟกบายดไนนเพอเปนดเอนเอสแคชเซรฟเวอร.....................................................446.5 การคอนฟกบายไนนเพอเปนออธอรเอธฟดเอนเอสเซรฟเวอร...........................................456.6 การตรวจสอบความถกตองของคอนฟกและโซนไฟล.........................................................496.7 การตรวจสอบการทำางานของดเอนเอสเซรฟเวอร..............................................................50

บทท 7 การตดตงเมลเซรฟเวอร (Mail Server)...............................................527.1 เมลเซรฟเวอร (Mail Server).............................................................................................527.2 การตดตงเอกซมเอสเอมทพเซรฟเวอร (Exim SMTP Server)..........................................58

7.2.1 การคอนฟกอเมลอะเลยส............................................................................................................647.2.2 การตรวจสอบเอสเอมทพเซรฟเวอร............................................................................................65

7.3 การตดตงโดฟคอท ไอแมพและปอบสามเซรฟเวอร...........................................................657.3.1 การตรวจสอบการทำางานของ ไอแมพและปอปสามเซรฟเวอร....................................................68

บทท 8 การตดตงเวบเซรฟเวอร (Web Server)...............................................698.1 เวบเซรฟเวอร.....................................................................................................................698.2 อาพาเชเวบเซรฟเวอร.........................................................................................................708.3 การตดตงและปรบแตงอาพาเชเวบเซรฟเวอร....................................................................718.4 การสรางเวอรชวลโฮสต.....................................................................................................738.5 การตดตงเอสเอสแอลสำาหรบอาพาเชเวบเซรฟเวอร...........................................................77

บทท 9 การตดตงเอฟทพเซรฟเวอร (FTP Server)..........................................819.1 เอฟทพเซรฟเวอร (FTP Server)........................................................................................819.2 เอฟทพเซรฟเวอรบนลนกซ................................................................................................819.3 การตดตงวเอสเอฟทพด.....................................................................................................829.4 การตดตงโปรเอฟทพด.......................................................................................................83

บทท 10 การตดตงมายเอสควแอล (MySQL Server).....................................8510.1 ดาตาเบสเซรฟเวอร..........................................................................................................8510.2 การตดตงมายเอสควแอลดาตาเบสเซรฟเวอร..................................................................86

Page 6: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

10.3 การใชงานมายเอสควแอลไคลเอนท.................................................................................8710.4 การสรางแอคเคาทใหม....................................................................................................8910.5 การแกปญหากรณลมรหสผานของรทของมายเอสควแอลเซรฟเวอร..............................9010.6 การแบคอพและรสตอรดาตาเบส.....................................................................................9010.7 การใชพเอชพมายแอดมน สำาหรบจดการมายเอสควแอลเซรฟเวอร................................92

บทท 11 การตดตง NTP Server.....................................................................9311.1 การกำาหนดเวลาบนเครองคอมพวเตอร...........................................................................9311.2 เนทเวรคไทมโปรโตคอล (Network Time Protocol)....................................................9311.3 การกำาหนดคาคอนฟกสำาหรบเอนทพเซรฟเวอร..............................................................9411.4 การตรวจสอบการทำางานของเอนทพเซรฟเวอร...............................................................95

บทท 12 การตดตงอารซงคเซรฟเวอร (Rsync Server)...................................9712.1 การรบสงขอมลระหวางคอมพวเตอร...............................................................................9712.2 การตดตงแพคเกจอารซงค (rsync).................................................................................9812.3 การรบสงไฟลโดยใชคำาสงอารซงค...................................................................................9812.4 การใชงานอารซงคในแบบเซรฟเวอร................................................................................99

Page 7: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สารบญรปรปท 1: การตดตงเครองคอมพวเตอรเพอใชงานเปนเซรฟเวอร..........................................................................4รปท 2: การเพมเซรฟเวอรเขาไปในเครอขายเดม.............................................................................................15รปท 3: เครอขายสำาหรบทดสอบเซรฟเวอร.....................................................................................................16รปท 4: สภาพแวดลอมสำาหรบเครอขายทดสอบ ทจำาลองโดยใชเวอรชวลบอกซ.............................................19รปท 5: ไอพแอดเดรสสำาหรบเครอขายและเราทเตอรซงจะใชในการทดสอบ..................................................21รปท 6: ตวอยางเครอขาย สำาหรบกำาหนดคอนฟกดเอชซพเซรฟเวอร.............................................................29รปท 7: การแลกเปลยนอเลคทรอนคสเมลระหวางผใช....................................................................................53รปท 8: การแลกเปลยนอเลคทรอนคสเมลระหวางโดเมน...............................................................................54รปท 9: การรบสงอเลคทรอนคสเมลระหวางเมลเซรฟเวอรกบผใช..................................................................57รปท 10: เรมตนการตดตง Debian Squeeze..............................................................................................103รปท 11: เมนเลอกภาษาสำาหรบการตดตง คา default เปนภาษา English.................................................104รปท 12: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย.................................................................................105รปท 13: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย.................................................................................107รปท 14: เลอกชนดของแปนพมพ.................................................................................................................108รปท 15: กำาหนดชอเครอง.............................................................................................................................109รปท 16: กำาหนดชอ domain.......................................................................................................................110รปท 17: แหลงสำาเนาแพคเกจสำาหรบแตละประเทศ.....................................................................................111รปท 18: เลอกแหลงสำาเนาแพคเกจของเดเบยน...........................................................................................112รปท 19: กำาหนดคาของ proxy.....................................................................................................................113รปท 20: ตวตดตงเรม download โปรแกรมตดตงพนฐาน..........................................................................115รปท 21: กำาหนดรหสผานให root................................................................................................................116รปท 22: ยนยนรหสผานของ root ซำา..........................................................................................................118รปท 23: กำาหนดชอเตมของผใช....................................................................................................................119รปท 24: กำาหนดชอบญชสำาหรบ login........................................................................................................121รปท 25: กำาหนดรหสผานใหผใชงาน.............................................................................................................122รปท 26: ยนยนรหสผานซำาอกครง................................................................................................................123รปท 27: การกำาหนดพารทชนสำาหรบการตดตง............................................................................................124รปท 28: ระบฮารดดสกทจะใชตดตง.............................................................................................................125รปท 29: กำาหนดรปแบบของพารทชนทใชเกบขอมล....................................................................................126รปท 30: ยนยนรปแบบการแบงพารทชน......................................................................................................127รปท 31: ยนยนรปแบบทเลอกไวและเขยนขอมลลงฮารดดสก......................................................................128

Page 8: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

รปท 32: ฟอรแมทพารทชน..........................................................................................................................129รปท 33: ตดตงระบบพนฐาน.........................................................................................................................130รปท 34: เลอกรปแบบของคยบอรด..............................................................................................................131รปท 35: เลอกคยสำาหรบสลบภาษา..............................................................................................................132รปท 36: ตดตงระบบพนฐานตอ....................................................................................................................133รปท 37: เตรยมการสำาหรบการเลอกและตดตงซอฟตแวร............................................................................134รปท 38: คำาถามสำาหรบการตงคาใหกบ popularity contest.....................................................................135รปท 39: เลอกชดของซอฟตแวรทจะตดตง...................................................................................................136รปท 40: ตงคาใช grub เปน boot loader..................................................................................................137รปท 41: เสรจสนกระบวนการของการตดตง................................................................................................138

Page 9: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 1 บทนำา1.1 คอมพวเตอรและระบบเครอขาย

คอมพวเตอรและเครอขายคอมพวเตอร ถอเปนสงอำานวยความสะดวก ทมใชอย ในชวตประจำาวนของบคคลทวไป แตในระดบทกวางขน เปนกลมของบคคล ทจำาเปนจะตองมาใชชวต หรอทำางานรวมกน เชนบรษท, หางราน, หนวยงาน, องคกร ความสำาคญของคอมพวเตอรและเครอขายในปจจบน ไดเพมขนจาก สงอำานวยความสะดวกกลายเปนสงจำาเปน

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

คอมพวเตอรและเครอขาย ทมการใชงานในองคกร หรอหนวยงานตางๆนน จะมทงสวนทแตกตาง

Page 10: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

และคลายคลงกนไป ขนอยกบตามขนาดของเครอขาย, จำานวนบคลากรทใชงาน และลกษณะงานตามธรรมชาต ขององคกรหรอหนวยงานนน

ในหนวยงานใดหนวยงานหนง กอาจจะประกอบไปดวย หนวยงานยอยภายใน ซงอาจจะมการใหบรการคอมพวเตอร และเครอขายของตนเอง หรอมในหนวยงาน ระดบใหญดวยเชนเดยวกน เชนในมหาวทยาลยสงขลานครนทร, คณะวศวกรรมศาสตร, และภาควชาวศวกรรมคอมพวเตอร ตางกมหนวยงานสำาหรบ ดแลและใหบรการ เครอขายคอมพวเตอรของตนเอง ทงท ภาควชาฯ ถอเปนสวนหนงของคณะฯ และ คณะฯเปนสวนหนงของมหาวทยาลย การใหบรการคอมพวเตอร และเครอขาย กจะมทงสวนทซอนทบกน ไมทบซอนกน มสวนทจะตองใหความรวมมอกน ถงจะใหบรการเกดขนได และมสวนทสามารถแยกกนทำา โดยเปนอสระจากกนได

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

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

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

1.2 องคประกอบรายงานองคประกอบของรายงานฉบบนจะแบงเปนบทดงตอไปน

บทท 1 บทนำา

บทท 2 การตดตงเดเบยนลนกซ (Debian Linux)

บทท 3 การตดตงและปรบแตงเราทเตอร

Page 11: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 4 การตดตงดเอชซพเซรฟเวอร (DHCP Server)

บทท 5 การตดตงทเอฟทพเซรฟเวอร (TFTP Server)

บทท 6 การตดตงดเอนเอสเซรฟเวอร (DNS Server)

บทท 7 การตดตงเมลเซรฟเวอร (Mail Server

บทท 8 การตดตงเวบเซรฟเวอร (Web Server

บทท 9 การตดตงเอฟทพเซรฟเวอร (FTP Server

บทท 10 การตดตงมายเอสควแอล (MySQL Server)

บทท 11 การตดตง NTP Server

บทท 12 การตดตงอารซงคเซรฟเวอร (Rsync Server)

Page 12: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 2 การตดตงเดเบยนลนกซ (Debian Linux)

ในบทนจะบรรยายถงเรองของการตดตงระบบปฏบตการเดเบยนลนกซ (Debian Linux) แบบพนฐาน ซงคอมพวเตอร 1 ทไดตดตงระบบปฏบตการเดเบยนลนกซแบบพนฐานนแลว จะสามารถนำาไปตดตงแพกเกจเพมเตม และปรบแตงคอนฟก ของเครองคอมพวเตอรใหเหมาะสม เพอใชงานเปนเซรฟเวอรตอไป ดงตวอยางใน รปท 1: การตดตงเครองคอมพวเตอรเพอใชงานเปนเซรฟเวอร

2.1 การตดตงระบบปฎบตการเครองคอมพวเตอรทใชงานสำาหรบตดตงเปนเซรฟเวอร จะเรมตนจากสภาพทไมมระบบปฏบตการแอพพลเคชนโปรแกรม หรอแมกระทงขอมลบนฮารดดสก เมอผานการตดตงระบบปฏบตการเดเบยนลนกซแบบพนฐานแลว ตามทแสดงในรป เปนขนตอนท 1 กจะสามารถใชงานแบบพนฐานไดโดยทเครองคอมพวเตอร จะมความสามารถในการเชอมตอกบ ระบบเครอขาย และสามารถดาวนโหลดแพกเกจของโปรแกรมอนๆ มาตดตงเพมเตมเพอใชงานได การทจะใช เครองคอมพวเตอรใน

1 หรอในทนจะเปนคอมพวเตอรจำาลอง โดยเปนเวอรชวลแมชชน (Virtual Machine) ทำางานอยบน โปรแกรมเวอรชวลบอกซ (VirtualBox)

รปท 1: การตดตงเครองคอมพวเตอรเพอใชงานเปนเซรฟเวอร

Page 13: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ลกษณะของเซรฟเวอร (Server) แบบตางๆ หรอเปนเครองคอมพวเตอรแบบเดสทอป (Desktop)กขนอยกบแพกเกจของโปรแกรมทจะตองดาวนโหลดมาตดตงเพมเตม ซงสามารถแสดงเปน ทางเลอกไดดง รปท 1: การตดตงเครองคอมพวเตอรเพอใชงานเปนเซรฟเวอร เปนทางเลอกเสนทางท2 จนถงทางเลอกเสนทางท 5 เชน ถาตองการใชเครองคอมพวเตอรดงกลาวเปนเวบเซรฟเวอร(Web Server) ตามทางเลอกท 2 กจะตองดาวนโหลดแพกเกจโปรแกรมเวบเซรฟเวอรมาตดตงและปรบแตงระบบ ใหพรอมสำาหรบการใชงาน เปนเวบเซรฟเวอร หรอถาตองการใชงานคอมพวเตอรเปนแบบเดสทอป โดยมสวนของการตดตอกบผใชเปนแบบ กราฟคอลยเซอรอนเตอรเฟส (Graphical User Interface – GUI) การตดตงโปรแกรมบนเครองคอมพวเตอร กจะเรมตนจากสภาพของคอมพวเตอร ซงตดตงระบบปฏบตการเดเบยนลนกซแบบพนฐาน ตามขนตอนท 1 และหลงจากนน กดาวนโหลดแพกเกจของโปรแกรมสำาหรบการใชงานเปนเดสทอป มาตดตงและปรบแตงเพอใชงาน ตามทแสดงเปน เสนทางเลอกท 5

ดงนนในบทน จะเรมจากการบรรยายขนตอนของการตดตงเดเบยนลนกซแบบพนฐานกอน (ขนตอนท 1 ตามทแสดงใน รปท 1: การตดตงเครองคอมพวเตอรเพอใชงานเปนเซรฟเวอร) หลงจากนนในบทตอไป ซงจะกลาวถงการตดตงและใชงานเครองคอมพวเตอรใหเปนเซรฟเวอรแตชนดเปนลำาดบไป จากนนกจะอธบายเฉพาะในสวนของการตดตงแพจเกจของเซรฟเวอรเหลานนเพมเตมจากเครองคอมพวเตอร ซงตดตงระบบปฏบตการเดเบยนลนกซแบบพนฐานเอาไวแลว

การตดตงระบบปฏบตการแบบเดเบยนลนกซบนเครองคอมพวเตอรแบบทวไป สามารถทำาไดหลายวธ เชน สามารถตดตงจาก ฟลอปปดสก (Floppy Disk) ซดรอม หรอ ดวดรอมไดรว (CDROM, DVD ROM Drive) ยเอสบ หรอ แฟลชไดรว (USB, Flash Drive) หรอตดตงผานระบบเครอขาย เปนตน

วธการตดตงแบบใช ซดรอมหรอดวดรอม จะเปนวธการตดตงระบบปฏบตการแบบพนฐานทนยมใชกน สำาหรบระบบปฏบตการสมยใหมทวไป ซงรวมไปถง วนโดว (Windows) ลนกซ (Linux)และ ยนกซ (Unix) ในตระกล บเอสด (BSD) ดวยเชนกน เนองจากซดรอมหรอดวดรอมไดรวในยคหลงๆ จะเปนอปกรณพนฐานทม อยบนเครองคอมพวเตอรสวนบคคลแทบทกเครอง และมเนอทสำาหรบจดเกบขอมลมากพอทจะตดตงทง ระบบปฏบตการและโปรแกรมแอพลเคชนพนฐาน จากแผนดวรอมเพยงไมกแผน

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

Page 14: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

2.2 การตดตงระบบปฎบตการเดเบยนลนกซ (Debian Linux)การตดตงระบบปฏบตการเดเบยนลนกซ ไมวาจะเปนการตดตงโดยใช ซดรอม ดวดรอม หรอโดยสอชนดอน กจะมขนตอนในลกษณะเดยวกน คอเรมจากการบท (Boot) เครองคอมพวเตอรจากสอนน เพอเขาสโปรแกรม ซงใชในการตดตง ซงตวโปรแกรมจะเกบขอมลจากเครองคอมพวเตอรและใชขอมลเหลานนสำาหรบการ กำาหนดตวเลอกในการตดตง เชน ชนดของซพย (CPU) ชนดของการดแสดงผล แตในขณะเดยวกนจะมทางเลอก หลายอยางซงตวโปรแกรมตดตงจะไมสามารถกำาหนดโดยตวเองได ซงในสวนนโปรแกรมตดตงกจะใชวธการ ถามขอมลจากผใช ซงตองคอยตอบคำาถามระหวางการตดตง

ตวอยางการตดตงเดเบยนลนกซจากซดหรอดวดรอม สามารถศกษาเพมเตมไดจาก [debsq00]ซงแสดงการตดตงสำาหรบการใชงานแบบเดสทอป โดยใชจยไอ (GUI) สำาหรบการตดตง หรอการตดตงแบบ ผานเครอขาย (Network Installation) โดยบทจากแผนซด [debsq01] ซงตางจากวธการแรกตรงท วธแรกขอมลทงหมดทจำาเปนตองใชสำาหรบการตดตงจะอยบนแผนซดหรอดวด แตวธการทสองจะใชซดสำาหรบการบทเทานน ขอมลสวนอนๆทเหลอทงหมด จะอยบนเดเบยนมลเรอรรโพสทอร (Debian Mirror Repository)

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

วธการทผเขยนไดเลอกใชเดม กคอใชวธการสรางระบบไฟล (File system) และตดตงระบบปฏบตการ และโปรแกรมแอพลเคชนลงไปในไฟลซงเปนฮารดดสกอมเมจ (hard disk image) ของโปรแกรมเวอรชวลบอกซ (VirtualBox) โดยตรง เนองจากระบบทใชสำาหรบการทดลอง จะใชโปรแกรมเวอรชวลบอกซ ในการจำาลองระบบคอมพวเตอรและเครอขายทใชสำาหรบทดสอบ วธการนสามารถนำาไปใชงานได อยางไรกตาม ระบบทตดตงขนใหมมขอจำากดวา จะสามารถใชงานไดสำาหรบเวอรชวลบอกซเทานน วธการตดตงดงกลาวไมสามารถนำามาใชงานกบคอมพวเตอรจรง

Page 15: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หรอใชกบเวอรชวลแมชชน ทจำาลอง การทำางานของคอมพวเตอร โดยโปรแกรมอนๆได (ยกเวนวาโปรแกรมนนๆสามารถใชดสกอมเมจของ โปรแกรมเวอรชวลบอกซได ) ดงนนในชวงทผานมา ผเขยนไดศกษาวธการตดตงใหม ซงวธการนจะสามารถประยกตใชสำาหรบ การตดตงระบบปฏบตการเดเบยนลนกซ ลงบนเครองคอมพวเตอรทเปนเครองคอมพวเตอรจรง (Physical HostComputer) หรอจะเปนเวอรชวลแมชชน (Virtual Machine) บนเครองคอมพวเตอรจรงกได

วธการตดตงแบบน จะใชความสามารถของระบบการกำาหนดคาคอนฟก (configuration) ของเดเบยนทชอวา เดเบยนคอนเอฟ (debianconf) ซงเปนสวนหนงของการตดตงของเดเบยน โดยผตดตงจะสามารถกำาหนดคำาตอบ สำาหรบคำาถามทระบบจะถามไวกอนลวงหนา เมอกระบวนการตดตงเรมขน กจะใชคำาตอบทกำาหนดไวลวงหนานน เพอกำาหนดคาใหกบระบบ วธการนเรยกวา เดเบยนคอนเอฟพรสด (debianconf preseed)

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

2.3 การตดตงเดเบยนลนกซ (Debian Linux) ผานเครอขายองคประกอบทจำาเปนสำาหรบการตดตงเดเบยนลนกซ โดยการตดตงผานเครอขาย จะตองประกอบไปดวย เซรฟเวอรตางๆเหลาน

• ดเอชซพเซรฟเวอร (DHCP Server)

ซงจะใชสำาหรบการแจกจายไอพแอดเดรส (IP Address) และกำาหนดตวเลอก (Option) ตางๆในการบท ใหกบเครองคอมพวเตอรในเครอขาย เชน ไอพแอดเดรสของทเอฟทพเซรฟเวอร(TFTP Server)

• ทเอฟทพเซรฟเวอร (TFTP Server)

ซงจะเกบลนกซเคอรเนล (Linux kernel) และโปรแกรมเรมตนในสวนของการบท เพอสงใหกบเครองทบทผานเครอขาย เมอมการรองขอมาจากเครองเหลานน

• เอฟทพเซรฟเวอร (FTP Server) หรอ เวบเซรฟเวอร (Web Server)

สำาหรบเกบเดเบยนแพกเกจ (Debian package) ทใชในการตดตงระบบปฏบตการพนฐาน

เซรฟเวอรสำาหรบการใหบรการตางๆเหลาน จะมใหบรการจรงอยแลว ในภาควชาวศวกรรมคอมพวเตอรปจจบน สวนประกอบทจะตองมเพมเตม เพอใหระบบดงกลาว สามารถใชสำาหรบการ

Page 16: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ตดตงระบบปฏบตการ เดเบยนลนกซโดยอตโนมตได กคอสวนของการปรบแตงคอนฟกเรชน(configuration) เพอระบรายละเอยดตางๆสำาหรบการตดตงเพมเขาไป

การตดตงและปรบแตงทจำาเปน สำาหรบการใชงานเดเบยนลนกซเปนเซรฟเวอรตางๆ จะอธบายในแตละบทของการตดตงเซรฟเวอรเหลานน

2.4 การกำาหนดคอนฟกสำาหรบการตดตงโดยใชพรสด (Preseed)ในการตดตงโดยใชเดเบยนคอนเอฟ (debianconf) นน จะสามารถกำาหนดคอนฟกในการตดตงไดโดยใชวธการทเรยกวา พรสด (preseed) สวนของการกำาหนดคาคอนฟกพรสด จะใชได กบการตดตงทกแบบ แตในการใชงานสำาหรบการตดตงผานทางเครอขาย จะตองแบงขอมลของการพรสดเปน 2 สวนคอ สวนทกำา หนดเปนการเลอก (option) สำา หรบการบทโดยใชพเอกซอบท(pxeboot) ในกรณท ขอมลของการบทเกบอยบนตวดเอชซพเซรฟเวอร คาพรสดสวนนกจะเกบอยเปนสวนหนงของขอมลการบท เหลานนบนดเอชซพเซรฟเวอรดวย สวนขอมลสำาหรบการพรสดสวนทสอง จะเกบไวในไฟลทชอวา preseed.cfg ซงเครองทตดตง จะตองดาวนโหลดมาจากเวบเซรฟเวอรหรอ เอฟทพเซรฟเวอร

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

ตวอยางของขอมลพรสด ซงเกบเปนทางเลอก (option) ของพเอกซอบท โดยเกบอยบนดเอชซพเซรฟเวอร

Page 17: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในทนขอมลของการพรสดสวนแรก จะระบขอมลพรสดสวนทสองเอาไวดวยกคอ

ซงหมายความวาขอมลพรสดสวนทเหลอ ซงเกบอยในไฟล preseed.cfg สามารถดาวนโหลดไดจาก URL ดงกลาว (http://tftp.coe.psu.ac.th/d-i/squeeze/preseed.cfg)

ตวอยางของขอมลพรสด สวนทสองซงเกบเปนไฟลอยบนเวบเซรฟเวอร

auto url=http://tftp.coe.psu.ac.th/d­i/squeeze/preseed.cfg fb=false locale=en_US.UTF­8 language=en country=TH netcfg/get_hostname=vm netcfg/get_domain=coe.psu.ac.th console­keymaps­at/keymap=us DEBCONF_PRIORITY=critical DEBCONF_DEBUG=5

url=http://tftp.coe.psu.ac.th/d­i/squeeze/preseed.cfg 

Page 18: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอการตดตงเสรจสน จะไดระบบคอมพวเตอรซงมเดเบยนลนกซเปนระบบปฏบตการพนฐาน ซง

• มดสตรบวชนเปนเดเบยนสควช (Debian Squeeze Distribution)

d­i debian­installer/locale string en_US d­i debian­installer/language string en d­i debian­installer/country string TH 

d­i console­keymaps­at/keymap select us 

d­i netcfg/get_hostname string unassigned­hostname d­i netcfg/get_domain string unassigned­domain d­i netcfg/wireless_wep string 

d­i mirror/protocol string http d­i mirror/country string manual d­i mirror/http/hostname string ftp.coe.psu.ac.th d­i mirror/http/directory string /debian d­i mirror/http/proxy string 

d­i clock­setup/ntp boolean false d­i clock­setup/utc boolean true d­i time/zone string Asia/Bangkok 

d­i partman­auto/method string regular d­i partman­auto/choose_recipe select atomic d­i partman­lvm/device_remove_lvm boolean true d­i partman­lvm/confirm boolean true d­i partman­md/device_remove_md boolean true d­i partman­md/confirm boolean true d­i partman­partitioning/confirm_write_new_label boolean true d­i partman/choose_partition select finish d­i partman/choose_partition select finish d­i partman/confirm boolean true d­i partman/confirm_nooverwrite boolean true 

d­i base­installer/kernel/image string linux­image­2.6­686 

d­i passwd/make­user boolean false d­i passwd/root­password password root d­i passwd/root­password­again password root 

d­i apt­setup/non­free boolean true d­i apt­setup/contrib boolean true d­i apt­setup/use_mirror boolean false 

tasksel tasksel/first multiselect 

d­i finish­install/reboot_in_progress note d­i debian­installer/exit/poweroff boolean true 

popularity­contest popularity­contest/participate boolean false d­i pkgsel/upgrade select none d­i grub­installer/only_debian boolean true 

Page 19: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• ระบบคอมพวเตอรจะใชดเอชซพ (DHCP) สำาหรบการระบไอพแอดเดรส (IP Address) ของเครอง

• การตดตงของโปรแกรมเพมเตมได ผานระบบเครอขายสามารถตดตงเพมได โดยใชเดเบยนมลเรอรรโพสทอรเปน ftp.coe.psu.ac.th ซงเปน เอฟทพเซรฟเวอรของภาควชาวศวกรรมคอมพวเตอร

ซงผลทไดน เกดจากขอกำาหนดทกำาหนดไวในสวนของการ preseed สวนทสอง ซงกำาหนดไวดงน

สวนการกำาหนดคาดสตรบวชน (Debian Squeeze) และกำาหนดวาใชดเอชซพเปนคาโดยปรยาย(default) ของคาทกำาหนดไวในการตดตง

2.5 การตดตงโปรแกรมเพมเตมการตดตงโปรแกรมเพมเตม จากโปรแกรมทตดตงแบบพนฐานเอาไวแลว จะทำาไดโดยใชคำาสงดงตอไปน

เชน ถาตองการตดตงโปรแกรมเพอใชคอมพวเตอรเปนเวบเซรฟเวอร โดยใชแพกเกจทชอวาapache2 กจะตองใชคำาสง

2.6 การใชคำาสงเพอหาขอมลของแพคเกจของ Debianในกรณทไมทราบวาโปรแกรมใดอยในแพกเกจ (package) ใดบาง กสามารถคนหาจากแพกเกจทอยใน รโพสทอร (repository) แบบคราวๆได โดยการใชคำาสง

เชนคนหา เอสควแอลดาตาเบสเซรฟเวอร (SQL Database Server) สามารถใชคำาสง

apt­get install packagename

apt­get install apache2

d­i mirror/http/hostname string ftp.coe.psu.ac.th 

apt­cache search keyword

apt­cache search sql­server

Page 20: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงตวอยางผลลพธของคำาสง search ขางตนคอ

และเมอไดชอของแพกเกจมาแลว กสามารถใชคำาสง show

สำาหรบดรายละเอยดของแพกเกจนนๆได

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

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

สำาหรบการลบเอาแพกเกจทไมใชแลว จะสามารถใชคำาสงยอย remove สำาหรบคำาสง apt-getไดดงน

2.7 การควบคมการใหบรการของเซรฟเวอรสำาหรบโปรแกรมใดๆทตดตงไวบนเครอง ซงมลกษณะการทำางานเปนโปรแกรมแบบเดมอน

$ apt­cache search sql­server auth2db ­ Powerful and eye­candy IDS logger, log viewer and alert generator mysql­server­5.0 ­ MySQL database server binaries postgresql­server­dev­8.3 ­ development files for PostgreSQL 8.3 server­side ...cacti ­ Frontend to rrdtool for monitoring systems and services mysql­server ­ MySQL database server (metapackage depending on the latest version)mysql­server­5.1 ­ MySQL database server binaries and system database setup mysql­server­core­5.1 ­ MySQL database server binaries postgresql­server­dev­8.4 ­ development files for PostgreSQL 8.4 server­side ...postgresql­server­dev­9.0 ­ development files for PostgreSQL 9.0 server­side ...postgresql­server­dev­all ­ extension build tool for multiple PostgreSQL versions torrentflux ­ web based, feature­rich BitTorrent download manager 

apt­cache show packagename

dpkg ­L packagename 

dpkg ­i file.deb

apt­get remove package

Page 21: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

(Daemon) เชนโปรแกรมของเมลเซรฟเวอร (Mail Server) หรอเวบเซรฟเวอร (Web Server) ซงจะเรมใหบรการโดยอตโนมต หลงจากการตดตงแพกเกจ หรอเมอบทเครองครงในตอไป การใหบรการ หรอทเรยกกนวาเซอรวช (service) เหลาน จะเรมทำางานแบบอตโนมต ผดแลระบบจะเปด/ปด การใหบรการแบบชวคราวไดโดย การใชคำาสง

เชน

สำาหรบสงให อาพาเชเวบเซรฟเวอร (Apache Web Server) เรมตนทำางาน หรอ

สำาหรบสงใหหยดทำางาน

ในกรณทไมตองการใหเซอรวชเหลานเรมทำางานโดยอตโนมต หลงจากตดตงไปแลว กสามารถใชคำาสง update-rc.d ในการสง enable ใหเรมทำางานแบบอตโนมต หรอ disable ไมใหเรมทำางานแบบอตโนมต สำาหรบการใหบรการเหลาน เชนเมอไมตองการให โปรแกรมอาพาเชเวบเซรฟเวอรเรมทำางานอตโนมตหลงจากบทเครอง จะใชคำาสง

และเมอตองการใหทำางานอตโนมตหลงจากบทเครองกใหใชคำาสง

เปนตน

บรรณานกรม1. debsq00: Garron, Guillermo, Debian Squeeze 6.0 installation screen shots and review, 2011,

http://go2linux.garron.me/linux/2011/01/debian-squeeze-6-0-installation-screen-shots-and-review-8912. debsq01: จนทรพรม, ฉตรชย, การตดตง Debian Squeeze ผานเครอขาย โดยใช mini.iso, 2011,

http://share.psu.ac.th/blog/etc/18262

service servicename [start|stop]

service apache2 start

service apache2 stop

update­rc.d apache2 disable

update­rc.d apache2 enable

Page 22: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·
Page 23: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 3 การตดตงและปรบแตงเราทเตอร3.1 การตดตงเพอใชงานเปนแบบเราทเตอร

การใชงานเครองคอมพวเตอรสวนบคคลทวไป เพอทำาหนาทเปนเซรฟเวอรใหบรการสำาหรบระบบเครอขายคอมพวเตอร เครองเซรฟเวอรซงใหบรการตางๆหลายอยาง สามารถตดตงเพอเพมเขาไปในระบบเครอขายเดมทมอยแลวได โดยไมสงผลกระทบตอการใชงานของคอมพวเตอรอนๆ ทอยภายในเครอขายเดม (ตามตวอยางใน รปท 2: การเพมเซรฟเวอรเขาไปในเครอขายเดม)

ตวอยางของเซรฟเวอรเหลานคอ เวบเซรฟเวอร (Web Server) เอฟทพเซรฟเวอร (Ftp Server)เมลเซรฟเวอร (Mail Server) เปนตน แตสำาหรบการใหบรการบางประเภทเชน ดเอชซพเซรฟเวอร(DHCP Server) ซงทำาหนาทแจกจายไอพแอดเดรส (IP Address) ใหกบเครองคอมพวเตอรในระบบเครอขาย ซงใชวธการกำาหนดไอพแอดเดรสแบบไดนามค นนคอดเอชซพเซรฟเวอรจะเปนตวระบวา เครองคอมพวเตอรเครองนนๆจะตองมไอพแอดเดรสเปนหมายเลขอะไร ถามการตดตงดเอชซพเซรฟเวอรตวใหมเพมขนมาในระบบเครอขายเดม ซงมตวดเอชซพเซรฟเวอรเดมแจกจายไอพแอดเดรสอยแลว สงทจะเกดขนมได 2 กรณคอ

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

รปท 2: การเพมเซรฟเวอรเขาไปในเครอขายเดม

Page 24: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

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

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

อยางไรกตาม การทดสอบการใหบรการของเครอขาย ทแยกอยอยางโดดเดยวโดยไมเชอมตอกบเครอขายอนๆ หรอไมเชอมตอกบเครอขายอนเทอรเนต (internet) อาจทำาไดไมสมบรณ ตวอยางเชนการใหบรการอเมล (e-Mail) และดเอนเอส (DNS) เปนตน เนองจากทงสองบรการเปนการใหบรการขามเครอขายหรอขามโดเมน ดงนน เครอขายสำาหรบทดสอบการใหบรการเหลานจะตองเชอมตอกบเครอขายอนๆ หรอกบเครอขายอนเทอรเนตเพอใหทดสอบการใหบรการจรงได

วธการซงทำาใหไดตรงตามความตองการทกลาวมาขางตน คอตองมเครอขายแยกอสระจากเครอขายเดม เพอทจะทดสอบเซรฟเวอรทถกตดตงได โดยไมรบกวนการใชงานและการใหบรการของเครอขายเดม อยางไรกดเซรฟเวอรและคอมพวเตอรในเครอขายนยงสามารถเชอมตอกบเครอขายอนๆได ดวยอปกรณเชอมตอระหวางเครอขายซงอยในเนทเวรกเลเยอร (Network Layer)อปกรณตวนเรยกวาเกทเวย (Gateway) หรอเราทเตอร (Router) ดง รปท 3: เครอขายสำาหรบทดสอบเซรฟเวอร

เราทเตอร หรอเกทเวย เปนชอเรยกอปกรณเครอขายประเภทเดยวกน ซงใชเชอมตอ ระหวางเครอขายคอมพวเตอร ตงแตสองเครอขายขนไป โดยจะทำาหนาทสงแพคเกจ (packet) ขอมลระหวางเครอขาย

รปท 3: เครอขายสำาหรบทดสอบเซรฟเวอร

Page 25: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในหนวยงานหนงๆ อาจมอปกรณเราทเตอรสำาหรบเชอมตอเครอขายยอยๆภายในหลายตวได และจะเรยกอปกรณสำาหรบเชอมตอไปยงเครอขายภายนอกวา เกทเวย ซงหมายถงประตหรอทางผานตวอยางเชน ในระบบเครอขายของมหาวทยาลยสงขลานครนทร จะมอปกรณเราทเตอรทใชเชอมตอระหวาง คณะหรอภาควชาตางๆเขากบเครอขายของศนยคอมพวเตอร และมตวเราทเตอรหลกซงใชเชอมตอกบ เครอขายของยนเนท (UniNet) ซงจะเรยกอปกรณเราทเตอรนนวา เปนเกทเวยของมหาวทยาลยสงขลานครนทร

ตวเกทเวยทมใชงานอยในปจจบนสำาหรบเครอขายขนาดใหญ จะนยมใชอปกรณทเรยกวา เลยเยอรทรสวทช (Layer3 Switch) 2 ซงจะทำาหนาทไดทงเปน สวทชในเลยเยอรทสองและทำาหนาทเราทตงเนทเวรกโปรโตคอล (routing network protocol) ซงอยในเลยเยอรทสามของโอเอสไอโมเดลไดอกดวย เครอขายคอมพวเตอรในหนวยงานตางๆ เกอบทงหมดทมใชงานจรง ในมหาวทยาลยสงขลานครนทร (ไมรวมเครอขายทใชในการทดสอบ) จะใชอปกรณประเภทเลยเยอรทรสวทชนสำา หรบเชอมตอ ระหวางเครอขาย ซงรวมถงการเชอมตอระหวางเครอขายของคณะวศวกรรมศาสตรเขากบ เครอขายของศนยคอมพวเตอรมหาวทยาลยสงขลานครนทร และเครอขายของภาควชา วศวกรรมคอมพวเตอรดวยเชนกน

อยางไรกตามเราสามารถตดตงเครองคอมพวเตอรธรรมดาทวไป ทใชงานระบบปฏบตการเชนลนกซ หรอยนกซในตระกลของบเอสด สำาหรบใหทำาหนาทเปนอปกรณเราทเตอรได โดยไมจำาเปนจะตองใชเลยเยอรทรสวทช และสำาหรบการจดเตรยมระบบเครอขายสำาหรบการทดสอบครงน ไมไดใชงานอปกรณเครอขายจรง แตเปนการจำาลองขนมาโดยใชเทคโนโลยเวอรชวลไลซเซชน(Virtualization) ดงนนในบทน จะเรมจากการบรรยาย ขนตอนของการตดตงเครองคอมพวเตอรเพอใหทำาหนาทเปนอปกรณเราทเตอรโดยใชระบบปฏบตการลนกซขนมากอน เพอทจะใชงานในการแยกเครอขายสำาหรบการทดสอบออกจากเครอขายทใชงานจรง และกอนทจะไปถงขนตอนของการตดตงตวเซรฟเวอรอนๆตอไป

3.2 การตดตงเพอใชงานเปนเราทเตอร โดยใชเดเบยนลนกซโดยทวไปอปกรณซงทำาหนาทเปนเราทเตอรในเครอขายคอมพวเตอร จะมอปกรณสำาหรบเชอมตอ

2 ซงมความหมายอางองตาม โมเดลของโอเอสไอ (OSI Model) [http://en.wikipedia.org/wiki/OSI_model]

โดยคำาวา สวทช (Switch) จะเทยบเคยงกบเลยเยอรทสอง (Layer 2) ซงในปจจบนเครอขายสวนใหญจะใชอเทอรเนตสวทช (Ethernet Switch) ตวอเทอรเนตสวทชจะทำางานในการสงผานแพคเกจของขอมลทเทยบเทากบ เลยเยอรทสองของโอเอสไอโมเดล

Page 26: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

กบเครอขาย ตางๆเทากบจำานวนเครอขายทถกเชอมตอ โดยจะเรยกอปกรณนวา เนทเวรกอนเตอรเฟสคารด (Network Interface Card – NIC) ในรปแบบเดม อปกรณเนทเวรกอนเตอรเฟสคารดนจะมลกษณะเปนแผงวงจร (card) ซงสามารถ เสยบเขา/ถอดออก จากเครองคอมพวเตอรได แตสำาหรบคอมพวเตอรทใชงานในปจจบน ตวอปกรณจะรวมกบเมนบอรด (Mainboard) ของคอมพวเตอร ไมไดมลกษณะเปนแผงวงจรอกตอไป และมชองเสยบสายเคเบล สำาหรบเครอขายแบบอเทอรเนต สำาหรบกรณของเครอขายแบบไรสาย (Wireless Network) จะไมมอปกรณภายนอกแสดงใหเหนเนองจากการเชอมตอใชตวถงเครองคอมพวเตอร แบบตงโตะหรอโนตบกเปนสายอากาศสำาหรบรบ/สงสญญาณ ปจจบนเครองคอมพวเตอรทกเครองสามารถเชอมตอกบเครอขายผานเนตเวรกอนเทอรเฟสคารดน และสำาหรบตวเราทเตอร กจะมชองทางสำาหรบเชอมตอเครอขายอยอยางนอย 2 ชองทาง ซงแตละชองทางจะเชอมตอกบเครอขายทตางกน และทำาหนาทสงตอแพกเกจของขอมลระหวาง 2 เครอขายนน 3

กรณของเครองคอมพวเตอรแบบทวไป ซงจะนำามาใชงานในลกษณะของเราทเตอร จะมจำานวนอเทอรเนตคารด (หรออแดปเตอร – Adapter) เทากบจำานวนเครอขายทตองการเชอมตอ

สำาหรบการจำาลองคอมพวเตอรดวยเวอรชวลบอกซ โดยสรางเวอรชวลแมชชนขนมา เวอรชวลบอกซจะกำาหนดจำานวนเนทเวรกอนเทอรเฟส ใหกบเวอรชวลแมชชนเพอเชอมตอกบเครอขาย ใหเพยงอนเทอรเฟสเดยว (คาโดยปรยาย) แตอาจเพมจำานวนเนทเวรกอนเทอรเฟสไดถง 4อนเทอรเฟส ซงสามารถทำาได 2 วธคอ 1) ผานคอมมานดไลน (Command Line) โดยการใชคำาสง VBoxManage ดงน

หรอ 2) โดยผานเวอรชวลบอกซเมเนเจอร ซงเปนโปรแกรมควบคมเวอรชวลแมชชนของเวอรชวลบอกซแบบทใชจยไอ โดยเลอกเวอรชวลแมชชน (Virtual Machine – VM) ทสรางขนและคลก

3 เครองคอมพวเตอรแบบโนตบกทวไปทมอยในปจจบน จะมอปกรณทสามารถใช เชอมตอกบเครอขายไดอยางนอย 2

ชนดคอเครอขายอเทอรเนต ซงจะใชสายเคเบลแบบยทพ (UTP – Unshield Twisted Pair) กบเครอขายไรสาย (Wireless Network) ซงจะใชเสาอากาศซงโดยทวไปจะอยในตวโนตบกเอง เครองคอมพวเตอรแบบโนตบกจะสามารถทำาหนาทเปนเราทเตอรระหวางเครอขายไรสาย และเครอขายอเทอรเนตได ถาตองการทนำามาใชงาน ในลกษณะดงกลาวแตโดยลกษณะของการใชงานเครองคอมพวเตอรแบบโนตบกโดยทวไปในปจจบน ทงสองเครอขายทเชอมตออย โดยทวไปแลวจะเปนเครอขายเดยวกน เมอพจารณาจากเลยเยอรทสาม ของโอเอสไอโมเดล ซงทำาใหเครองคอมพวเตอรโนตบกทเชอมตอกบเครอขายในลกษณะดงกลาว จะทำางานในลกษณะของ มลตโฮมโหนด (Multi-home node) หรอ มลตอนเทอรเฟสโหนด (Multi-interface node) ไมไดทำางานในลกษณะของเราทเตอร

VBoxManage ­q modifyvm ROUTER ­nic2 intnet ­intnet2 LOCAL1

Page 27: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ปม Settings แลวเลอกหวขอ Network จากหนาตางแบบปอบอพ (pop-up windows) ทเปดขนมา และเลอกแทป (Tab) Adapter 2 ในหนาตางปอบอพนนแลวคลกเลอก Enable NetworkAdapter เลอกชนดของการเชอมตอ attached to เปนแบบ Internal Network และกำาหนดชอName เปน LOCAL1 (ดรายละเอยดจากภาคผนวกเรองการตดตงและปรบแตงเวอรชวลบอกซ)

การทดลองทจะทำาตอไปจะสรางเวอรชวลแมชชนของเวอรชวลบอกซขนมา โดยกำาหนดใหเวอรชวลแมชชนน ทำาหนาทเปนเราทเตอรซงเชอมตอระหวางเครอขายทใชงานอยจรง กบเครอขายจำาลองของเวอรชวลบอกซเอง ลกษณะของการจำาลองเวอรชวลแมชชนและเครอขายจำาลอง จะแสดงดงรปท รปท 4: สภาพแวดลอมสำาหรบเครอขายทดสอบ ทจำาลองโดยใชเวอรชวลบอกซ

โดยเวอรชวลแมชชนซงกำาหนดใหชอ ROUTER ในรปจะมเนทเวรกอนเทอรเฟสอย 2 อนเทอรเฟสอนเทอรเฟสแรกจะเชอมตอกบเครอขายจรง ซงในรปกำาหนดใหชอวา เครอขายภายใน (ซงหมายถงเครอขายจรงภายในหนวยงาน) สวนอกอนเทอรเฟสจะเชอมตอกบเครอขายจำาลองของเวอรชวลบอกซ ในรปกำาหนดใหชอวา เครอขายสำาหรบทดสอบ LOCAL1

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

รปท 4: สภาพแวดลอมสำาหรบเครอขายทดสอบ ทจำาลองโดยใชเวอรชวลบอกซ

Page 28: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณน อนเทอรเฟสของตวเราทเตอรดานทตดตอกบเครอขายจำาลองสำาหรบการทดสอบ จะตองกำาหนดชนดของการเชอมตอใหเปนแบบ Internal Network ตามทไดอธบายไวแลว สวนอนเทอรเฟสทตดตอกบเครอขายจรง จะตองกำาหนดชนดของการเชอมตอใหเปนแบบ Bridge โดยจะตองอยบนอนเทอรเฟสอเทอรเนตทเครองคอมพวเตอรจรง ใชในการตดตอกบเครอขายจรงอยในขณะนน

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

3.3 ซอฟตแวรแพกเกจทตองใชในการใชงานเปนเราทเตอร จะใชเฉพาะโปรแกรมอรรถประโยชนพนฐานเหลาน ทมตดตงอยกอนแลวคอ

• ifconfig

• route

• sysctl

• iptables

ซงมซอฟตแวรแพกเกจทจำาเปนตองใชเพอทดสอบการใชงานเราเตอรนอกจากน ดงตอไปน

• tcpdump

• netstat

• iproute2

• ping6

โดยผใชสามารถตดตงเพมเตมดวยคำาสงดงตอไปน

การกำาหนดไอพแอดเดรสใหกบตวเราทเตอร จะตางจากการกำาหนดไอพแอดเดรส ใหกบเครอง

apt­get install tcpdump netstat iproute2 ping6

Page 29: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

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

ในทนจะสมมตใหตวเราทเตอร เชอมตอกบเครอขายสองเครอขาย กำาหนดไอพแอดเดรสสำาหรบเครอขายภายในเปน 172.30.0.0/24 กำาหนดไอพแอดเรสของเครอขายสำาหรบการทดสอบเปน192.168.250.0/24 และกำาหนดไอพแอดเดรสของอนเตอรเฟสทงสองของตวเราทเตอรเปน172.30.3.36 กบ 192.168.250.1 ดง รปท 5: ไอพแอดเดรสสำาหรบเครอขายและเราทเตอรซงจะใชในการทดสอบ

ขนตอนของการกำาหนดใหคอมพวเตอรทำาหนาทเปนเราทเตอรสำาหรบเครอขายทงสอง มขนตอนดงตอไปน

1. กำาหนดไอพแอดเดรสใหกบอนเทอรเฟสทใชงาน

2. กำาหนดเสนทางการสงขอมลโดยปรยาย (default route) ใหกบอปกรณเราทเตอร

รปท 5: ไอพแอดเดรสสำาหรบเครอขายและเราทเตอรซงจะใชในการทดสอบ

Page 30: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

3. กำาหนดใหอปกรณเราทเตอรสงตอแพกเกจขอมลระหวางเครอขาย (forward packet)

4. กำาหนดใหอปกรณเราทเตอรแปลงไอพแอดเดรสสำาหรบเครอขายภายใน

การกำาหนดไอพแอดเดรสใหกบอนเทอรเฟสสำาหรบอนเทอรเฟสทเชอมตอกบเครอขายภายในสามารถทำาไดโดยการใชคำาสงดงตอไปน

และสำาหรบอนเทอรเฟสทเชอมตอกบเครอขายสำาหรบการทดสอบ (LOCAL1) จะใชคำาสง

โดยทงสองคำาสงจะทำาใหอปกรณเราทเตอรสามารถตดตอกบคอมพวเตอรในเครอขายทเชอมตอกบอนเทอรเฟสทงสองได

เมอใชคำาสงตอไปน

อปกรณเราทเตอรจงจะเรมสงตอแพกเกจ (forward packet) ระหวางเครอขายทงสองได

3.4 เนทเวรคแอดเดรสทรานสเลชนเนทเวรกแอดเดรสทรานสเลชน (Network Address Translation – NAT)4 คอการแปลงไอพแอดเดรสจากชดหนงไปเปนอกชดหนง เนองจากไอพแอดเดรสทใชในเครอขายทงสอง จะอยในชวงของแอดเดรสทใชงานภายใน (Private Address)5 ซงจะไปซำาซอนกบไอพแอดเดรสบางชวงซงใชงานในเครอขายของ มหาวทยาลยสงขลานครนทรปจจบน ซงถาอปกรณเราทเตอรทตดตงขนสงผานแพกเกจแบบปกต กจะทำาใหเครองคอมพวเตอรภายในเครอขายจำาลอง ไมสามารถตดตอกบเครอขายภายนอกได วธการแกปญหานอาจจะทำาไดสองลกษณะดงน

• โดยการกำาหนดไอพแอดเดรส ไมซำาซอนกบทใชงานอย ภายในเครอขายของภาควชาวศวกรรมคอมพวเตอรปจจบน และกำาหนดใหการเราทแพกเกจ (routing packet) บนอปกรณเราทเตอร ใหเปนสวนหนงของเครอขายภายในภาควชาฯ ซงวธการนคอนขางซบซอนยงยาก และเนองจากการใชงานสำาหรบการทดสอบน จะเปนการใชงานเพยงชวคราว มจดประสงคหลกเพอใชในการเขยนรายงานฉบบนเทานน จงจะไมเลอกใชวธการน

4 http://en.wikipedia.org/wiki/Network_address_translation5 http://en.wikipedia.org/wiki/Private_network

ifconfig eth0 172.30.3.36 netmask 255.255.0.0

ifconfig eth1 192.168.250.1 netmask 255.255.255.0

sysctl ­w net.ipv4.ip_forward=1

Page 31: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• ใชวธการเนทเวรกแอดเดรสทรานสเลชน (Network Address Translation) บนอปกรณเราทเตอร โดยเราทเตอรจะเปลยนไอพแอดเดรสตนทางภายในแพกเกจขอมล ทสงมาจากเครอขายสำาหรบการทดสอบ เปนไอพแอดเดรสของอปกรณเราทเตอรเอง แลวจงสงออกตอไปยงเครอขายภายนอก เมอเครองจากภายนอกตอบกลบ กจะเปลยนไอพแอดเดรสปลายทาง เปนไอพแอดเดรสของเครองทอยภายในเครอขายทดสอบ

วธการเปลยนไอพแอดเดรสจะเกดขนเฉพาะทอปกรณเราทเตอร ฉะนนจงงายกวาวธการแรก ดงนนในรายงานฉบบนจงเลอกใชวธการนเพอตดตอสอสารระหวางเครองภายในเครอขายจำาลอง กบเครองคอมพวเตอรภายนอกเครอขายได

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

เดเบยนลนกซหรอลนกซดสตรบวชนอนโดยทวไปจะใช ไอพเทเบล (iptables) 6 เปนเครองมอสำาหรบการสงคำาสงไปให เนทฟลเตอรเฟรมเวรค (Netfilter Framework)7 ของลนกซเคอรเนล(Linux Kernel) ในการควบคมจดการแพกเกจของขอมล จะม ทงการคดกรอง (filter) และเปลยนแปลง (translate) แพกเกจขอมลในแบบตางๆ การเปลยน ไอพแอดเดรสนจะอยในสวนของการ translate packet ซงสามารถระบใหเปลยนไอพแอดเดรส ของเครองคอมพวเตอรทงหมดทอยภายในเครอขายน ใหใชไอพแอดเดรสเดยวกน ซงเรยกวธการนวา มาสเควอเรด(masquerade) ซงเปนรปแบบทซบซอนนอยทสดโดยการใชคำาสงดงน

โดยแพกเกจขอมลของเครองคอมพวเตอร ทสงเขามายงอปกรณเราทเตอรทางอนเทอรเฟส eth1เพอสงตอไปทางอนเทอรเฟส eth0 จะถกเปลยนไอพแอดเดรสใหเสมอนกบวา แพกเกจเหลานสงจากอปกรณเราทเตอรเอง โดยใชไอพแอดเดรสทกำาหนดใหกบอนเทอรเฟส eth0 อยางไรกตามในการใชงานจรง การใชคำาสง iptables บนเราทเตอรนอกจากการใช ทรานสเลทแพกเกจขอมลแลวยงใชในการควบคมการเขาถงอปกรณเราทเตอรในแบบแอคเซสคอนโทรล (Access Control) ซงจะทำาใหมคำาสงทมขอกำาหนดรปแบบอนๆรวมอยดวย โดยทวไปแลว จะนยมเขยนคำาสงเหลานไวรวมกนในไฟลคำาสงเชลลสครปท (shell script)

6 http://en.wikipedia.org/wiki/Iptables7 http://en.wikipedia.org/wiki/Netfilter

iptables ­t nat ­A POSTROUTING ­o eth0 ­j MASQUERADE

Page 32: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอใชคำาสงตางๆในการกำาหนดคาใหกบระบบของเราทเตอร ตามทกลาวมาแลวทงหมดขางตนระบบของเราทเตอรกพรอมทจะใชงาน เปนอปกรณเราทเตอรของเครอขายภายในทจะใชทดสอบแตถาเมอไหรกตามทจะตองปดหรอชทดาวน (shutdown) เครองเราทเตอร คาตางๆทกำาหนดไวกจะหายไป และจะตองกำาหนดใหมเพอทจะใหเราทเตอรสามารถทำางานไดเหมอนเดม ซงวธการทใชกนจรงๆกคอ จะกำาหนดคาเหลานไวในไฟลคอนฟกของระบบ โดยในสวนของการกำาหนดไอพแอดเดรสใหกบอนเทอรเฟส ทเชอมตอกบเครอขายภายนอกและเครอขายทดสอบของเราทเตอรจะเกบไวในไฟล /etc/network/interfaces ดงตวอยางตอไปน

ทงนรายละเอยดของซนแทกซ (syntax) ในไฟล /etc/network/interfaces ของเดเบยนลนกซ ผทสนใจสามารถศกษาเพมเตมไดจากคมอของเดเบยน8

จากไฟลขางตนจะใชวธการเรยกใชเชลลสครปท (shell script) สำาหรบกำาหนดคาการคดกรองแพกเกจ (packet filtering) และทรานสเลทแพกเกจ (packet translation) โดยใชชอสครปทวาiptables.sh โดยเกบอยในไดเรคตอร /root/bin ซงสครปทดงกลาวมขอความดงตอไปน

8 http://www.debian.org/doc/manuals/reference/ch05.en.html#_the_basic_syntax_of_etc_network_interfaces

auto lo iface lo inet loopback 

auto eth0 iface eth0 inet static     address 172.30.3.211     netmask 255.255.252.0     broadcast 172.30.3.255     gateway 172.30.0.1     up /root/bin/iptables.sh start     down /root/bin/iptables.sh stop 

auto eth1 iface eth1 inet static     address 192.168.250.1     netmask 255.255.255.0     broadcast 192.168.250.255 

Page 33: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

คำาสงอนๆในตอนตน จะเปนการกำาหนดนโยบาย (policy) ของการรบ/สงขอมลของเราทเตอรเองเพอใหมความปลอดภยในการใชงาน และคำาสง iptables -t nat -A ... จะใชสำาหรบการทรานสเลทแพกเกจ ตามทไดอธบายไวขางตน

ในสวนของการกำาหนดคาการสงแพกเกจระหวางเครอขาย (packet forwarding) กจะกำาหนดไวในไฟล /etc/sysctl.conf โดยเพมคำาสงทแสดงไวในบรรทดถดไปในไฟล

หลงจากนน เมอบทเครองเราทเตอรใหม คาคอนฟกเหลานกจะกำาหนดใหเราทเตอรพรอมทำางานโดยอตโนมต

#!/bin/sh 

case "$1" in start) iptables ­P INPUT DROP iptables ­P OUTPUT ACCEPT iptables ­P FORWARD DROP 

iptables ­A INPUT ­m state ­­state ESTABLISHED,RELATED \          ­j ACCEPT iptables ­A INPUT ­m state ­­state NEW ­i eth1 ­j ACCEPT iptables ­A FORWARD ­i eth1 ­o eth0 ­j ACCEPT iptables ­A FORWARD ­i eth0 ­o eth1 ­j ACCEPT iptables ­A FORWARD ­i eth0 ­o eth0 ­j REJECT 

iptables ­t nat ­A POSTROUTING ­o eth0 ­j MASQUERADE ;; 

stop) iptables ­X iptables ­F ;; 

*) echo "Usage: $0 [start|stop]" exit ;; 

esac 

net.ipv4.ip_forward=1

Page 34: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 4 การตดตงดเอชซพเซรฟเวอร (DHCP Server)

4.1 โปรโตคอลสำาหรบการกำาหนดหมายเลขของโฮสตแบบไดนามคDHCP 9 หรอไดนามคโฮสตคอนฟกก เร ชนโปรโตคอล (Dynamic Host ConfigurationProtocol) เปนโปรโตคอลสำาหรบกำาหนดไอพแอดเดรสใหกบเครองคอมพวเตอร หรออปกรณอนๆในเครอขายทตองการไอพแอดเดรสสำาหรบสอสาร การกำาหนดแอดเดรสใหกบเครองคอมพวเตอร เพอทจะใชในการสอสารกบคอมพวเตอรอนๆ โดยใชโปรโตคอลในชดทซพไอพ(TCP/IP) อาจจะใชวธการกำาหนดแอดเดรสแบบแมนวล (Manual) หรอแบบอตโนมตได

การกำาหนดแอดเดรสแบบแมนวล มกนยมใชกบเครองททำาหนาทเปนเซรฟเวอรหรอเราทเตอรเนองจากเครองเหลานจะใชแอดเดรสเดม ในการใหบรการในเครอขายเดม โอกาสทจะเปลยนแปลงแอดเดรสมนอยมาก ดงนนการกำาหนดแอดเดรสใหกบเซรฟเวอรแบบแมนวล และกำาหนดใหเปนสแตตคแอดเดรส (Static Address) จะเปนทนยมมากกวาการกำาหนดแอดเดรสใหแบบอตโนมต และปจจบนยงไมมโปรโตคอลรองรบ สำาหรบการกำาหนดแอดเดรสแบบอตโนมตใหกบอปกรณเราทเตอร

สวนเครองคอมพวเตอรซงใชงานในลกษณะไคลเอนท (client computer) 10 คอมพวเตอรเหลานอาจจะเคลอนยายไปเชอมตอกบเครอขายตางๆ ได 11 การกำาหนดแอดเดรสใหกบอปกรณเหลานจะนยมกำาหนดแบบไดนามคมากกวากำาหนดแบบสแตตค การกำาหนดไอพแอดเดรสแบบไดนามคนขอมลซงใชในการกำาหนดไอพแอดเดรสจะเกบอยบนเซรฟเวอร ไมไดเกบไวบนอปกรณไคลเอนท

วธการระบแอดเดรสสำาหรบอปกรณไคลเอนททนยมใชกนในปจจบน จะใชโปรโตคอลดเอชซพ(DHCP Protocol)12 ในการรองขอไอพแอดเดรสจากตวดเอขซพเซรฟเวอร (DHCP Server)

9 ในทนจะหมายถงดเอชซพสำาหรบไอพเวอรชนส (IPv4) เทานน สำาหรบไอพเวอรชนหก (IPv6) สามารถเลอกใชดเอชซพวซกซ (DHCPv6) หรออาจจะใชวธการกำาหนดแอดเดรสแบบสเตทเลส (Stateless Auto Configuration) กได

10 ซงมไดหลากหลายรปแบบตงแตเครองแบบตงโตะ (desktop personal computer) ในหองปฏบตการ หรอประจำาโตะในสำานกงาน หรอเครองคอมพวเตอร แบบพกพาอยางเชน โนตบก (Notebook) เนทบก (Netbook) หรออปกรณสำาหรบเชอมตอกบอนเทอรเนต แบบเคลอนทได (Mobile Internet Device – MID) เชนแทบเลต (Tablet) ตางๆ

11 เชนในกรณของ โมไบลดไวซ (Mobile Device) ในเครอขายไรสาย12 http://tools.ietf.org/html/rfc2131

Page 35: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

4.2 การตดตงและปรบแตงไอเอสซ ดเอชซพเซรฟเวอรดเอชซพเซรฟเวอรทมใหใชงานบนระบบปฏบตการลนกซ มใหเลอกใชอยจำานวนหนง แตทนยมใชมากทสดคอดเอชซพเซอรเวอรของ Internet Systems Consortium (ISC)13 วธการตดตงและกำาหนดไอพแอดเดรสมขนตอนดงตอไปน

ตดตงแพกเกจ isc-dhcp-server ดวยคำาสงดงน

แพกเกจ isc-dhcp-server จะเกบไฟลคอนฟกทเกยวของไวในไดเรคตอร /etc/dhcp โดยตวไฟลหลกสำาหรบกำาหนดคาคอนฟกสำาหรบดเอชซพเซรฟเวอรคอไฟล /etc/dhcp/dhcpd.conf

การกำาหนดไอพแอดเดรสแบบไดนามคจะใชรปแบบพล (Pool) กลาวคอจะมการระบวามชวงของไอพแอดเดรสใหแจกจายอยในชวงใดบางในกลมนน เมอมการรองขอไอพแอดเดรสจากเครองทเปนไคลเอนท ดเอชซพเซรฟเวอรจะเลอกไอพแอดเดรสทเหลออยในพล สงกลบไปใหเครองทรองขอ และบนทกไอพแอดเดรสทแจกจายออกไปแลว ไวในไฟลขอมลทเรยกวาลสไฟล (Leasefile) ใน /var/lib/dhcp/dhcpd.leases

ในลสไฟลจะมการบนทกเวลาซงเครองไคลเอนทสามารถใชงานไอพแอดเดรสนนได เมอเครองไคลเอนทใชงานแอดเดรสนน เกนชวงเวลานแลวกจะรองขอการใชงานไอพแอดเดรสนนใหม ระยะเวลานคอ ลสไทม (lease time) ซงสามารถกำาหนดในคอนฟกของดเอชซพไดวา จะใหมระยะเวลานานเทาไร

การระบไอพแอดเดรสทดเอชซพเซรฟเวอรไดแจกจายใหกบเครองไคลเอนท จะใชการจบคระหวางแมคแอดเดรส (MAC Address) กบ ไอพแอดเดรส (IP Address) โดยแมคแอดเดรสของเครองจะเปนคาทกำาหนดไวใน ฮารดแวรของเนทเวรกอนเทอรเฟสคารดทเครองไคลเอนทนนใชอย ซงแมคแอดเดรสนจะไมเปลยนแปลง สำาหรบเครอขายทนยมใชกนในปจจบนคอ เครอขายแบบอเทอรเนต(Ethernet) กบเครอขายไรสาย (WiFi) การระบแมคแอดเดรส จะเปนตวเลขฐาน 16 จำานวน 6ชด และใชเครองหมายโคลอน (’:’) หรอเครองหมายลบ (’-’) สำาหรบคนตวเลขแตละชดนน โดยระบบปฏบตการลนกซจะแสดงหมายเลขแมคแอดเดรสในลกษณะน 00:1E:C9:07:37:B7 สวนระบบปฏบตการวนโดวส (Windows) จะแสดงหมายเลขแมคแอดเดรสเดยวกน ในลกษณะน00-1E-C9-07-37-B7

ในกรณทเครองคอมพวเตอรซงเคยรองขอไอพแอดเดรสมากอนหนาน จะมแมคแอดเดรสบนทกอย

13 http://www.isc.org

apt­get install isc­dhcp­server

Page 36: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในลสไฟล เมอมการรองขอไอพแอดเดรสครงใหม ดเอชซพเซรฟเวอรกจะสงไอพแอดเดรสเดม ทเคยกำาหนดใหกบแมคแอดเดรสทบนทกอยในลสไฟลกลบไปให ยกเวนในกรณทจำานวนไอพแอดเดรสทมอยในพล มจำานวนนอยกวาจำานวนเครองคอมพวเตอรทตองการ แอดเดรส อาจจะจำาตองใชกระบวนการรไซเคลแอดเดรส (Recycle Address) กำาหนดไอพแอดเดรสอนทไมมการใชงานในขณะนนๆสงไปใหเครองทรองขอกอน ซงทำาใหเครองคอมพวเตอรเครองเดม เมอสงคำารองขอไอพแอดเดรส ในชวงเวลาททงหางจากการรองขอครงแรก นานเกนชวงเวลาหนง อาจไดหมายเลขไอพแอดเดรส ทตางกนออกไปในการรองขอแตละครง

คาปรยายในการกำาหนดคาคอนฟกดเอชซพเซรฟเวอร จะบนทกการรองขอและตอบกลบเอาไวในลอกของระบบ (System Log) ซงโดยทวไปลอกของระบบนจะเกบไวในไฟล /var/log/syslogทงนผดแลระบบ สามารถตรวจสอบการรองขอและการตอบกลบการขอไอพแอดเดรส โดยใชโปรโตคอลดเอชซพได โดยใชคำาสง

ตวอยางของลอกทเกดขนจากการรองขอไอพแอดเดรสจากเครองไคลเอนท และการตอบกลบของดเอชซพเซรฟเวอร

โดยบรรทดทมขอความ DHCPINFORM จะเปนการสงขอมลหมายเลขไอพแอดเดรสจากเครองไคลเอนท มายงเครองดเอชซพเซรฟเวอร ระบวาหมายเลขไอพทใชอยปจจบนคอหมายเลขใด ซงจะเปนการขอตออายลสไทม ของไอพแอดเดรสเดม ดเอชซพเซรฟเวอรกจะตอบดวยขอความDHCPACK เปนการตอบกลบ (acknowledge) การรองขอของเครองไคลเอนทครงนน

4.3 ตวอยางการกำาหนดคอนฟกของดเอสซพเซรฟเวอรสมมตใหมเครอขายภายใน ซงตองการใชวธดเอชซพในการกำาหนดไอพแอดเดรส ใหกบเครองไคลเอนทในเครอขายดงรป Error: Reference source not found ซงเครองเราทเตอร (router1,router2) และเซรฟเวอร (DNS Server, DHCP Server) ในรป จะใชวธการกำาหนดไอพแอดเดรสแบบสแตตค และเครองไคลเอนท (client1, client2) ซงอยใน 2 เครอขาย จะใชวธการกำาหนดไอพแอดเดรสแบบไดนามค โดยดเอชซพเซรฟเวอรในภาพจะเปนตวแจกจายไอพแอดเดรส

grep DHCP /var/log/syslog

Jul 29 06:37:50 ninedots dhcpd: DHCPINFORM from 172.30.232.226 via 172.30.232.1 Jul 29 06:37:50 ninedots dhcpd: DHCPACK to 172.30.232.226 (00:1b:fc:30:3b:16) ...Jul 29 06:37:51 ninedots dhcpd: DHCPREQUEST for 172.30.232.245 from ... Jul 29 06:37:51 ninedots dhcpd: DHCPACK on 172.30.232.245 to ...

Page 37: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

กำาหนดให เครอขายสำาหรบการทดสอบน เปนเครอขายภายในภาควชาวศวกรรมคอมพวเตอรของมหาวทยาลยสงขลานครนทร ซงจะมโดเมนเนม (domain name) เปนของตนเองชอวาcoe.psu.ac.th เครอขายยอยทงสองในทนคอ LOCAL1 และ LOCAL2 จะใชดเอนเอสเซ ร ฟ เวอ ร (DNS Server) 14 ใ น เ ค ร อ ข า ย LOCAL1 ม หมาย เลข ไอ พแอด เ ด รส เ ป น192.168.250.2

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

14 ซงรายละเอยดเพมเตมกลาวถงในบทท 5

รปท 6: ตวอยางเครอขาย สำาหรบกำาหนดคอนฟกดเอชซพเซรฟเวอร

Page 38: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

จากตวอยางคอนฟกขาง ตน คาขอกำา หนด (directive) ทสำา คญและควรกำา หนดไวคอauthoriative แมวาไมไดกำาหนดคานไวในคอนฟก ดเอชซพเซรฟเวอรจะยงสามารถทำาหนาทแจกจายไอพแอดเดรส ใหกบเครองไคลเอนทไดตามปกต แตในกรณทเครองไคลเอนทรองขอไอพแอดเดรสทไมถกตอง เชนเครองโนตบกซงยายการเชอมตอจากเครอขายไรสายหนงไปยงอกเครอขายหนง เครองโนตบกจะรองของไอพแอดเดรสเดมโดยใชแอดเดรสเดมกอน ซงในกรณทอยตางเครอขายกน ดเอชซพเซรฟเวอรควรจะสงขอความแจงเครองไคลเอนทเพอยกเลกการใชไอพแอดเดรสทรองขอมา และกำาหนดไอพแอดเดรสใหมใหใชแทน ขอกำาหนด authoriative จะทำาใหดเอชซพเซรฟเวอรสงขอความยกเลกไอพแอดเดรสทไมปรากฎอยในพล ใหกบเครองไคลเอนทได

คาของ default-lease-time และ max-lease-time คออายของ lease (ไอพแอดเดรส) มหนวยเปนวนาท ซงจะเปนชวงเวลาทเครองไคลเอนทตองรองขอไอพแอดเดรสใหม หลงจากใชไอพแอดเดรสไปเทากบหรอนานกวาชวงเวลาน เครองไคลเอนทสามารถระบคา lease time เองไดแตดเอชซพเซรฟเวอรจะตอบคากลบไปไมเกนคาของ max lease time ทกำาหนดเอาไวในคอนฟก ในกรณทเปนเครองคอมพวเตอรแบบ เดสทอปซงไมคอยไดเคลอนยาย (เชนในหองปฏบตการ) กสามารถกำาหนดคาใหเปนคาสงๆได เชนกำาหนดเปนคา 86400 ซงอายของ lease จะเทากบ 1 วน แตถาเปนเครอขายไรสาย กควรจะกำาหนดคาใหไมนานมากเกนไป เชน เปนคา 1800ซงเครองไคลเอนทจะใชไดนานเทากบ 30 นาท

คาขอกำาหนด subnet จะใชระบชวงของไอพแอดเดรสทดเอชซพเซรฟเวอร สามารถแจกจายใหกบเครองไคลเอนทเมอมการรองขอ โดยจะกำาหนดเปน ชวง (range) ระบแอดเดรสเรมตนและแอดเดรสสดทาย ตามตวอยาง

option domain­name "coe.psu.ac.th"; option domain­name­servers "192.168.250.2"; 

default­lease­time 600; max­lease­time 720; 

authoriative; 

# Network LOCAL1 subnet 192.168.250.0 netmask 255.255.255.0 {         range 192.168.250.100 192.168.250.199;         options routers 192.168.250.1 } 

# Network LOCAL2 subnet 192.168.200.0 netmask 255.255.255.0 {         range 192.168.200.100 192.168.200.199;         options routers 192.168.200.1 } 

Page 39: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เนองจากการรองขอไอพแอดเดรสจากเครองไคลเอนทมายงดเอชซพเซรฟเวอร จะใชวธการสงขอความรองขอแบบบรอดคาสต (broadcast) ขอความลกษณะนจะสงถงดเอชซพเซรฟเวอรไดเมอทงดเอชซพเซรฟเวอรและไคลเอนทอยในเครอขายเดยวกน สำาหรบเครอขายของหนวยงานโดยทวไปจะมหลายเครอขายยอย ซงการกำาหนดไอพแอดเดรสใหกบคอมพวเตอรในเครอขายยอยเหลาน อาจใชดเอชซพเซรฟเวอรเพยงเครองเดยวได โดยเพมเนทเวรคอนเทอรเฟสบนเครองดเอชซพเซรฟเวอรใหตอกบทกเครอขายทมอย หรอใชดเอชซพรเลย (DHCP Relay) สำาหรบการสงตอ(Relay) ขอความรองขอไอพแอดเดรสจากไคลเอนทและขอความตอบกลบจากดเอชซพเซรฟเวอรโดยดเอชซพรเลยจะตองอยบนอปกรณเราทเตอรซงตอระหวางเครอขายของไคลเอนทกบเครอขายของดเอชซพเซรฟเวอร

สำาหรบบางเครอขาย ทไมตองการใหดเอชซพเซรฟเวอรแจกจายไอพแอดเดรส เชนเปนเครอขายของเซรฟเวอร ซงการกำาหนดไอพแอดเดรสใหกบเซรฟเวอรจะใชวธการกำาหนดแบบสแตตคสำาหรบเครอขายนจะกำาหนด subnet เอาไวแตระบวาไมแจกจายไอพแอดเดรสไดโดยการกำาหนดแบบน

สำาหรบคอมพวเตอรบางเครองซงเปนเครองทไมมการเคลอนยายบอยครงเชนเครองคอมพวเตอรแบบเดสทอปของบคลากรหรอเครองคอมพวเตอรซงใชงานในหองปฏบตการ ซงผดแลตองการทจะกำาหนดไอพแอดเดรสไมใหมการเปลยนแปลง และระบเปนไอพแอดเดรสทตองการ โดยการระบขอกำาหนด host ใหอยในสวนของ subnet ตามตวอยาง

# Network LOCAL1 ­­ No DHCP Client in this Subnet # But since DHCP Server in this Subnet, this subnet must be defined 

subnet 192.168.250.0 netmask 255.255.255.0 {} 

... # Network LOCAL1 subnet 192.168.250.0 netmask 255.255.255.0 {         range 192.168.250.100 192.168.250.199;         options routers 192.168.250.1 

        host client1 {              hardware ethernet 00:1E:C9:07:37:B7;              fixed­address 192.168.250.101;         } ... } ... 

Page 40: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงพารามเตอรของ host กจะประกอบไปดวย ฮารดแวรแอดเดรส (Hardware Address) คอhardware ethernet กบคาแอดเดรสทกำาหนดเอาไว (fixed-address) ซงในสวน hardwareethernet จะใชระบ แมคแอดเดรส (MAC Address) ของอ เทอร เนท (Ethernet) และfixed-address จะใชระบหมายเลข ไอพแอดเดรสหรอจะใชชอเครองคอมพวเตอรซงกำาหนดเอาไวในระบบโดเมนเนม (Domain Name System – DNS) กได ซงในกรณทกำาหนดเปนชอ ดเอชซพเซรฟเวอรกจะเปลยนจากชอโดเมนไปเปนไอพแอดเดรสได โดยสงคำารองขอคนหาไอพแอดเดรสจากชอโดเมนไปยงเครองดเอนเอสเซรฟเวอร และรบคำาตอบกลบมาเปนไอพแอดเดรส

ขอมลทดเอชซพเซรฟเวอรสงกลบไปใหเครองไคลเอนทเมอเครองไคลเอนทรองขอไอพแอดเดรสใหม โดยการสงขอความ DHCP Request นอกจากไอพแอดเดรสแลว กยงมขอมลไอพแอดเดรสของดเอนเอสเซรฟเวอร (DNS Server) ไอพแอดเดรสของเราทเตอร ซงคาขอมลเหลานจะเปนคาทเครองไคลเอนทโดยทวไปจำาเปนจะตองใชเพอใหสามารถตดตอกบเครอขายภายนอกได นอกจากนดเอชซพเซรฟเวอรยงสามารถสงคาอนๆใหกบเครองไคลเอนททรองขอไอพแอดเดรสไดอก เชนสำาหรบเครองไคลเอนทซงไมมแหลงเกบขอมล (เชนฮารดดสก) เปนของตนเอง แตมความสามารถทจะบทเครองผานเครอขายได ผดแลระบบสามารถกำาหนดขอมลเพมเตมในขอความทตอบกลบโดยดเอชซพเซรฟเวอร เพอระบวาใหเครองไคลเอนทเครองนนใชเครองเซรฟเวอรเครองใด และใชไฟลขอมลใดสำาหรบการบทระบบของตนเองผานเครอขาย

เชนตองการกำาหนดใหเครองไคลเอนททบทระบบผานพเอกซอบท (PXEBoot) ดาวโหลดไฟลขอมลสำาหรบการบทจากเครองทเอฟทพเซรฟเวอร ชอ tftp.coe.psu.ac.th โดยไฟลสำาหรบการบทมชอวา pxelinux.0 กสามารถเพมขอความดานลางนเขาไปในคอนฟกของดเอชซพเซรฟเวอร

โดยคาพารามเตอรของ next-server จะเปนไอพแอดเดรสหรอชอโดเมนเนมของทเอฟทพเซรฟเวอร (TFTP Server) ในสวนของการตดตงทเอฟทพเซรฟเวอรใหทำางานเปนเซรฟเวอรทเครองไคลเอนทสามารถบทระบบผานพเอกซอบทได จะกลาวถงในบทของการตดตงทเอฟทพเซรฟเวอร (TFTP Server)

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

next­server tftp.coe.psu.ac.th; filename "pxelinux.0"; 

Page 41: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ไมเอาขอมลทดเอชซพเซรฟเวอรตอบกลบมาใชงานจรงไดดงน

หรอ อาจใชคำาสง dhcping ซงเปนคำาสงอยในแพกเกจทตดตงเพมเตมไดโดยใชคำาสง

เมอตดตงแลวเสรจจะสามารถตรวจสอบการทำางานของดเอชซพเซรฟเวอรดงน

จากตวอยางการปอนคำาสงขางตน การใชคำาสง dhcping จะสามารถระบไอพแอดเดรสของตวดเอชซพเซรฟเวอรได ซงตางกบกรณการใชคำาสง dhclient ซงจะเปนการทำางานของเครองไคลเอนทจรงคอสงขอความรองขอไอพแอดเดรสแบบบรอดคาสต (broadcast DHCP Requestpacket) ออกไปโดยไมระบดเอชซพเซรฟเวอร

4.5 การใชงานดเอชซพรเลย (DHCP Relay)ดเอชซพรเลย (DHCP Relay) เปนโปรแกรมทจะตองตดตงบนอปกรณเราทเตอร เพอใหเราทเตอรสงขอความรองขอไอพแอดเดรส (DHCP Request) จากเครอขายทไมมดเอชซพเซรฟเวอรไปยงเครอขายทมดเอชซพเซรฟเวอร โปรแกรมนจะสนบสนนใหเราสามารถตดตงดเอชซพเซรฟเวอรเพยงตวเดยวในการใหบรการกำาหนดไอพแอดเดรสไดหลายเครอขายภายในหนวยงาน เปนการรวมศนยของการกำาหนดไอพแอดเดรสใหอยทเดยวทำาใหงายตอการดแลมากกวาม ดเอชซพเซรฟเวอรหลายตว

วธการตดตง ทำาไดโดยการปอนคำาสง บนเครองเราทเตอร

คาคอนฟกสำาหรบดเอชซพรเลยสามารถกำาหนดไดโดยระบไอพแอดเดรสหรอชอโดเมนเนมของดเอชซพเซรฟเวอรไวท ตวแปรเชลลชอ SERVERS ในไฟล /etc/default/isc-dhcp-relay ดงน

สวนตวแปร INTERFACES และ OPTIONS สามารถปลอยเปนคาวางได ไมจำา เปนตองเปลยนแปลง

dhclient ­n ­v eth0

apt­get install dhcping

dhcping ­s 192.168.250.2

apt­get install isc­dhcp­relay

SERVERS="dhcp.coe.psu.ac.th"

Page 42: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 5 การตดตงทเอฟทพเซรฟเวอร (TFTP Server)

5.1 ทเอฟทพเซรฟเวอร (TFTP Server)TFTP หรอ Trivial File Transfer Protocol15 เปนโปรโตคอลสำาหรบการรบสงไฟล ทออกแบบมาใหมความซบซอนนอยกวาโปรโตคอลทใชสำาหรบการรบสงไฟลแบบปกต (File TransferProtocol – FTP)16 โดยไมมสวนของการยนยนตวบคคล (Authentication) และ ฟงกชนทซบซอนอนๆ ดงนนโปรแกรมจงมขนาดเลก โดยใชเนอทสำาหรบเกบขอมลและหนวยความจำานอยมากโปรโตคอลนมกใชสำาหรบรบ/สงไฟลแบบอตโนมต หรอใชในการบทเครองคอมพวเตอรผานระบบเครอขาย ใชกรณทเครองคอมพวเตอร ไมมอปกรณสำาหรบเกบขอมล คอมพวเตอรขนาดเลกทใชในระบบเอมเบดเดด (embedded systems) สามารถเตรยมสวนของโปรแกรมซงโปรโตคอลนและเกบไวในเฟรมแวร (Firmware) ของระบบได

โปรแกรมทเอฟทพเปนสวนหนงของพเอกซอบท (PXEBoot)17 ซงมกจะเปนสวนหนงของเฟรมแวรของ เนทเวรคอนเทอรเฟสคารด (Network Interface Card) สมยใหมทวไป ซงจะทำาใหเครองคอมพวเตอรสามารถเลอกบทเครองจากเครอขายได

ในบทนเราจะอธบายการใชทเอฟทพเซรฟเวอรสำาหรบตดตงเดเบยนแบบอตโนมต โดยจะใชชดโปรแกรมตดตงของเดเบยนชอวา netinstall มาตดตงบนทเอฟทพเซรฟเวอรและกำาหนดขอมลพรสด (preseed) ในดเอชซพเซรฟเวอร ใหดาวนโหลดขอมลพรสดสวนทสองจากเวบเซรฟเวอรเมอเครองคอมพวเตอรบทจากเฟรมแวรของเนทเวรคอนเทอรเฟสคารดใหใชพเอกซอบท กจะรบขอมลพรสดสวนแรกจากดเอชซพเซรฟเวอร มากำาหนดไอพแอดเดรสและคอนฟกอนๆทเกยวของเพอใหสามารถใชงานเครอขายไดอยางถกตอง หลงจากนนกจะดาวโหลดขอมลพรสดสวนทเหลอจากเวบเซรฟเวอร และเรมกระบวนการตดตงแบบอตโนมตตอไปจนเสรจสมบรณ

5.2 การตดตงทเอฟทพเซรฟเวอรจากชดแพกเกจของเดเบยนจะมแพกเกจสำาหรบทำางานเปนทเอฟทพเซรฟเวอรอย 3 แพกเกจคอ

15 http://en.wikipedia.org/wiki/Trivial_File_Transfer_Protocol16 http://en.wikipedia.org/wiki/File_Transfer_Protocol17 http://en.wikipedia.org/wiki/Preboot_Execution_Environment

Page 43: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

แพกเกจทใชในบทนคอ atftpd ซงสามารถตดตงโดยใชคำาสงตอไปน

แพกเกจ atftp จะเปนโปรแกรมไคลเอนทสำาหรบทเอฟทพเซรฟเวอรแบบเดยวกบโปรแกรมเอฟทพ (ftp) ซงใชกบเอฟทพเซรฟเวอร (FTP Server) ซงจะใชสำาหรบทดสอบความถกตองในการทำางานของทเอฟทพเซรฟเวอร เมอตดตงแพจเกจ atftpd เสรจแลว โปรแกรมตดตงจะสรางไดเรคตอร /srv/tftp ซงใชเกบขอมลของทเอฟทพเซรฟเวอร

หล ง จ ากน น จะดาวน โหลดไฟล ข อม ลสำา หร บการ ตด ต ง เ ด เบ ยนผ าน เค ร อข า ย ช อnetboot.tar.gz จ า กhttp://ftp.th.debian.org/debian/dists/testing/main/installer-i386/current/images/netboot/netboot.tar.gz ซงเปนไฟลสำาหรบการตดตงใหโปรเซสเซอรซงใชชดคำาสงของอนเทลx86 ใหทำางานแบบ 32 bit18 หรอเลอกใชสถาปตยกรรม i386 (i386 Architecture) ในกรณทตองการใชงานโปรเซสเซอรทำางานแบบ 64 bit19 หรอเลอกใชสถาปตยกรรม amd64 (amd64Architecture) กเปลยนสวนของ URL จาก installer-i386 เปน installer-amd64

ไฟลดงกลาวสามารถดาวนโหลดโดยใชคำาสง wget ตามตวอยาง

หลงจากนนจะตองแยก (extract) ไฟล netboot.tar.gz ในไดเรคตอรของทเอฟทพเซรฟเวอรซงสามารถทำาไดดวยการใชคำาสง

ผลลพธหากถกตองควรจะไดไฟลใน /srv/tftp ดงน

18 http://en.wikipedia.org/wiki/X8619 http://en.wikipedia.org/wiki/X86-64

tftpd ­ Trivial file transfer protocol server atftpd ­ advanced TFTP server tftpd­hpa ­ HPA's tftp server

apt­get ­y install atftpd atftp

wget http://ftp.th.debian.org/debian/dists/testing/main/installer­i386/current/images/netboot/netboot.tar.gz

tar ­C /srv/tftp ­zxvf netboot.tar.gz

Page 44: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากเสรจสนขนตอนนกจะสามารถตรวจสอบการทำางานของทเอฟทพเซรฟเวอรได ทดลองใชโปรแกรมไคลเอนท atftp สำาหรบดาวนโหลดไฟล version.info มาดวยคำาสงตอไปน

ผลลพธของคำาสงนหากไดไฟล version.info นนหมายถงวาทเอฟทพเซรฟเวอรทำางานถกตอง

5.3 การคอนฟกดเอชซพเซรฟเวอรเพอใหเครองคอมพวเตอรบทจากทเอฟทพเซรฟเวอร

สวนของคอนฟกทจะตองกำาหนดเพมเตมใหกบเครองดเอชซพเซรฟเวอร เพอใหเครองคอมพวเตอรบทจากพเอกซอบท (PXEBoot) สามารถดาวนโหลดไฟลทใชสำาหรบการบทจากตวทเอฟทพเซรฟเวอรได จะตองเพม

โดยขอความทงสองบรรทดนจะใสไวในสวนของการกำาหนด subnet (subnet declaration) หรอสวนของการกำาหนด host (host declaration) กได ในกรณทกำาหนดไวในสวน subnet กจะทำาใหเครองคอมพวเตอรทอยในเครอขายนนทงเครอขายทสามารถบทดวยพเอกซอบท จะสามารถเลอกบทและตดตงเดเบยนผานเครอขายได ในกรณทกำาหนดไวในสวนของ host กจะเปนการระบใหเฉพาะเครองคอมพวเตอรนนๆ สามารถเลอกบทและตดตงเดเบยนผานเครอขายได

5.4 การแกไขคอนฟกเพอเพมพรสดสำาหรบเนทบทไฟลขอมลสำาหรบการตดตงเดเบยนผานเครอขายซงไดจาก netboot.tar.gz ตามทอธบายไวในตอนตน จะมคาคอนฟกซงกำาหนดไวเปนคาปรยายใหผตดตงจะตองเลอกชนดของการตดตงจากเมน ซงผตดตงจะตองตอบคำาถามตางๆเชนเดยวกบการตดตงจากอปกรณชนดอนเชน CDROM ซงทำา ใหกระบวนการตดตงไมไดเปนไปแบบอตโนมต เราสามารถเปลยนคาคอนฟกเพอให

root@tftp:/srv/tftp# ls ­al total 16 drwxr­xr­x 3 root root 4096 Jan 17  2011 . drwxr­xr­x 3 root root 4096 Jun  3 00:58 .. drwxr­xr­x 3 root root 4096 Jan 17  2011 debian­installer lrwxrwxrwx 1 root root   32 Aug 21 06:54 pxelinux.0 ­> debian­installer/i386/pxelinux.0 lrwxrwxrwx 1 root root   34 Aug 21 06:54 pxelinux.cfg ­> debian­installer/i386/pxelinux.cfg ­rw­r­­r­­ 1 root root   60 Jan 17  2011 version.info

echo "get version.info" | tftp localhost

next­server 192.168.250.4; filename "pxelinux.0";

Page 45: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

กระบวนการตดตงเปนไปแบบอตโนมตได

ไฟลคอนฟกของเดเบยนซงใชในการตดตงผานเครอขาย (Debian Netboot) ซงหลงจากตดตงบนท เ อ ฟ ท พ เ ซ ร ฟ เ ว อ ร แ ล ว จ ะ อ ย ใ น ไ ด เ ร ค ต อ ร/srv/tftp/debian-installer/i386/boot-screens/ โ ด ย จ ะ ป ร ะ ก อ บ ด ว ย ไ ฟล ห ล ก ค อsyslinux.cfg และมไฟลคอนฟกยอยซงมเอกเทนชนของไฟลเปน .cfg อยจำานวนมาก ซงไฟลคอนฟกยอยเหลานจะถกเลอกใช เมอผใชเลอกวธการตดตงแบบตางๆจากเมนแรกในการตดตงเชนไฟล txt.cfg ซงจะใชสำาหรบการตดตงแบบเทกซโมด (text mode) โดยทไฟลเหลานจะระบขอมลสำาหรบการบทเชนเคอรเนล (kernel) ของลนกซทจะใช และพารามเตอรสำาหรบการบทอนๆเชนในไฟล txt.cfg จะมขอมลดงตอไปน

การกำาหนดคาพรสดจะเปนการใสเปนการกำาหนดคาพารามเตอรทจะสงใหกบเคอรเนลของลนกซซงจะอยในบรรทด append ดงนนเพอทจะเปลยนการตดตงแบบเทกซโมดแบบธรรมดา ใหเปนการตดตงแบบอตโนมตกสามารถทำาไดโดยการเปลยนบรรทด append จากเดม

ใหมขอมลดงตอไปน

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

default install label install         menu label ^Install         menu default         kernel debian­installer/i386/linux         append vga=788 initrd=debian­installer/i386/initrd.gz ­­ quiet 

append url=http://tftp.coe.psu.ac.th/d­i/squeeze.cfg \ fb=false \ locale=en_US.UTF­8 \ language=en country=TH netcfg/get_hostname=t \ netcfg/get_domain=coe.psu.ac.th \ console­keymaps­at/keymap=us \ mirror/suite=squeeze \ DEBCONF_PRIORITY=critical \ DEBCONF_DEBUG=5 

append vga=788 initrd=debian­installer/i386/initrd.gz ­­ quiet 

Page 46: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณทจะใชเครอง tftp.coe.psu.ac.th สำาหรบใหขอมลพรสดในสวนทสองดวย นนคอจะตองตดตงเวบเซรฟเวอร (Web Server) บนเครอง tftp.coe.psu.ac.th ดวยเชนกน ทงนจะกลาวถงเรองของการตดตง เวบเซรฟเวอรในบทตอๆไป

url=http://tftp.coe.psu.ac.th/d­i/squeeze.cfg

Page 47: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 6 การตดตงดเอนเอสเซรฟเวอร (DNS Server)

6.1 โดเมนเนมซสเตม (Domain Name System – DNS)DNS20 หรอ Domain Name System เปนระบบของการระบชอคอมพวเตอร การใหบรการ หรอทรพยากรบนเครอขายคอมพวเตอร แบบมลำาดบชนและกระจาย ระบบนถกพฒนาขนเพอใหผใชงานคอมพวเตอรทเปนมนษยสามารถใชงานคอมพวเตอรและบรการตางๆบนระบบเครอขายไดอยางสะดวกขน การทำางานของคอมพวเตอรภายในเครอขายจะมการสอสารระหวางคอมพวเตอรดวยกนเอง เครองคอมพวเตอรตนทางทตองการสงขอมลไปยงเครองคอมพวเตอรปลายทางจะ ตองระบตำาแหนงหรอแอดเดรสของทงเครองตนทางเองและและแอดเดรสของเครองปลายทางลงไปในแพกเกจขอมลทจะสงไป การระบตำาแหนงเหลานระหวางคอมพวเตอรดวยกนเอง จะใชขอมลเปนตวเลขเขารหสซงเครองคอมพวเตอรสามารถตความไดอยางไมมปญหา อยางไรกตามเมอมนษยมาใชคอมพวเตอรและตองการใชขอมลหรอใชบรการจากเครองคอมพวเตอรเครองอนซงเชอมตออยในเครอขาย การระบตำาแหนงของคอมพวเตอรหรอบรการเหลานนโดยใชตวเลข จะเปนเรองยากสำาหรบมนษย ระบบโดเมนเนมซสเตมจะใชสำาหรบการเปลยนตวเลขทใชระบตำาแหนงใหเปนชอซงมนษยสามารถจดจำาไดงายกวา

ถงแมจะมตวใหบรการในการแปลงจากชอมาเปนแอดเดรสในรปแบบอนอยมากพอสมควร เชนในเครอขายของคอมพวเตอรทใชระบบปฏบตการวนโดว (Windows Operating Systems) กจะวนเอสเซรฟเวอร (WINS Server) สำาหรบการเปลยนชอเครองคอมพวเตอรของวนโดวเปนแอดเดรสสำาหรบการตดตอ ซงสามารถทำาไดบนหลาบโปรโตคอล หรอสำาหรบคอมพวเตอรซงใชระบบปฏบตการในตระกลของยนกซ (Unix) กมระบบเอนไอเอส (Network Information Service – NIS)21

สำาหรบเปลยนจากชอเครองคอมพวเตอรเปนไอพแอดเดรสไดเชนกน แตสำาหรบบนเครอขายอนเทอรเนทซงใชทซพไอพ (TCP/IP) เปนโปรโตคอลหลกในการสอสารแลว กจะใชระบบของโดเมนเนมซสเตมเปนหลก จะเรยกเครองคอมพวเตอรททำาหนาทใหบรการขอมลโดเมนเนมซสเตมวา โดเมนเนมเซรฟเวอร (Domain Name Server) หรอดเอนเอสเซรฟเวอร (DNS Server)

ดเอนเอสเซรฟเวอรทำาหนาทในการใหบรการแปลงชอของคอมพวเตอร ไปเปนไอพแอดเดรส (IP

20 http://en.wikipedia.org/wiki/Domain_Name_System21 http://en.wikipedia.org/wiki/Network_Information_Service

Page 48: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

Address) สำาหรบการตดตอของคอมพวเตอรซงใชโปรโตคอลทซพไอพ (TCP/IP) แลวเครองคอมพวเตอรจะใชไอพแอดเดรส สำาหรบการระบตำาแหนงของคอมพวเตอรในระบบเครอขายวาอยในเครอขายใด และใชหมายเลข พอรท (Port) เปนตวระบแอพพลเคชน (application) ทตองการจะตดตอดวย ตวอยางเชนเซรฟเวอรชอ fivedots ของภาควชาวศวกรรมคอมพวเตอร จะมชอแบบทเรยกวาฟลลควอลไฟโดเมนเนม (Fully Qualify Domain Name – FQDN)22 หรอชอโดเมนแบบเตมวา fivedots.coe.psu.ac.th ซงเซรฟเวอร เครองนจะมไอพแอดเดรสเวอรชน 4(IPv4 Address) เปน 172.30.0.5 เครองคอมพวเตอรเครองน นอกจากจะใหบรการเปน เวบเซรฟเวอร (Web Server) แลว ยงใหบรการเปนเมลเซรฟเวอร (Mail Server) อกดวย ในการตดตอระหวาง เครองไคลเอนททตองการใชบรการเวบของ fivedots กจะใชไอพแอดเดรส172.30.0.5 และตดตอไปยงพอรท 80 ของเซรฟเวอร ในขณะทเครองไคลเอนทซงตองการใชบรการรบสง เมลโดยใชโปรโตคอลเอสเอมทพ (SMTP) กจะตดตอไปยงพอรท 25 ของเซรฟเวอรซงลกษณะของการใหบรการแตละชนดบนเซรฟเวอรสามารถเขยนอยในรปตวเลขได เชน172.30.0.5:80 จะเปนแอดเดรสสำาหรบการใหบรการเวบของ fivedots และ 172.30.0.5:25จะเปนแอดเดรสสำาหรบการใหบรการเมล

การระบแอดเดรสสำาหรบการใหบรการ โดยใชหมายเลขไอพแอดเดรสและพอรทน เปนวธการทใชสำาหรบการสอสารแบบปกตระหวางเครองคอมพวเตอร ททำางานในลกษณะของไคลเอนทและเซรฟเวอร แ ตสำา หรบมนษยการจดจำา ตว เลขจะเปน เร อ งย งยาก การจดจำา ชอ เชนhttp://fivedots.coe.psu.ac.th จ ะ จำา ไ ด ง า ย ก ว า 172.30.0.5:80 ด ง น น เ พ อ ใ ห ผ ใ ชคอมพวเตอรสามารถใชงานบรการบนคอมพวเตอรในเครอขายไดอยางสะดวกมากขน ระบบโดเมนเนมซสเตมจงถกพฒนาขนมาใชงานบนอนเทอรเนต

6.2 การจดลำาดบชนของโดเมนเนม (Domain Name Hierachy)ในสวนของการกำาหนดโดเมน (domain) เพอจะแปลงจากชอแบบซมโบลค (Symbolic Name)เปนไอพแอดเดรส (IP Address) จะมการกำาหนดในแบบทเรยกวาลำาดบขน (hierarchy) โดยระดบบนสดจะเรยกวา ทอปเลเวลโดเมน (top-level domains – TLDs) ซงจะประกอบไปดวยทอปเลเวลโดเมนแบบทวไป เชน .com .edu .org .net และทอปเลเวลโดเมนสำาหรบแตละประเทศ เชน

• .us สำาหรบ สหรฐอเมรกา

22 http://en.wikipedia.org/wiki/Fully_qualified_domain_name

Page 49: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• .my สำาหรบ มาเลเซย

• .sg สำาหรบ สงคโปร

• .th สำาหรบประเทศไทย

จากระดบบนสด (top-level) กจะมระดบ (level) ทแบงยอยลงไป ซงกขนอยกบผจดทะเบยนของระดบบนสดนน ในกรณของประเทศไทยจะใช

• .ac.th สำาหรบ หนวยงานทางการศกษา เชน มหาวทยาลย, โรงเรยน

• .co.th สำาหรบ บรษทหรอองคกรทางดานธรกจ

• .go.th สำาหรบ หนวยงานของรฐ (Government)

• .mi.th สำาหรบ กองทพ หนวยงานทางดานการทหาร

เปนตน

ในระดบยอยลงมาของแตละโดเมนกจะมโดเมนยอย (Sub Domain) เชนสำาหรบ .ac.th กจะม

• .psu.ac.th มหาวทยาลยสงขลานครนทร

• .ku.ac.th มหาวทยาลยเกษตรศาสตร

• .kku.ac.th มหาวทยาลยขอนแกน

• .cu.ac.th จฬาลงกรณมหาวทยาลย

เปนตน

ในระดบยอยของมหาวทยาลยสงขลานครนทร กจะแบงเปนระดบคณะฯ (หรอภาควชาฯ) เชน

• .coe.psu.ac.th ภาควชาวศวกรรมคอมพวเตอร

• .eng.psu.ac.th คณะวศวกรรมศาสตร

• .sci.psu.ac.th คณะวทยาศาสตร

• .med.psu.ac.th คณะแพทยศาสตร

เปนตน

ลกษณะของการจดเกบขอมลแบบกระจาย (distributed) กคอในแตละลำา ดบขนดเอนเอส

Page 50: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เซรฟเวอรจะไมไดมขอมลทงหมดในโดเมนยอยแตจะมเฉพาะขอมลทระบวา ในโดเมนยอยจะรองขอขอมลไดจากดเอนเอสเซรฟเวอรใด ยกตวอยางเชน ในระดบโดเมนของมหาวทยาลยสงชลานครนทร คอ .psu.ac.th จะมขอมลของโฮสต (host) หรอชอเครองคอมพวเตอรภายในโดเมนบางสวนดงน

และจะมขอมลระบวาโดเมนยอยของ .psu.ac.th จะมดเอนเอสเซรฟเวอรใดเปนเซรฟเวอรทมอำานาจ (Authorized Server) ดงน

แตดเอนเอสเซรฟเวอรของโดเมน .psu.ac.th จะไมมขอมลของโดเมนยอย .coe.psu.ac.th

การรองขอขอมลซงอยในโดเมนยอย จะตองสงคำารองขอไปทดเอนเอสเซรฟเวอรของโดเมนยอยนนๆ

ในแงของกระบวนการของการแปลงไอพแอดเดรส (Resolve IP Address) เชนเมอผใชเปดเวบเบร า เ ซ อ ร (Web Browser) แ ล ะ พ ม พ URL ข อ ง เ ว บ ไ ซ ท (Web Site) เ ช นhttp://fivedots.coe.psu.ac.th/squirrelmail ตวเวบเบราเซอรจะสงสวนของชอโฮสต (host)คอ fivedots.coe.psu.ac.th ใหกบซสเตมไลบราร (System Library) ของระบบ ซงในกรณทไมมขอมลอยใน ฐานขอมลของตวเองกจะสงตอไปใหกบดเอนเอสแคชเซรฟเวอร (DNS CacheServer) ซงจะทำาหนาท แปลงไอพแอดเดรสและสงกลบมาให ซงจะถกสงผานจากซสเตมไลบรารกลบขนไปยงลำาดบชนของ โปรแกรมแอพลเคชนซงกคอเวบเบราเซอรตอไป เวบเบราเซอรกจะใชไอพแอดเดรสสำาหรบการตดตอกบ เวบเซรฟเวอรตามทผใชตองการ

ดเอนเอสแคชเซรฟเวอรซงทำาหนาทแปลงไอพแอดเดรสในตวอยางขางตน ในกรณทยงไมมขอมลของชอโฮสตและไอพแอดเดรสของโฮสตนนอยในแคช (Cache) ของตวเอง กจะสงคำารองขอ(Request) ไปยงดเอนเอสเซรฟเวอรซงมขอมลใหสงคำาตอบกลบมา ซงในกรณทไมมการกำาหนดใหมการสงตอคำารองขอ (forward request) ไปยงดเอนเอสเซรฟเวอรใด กจะสงคำารองขอนนไปยงดเอนเอสรทเซรฟเวอร (Root Server)

... ns.psu.ac.th.           14400   IN      A       192.100.77.5 ns2.psu.ac.th.          14400   IN      A       192.100.77.2 www.psu.ac.th.          14400   IN      CNAME   usablelabs.psu.ac.th. usablelabs.psu.ac.th.   14400   IN      A       192.168.101.40 ... 

coe.psu.ac.th.          14400   IN      NS      ninedots.coe.psu.ac.th. coe.psu.ac.th.          14400   IN      NS      fivedots.coe.psu.ac.th. eng.psu.ac.th.          14400   IN      NS      maroon.eng.psu.ac.th. me.psu.ac.th.           86400   IN      NS      me.psu.ac.th. ee.psu.ac.th.           7200    IN      NS      electric2.ee.psu.ac.th. 

Page 51: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ยกตวอยางเชนในการแปลงไอพแอดเดรสของ fivedots.coe.psu.ac.th กจะสงคำารองขอไปทรทเซรฟเวอร เ พอ ทจะขอไอพแอดเดรสของเนมเซรฟเวอรของโดเมนระดบบนสดของfivedots.coe.psu.ac.th คอเนมเซรฟเวอรของ .th เมอรทเซรฟเวอรตอบกลบมาดเอนเอสแคชเซรฟเวอร กจะใชแอดเดรสของดเอนเอสเซรฟเวอรนนในการรองขอไอพแอดเดรสของเนมเซรฟเวอรโดเมนยอยระดบชนถดมาของ fivedots.coe.psu.ac.th ซงกคอ .ac.th จากนนกจะใชแอดเดรสของดเอนเอสเซรฟเวอรทไดรบมานน ในการรองขอไอพแอดเดรสของเนมเซรฟเวอรโดเมนยอยระดบถดไปเรอยๆ จนกระทงถงเนมเซรฟเวอรระดบสดทายซงมขอมลไอพแอดเดรสของเครองเซรฟเวอร fivedots.coe.psu.ac.th อย ลำา ดบขนของการแปลงไอพแอดเดรสfivedots.coe.psu.ac.th สรปเปนขนไดดงน

• ตองการไอพแอดเดรสของ fivedots.coe.psu.ac.th

• ใชรทเซรฟเวอรสำาหรบคนหาดเอนเอสเซรฟเวอรของ .th

• ใชดเอนเอสเซรฟเวอรของ .th สำาหรบคนหาดเอนเอสเซรฟเวอรของ .ac.th

• ใชดเอนเอสเซรฟเวอรของ .ac.th สำาหรบคนหาดเอนเอสเซรฟเวอรของ psu.ac.th

• ใชดเอนเอสเซรฟเวอรของ .psu.ac.th สำาหรบคนหาดเอนเอสเซรฟเวอรของ coe.psu.ac.th

• ใ ช ด เ อ น เ อ ส เ ซ ร ฟ เ ว อ ร ข อ ง coe.psu.ac.th สำา ห ร บ ค นห า ไ อ พ แ อ ด เ ด ร ส ข อ งfivedots.coe.psu.ac.th

ในแงของการทำางานจรง การแปลงไอพแอดเดรสโดยการเรมจากโดเมนเนมระดบบนสดอยางน จะไมไดเกด ขนทกครงจากการรองขอของเครองไคลเอนทคอมพวเตอรแตละเครอง เพราะดเอนเอสแคชเซรฟเวอรจะเกบขอมลทไดคนหาเอาไวแลวนนไวในแคช (Cache) ของตนเองจนกวาจะหมดอายการใชงาน ถามการรองขอการแปลงไอพแอดเดรสครงใหมจากคอมพวเตอรเครองอน และดเอนเอสแคชเซรฟเวอรมขอมลนนอยในแคชกจะตอบกลบโดยใชขอมลในแคชนน

ดเอนเอสเซรฟเวอรทมใชงานนอกจากดเอนเอสแคชเซรฟเวอรแลว กมดเอนเอสเซรฟเวอรอกแบบหนงคอ ออธอรเอธฟดเอนเอสเซรฟเวอร (Authoriative DNS Server) ซงเปนผมอำา นาจ(Authorize) ในขอมลของ โดเมนนนๆ ดเอนเอสเซรฟเวอรแบบนจะมขอมลโดเมนของตนเองและจะตอบกลบในการแปลงไอพแอดเดรสหรอขอมลอนทมอยในโดเมนของตนเทานน

Page 52: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

6.3 การตดตงไอเอสซบายดไนนดเอนเอสเซรฟเวอรบายด (Bind) ดเอนเอสเซรฟเวอรของ ISC23 เปนดเอนเอสเซรฟเวอรทมการพฒนาและใชงานมาอยางยาวนาน เวอรชนทนยมใชอยในปจจบนคอ Bind924 ซงประกอบไปดวยตวเนมดเดมอน(Named Daemon) ทำาหนาทเปนเซรฟเวอร และมโปรแกรมอรรถประโยชน (Utility Program)จำานวนมากใชในการใหบรการและตรวจสอบการทำางานของดเอนเอสเซรฟเวอร ในทนจะกวาถงเฉพาะตวทใชงานหลกๆเทานน

ตดตง Bind9 และเครองมอทเกยวของ ดวยคำาสงดงน

Bind9 สามารถคอนฟกใหทำาหนาทเปนดเอนเอสแคชเซรฟเวอร (DNS Cache Server) หรอ เปนออธอรเอธฟดเอนเอสเซรฟเวอร (Authoriative DNS Server) กได

6.4 การคอนฟกบายดไนนเพอเปนดเอนเอสแคชเซรฟเวอรหลงจากการตดตงแพกเกจแลวไฟลคอนฟกของ Bind9 จะเกบอยในไดเรคตอร /etc/bind โดยจะมไฟลหลกคอ named.conf และจะมไฟลคอนฟกยอยๆอนประกอบอกจำานวนหนง ซงไฟลยอยเหลานจะถกอานรวมเขากบไฟลคอนฟกหลก เนองจากมขอกำาหนด (directive) ใหรวม(include) เขามาดวย ในแงของการคอนฟก ผดแลระบบกจะแกไขเฉพาะสวนทเกยวของในไฟลคอนฟกยอยเหลานน โดยไมตองไปแกไขไฟลคอนฟกหลก ซงจะทำาใหการจดการแบงออกเปนสดสวนทชดเจนกวา ดงทจะไดอธบายตอไป สำาหรบคอนฟกบนเดเบยนลนกซ ไฟลคอนฟกทจะตองแกไขกคอ named.conf.local กบ named.conf.options

การคอนฟกบายดไนนเพอเปนดเอนเอสแคชเซรฟเวอร สงทเซรฟเวอรจะตองทำากคอแปลงไอพแอดเดรสในลกษณะของการเรยกซำา (Recursive Resolve IP Address) จากดเอนเอสเซรฟเวอรซงมขอมลอย ซงการทำางานสวนนจะกำาหนดโดยตวเลอก (option) recursion ซงคาโดยปรยายจะเปน yes นนคอตวดเอนเอสเซรฟเวอรจะทำาหนาทนอยแลว โดยไมตองแกไขหรอเพมคอนฟกนเขาไป

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

23 http://www.isc.org/24 http://www.isc.org/software/bind

apt­get install bind9 bind9utils bind9­hosts

Page 53: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เซรฟเวอรของทกหนวยงาน สงคำารองขอไปยงดเอนเอสแคชเซรฟเวอรของมหาวทยาลยคอns.psu.ac.th (192.100.77.5) กบ ns2.psu.ac.th (192.100.77.2) แทน ซงผดแลดเอนเอสแคชเซรฟเวอรภายในเครอขายของมหาวทยาลยสงขลานครนทรสามารถกำาหนดคอนฟกของเซรฟเวอร เพอใหทำาตามขอกำาหนดดงกลาว ไดโดยการใชตวเลอก (option) forwarders และระบใหใชการสงตอ (forward) เทานนโดยตวเลอก (option) forward only โดยแกไขในไฟล/etc/bind/named.conf.options โดยคอนฟกเดมทมอย ในไฟล เมอลบบรรทดท เปนคอมเมนท (comment) หรอบรรทดทเรมดวย "//" หรอ "#" ออกไปแลว กจะมขอมลดงน

และเพอคอนฟกใหทำาหนาทเปนดเอนเอสแคชเซรฟเวอรซงอยภายในมหาวทยาลยสงขลานครนทรกจะตองเพมคอนฟกใหเปนดงน

6.5 การคอนฟกบายไนนเพอเปนออธอรเอธฟดเอนเอสเซรฟเวอรการกำาหนดใหโปรแกรมบายดไนน เปนออธอรเอธฟดเอนเอสเซรฟเวอรสำาหรบโดเมน จะตองมขอมลของโดเมนหรอในกรณของบายดจะเรยกวาโซน (zone) เกบเอาไวใหโปรแกรมเนมดเดมอน(named daemon) สามารถเอาขอมลมาใชได ขอมลของโซนอาจจะเกบอยในฐานขอมลบนดาตาเบสเซรฟเวอร (Database Server) หรออาจจะเกบเปนไฟล ในตวอยางจะแสดงวธการเกบขอมลของโนไฟล เพราะเปนวธการทไมยงยากเทาการเกบขอมลลงในฐานขอมล และยงเปนวธการทนยมใชในปจจบน

โซน ไฟล (zone file) ซ ง ใ ช ใ น ก า ร เ ก บข อ ม ล ขอ ง โ ด เ มน เหล า น อ ย ใ น ไ ด เร คตอ ร/var/cache/bind ในไฟล คอนฟกของดเอนเอสเซรฟเวอร /etc/bind/named.conf.local จะระบวาดเอนเอสเซรฟเวอรมอำานาจ (Authorized) ในการใหบรการขอมลสำาหรบโดเมนหรอโซนใด

options {         directory "/var/cache/bind";         auth­nxdomain no;    # conform to RFC1035         listen­on­v6 { any; }; }; 

options {         directory "/var/cache/bind";         auth­nxdomain no;    # conform to RFC1035         listen­on­v6 { any; };         recursion yes;         forward only;         forwarders {                 192.100.77.5; # ns.psu.ac.th                 192.100.77.2; # ns2.psu.ac.th         }; }; 

Page 54: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

และขอมลของโดเมนหรอโซนนนเกบอยในโซนไฟลใด ตวอยางของไฟล named.conf.local มขอมลดงน

จากในตวอยางดเอนเอสเซรฟเวอรจะเปนออธอรเอธฟดเอนเอสเซรฟเวอรของโดเมนหรอโซนcoe.psu.ac.th ซงขอมลในโซนนจะเปนขอมลของการแปลงจากชอคอมพวเตอรเปนไอพแอดเดรส สวนโซน 250.168.192.in-addr.arpa จะใชสำาหรบการคนขอมลยอนกลบ (ReverseLookup) โดยจะแปลงจากไอพแอดเดรสกลบเปนชอเครองคอมพวเตอรโดเมนเนมแบบเตม(FQDN) ซงในกรณของการคนขอมลแบบยอนกลบน การกำาหนดชอโซนไฟลในลกษณะของตวเลขไอพแอดเดรสแบบยอนกลบหลง กลาวคอเปน “250.168.192” แลวตอดวย “.in-addr.arpa”ดงกลาว กจะเปนการกำาหนดขอบเขตของไอพแอดเดรส ในโซนไฟลซงดเอนเอสเซรฟเวอรสามารถใหบรการคนขอมลแบบยอนกลบได โดยไอพแอดเดรสเหลานนกจะอยในชวง 192.168.250.0/24

จากคอน ฟก ใน ต วอย า ง ข า ง ตนข อม ลของ โ ด เ มน coe.psu.ac.th จะ เ กบอย ใ น ไฟลdb.coe.psu.ac.th โดยทไฟลนจะมลกษณะเปนเทกซไฟล (text file) โดยขอมลตวอยางมดงน

และตวอยางของโซนไฟล db.250.168.192.in-addr.arpa ซงใชในการคนหายอนกลบ มดงน

// Forward Lookup for domain coe.psu.ac.th zone "coe.psu.ac.th" {         type master;         file "db.coe.psu.ac.th"; }; 

// For Reverse Lookup IP Address in 192.168.250/24 zone "250.168.192.in­addr.arpa" {         type master;         file "db.250.168.192.in­addr.arpa"; }; 

$ORIGIN coe.psu.ac.th. $TTL 4H ; @ IN SOA ns.coe.psu.ac.th. root.coe.psu.ac.th. (          2011060901 ; serial          4H         ; refresh          1H         ; retry          4W         ; expiry          4H         ; minimum          ) ; Name Servers @           IN  NS     ns.coe.psu.ac.th. ; A Records gw          IN  A      192.168.250.1 ns          IN  A      192.168.250.2 dhcp        IN  A      192.168.250.3 router1     IN  CNAME  gw.coe.psu.ac.th. router2  4W IN  A      192.168.250.253 

Page 55: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงสามารถอธบายแตละสวนไดตามน

• $ORIGIN จะใชระบสวนของโดเมน ในการอางถงชอโฮสตเนม (hostname) ใดๆในไฟลน ถาไมไดจบดวย ’.’ กจะถกตอทายดวยโดเมนน เชน ในบรรทด

จะมความหมายเดยวกนกบ

นอกจากนเครองหมาย ’@’ ทจะปรากฏตอไปในไฟล จะใชแทน $ORIGIN ทกำาหนดเอาไว ในกรณทไมมการกำาหนดคา $ORIGIN กจะใชชอโซนซงระบอยในไฟล named.conf.local

• $TTL คอ Time-To-Live ระบคาอายโดยปรยายของเรคคอรด (Record) ของขอมลทปรากฏอยในไฟลน คาททแอล (TTL) จะเปนการกำาหนดอายการใชงานของขอมลหลงจากถกรองขอ ถาไมมการระบหนวยของททแอล จะมหนวยเปนวนาท ถาตองการระบหนวย อาจจะใชคาตอไปน

• S - Second

• M - Minute

• H - Hour

• D - Day

• W - Week

$ORIGIN 250.168.192.in­addr.arpa. $TTL 4H ; @ IN SOA ns.coe.psu.ac.th. root.coe.psu.ac.th. (          2011060901 ; serial          4H         ; refresh          1H         ; retry          4W         ; expiry          4H         ; minimum          ) ; Name Servers @           IN  NS     ns.coe.psu.ac.th. ; PTR Records 1      IN PTR gw.coe.psu.ac.th. 2      IN PTR ns.coe.psu.ac.th. 3      IN PTR dhcp.coe.psu.ac.th. 253 4H IN PTR router2.coe.psu.ac.th. 

gw                     IN     A 192.168.250.1

gw.coe.psu.ac.th.      IN     A 192.168.250.1

Page 56: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

คาเรคคอรดใดไมไดกำาหนดคาททแอลในบรรทดนนๆ กจะใชคาปรยายน

ดเอนเอสเรคคอรด (DNS Record) สามารถระบคาททแอลได โดยระบคากอนคยเวรด (keyword) IN เชนจากตวอยาง เรคคอรดของ router2 จะมคาททแอลเทากบ 4 สปดาหแทนทจะเปนคาปรยาย 4 ชม เหมอนกบ เรคคอรดอนๆ

• เอสโอเอเรคคอรด (SOA Record) จะระบผมอำานาจ (Authority) ของขอมลในโซนน ซงขอมลหลง SOA จะเปนโฮสตเนม (hostname – จากตวอยางคอ ns.coe.psu.ac.th) และอเมลแอดเดรส (e-mail address – จากตวอยางคอ [email protected] – โดย ’.’ ตวแรกจะถกแทนดวย ’@’ เพอ เปนการระบอเมลแอดเดรส ซงไมสามารถใช ’@’ ได เพราะเครองหมาย ’@’ ถกใช แทน $ORIGIN ใน ขอกำาหนดรปแบบของโซนไฟล) ของผทดแลขอมลน สวนคาทอยในเครองหมายวงเลบกจะเปนคาของ

• Serial เปนตวเลขขนาด 32 บทเพอใชระบเวอรชน (version) ของขอมล

โดยทวไปจะนยมกำาหนดในรป YYYYMMDDXX โดยท YYYY คอป คศ. MM คอเดอน DD คอวนท และ XX คอครงทแกไขในวนนนๆ

จากตวอยาง serial คอ 2011060901 นนคอ การแกไขครงสดทายเกดขนในวนท2011-06-09 และเปนการแกไขครงแรก (01) ในวนนน

• Refresh เวลาทดเอนเอสเซรฟเวอรสำารอง (Secondary DNS Server) ควรจะอานขอมลโซนมาจากดเอนเอสเซรฟเวอรหลก (Primary DNS Server) มาใหมเพอใหไดขอมลททนสมย

• Retry เวลาสำาหรบดเอนเอสเซรฟเวอรสำารองจะตองรอกอนพยายามอานขอมลครงใหม ถาการอานขอมลครงแรกของการรเฟรช (Refresh) ไมสำาเรจ

• Expiry เวลาทถอวาขอมลในโซนทมอยบนดเอนเอสเซรฟเวอรสำารองเชอถอไมไดถาไมสามารถรเฟรชได

• Minimum คานอยทสดของททแอลในโซนน

• เอนเอสเรคคอรด (NS Record) จะเปนการระบวา สำาหรบโดเมนนนดเอนเอสเซรฟเวอรทเปนแหลงขอมลนนคอเซรฟเวอรใด เชนจากตวอยาง

router2  4W IN  A      192.168.250.253

Page 57: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เปนการระบวาสำาหรบโดเมน coe.psu.ac.th ดเอนเอสเซรฟเวอรคอ ns.coe.psu.ac.th. ในกรณทมโดเมนยอยภายใน coe.psu.ac.th เชนม student.coe.psu.ac.th เปนโดเมนยอยกสามารถระบไดดงน

หรอ

การระบเอนเอสเรคคอรดควรจะระบเปนชอ ดงนนจะตองม A Record (หรอ AAAA Record สำาหรบ ไอพเวอรชนหก) สำาหรบระบแอดเดรสของดเอนเอสเซรฟเวอรของโดเมนยอยนนดวย

• เอเรคคอรด (A Record) เชน

จะ เป นการระบ ไ อ พแอด เดรส เวอร ช นส (IPv4 Address) ของ ชอ โฮส ตน นๆ ใน ทนgw.coe.psu.ac.th. จะม ไอพแอดเดรสเปน 192.168.250.1

• พทอารเรคคอรด (PTR Record) ซงจะใชในรเวอรสโซน (Reverse Zone) เชน

• ซเนมเรคคอรด (CNAME Record) สำาหรบระบ Canonical Name ซงเปนการระบวาชอโฮสตเนมน จะเปนชอสมนามของโฮสตเนมใด

รายละเอยด ของการกำาหนดคาตางๆในโซนไฟลสามารถดไดจาก rfc103525

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

25 http://www.ietf.org/rfc/rfc1035.txt

@           IN  NS     ns.coe.psu.ac.th.

student                IN  NS   std.coe.psu.ac.th. std                    IN  A    192.168.200.200 

student.coe.psu.ac.th.  IN  NS   std.coe.psu.ac.th. std.coe.psu.ac.th.      IN  A    192.168.200.200 

gw      IN     A 192.168.250.1

1      IN     PTR gw.coe.psu.ac.th. 2      IN     PTR ns.coe.psu.ac.th. 

Page 58: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

กตามมเครองมอหลายอยางซงจะชวยในการตรวจสอบความถกตองของขอมลในไฟลเหลาน

การตรวจสอบคอนฟกไฟลใชคำาสง

ถามขอผดพลาดหรอสวนทอาจจะทำาใหเกดมปญหาในคอนฟกไฟล คำาสง named-checkconfกจะพมพขอความเตอนออกมา ถาหากคอนฟกทงหมดถกตองกจะไมพมพขอความใดๆ

ในการเรยกใช named-checkconf แบบไมระบตวเลอก (option) คำาสง named-checkconfจะตรวจสอบเฉพาะคอนฟกไฟล แตจะไมตรวจสอบขอมลของโซนไฟล ถาเพมตวเลอก ’-z’ ในคำาสงดงน

กจะทำาให named-checkconf อานและตรวจสอบโซนไฟลดวย

แตอยางไรกตาม ในหลายกรณเมอตดตงดเอนเอสเซรฟเวอรเสรจเรยบรอยแลว การแกไขขอมลมกจะทำาเฉพาะโซนไฟล ไมไดมการแกไขคอนฟกไฟล ถาตองการตรวจสอบเฉพาะโซนไฟลจะใชคำาสงnamed-checkzone ดงน

เชน

6.7 การตรวจสอบการทำางานของดเอนเอสเซรฟเวอรการตรวจสอบการทำางานของเนมเซรฟเวอรสามารถใชคำาสง host หรอ dig ตวอยางเชน

คำาสงแรก (ใชตวเลอก ’-a’) จะรองขอขอมลทงหมดของ gw.coe.psu.ac.th สวนคำาสงทสอง (ใชตวเลอก ’-t a’) จะรองขอเฉพาะขอมลเอเรคคอรด (A Record) ของ gw.coe.psu.ac.th ซงทงสองคำาสงจะสง คำารองไปยงดเอนเอสเซรฟเวอร ซงกำาหนดไวในไฟล /etc/resolv.conf ของคอมพวเตอรซงใชยนกซเปนระบบปฏบตการ

ในกรณทตองการระบวาตองการสงคำารองขอไปยงดเอนเอสเซรฟเวอรอนใด กสามารถระบดเอน

named­checkconf /etc/bind/named.conf

named­checkconf ­z /etc/bind/named.conf

named­checkzone zonename filename

named­checkzone coe.psu.ac.th. /var/cache/bind/db.coe.psu.ac.th

host ­a gw.coe.psu.ac.th host ­t a dhcp.coe.psu.ac.th 

Page 59: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เอสเซรฟเวอรนนไดโดยใชชอโดเมนเนมแบบเตม (FQDN) หรอไอพแอดเดรสได ตามตวอยางดงน

นอกเหนอจากคำาสง host ซงใชในการสงคำารองขอครงละ 1 เรคคอรดแลว กยงมคำาสง dig ซงจะสามารถควบคมการสงคำารองขอซงสงไปยงดเอนเอสเซรฟเวอรไดมากกวาคำาสง host เชนตองการทจะตรวจสอบ การทำาโดเมนทรานสเฟอร (Domain Transfer) จะใชตวเลอก axfrสำาหรบคำาสง dig ดงตอไปน

อยางไรกตามในการใชคำาสงทงสองในการตรวจสอบดเอนเอสเซรฟเวอร มรายละเอยดวธการใชงานอกมาก ซงสามารถอานไดจาก man page ของทงสองคำาสง

host ­a gw.coe.psu.ac.th ns.coe.psu.ac.th host ­t a dhcp.coe.psu.ac.th 192.168.250.2 

dig ­a @192.168.250.2 ns.coe.psu.ac.th axfr

Page 60: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 7 การตดตงเมลเซรฟเวอร (Mail Server)

7.1 เมลเซรฟเวอร (Mail Server)อเลคทรอนคสเมล (Electronics Mail) หรอ e-mail นบเปนแอพลเคชนแรกๆ ทมใชงานบนระบบเครอขาย และมอยกอนการถอกำาเนดของเครอขายอนเทอรเนตแบบทรจกกนอยในปจจบนสำาหรบอเลคทรอนคสเมลทใชงานบนเครอขายอนเทอรเนท เองกมการพฒนาและเปลยนแปลงมากในชวงเวลาเกอบสทศวรรษ26 ทมการรบสง e-mail บนเครอขายอนเทอรเนท

วธการระบตวตนของผใชตองการรบสงเมลจะใช ทอย ทเรยกวาอเมลแอดเดรส (e-mail address)ซงประกอบดวยชอผใชและโดเมน การระบแอดเดรสเขยนโดยใชตวอกษร '@' คนระหวางชอและโดเมน อยในรป ชอ@โดเมน เชน [email protected] จะประกอบไปดวยชอผใชคอ cj ซงใชอเลคทรอนคสเมลในโดเมน coe.psu.ac.th ตวอยางอเมลแอดเดรสอนๆ เชน [email protected],[email protected] ซงจะมชอของผใชอเลคทรอนคสเมล ชอเดยวกนคอ chatchai.j แตถอวาเปนอเมลแอดเดรสทตางกน เพราะมชอโดเมนทตางกน คอ psu.ac.th และ gmail.comตามลำาดบ

ระบบซงใชการแลกเปลยนอเลคทรอนคสเมลระหวางผใชงานเหลานจะมชอเรยกวา MessageHandling Services (MHS) รปท 8: การแลกเปลยนอเลคทรอนคสเมลระหวางโดเมน

26 http://tools.ietf.org/html/rfc5598

Page 61: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในระยะแรกเรม รปแบบของการรบสงอเลคทรอนคสเมลในระบบน แตละโดเมนจะมเครองคอมพวเตอร ซงทำาหนาทเปนเมลเซรฟเวอร มหนาทสองอยางในเวลาเดยวกนคอ รบ /สง หรอแลกเปลยนอเลคทรอนคสเมลกบเมลเซรฟเวอรตวอนๆ เชนสมมตให ผใชซงมอเมลแอดเดรสเปน[email protected] ตองการสงอเลคทรอนคสเมลใหกบผใช [email protected]

โปรแกรมซงใชในการอานและสราง/แกไขอเลคทรอนคสเมล จะเรยกวาเมลยสเซอรเอเจนท (MailUser Agent – MUA) ซงโดยทวไปแลวตวโปรแกรมจะไมไดทำาหนาทสงอเลคทรอนคสเมลใหกบผรบเอง แตจะสงตอใหกบโปรแกรม ทเรยกวาเมลทรานสเฟอรเอเจนท (Mail Tranfer Agent –MTA) ซ งจะมลกษณะเปน โปรแกรมแบบเดมอน (daemon) ททำา งานเปน เบ องหล ง(background process) คอยรบอเลคทรอนคสเมลจากเมลยสเซอรเอเจนท (MUA) เพอสงออกไปใหกบเมลทรานสเฟอรเอเจนท (MTA) ปลายทาง และในเวลาเดยวกนกรอรบการ ตดตอจากเมลทรานสเฟอรเอเจนท (MTA) อนๆทตองการสงอเลคทรอนคสเมลมาใหผใชในโดเมนน ดงแสดงในรป 54

รปท 7: การแลกเปลยนอเลคทรอนคสเมลระหวางผใช

Page 62: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ดงนนจากในตวอยาง ผใช [email protected] ใช MUA สำาหรบการรบสง mail เชน

• mail, mailx

• alpine (pine)27

• mutt28

สำาหรบการ edit และสง mail ซงตวโปรแกรมเหลานกจะสงตอใหกบตว MTA ซงรจกกนในอกชอหนงวา SMTP Server เนองจากใชโปรโตคอล SMTP29 ในการสอสารกบ MTA หรอ SMTPServer อนๆ ตวอยางของ SMTP Server ทนยมใชกนอยกคอ

• Sendmail Server30

• Exim Server31

27 http://www.washington.edu/alpine/28 http://www.mutt.org/29 http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol30 http://www.sendmail.org31 http://www.exim.org

รปท 8: การแลกเปลยนอเลคทรอนคสเมลระหวางโดเมน

Page 63: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• Postfix Server32

• Courier SMTP Server33

ซงในขนตอนของการสง e-mail ตว MUA เชน pine หรอ mail จะตดตอกบ SMTP Server โดยใช โปรโตคอล SMTP เชนเดยวกบท SMTP Server ของ domain ผสง (coe.psu.ac.th) ใชในการตดตอ กบ SMTP Server ของ domain ปลายทาง (psu.ac.th) ซงนนคอ MUA เหลานอาจจะตดตอกบ SMTP Server ปลายทางไดโดยตรง แตในหลายกรณทตว MUA อาจจะไมไดทำางานอยบนตว Server เดยวกนกบ MTA และตว เครองของ MUA อาจจะไมไดเปดใชงานตลอดเวลา(เชนเปนเครอง Desktop ของผใช ไมใช Server) ดงนนในการใชงานจะใชวธการสงตอใหกบ MTAหรอ SMTP ของหนวยงานนนมากกวา

ในขนตอนของการรบ e-mail ตว SMTP Server ปลายทาง (psu.ac.th) กจะรบการตดตอจากSMTP Server ตนทาง และถาม account ทกำาหนดใหเปนผรบใน domain อยจรงกจะจดเกบ(หรอสงตอ) ใหกบผใชทเปนเจาของ account นน

ผรบเมอมามาอาน e-mail กจะใชโปรแกรม MUA สำาหรบอาน e-mail ทไดรบมา

ในรปแบบดงเดมนน Mailbox หรอแหลงสำาหรบเกบ e-mail ทไดรบมาจะอยบน SMTP Serverและ ผรบ e-mail กจะใชโปรแกรม MUA ซงทำางานอยบน SMTP Server และเขาถง mailboxนนๆได โดยตรง

Mailbox ในสมยแรกๆ กจะใชเปนรปแบบไฟล 1 ไฟลสำาหรบเกบ e-mail หลายฉบบ e-mail ทสงมา แลวผรบยงไมไดอานกจะจดเกบไวใน mailspool ซงในสมยแรกๆกคอ directory/var/spool/mail และมไฟลทใชชอเดยวกนกบ account ของเจาของ mail อยใน directoryนน ยกตวอยางเชน mail ของ cj กจะเปนไฟล /var/spool/mail/cj และ mail ของ chatchai.jกจะมชอวา /var/spool/mail/chatchai.j ในสมยหลงๆ mail spool directory บนบางระบบ(เชน Debian) กจะยายมาเกบไวใน /var/mail แทน

ในรปแบบของการเกบ mail ในไฟลเดยวกน ซงเรยกรปแบบ (format) ของการเกบ mail แบบนวา mailbox หรอ mbox34 จะมปญหาตามมากคอ เมอขนาดของ storage มขนาดใหญขนในราคาถกลง และความเรวของการสงขอมลผานเครอขายสงขน ขนาดของ e-mail แตละฉบบกจะมขนาดมากขนตามไปดวย รวมทงจำานวนของ e-mail ทรบสงกนมากขน รวมทงปญหาของ SPAM

32 http://www.postfix.org33 http://www.courier-mta.org34 http://en.wikipedia.org/wiki/Mbox

Page 64: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

Mail ทำาใหการใชวธการเกบ mail แบบ mbox เรมกอใหเกดปญหากบ การทำางานอยางอนๆ เชนระบบการ backup ขอมล หรอการใช โปรแกรมสำาหรบตรวจสอบ virus/mulware/spywareจาก e-mail เหลาน เนองจากในแตละ e-mail ทมการ สงมาจะทำาใหไฟล mail ของผใชนเปลยนไป ถงแมวาจะมสวนทเปลยนแปลงเพยงนอยนด แตกระบวนการทำางาน ของการ backup หรอการ scan เพอตรวจสอบเหลานกตองเรมตนทำาใหมทงหมด เพราะไมสามารถแยกแยะ ความเปลยนแปลงทเกดขนได

ดงนนในยคหลงจงมการพฒนารปแบบของการเกบ e-mail แบบใหมซงเรยกกนวาเปนแบบMaildir35 ซงจะใช directory สำาหรบการเกบ e-mail โดย e-mail แตละฉบบจะเกบเปนไฟล 1ไฟล ถามการรบ mail เพม กจะสรางไฟลเพมขนมาอก 1 ไฟล สวน e-mail ฉบบใหนถกลบทงกขะเปนการลบไฟลนนไป 1 ไฟล

วธการนทำาใหการจดการในเรองของการ backup และ scan virus/mulware/spyware ทำางานไดอยาง สะดวกขนมาก SMTP Server ทเปนทนยมใชงานกนสวนใหญจะรองรบทง Maildir และmbox format แตอยางไรกตาม รปแบบทเปนการจดเกบโดยปรยายสวนใหญแลวจะยงคงใชแบบmbox อย เนองจาก เปนวธการทใชงานมานานกวา

นอกเหนอจากในสวนของการจดเกบ mail แลว ในชวงหลงๆเมอคอมพวเตอร ราคาถกลงและมใหใชงานได แพรหลายกนมากขน ผใชงานสามารถมคอมพวเตอรสวนบคคล ซงไมไดเปดใชงานตลอดเวลา และอาจจะเคลอน ยายจากเครอขายหนงไปอกเครอขายหนงได แตผใชงานมกจะใชคอมพวเตอรสวนตวนในการ อานและสง e-mail ในขณะทการทจะให SMTP Server ทำางานอยบนเครองคอมพวเตอรสวนตวจะเปนเรองไมสะดวก เพราะตว SMTP Server จะไมสามารถทำางานไดตลอกเวลา ดงนนเครองของผใชกจะใช SMTP Server ของหนวยงานในการรบ/สง e-mail ไปยง SMTP Server ปลายทางแบบเดม แตในขนตอนของการอาน e-mail ทสงมาจะสะดวกวาทจะจดการบนเครองคอมพวเตอรสวนตวนน

ดงนนจงมการพฒนาโปรโตคอลและ Server สำาหรบการดงขอมล e-mail ซงเกบอยบนตวServer ใหมา เกบบนเครองคอมพวเตอรสวนตว ซงโปรโตคอลนนคอ POP336 และในชวงตอมาเนองจาก ขอจำากดในการเขาถงเนอหาและตองการลดการสงขอมลทไมจำาเปนกมการพฒนาโปรโตคอล IMAP37 ขนมา ซงกจะม Server สำาหรบใชในการรบ/สงขอมลตามทกำาหนดไวทงสองโปรโตคอล และเรยกชอวา POP3 Server และ IMAP Server ตามลำาดบ รปแบบของการเขาถงและการรบ/สง e-mail และ ความสมพนธกนของ SMTP Server, IMAP/POP3 Server กจะ35 http://en.wikipedia.org/wiki/Maildir36 http://en.wikipedia.org/wiki/Post_Office_Protocol37 http://en.wikipedia.org/wiki/Internet_Message_Access_Protocol

Page 65: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

แสดงดงรป 57

ถงแมในแงของการรบ e-mail โปรโตคอล IMAP จะมประสทธภาพมากกวา POP3 แตทงสองโปรโตคอล กยงเปนทนยมใชอยในระดบใกลเคยงกน ตว MUA สมยใหมทมลกษณะเปน GUI mailreader อยางเชน

• Mozilla Thunderbird

• Evolution

• KMail

• Eudora

• Opera Mail

• Mail (OS X)

กจะรองรบทงสองโปรโตคอลใหผใชสามารถเลอกใชงานได และตว Mail Server ซงใชในการสงe-mail จาก Mail Spool สงไปใหผใช กจะรองรบทงสองโปรโตคอลเชนเดยวกน เชน

• Dovecot Mail Server38

• Courier IMAP/POP3 Server39

สำาหรบในทนจะเลอกใช Exim สำาหรบเปน SMTP Server เนองจากจะเปน Mail Server ปรยาย38 http://www.dovecot.org39 http://www.courier-mta.org

รปท 9: การรบสงอเลคทรอนคสเมลระหวางเมลเซรฟเวอรกบผใช

Page 66: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ทตดตงบน Debian และ Dovecot สำาหรบ IMAP/POP3 Server เนองจากจะเปน Server ทรองรบ ทง mailbox และ Maildir format ในการเกบ e-mail

7.2 การตดตงเอกซมเอสเอมทพเซรฟเวอร (Exim SMTP Server)ในการตด ตง Debian บนคอมพวเตอร โดย ทว ไป 40 จะมการ ตด ตง package ท ชอ วาmail-transport-agent รวมอยดวยแลว เพราะวธการสอสารพนฐานระหวางระบบ กบ SystemAdministrator ของระบบ (หรอ root account) จะใชวธการสอสารผาน e-mail และ Eximเปน mail-transport-agent โดยปรยายของ Debian เพราะฉะนน Exim SMTP Server อาจจะตดตงอยบนระบบแลว เพยงแตการ config จะใชสำาหรบการ สง mail แบบ local เทานน

อยางไรกตาม ผดแลระบบสามารถตดตง package exim เพมได ในกรณทยงไมม package นตดตงอย โดยการใชคำาสง

โดยคา default config ของ Exim จะเปนการตดตงแบบ local นนคอจะรบ/สง e-mail ระหวางaccount บนเครองคอมพวเตอรเดยวกนเทานน แตจะไมสง mail หรอรบ mail จากภายนอกเพอเปนการ ปองกนการใช SMTP Server ในการ relay e-mail เพอสง SPAM

แตสามารถปรบแก config ของ Exim เพอให รบ/สง mail กบ SMTP Server อนๆได โดยการใชคำาสง

ห ร อ อ า จ จ ะ ใ ช ว ธ ก า ร แ ก ไ ข configurtion ไ ฟ ล โ ด ย ต ร ง โ ด ย Exim4 จ ะ ใ ช ไ ฟ ล/etc/exim4/update-exim4.conf.conf เปน config หลก เมอมการสง start หรอ restartservice ของ exim4 กจะไปสราง configuration ของ exim ทจะใชงานจรงขนมาแทน ซงสำา หร บการ ใช ง าน เป น SMTP Server แบบ ท ว ไปแล ว ก ส ามา รถแ ก ไข เ ฉพาะ ไฟลupdate-exim4.conf.conf นกได

นคอตวอยาง config ไฟลเมอตดตงโดยปรยาย

40 ยกเวนในกรณทเปนการตดตงแบบ minimum ซงจะมเฉพาะโปรแกรมพนฐานเทานน

apt­get install exim4

dpkg­reconfigure exim4­config

Page 67: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงคา config ทสำาคญและอาจจะตองเปลยนแปลงได มดงตอไปน

• dc_eximconfig_configtype

เปนคาทใชกำาหนดวา Server จะทำางานในลกษณะใด ซงมตวเลอกทสำาคญดงน

• internet ใชในการตดตอกบ SMTP Server อนบน internet

• smarthost จะรบ e-mail ทสงมาจาก SMTP Server อนๆ แต ในขนตอนสง จะสงไปยงSMTP Server ซงจะทำาหนาทสงตอ (relay) e-mail ไปยง SMTP Server ปลายทาง

• satellite จะไมรบ e-mail สวนการสง จะใชวธการ relay เชนเดยวกน กบ smarthost

• local ใชรบสง mail เฉพาะผใชงานบนเครองเดยวกนเทานน

สำาหรบ การใชงานเปน SMTP Server ของหนวยงานแลวกจะใช configtype เปน internet ในหนวยงานหนงๆ อาจจะม SMTP Server เพยงตวเดยวทใชในการตดตอ กบ SMTP Server อนๆทอยตาง domain ออกไป สวนคอมพวเตอรเครองอนๆ อาจจะ ตดตง SMTP Server เอาไว แตกำาหนด configtype ใหเปน smarthost และสง ตอ (relay) e-mail มาท SMTP Server หลกเครองน

วธการนจะชวยให การควบคม e-mail ทสงออกนอกหนวยงาน/domain ทำา ไดดขน และสามารถปองกนการใช SMTP Server ของหนวยงานสำาหรบการสง SPAM จาก malware หรอกรณผดปกตอนๆ

• dc_other_hostnames

dc_eximconfig_configtype='local' dc_other_hostnames='' dc_local_interfaces='127.0.0.1 ; ::1' dc_readhost='' dc_relay_domains='' dc_minimaldns='false' dc_relay_nets='' dc_smarthost='' CFILEMODE='644' dc_use_split_config='false' dc_hide_mailname='' dc_mailname_in_oh='true' dc_localdelivery='mail_spool'

dc_eximconfig_configtpe="internet"

Page 68: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณทวไป SMTP Server จะรบ e-mail ทสงถง address ทเปนชอแบบ FQDN ของ ตนเองเทานน เชน ถาใน DNS record กำาหนดให SMTP Server ม IP Address ดงน

SMTP Server กจะรบ e-mail ทสงถงผใช ทม account หรอม e-mail alias อยบน Serverเทานน เชน [email protected] หรอ [email protected]

แตในการใชงาน e-mail โดย ทวไป e-mail address จะนยมระบ เฉพาะ domain เชน[email protected] หรอ [email protected] (โดยตด ’smtp’ ซงเปนชอของ Server ออก)เพอให e-mail สนลง และไมจำาเปนตองผกตดอยกบเครองใดเครองหนง

dc_other_hostnames จะใชสำาหรบการกำาหนดวา นอกเหนอจาก e-mail ทสงแบบ จำาเพาะเจาะจงถง FQDN ของ Server เองแลว จะม address อนทจะถอวาใหสงมา ท SMTP Server นอกหรอไม

ซงในกรณตวอยาง ถาตองการให SMTP Server รองรบการสงมาถง domain "coe.psu.ac.th"ดวย กสามารถกำาำหนดคาของ dc_other_hostnames ไดเปน

• dc_local_interfaces

เปนสวนของการกำาหนดวา SMTP Server จะรบการตดตอจาก Network Interface หรอ IPAddress ใดบาง ในกรณทตว Server มหลาย IP Address หรออาจจะใช เปนการกำาหนดใหไมรบตดตอจาก SMTP Server ภายนอกโดยการกำาหนดใหรบการตดตอ เฉพาะ LoopbackAddress

สำาหรบกรณทจะใชงานคอใหตดตอจาก SMTP Server ใดๆกได กใหกำาหนดเปนคาวาง ดงน

• dc_relay_domains

ใชสำาหรบในการกำาหนดให SMTP Server ทำาหนาทเปน Mail Exchanger ใหกบ domain อนๆ

smtp.coe.psu.ac.th         A            172.30.0.5

dc_other_hostnames="coe.psu.ac.th"

dc_local_interfaces=""

Page 69: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เชน SMTP Server smtp.coe.psu.ac.th อาจจะถกกำา หนดให เปน Mail Exchanger ของdomain eng.psu.ac.th โดยมการกำาหนดใน DNS record ของ domain eng.psu.ac.th ดงตอไปน

ในกรณ SMTP Server ทตองการสง e-mail ไปยง domain @eng.psu.ac.th แต ไมสามารถตดตอกบ SMTP Server ของ eng.psu.ac.th ได (เชน Server Down อยในขณะนน) กจะใชMail Exchanger ถดไป ซงในกรณนคอ smtp.coe.psu.ac.th

ซง mail ทสงมา ยง smtp.coe.psu.ac.th กจะม address ของผรบเปน @eng.psu.ac.th ซงไมไดเปน account หรอ aliases ของ smtp.coe.psu.ac.th เอง ตว smtp.coe.psu.ac.th กจะพกmail นนเอาไว และคอยพยายามสงตอใหกบ SMTP Server ของ eng.psu.ac.th จนกวาจะสำาเรจ หรอ จนกวาจะเกนเวลาทกำาหนดไว ซงในกรณนน กจะ drop mail นนทงไปและสง errormail message กลบไปยงผสง

สำาหรบคา config ของ dc_relay_domains ตามตวอยางน คอตองการให SMTP Server เปนrelay ใหกบ domain @eng.psu.ac.th ดวยกสามารถกำาหนดคาไดดงน

สวนคาโดยปรยาย ซงไมมการ relay ให domain ใดๆ กจะเปนคาวางดงน

• dc_minimaldns

ใชสำาหรบกำาหนดวา ในการ lookup IP Address จาก DNS จะพยายามใหนอยทสดหรอไมสำาหรบ SMTP Server โดยทวไปซงไมปญหาในการตดตอกบ DNS Server กสามารถกำาหนดคานเปน "false" ได

eng.psu.ac.th.             MX    20     mail.eng.psu.ac.th eng.psu.ac.th.             MX    30     smtp.coe.psu.ac.th

dc_relay_domains="eng.psu.ac.th"

dc_relay_domains=""

dc_minimaldns="false"

Page 70: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• dc_relay_nets

ใชสำาหรบกำาหนดคา Network Address ทตว SMTP Server จะรบหนาทสงตอ (relay) ใหกบคอมพวเตอรในเครอขายนนๆ

เชนตองการให Server smtp.coe.psu.ac.th ซงเปน SMTP Server ของภาควชา วศวกรรมคอมพวเตอร รบ e-mail ทสงมาจากคอมพวเตอรภายในเครอขายของภาควชาฯ ทงหมด (ซงจะอยใน network 172.30.0.0/22) และ relay ตอไปยง SMTP Server ปลายทางได กสามารถกำาหนดคา dc_relay_nets ดวน

• dc_smarthost

ใชสำาหรบในกรณท dc_eximconfig_configtype เปน satellite หรอ smarthost กจะใชคานระบ FQDN หรอ IP Address ของ SMTP Server ทจะรบหนาทสงตอ e-mail

ตวอยาง SMTP Server ซงทำา หนาทเปน Smart Host ของคอมพวเตอรในเครอขายของมหาวทยาลยสงขลานครนทรทงหมดกคอ smtp.psu.ac.th

• dc_use_split_config

ค า config น ใ ช สำา ห ร บ ร ะ บ ว า template ข อ ง config ข อ ง exim จ ะ ใ ช จ า ก ไ ฟ ล/etc/exim4/exim4.conf.template ซงเปนไฟลเดยว หรอ จะแบงยอยเปนหลายไฟล และเกบอยใน directory /etc/exim4/conf.d

ต ว config จ ร ง ท exim4 daemon จ ะ อ า น ไ ป ใ ช จ ะ เ ก บ อ ย ใ น ไ ฟ ล/var/lib/exim4/config.autogenerated แตไฟลจะสรางขนโดยอตโนมต จาก template ใน/etc/exim4 ซงจะเปนไฟล template เดยว หรอจะใช template ซงแบงยอยเปนหลายไฟล กขนอยกบการเลอก config ตวน

สำาหรบ config นของแนะนำาใหใชแบบ แบงเปน configuration ยอย ซงสามารถกำาหนดคาไดดงน

dc_relay_nets="172.30.0.0/22"

dc_use_split_config="true"

Page 71: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• dc_localdelivery

กำาหนดวารปแบบของการเกบ mail ทสงมาถง account บน Server จะเปนแบบ mbox หรอMaildir ซงสามารถกำาหนดไดดงน

สำาหรบการเกบ mail ในลกษณะ mbox

สำาหรบการเกบ mail ในลกษณะ Maildir

config หลกของ exim4 จะถกสรางขนมาใหมเมอมการ restart exim4 service ซงจะใชขอมลจาก config ใน update-exim4.conf.conf ไปสรางแกไข macro ซงกำาหนดไวใน templatefile (หรอ directory ในกรณทใช split config) ซง สำาหรบ SMTP Server ซงใชในการตดตอกบPublic internet โดยทวไปกจะ สามารถใชงานไดทนท แตสำาหรบ SMTP Server ซงใชงานในหนวยงานขนาดใหญ อาจจะมการใช Private IP Address ภายในหนวยงาน และตว EximServer อาจจะตองรบ/สง e-mail กบ SMTP Server เหลานนซงใช Private IP Address ดวยในกรณน จะตองไปแกไข config dnslookup ใน template ซงมการกำาหนด IP Address ทใหตว Exim Server ไมสง mail ให นนคอ config ทชอวา ignore_target_hosts ซงอยในสวนของrouter ท ช อ ว า dnslookup ใ น ก ร ณ ข อ ง split config จ ะ อ ย ใ น ไ ฟ ล/etc/exim4/conf.d/router/200_exim4-config_primary สำาหรบ config แบบธรรมดาจะอยในไฟล /etc/exim4/exim4.conf.template ซงจะมขอมลดงตอไปน

dc_localdelivery="mail_spool"

dc_localdelivery="maildir_home"

... dnslookup:   debug_print = "R: dnslookup for $local_part@$domain"   driver = dnslookup   domains = ! +local_domains   transport = remote_smtp   same_domain_copy_routing = yes   # ignore private rfc1918 and APIPA addresses   ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :\                         172.16.0.0/12 : 10.0.0.0/8 :\                        169.254.0.0/16 : 255.255.255.255 ...

Page 72: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ถาหากวา Exim Server จะตองรบสง e-mail กบ SMTP Server ตวอนซงม IP Address อยในชวงน กจะตอง ลบ IP Address ทกำาหนดเอาไวใน ignore_target_hosts เชน สำาหรบเครอขายของ มหาวทยาลยสงขลานครนทร จะใช Private IP Address ใน ชด 192.168.0.0/16,172.16.0.0/12, 10.0.0.0/8 ดงนน เพอให Exim Server สามารถ ตดตอกบ SMTP Serverภายในมหาวทยาลยสงขลานครนทรได กจะตองแกไข สวนของ config ignore_target_hosts ดงกลาวเปน

จงจะสามารถทำางานไดอยางถกตอง

นอกเหนอจาก config ใน /etc/exim4/update-exim4.conf.conf แลว ไฟล config ซงควรทจะตรวจสอบ และแกไขใหถกตอง ซงมผลตอการทำางานของการรบ/สง mail ของ SMTP Serverอกกคอ /etc/mailname และ /etc/aliases

/etc/mailname จะเปนขอมลซงเมอมการสง mail ออกจาก SMTP Server จะใชระบชอของServer ซงคานควรจะกำาหนดใหเปน FQDN ของ Server เชน

7.2.1 การคอนฟกอเมลอะเลยสสวน /etc/aliases จะเปนการกำาหนด e-mail aliases ใชในการระบ e-mail ซงอาจจะไมมaccount จรงๆ หรอตองการใหม e-mail address เดยวซงเมอ mail สงมาแลวจะสงตอใหกบหลายๆ account เชน สมมตบนเครอง Server smtp.coe.psu.ac.th ม account ดงตอไปน cj,touch, pipat, rungrode และตองการใหใช e-mail address sysadmin สำาหรบรบ mail ใดๆแลวสงตอใหทกๆคน กสามารถกำาหนดใน /etc/aliases โดยการเพม บรรทดนเขาไป

หรอ ไมม account ทชอ postmaster บนเครอง smtp.coe.psu.ac.th แตตองการ ให e-mail

  ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 : 169.254.0.0/16 :\                         255.255.255.255 

smtp.coe.psu.ac.th

sysadmin: cj, touch, pipat, rungroad

Page 73: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ทสงมาถง address [email protected] ทงหมด สงตอไปยง sysadmin กสามารถกำาหนดไดดงน

7.2.2 การตรวจสอบเอสเอมทพเซรฟเวอรวธการตรวจสอบวา SMTP Server ทตดตงเอาไวสามารถทำางานไดอยางถกตองหรอไม สามารถทำาไดโดยการสง mail มาจากเครองคอมพวเตอรอนๆ โดยกำาหนด e-mail address ใหเปนเครองทตดตงไว และ ทดสอบการสง mail ออกไปยง e-mail address อนๆ เชน โดยการใชคำาสง

แลวตรวจสอบจาก log file วามการรบสง ทถกตองหรอไม โดยใชคำาสงดงตอไปน

ซงถามการรบ e-mail ไดอยางถกตองกจะม log record ตามตวอยางน

7.3 การตดตงโดฟคอท ไอแมพและปอบสามเซรฟเวอรสำาหรบ Server ของ IMAP และ POP3 ในทนจะเลอกใช Server ของ Dovecot41 เนองจากเปนServer ทรองรบรปแบบของการเกบ e-mail ทงแบบ mbox และแบบ Maildir และมความสามารถเทยบเทากบ IMAP/POP3 Server สมยใหมทวไป

41 http://www.dovecot.org

postmaster: sysadmin

echo "test" | mail ­s "test" [email protected]

sudo tail ­f /var/log/exim4/mainlog

2011­08­29 15:06:21 1QxwrN­0000Qq­84 <= [email protected] U=root P=local S=468 2011­08­29 15:06:21 1QxwrN­0000Qq­84 => [email protected] R=dnslookup T=remote_smtp H=[192.100.77.17] 2011­08­29 15:06:21 1QxwrN­0000Qq­84 Completed

Page 74: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

วธการตดตง Dovecot IMAP และ POP3 Server สามารถตดตงไดโดยการใชคำาสง

ไฟล config ของ Dovecot ทง IMAP และ POP3 Server จะรวมอย ในไฟล เ ดยวกนคอ/etc/dovecot/dovecot.conf สำา หร บกา ร ตด ต งบน Debian distribution ใหม (ต ง แ ตsqueeze เปนตนไป) config ของ Dovecot ทเกยวของกบระบบจะสรางให โดยอตโนมตทงหมดโดยผดแลระบบไมจำาเปนจะตองเพมเตมหรอแกไข config ใดๆทงสน

แตอยางกตาม ในทนจะอธบาย config ทสำาคญในกรณทผดแลระบบตองการทจะเปลยนแปลงหรอกำาหนดลกษณะ การทำางานของ IMAP Server หรอ POP3 Server ใหม ดงน

• protocols

คา config นจะเปนตวระบวาจะให Server ตวใดทำางานและ โปรโตคอลทตดตอ จะใหใชแบบsecure channel ดวยหรอไม ซงคาโดยปรยายเมอตดตงทง IMAP และ POP3 กจะมลกษณะดงน

ในกรณทตองการยกเลกการใหบรการ POP3 กใหตด pop3 กบ pop3s ออกไป ซงจะเหลอขอมลดงน

secure channel สำาหรบ imap และ pop3 กคอ imaps และ pop3s ซงในลกษณะ การใชงานกจะสามารถเทยบเคยงไดกบ http และ https นนคอขอมลทสงผาน secure channel จะมการเขารหสตงแตเรมตน ซงจะตางจากการสงขอมลแบบปกต ซงทำาใหจะตอง ใชหมายเลข port ทตางออกไปจากการรบ/สงขอมลแบบไมไดเขารหส

แตอยางไรกตาม ทง IMAP และ POP3 สามารถใชวธการเขารหสอกแบบทเรยกวา StartTLS บนchannel ของการสงขอมลแบบปกตไดโดยไมตองเปลยนหมายเลข port ของการสอสาร และe-mail client สมยใหมสวนใหญกจะรองรบการทำางานแบบน เพราะฉะนน imaps และ pop3s

sudo apt­get install dovecot­imapd dovecot­pop3d

protocols = imap imaps pop3 pop3s

protocols = imap imaps

Page 75: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

กอาจจะตดทงได

• certificate file และ key file

การเขารหสทงทใช secure channel และแบบ StartTLS จะตองใช public key ซง Dovecotจะสรางใหอตโนมตโดยมอายการใชงาน 10 ป โดยจะเกบ public และ private key ไวใน/etc/ssl/certs/dovecot.pem, /etc/ssl/private/dovecot.pem ต า ม ลำา ด บ ซ ง กำา ห น ดconfig ของ Dovecot ดงน

ซงถาตองการเปลยน key ใหม กสามารถสรางไฟลไปแทนไฟลเกาได หรอเปลยนตำาแหนงของไฟลใน dovecot.conf

การสราง key ใหมจะใชวธการเดยวกนกบการสราง self-signed certificate ของ Apache WebServer ซงสามารถดวธการไดจากการตดตง Apache Web Server

• mail_location

จะใชในการระบตำาแหนงทเกบ mail ซงตว Dovecot จะตรวจสอบทงแบบ mbox และ Maildirและสามารถใชไดอยางถกตอง ถาตำาแหนงของการเกบ mail ทงสองแบบ เปนแบบคาปรยาย ซงคาปรยายของ mbox คอไฟล /var/mail/%u และ ปรยายของ Maildir คอ directory /home/%u/Maildir โดยท %u ทงสองกรณนคอชอของ account

ในกรณทตำาแหนงของ mbox หรอ Maildir ไมไดอยในตำาแหนงปรยาย กสามารถระบตำาแหนงใหม ไดดงน

โดย maildir กบ mbox ซงอยหนาเครองหมาย ’:’ จะเปนการระบ format ของการเกบ mailและสวนทอยหลงเครองหมาย ’:’ กจะเปนการระบ PATH ของไฟลหรอ directory แลวแตกรณและในกรณของ mbox คาชอง INBOX ทอยหลงเครองหมาย ’:’ ทสองกคอตำาแหนงของ INBOXหรอ mail ทสงเขามาสวน PATH ทอยดานหนาคอ directory สำาหรบ folder ของ mail ทอานแลวและ save เกบเอาไว

ssl_cert_file = /etc/ssl/certs/dovecot.pem ssl_key_file = /etc/ssl/private/dovecot.pem

mail_location = maildir:~/Maildir mail_location = mbox:~/mail:INBOX=/var/mail/%u

Page 76: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

7.3.1 การตรวจสอบการทำางานของ ไอแมพและปอปสามเซรฟเวอรวธการตรวจสอบวา IMAP/POP3 Server สามารถ ทำางานไดอยางถกตอง วธการทงายทสดกคอตดตง โปรแกรม mail client ซงรองรบ IMAP หรอ POP3 Server และกำาหนด config เกยวกบServer ใหถกตองแลวทดลองใชงาน

ในกรณทใช mutt เปน e-mail client สามารถตรวจสอบไดโดยการใชคำาสงตอไปน

โดย user และ password กคอ login ของ account และ password ของ account นน ทใชในการ login ไปยง Server ทมชอวา hostname ตามลำาดบ ยกตวอยางเชน ม account ซงชอ ’cj’ซงม password เปน ’987=cba’ และ IMAP Server มชอวา imap.coe.psu.ac.th กสามารถใชคำาสงตอไปน

ซงถา IMAP Server ทำางานอย ตว mutt กควรทจะเปด mail ทอยใน folder ไดอยางถกตองสำาหรบ POP3 Server กเปลยน URL จาก imap:// เปน pop3:// กจะใชไดเชนเดยวกน

mutt ­f imap://user:passwd@hostname/INBOX

mutt ­f imap://cj:[email protected]/INBOX

Page 77: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 8 การตดตงเวบเซรฟเวอร (Web Server)

8.1 เวบเซรฟเวอรWeb Server นบเปนเซอรฟเวอรทมใหบรการมากทสดบน internet ปจจบน นบเนองมาตงแตมการ นำาเสนอแนวคด Uniform Resource Locator (URL)42 ซงทำาใหมการเชอมโยงกน ของขอมลโดยสามารถอางองถงกนไดโดยใช URL ตว Web Server เปนผ ใหบรการผานทางHypertext Transfer Protocol (http)43 ตว client สำาหรบ Web Server คอ Web Browserโดยการออกแบบดงเดม สามารถทจะเชอมโยงการใหบรการของ Server หลายๆเซรฟเวอรดวยกนได ผานทางการกำาหนด URL ซงจะแตกตางจากการใหบรการแบบ Client-Server ในยคกอนหนาซงมกจะ เชอมโยงระหวาง Client กบ Server แบบ 1 ตอ 1

Web Server ซงพฒนาแบบ Open Source มใหเลอกใชงานอยางคอนขางหลากหลาย เฉพาะทเปน package ใหเลอกใชบน Debian เองกม Server เหลานอย

• apache2 - Apache HTTP Server

• aolserver4 - AOL web server version 4

• araneida - A programmable web server written and extended in Lisp

• boa - Lightweight and high performance web server

• caudium - An extensible WWW server written in Pike

• cherokee - Very fast, flexible and easy to configure web server

• dhttpd - minimal secure webserver without cgi-bin support

• gatling - high performance web server and file server

• lighttpd - fast webserver with minimal memory footprint

• mathopd - Very small, yet very fast HTTP server 42 http://tools.ietf.org/html/rfc173843 http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

Page 78: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• micro-httpd - really small HTTP server

• mini-httpd - a small HTTP server

• monkey - fast, efficient, small and easy to configure web server

• nginx - small, but very powerful and efficient web server and mail proxy

• ocsigen - web server and programming framework in OCam

• starman - high-performance preforking PSGI/Plack web server

• thin - fast and very simple Ruby web server

• thttpd - tiny/turbo/throttling HTTP server

• yaws - High performance HTTP 1.1 webserver written in Erlang

Web Server เหลานจะแตกตางกนในแงการใชงาน ตงแตตวทพฒนาขนมาใหมขนาดเลกใชresource นอย ทสด แตมความสามารถในการใหบรการทจำา กด ไปจนถง Web Server ทมfeatures ในการใหบรการท หลากหลายแตกใช resource มากตามไปดวยเชนเดยวกน ซงกขนอยกบผใชงานวามลกษณะของ application ทตองการใหบรการทาง Web Server อยางไร

8.2 อาพาเชเวบเซรฟเวอรApache Web Server44 จะเปน Web Server ทนยมใชมากทสดตวหนงสำา หรบการพฒนาApplication ซงใหบรการอยบน Web 45 เปนตว Server ซงม features ทใหบรการคอนขาง44 http://httpd.apache.org

45 สำาหรบการใหบรการ Web Server เพอเปน Web Hosting สำาหรบพฒนาและใหบรการ Application บน Web โดยทวไปแลวจะไมไดมเฉพาะ Web Server แตจะตององคประกอบอนรวมดวย ซงองคประกอบเหลานน มกจะประกอบไปดวย

• ระบบปฏบตการ • Web Server • Database Server • ภาษาสำาหรบการประมวลผลทฟากของ Web Server ซง ชดของซอฟตแวรทนยมนำามาใชกนมากทสดชดนงกคอ LAMP ซงเปนชอยอของการเลอกองคประกอบ ทจำาเพาะเจาะจงลงไปดงน

• L : Linux – ระบบปฏบตการ • A : Apache – Web Server • M : MySQL – Database Server

Page 79: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลากหลาย สามารถปรบแตงเพอใหเหมาะกบความตองการมนรปแบบตางๆได ในบทนจะกลาวถงการ ตดตง Apache Web Server เปนหลก

8.3 การตดตงและปรบแตงอาพาเชเวบเซรฟเวอรเราสามารถตดตง Apache Web Server โดยการใชคำาสง

เวอรชนทใชงานกนอยปจจบนคอ Apache version 2 ซงจะแบงยอยเปนหลาย module โดยmodule สวนใหญจะแบงเปน package ยอยเพอทจะใหเลอก install ไดตามความตองการ เชนถาตองการใช php เปนภาษาสำาหรบการประมวลผลแบบ script สำาหรบ Apache กสามารถตดตงเพมไดโดยใชคำาสง

สำาหรบ module ตางๆของ apache2 ทมใหใชงาน สามารถใชคำาสง apt-cache สำาหรบแสดงรายการทมอยทงหมด พรอมคำาอธบาย แบบยอได โดยการใชคำาสงดงตอไปน

เมอตดตง apache2 และ module ทตองการใชเสรจแลว สวนของ directory สำาหรบเกบขอมลจะใช /var/www และสวนของ configuration ทงหมดกจะเกบไวใน /etc/apache2

สำาหรบ package apache2 เองจะม module พนฐานทมขนาดเลกและนยมใชกนโดยทวไป ตดตงเอาไวใหแลว แตบาง module จะยง ไมกำาหนดใหเรมใชงานในการตดตงแบบพนฐาน ซงผดแลระบบจะตอง enable module ทตองการใชเหลานนเอง

apache2 จะเกบ config สำา หรบการ load module และปรบแตงการใชงาน เอาไวในdirectory /etc/apache2/mods-available สวน config ของ module ทจะใหใชงานจะสราง

• P : PHP/Perl/Python – ภาษาสำาหรบการประมวลผลทฟากของ Web Server ซงจะเหนวา Apache เปน Web Server ทนยมใชมากทสดตวหนง

apt­get install apache2

apt­get install libapache2­mod­php5

apt­cache search libapache2

Page 80: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เปน symbolic link ไปยง directory /etc/apache2/mods-enabled ซงเรา สามารถสรางหรอลบ link เหลานนเองได ในกรณทตองการจะเพม module หรอยกเลกการใชงานบาง moduleแต apache2 ไดเตรยม คำา ส ง สำา หรบทำา งานน ไวโดยเฉพาะกคอคำา สง a2enmod และa2dismod ยกตวอยางเชน ม module ทชอวา userdir ซงใชสำาหรบให user บนระบบสรางhomepage ของตนเองไดใน directory public_html ภายใน home directory ถาตองการ ทจะ enable module น กสามารถใชคำาสง

หลงจากนนสามารถสง restart หรอ reload เพอให apache2 อาน config ใหมไปใชงาน โดยการใชคำาสง

สวนการ disable module กจะใชคำาสง a2dismod ในรปแบบเดยวกน

การเพม Web Application package ทไมใช module หนงของ Apache Web Server เอง ยกตวอยางเชน package phpmyadmin ซงจะใชสำาหรบการจดการ MySQL Database Serverโดยจะใช Web เปน User Interface การตดตง package นจะตองใช Web Server ดวยจงจะสามารถใชงานได และสามารถเลอกใช Apache2 เปน Web Server เ พอทจะใชงานกบphpmyadmin ได

ซงในสวนของการ config นน pacakge phpmyadmin จะใชวธการสราง config สำา หรบApache Web Server แยกเอาไว ตางหากและเกบเอาไวใน directory ของ phpmyadmin เองโดยจะม config ชอ /etc/phpmyadmin/apache.conf ไฟลนจะตองอานโดยตว ApacheWeb Server ซง วธการทจะใหตว Apache สามารถเอาไฟลนไปใชไดกคอ สราง link จากconfig directory ของ phpmyadmin ไปยง /etc/apache2/conf.d ของ Apache โดยการใชคำาสงดงตอไปน

หลงจากนนสามารถสง restart หรอ reload เพอให apache2 อาน config ใหมไปใชงาน เชน

a2enmod userdir

service apache2 restart

ln ­s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d

Page 81: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เดยวกนกบการ enable หรอ disable module

8.4 การสรางเวอรชวลโฮสตการใชงาน Web Server ในหนวยงานหนงๆ จะตองการ Web มากกวาหนงสำาหรบการใหบรการทตางกนออกไปเชน สำาหรบเครอขายของภาควชาวศวกรรมคอมพวเตอร จะม Web Serverสำาหรบของภาควชาฯเองคอ http://www.coe.psu.ac.th Web Server ของกลมวจย เชนhttp://wig.coe.psu.ac.th Web Server สำา ห ร บ บ ค ล า ก ร ข อ ง ภ า ค ว ช า ฯhttp://fivedots.coe.psu.ac.th ซงการใหบรการ Web Server เหลานอาจจะใหบรการแตละServer แยกกนออกไป แตโดยทวไปแลวสำาหรบ Web Server ซงไมมภาระใน การใหบรการมากนก การม Server แยกกนออกไปแตละตวจะเปนเรองสนเปลองเนองจากตว Server จะอยในสภาพ วางงาน (idle) อยเกอบตอลอดเวลา การใช Web Server ตวเดยวกนใหบรการหลายๆWeb บนเครองคอมพวเตอร เครองเดยวกนจะเปนวธการทประหยดทรพยากรมากกวา วธการนเรยกกนโดยทวไปวา Virtual Hosting46 ซง Apache Web Server กรองรบการใหบรการแบบVirtual Hosting เชนกน

การสราง Virtual Host จะตองทำารวมกบการกำาหนดขอมลใน DNS โดยการสราง DomainName ใหมสำาหรบ เครอง Server ซงสามารถทำาไดหลายวธ เชน

• กำาหนดใหแตละ Virtual Host ม IP Address และ Domain Name เปนของตนเอง

• กำาหนดใหแตละ Virtual Host ม Domain Name ของตนเอง แตใช IP Address เหมอนกน

• กำาหนดใหแตละ Virtual Host ม Domain Name ของตนเองเปน Canonical Name ในResource Record ของ DNS

ตวอยาง เชน สมมตใหภาควชาฯตองการใหบรการ Web Server จำา นวน 2 Web คอweb1.coe.psu.ac.th สำาหรบ เปน Homepage คณาจารย และ web2.coe.psu.ac.th สำาหรบเปน Homepage ของนศ.

ถากำาหนดใหทงสอง Server ม IP Address เปนของตนเอง ขอมลใน DNS กอาจจะปรากฏในลกษณะน

46 http://en.wikipedia.org/wiki/Virtual_hosting

Page 82: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซง web1 และ web2 ม IP Address เปน 192.168.250.10 และ 192.168.250.11 ตามลำาดบในกรณนตว Web Server จะตองมการกำาหนด IP Address โดยตวระบบใหใชงานไดทงสอง IPAddress (หรออาจจะมากกวานน ถาตองการใหบรการมากกวา 2 Virtual Host) แตวธการนไมเปนทนยมเนองจาก จะเปนการสนเปลอง IP Address

สำาหรบวธการกำาหนดใหทงสอง Virtual Host web1 และ web2 ม IP Address เดยวกน อาจจะใช กำาหนดใน DNS โดยตรงในลกษณะน

หรออาจจะใชวธการกำาหนดในลกษณะของ Canonical Name47 ของ DNS

ซงวธการนจะเปนทนยมกนมากกวา

ในสวนของการ config Apache Web Server เพอทใหใชงานแบบ Virtual Host ซง Apacheจ ะ ใ ช ว ธ ก า ร แ ย ก config สำา ห ร บ แ ต ล ะ site เ อ า ไ ว ใ น directory ท ช อ ว า/etc/apache2/sites-available แ ล ะ จ ะ ส ร า ง link จ า ก config file ด ง ก ล า ว ไ ป ย งdirectory /etc/apache2/sites-enabled

คาโดยปรยายของการตดตง Apache Web Server จะใหบรการเพยง Web เดยว ไมม VirtualHost ใ น /etc/apache2/sites-available จ ะ ม ไ ฟ ล default แ ล ะ default-ssl แ ล ะ ใ น/etc/apache2/sites-enabled จะมไฟลชอ 000-default ซงเปน symbolic link ไปยงไฟล/etc/apache2/sites-available/default

ขอมลคราวๆของ default site config จะมลกษณะดงน

47 http://en.wikipedia.org/wiki/CNAME_record

web1.coe.psu.ac.th.     A       192.168.250.10 web2.coe.psu.ac.th.     A       192.168.250.11

web1.coe.psu.ac.th.     A       192.168.250.10 web2.coe.psu.ac.th.     A       192.168.250.10

websvr.coe.psu.ac.th.   A       192.168.250.10 web1.coe.psu.ac.th.     CNAME   websvr web2.coe.psu.ac.th.     CNAME   websvr

Page 83: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณของ default config คาของ DocumentRoot จะเปน /var/www สำาหรบ Virtual Hostกจะตองม Directory สำาหรบ DocumentRoot ทแยกกนออกไปในแตละ Virtual Host สมมตให เราจะใช /var/web1 กบ /var/web2 สำาหรบเปนเนอทเกบขอมลของ Virtual Host web1และ web2 ตามลำาดบ เราสามารถสราง Virtual Host config สำาหรบ web1 และ web2 ไดดงน

สำาหรบ web1 โดยเกบไวในไฟล /etc/apache2/sites-available/web1 และ

<VirtualHost *:80> ServerAdmin webmaster@localhost 

DocumentRoot /var/www <Directory /> 

Options FollowSymLinks AllowOverride None 

</Directory> <Directory /var/www/> 

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all 

</Directory> 

ScriptAlias /cgi­bin/ /usr/lib/cgi­bin/ <Directory "/usr/lib/cgi­bin"> 

AllowOverride None Options +ExecCGI ­MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all 

</Directory> ... </VirtualHost>

<VirtualHost *:80> ServerAdmin [email protected] ServerName web1.coe.psu.ac.th 

DocumentRoot /var/web1 <Directory /var/web1/> 

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all 

</Directory> </VirtualHost>

Page 84: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สำาหรบ web2 โดยเกบไวในไฟล /etc/apache2/sites-available/web2

คา config ทตองเปลยนคอ DocumentRoot และจะตองเพม <Directory> directive สำาหรบDocument Root นนๆ และเพม ServerName ใหเปน domain name ตามทกำาหนดเอาไวในDNS สำาหรบแตละ Virtual Host

ตวอยาง config สำา หรบ Virtual Host web1 และ web2 นเปนแบบ minimal config ถาตองการ features อยางอนเชนการกำาหนด cgi-bin directory กสามารถดตวอยางจาก defaultconfig และศกษาจาก document ของ Apache2 ได

จาก site config ทสรางขน และเกบไวใน directory /etc/apache2/sites-available เมอตองการใชงาน กสามารถใชคำาสง a2ensite สำาหรบการ enable ไดดงน

และเราสามารถ disable default site config ทไมจำาเปนจะตองใชอกตอไปแลวไดดวยคำาสง

หลงจากเปลยน site configuration แลวกสงให Apache Web Server อานคา config ใหม เอาไปใชงานดวยคำาสง

<VirtualHost *:80> ServerAdmin [email protected] ServerName web2.coe.psu.ac.th 

DocumentRoot /var/web2 <Directory /var/web2/> 

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all 

</Directory> </VirtualHost>

a2ensite web1 a2ensite web2

a2dissite default

service apache2 reload

Page 85: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เชนเดยวกบการเปลยนคา config สำาหรบการเพมหรอลด module

8.5 การตดตงเอสเอสแอลสำาหรบอาพาเชเวบเซรฟเวอรSecure Socket Layer (SSL)48 เปนโปรโตคอลสำาหรบการเขารหสชอมลทสงผานเครอขายแบบTCP/IP เนองจากในการสงขอมลแบบปกต จะไมมการเขารหส ทำาใหขอมลทมความสำาคญและควรจะเปนความลบ อาจจะถกดกจบ เอาไปไดโดยการใชโปรแกรมประเภท sniffer ตางๆ สำาหรบในกรณของ Web Server กพยายามแกปญหาดงกลาวโดย การเพมชองทางของการสอสารโดยมการเขารหสขอมลกอน กลายเปน Hypertext Transfer Protocol Secure49 ซงโดยทวไปแลวจะรองรบโดย Web Server เกอบทงหมด

ในกรณของ Apache Web Server สวนของ SSL จะแยกออกมาเปน module ซงไมได enableเอาไวในการตดตง แบบปรยาย การทจะใชงาน SSL เพมจะตองม Certificates และ Key ไฟลซงใชในการยนยน site นนๆวา เปน site ตามทระบไวจรง Certificates ทจะเอามาใช ถาจะใหถกตองและเชอถอได กจะตองไดรบการ รบรองจากหนวยงานทมอำานาจในการรบรอง (CertificateAuthorities)50 แตเนอง จากกระบวนการดงกลาวมคาใชจายและใชเวลา และในกรณทวไปแลวสงทเราตองการในการใชงาน Web Server แบบ SSL กคอการเขารหสเพอใหขอมลเปนความลบในการรบ/สงระหวาง Web Browser กบ Web Server มากกวา ทจะเปนการยนยนวา Web Siteนนๆเปน Web ทนาเชอถอไดจรงๆ (ซงการยนยนนน สามารถใชวธการอนๆแทนได ) ดงนนCertificate ทจะเอามาใชสำาหรบการปรบแตง Apache Web Server หรอ Web Server ตวอนๆจะสามารถ ใชวธการทเรยกวา Self-Signed Certificate แทนได นนคอผตดตง Web Server จะเปนผรบรอง Certificate นนๆเอง

ขนตอนในการสราง Self-Signed Certificate จะใชคำาสง openssl ซงอยใน package opensslและมกจะตดตงแลวพรอมกบการตดตง Apache Web Server หรอ Server อนๆซงตองการใชงาน SSL

การสราง Certificate จะตองปอนขอมลตอไปน

• Country Name

• State or Province Name

48 http://en.wikipedia.org/wiki/Secure_Sockets_Layer49 http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol50 http://en.wikipedia.org/wiki/Certificate_authorities

Page 86: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• Locality Name

• Organization Name

• Organization Unit Name

• Common Name

• Email Address

ขอมลเหลาน จะถกเขารหสเปนสวนหนงของ Certificate ซงสำาหรบตวอยางน จะใชขอมลแตละตวดงน

• Country Name – TH

• State or Province Name – Songkhla

• Locality Name – Hatyai

• Organization Name – Prince of Songkla University

• Organization Unit Name – Computer Engineering Dept.

• Common Name – web1.coe.psu.ac.th

• Email Address – [email protected]

นนคอใชขอมล ทเรยกวา Street Address สำาหรบระบ Organization Unit Name ไปจนถงCountry Name (ซงจะตองใชแบบ 2 ตวอกษรตามมาตรฐาน ISO – TH) สวน common nameจะเลอกใชชอ site ของ Web Server ทจะใหใช SSL

จากขอมลทมอยนจะนำาไปสราง text file สมมตใหชอ web1-cer.txt โดยมขอมลดงน

จากนนเราสามารถใชคำาสงตอไปน เพอสราง Certificate file และ Key file

TH Songkhla Hatyai Prince of Songkla University Computer Engineering Dept. web1.coe.psu.ac.th [email protected]

Page 87: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงในทน option -days 3650 หมายถงตองการให Certificate ฉบบนมอายใชงานไดนาน 10 ป(3650 วน) นบจากวนทสราง และ จะได Key file ชอ web1.key และ Certificate file ชอweb1.cer ซงจะตองนำาไฟลทงสองไปเกบไวในทๆจะใชงานตอไป

ในกรณนกำาหนดใหใช directory /etc/apache2/ssl สำาหรบเกบ Certificate และ Key ซง จะใชคำาสงตอไปนในการเกบ

Certificate file จะเปนไฟลทใชในการยนยนตว ไมเปนความลบ แต key file จะตองเกบไวเปนความลบและอนญาตใหเฉพาะ Web Server เทานนสามารถอานได นนคอสวนของคำาสง chmodและ chown ทเพมขนมา

หล งจากน น จะสามารถสร า ง site config ข นมาใหม ไ ด โดยสมม ตให เ ปน ไฟล ชอ/etc/apache2/sites-available/web1-ssl และมขอมลดงตอไปน

ซงเมอเทยบกบ site config ของ web1 เดมใน /etc/apache2/sites-available/web1 กจะม

cat web1­cer.txt                         |\ openssl req ­new ­x509 ­nodes ­days 3650  \             ­keyout web1.key ­out web1.cer

mkdir ­p /etc/apache2/ssl mv ­vf web1.key web1.cer /etc/apache2/ssl chmod 644 /etc/apache2/ssl/web1.cer chmod 600 /etc/apache2/ssl/web1.key chown www­data:www­data /etc/apache2/ssl/web1.*

<VirtualHost *:80> ServerAdmin [email protected] ServerName web1.coe.psu.ac.th 

DocumentRoot /var/web1 <Directory /var/web1/> 

Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all 

</Directory> 

SSLEngine on SSLCertficateFile /etc/apache2/ssl/web1.cer SSLCertficateKeyFile /etc/apache2/ssl/web1.key 

</VirtualHost>

Page 88: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สวนทเพมมาคอ

ซงจะเปนการ enable SSL สำาหรบ site นและระบตำาแหนงของ Certificate และ key File ซงในกรณน จะเกบไวใน directory /etc/apache2/ssl

หลงจากนน กจะสามารถ enable ssl module และ enable site web1-ssl และ สง reloadตว Apache Web Server ใหอาน config ใหมเขาไปทำางานได

ถากระบวนการทกอยางถกตอง กจะสามารถเขาถง web1 ซงม SSL เขารหสไวไดผานทาง URLhttps://web1.coe.psu.acth

ขอควรสงเกตประการหนงสำาหรบการใชงาน SSL กบ Virtual Host แบบทมหลาย domainname และใช IP Address เดยวกน (ไมวาจะเปนการระบโดย A Record หรอ CNAME) กคอจะใชงาน SSL ไดเพยง 1 site เทานน ในกรณทสราง site configuration สำาหรบ SSL ไวหลายตวและ enable พรอมกน กจะใชงานไดเฉพาะ site แรกทตว Web Server อาน config เขาไป

ต ว อ ย า ง เ ช น จ า ก ต ว อ ย า ง ม 2 Virtual Host ค อ web1.coe.psu.ac.th ก บweb2.coe.psu.ac.th ในกรณของการใช http protocol ธรรมดา เมอใช Web Browser ไปทhttp://web1.coe.psu.ac.th กบ http://web2.coe.psu.acth กจะไปยง เนอหาของ VirtualHost แตละตวทสรางเอาไว แตถา เ พม SSL config ทง web1 และ web2 เมอใช WebBrowser ไปยง https://web1.coe.psu.ac.th https://web2.coe.psu.ac.th จะไปยงเนอหาของ Virtual Host ตวเดยวกน ขนอยกบวา config ของตวใดถกอานขนมากอน ถาใชชอไฟลตามตวอยางคอ web1 และ web2 ตามลำา ดบ กจะไดผลวา https://web2.coe.psu.ac.th จะปรากฏขอมลเปน Virtual Host ของ web1 แทนทจะเปนของ web2 อยางทควรจะเปน

ปญหาขอนเปนขอจำากดของการออกแบบ SSL วธการทพอจะเลยงไดกคอ จะตองใช IP Addressทตางกน ออกไปสำาหรบ Virtual Host แตละตวทตองการ SSL

SSLEngine on SSLCertficateFile       /etc/apache2/ssl/web1.cer SSLCertficateKeyFile    /etc/apache2/ssl/web1.key

a2enmod ssl a2ensite web1­ssl service apache2 reload

Page 89: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 9 การตดตงเอฟทพเซรฟเวอร (FTP Server)

9.1 เอฟทพเซรฟเวอร (FTP Server)FTP Srver เปนการใหบรการพนฐานของระบบปฏบตการในตระกล Unix ทมมานานพอสมควรใชสำาหรบการ รบ/สงไฟลระหวางเครองคอมพวเตอรโดยทำางานแบบ Client กบ Server และถงแมวาความนยมใช ftp สำาหรบการรบ/สงไฟลทมลกษณะเปนขอมลสวนตวของผใชจะลดลงเนองจากโปรโตคอลในการสอสารจะไมมการ เขารหสขอมล ซงทำาใหไมเหมาะสำาหรบการรบสงขอมลทตองการความปลอดภย เชนขอมลสวนบคคล

การรบสงขอมลสวนตวของผใชบนระบบ Unix โดยทวไปในปจจบนจงนยมเปลยนไปใชวธการอนๆแทน แตอยางไรกตาม สำาหรบขอมลทมลกษณะเปน public เชนไฟล package ของ Linux ในดสตรบวชนตางๆ, โปรแกรมทม การแจกจายแบบ opensource, หรอเอกสารคมอการใชงานตางๆกยงนยมใหบรการผานทาง FTP Server อย เนองจากในการออกแบบของ FTP ททำาใหผ ทตองการเขาถงขอมลเหลาน สามารถเขาถงแบบ Anonymous หรอไมจำาเปนจะตองแสดงตวไดทำาใหการแจกจายขอมลและการเขาถงขอมลทเปน public สามารถทำาไดโดยสะดวก

9.2 เอฟทพเซรฟเวอรบนลนกซเชนเดยวกบตว Server อนๆบน Linux ทมการใหบรการมานาน กจะมการ implement ตวServer ออกมา โดยกลมของผพฒนาซอฟตแวรจำานวนหลายกลม เพอทจะใหมการใชงานหรอการใหบรการทเหมาะสมสำาหรบสภาพ การใหบรการทตางกนออกไป FTP Server บน Linux กจะมเปน package ใหเลอกใชจำานวนหลายตว แตเนองจาก การใหบรการ FTP เปนแบบมาตรฐานเพราะฉะนนในการตดตงจะสามารถตดตงใหใชงานไดเพยงครงละ 1 ตวเทานน 51

บน Debian กจะม package ของ FTP Server เหลานใหเลอกใชงานได

• ftpd

• pure-ftpd

51 ยกเวนวาจะกำาหนดให ftp server ตวทสองใหบรการทหมายเลข port ทไมใช port มาตรฐาน กจะสามารถ กจะสามารถใหบรการพรอมกนมากกวา 1 ตวได

Page 90: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• proftpd-basic

• pyftp

• twoftpd

• vsftpd

• wu-ftpd

• wzdftpd

FTP Server แตละตวจะมความแตกตางกนออกไปทงในแงจดประสงคของการออกแบบ และสภาพแวดลอมในการนำา เอามาใชงาน เชนสำาหรบระบบทม resource ในการการใชงานนอยอยางเชนบนระบบ embedded system package อยาง ftpd จะใช resource นอยกวาpackage อนๆ แตถาตองการใหบรการในลกษณะของ public FTP Server แลว package ซงimplement feature ตางๆของ FTP ครบและม module ของการ authentication หรอการจดการขอมลอนๆ อยางเชน proftpd, pure-ftpd, หรอ wu-ftpd กอาจจะเหมาะสมกวา

ในทนจะกลาวถงเฉพาะ proftpd และ vsftpd เพราะจะเปน Server ทนยมใชงาน 52

9.3 การตดตงวเอสเอฟทพดvsftpd53 มชอเสยงในแงของ security, ความ stable และ performace เปนทนยมใชใน FTPServer ของ Linux distribution จำานวนหนงเชน RedHat, SuSe, Debian และ OpensourceSoftware อก หลายตวเชน gnome, kde, gimp, isc ซงกลมผพฒนาโอเพนซอรส เหลานจะใชFTP Server สำาหรบการแจกจายตวซอฟตแวร และเลอกใช vsftpd สำาหรบการใหบรการ FTPServer เหลาน เปนตน

การตดตง vsftpd สามารถใชคำาสง

52 ftp.coe.psu.ac.th ใช proftpd สำาหรบการใหบรการเปน official mirror ของ debian ประจำาประเทศไทยซงใหบรการในนามของ ftp.th.debian.org และ ftp.psu.ac.th ซงเปน official mirror ของ ubuntu ประจำาประเทศไทย เลอกใช vsftpd เปน FTP Server

53 https://security.appspot.com/vsftpd.html

apt­get install vsftpd

Page 91: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซ งคา config โดยปรยายของ vsftpd สามารถใชงานไดเลย โดย config ไฟลจะอย ใน/etc/vsftpd.conf และ directory ของ anonymous ftp จะใช home ของ ftp account ทสรางเอาไว ซงในกรณของ Debian wheezy เปนตนไปจะใช /srv/ftp เราสามารถเปลยนแปลงตำาแหนงของ directory ของ anonymous ftp ได โดยการ เปลยน home directory ของ userftp โดยการใชคำาสง usermod โดยใช option ’-d’ ยกตวอยางเชนตองการยายตำาแหนงของanonymous ftp directory ไปท /ftp กสามารถ ใชคำาสง

โดย ’ftp’ ตวสดทายของคำาสงคอชอ account ftp

สำาหรบในกรณทตองการความสามารถของ FTP server ทม features ตางๆทมากขน เชน การauthentication โดยใชฐานขอมล กบ ldap, mysql, postgresql, sqlite หรอความสามารถในการควบคม ratio ของการ upload/download การกำาหนด quota ซงไมมใน FTP Serverอนๆ กจะสามารถใช proftpd54 แทนได

9.4 การตดตงโปรเอฟทพดการตดตง proftpd สำาหรบฟงกชนพนฐาน สามารถตดตงไดดวยคำาสง

บน Debian จะแยก proftpd ออกเปนหลาย packages ยอยถาตองการฟงกชนพเศษเพมกสามารถ ตดตงเพมเปนกรณไป เชนในกรณทตองการ authentication module โดยใช ldap กจะตองตดตง package proftpd-mod-ldap เพม โดยการใชคำาสง

รปแบบ config file และการจดการ module ของ proftpd จะคลายกบของ Apache WebServer เพราะฉะนนสำาหรบผดแล Web Server ทเขาใจรปแบบ และโครงสรางของ ApacheServer config กจะแกไขไดโดยงาย

54 http://www.proftpd.org/

usermod ­d /ftp ftp

apt­get install proftpd­basic

apt­get install proftpd­mod­ldap

Page 92: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สำาหรบ proftpd คาโดยปรยายของ config จะไมอนญาตใหใช anonymous ftp ซงจะตองไปแกไข config เพมเตมดงน ในไฟล /etc/proftpd/proftpd.conf

ซงจะแสดงใหเหนตวอยางของ config แบบ คราวๆไดวามรปแบบเดยวกนกบท Apache WebServer ใชอย

FTP Server จะใช port สำาหรบการรบ/สงขอมลแยกจาก port สำาหรบการรบ/สงคำาสง ดงนนถาตว Server มการตดตง firewall เอาไวกจะตองเปด port 20 และ 21 เพอใหตว client สามารถตดตอกบ FTP Server ไดดวย

<Anonymous ~ftp>    User ftp    Group nogroup    UserAlias anonymous ftp    RequireValidShell off    MaxClients 10 

   <Directory *>      <Limit WRITE>        DenyAll      </Limit>    </Directory> </Anonymous>

Page 93: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 10 การตดตงมายเอสควแอล (MySQL Server)

10.1 ดาตาเบสเซรฟเวอรDatabase Server มใหบรการบน Linux/Unix มานานพอสมควรและมใหเลอกจำานวนมาก SQLจดเปนภาษาทมาตรฐานและมการใชงานมานานมาก บน Linux จะม SQL Server และ SQLEngine ใหเลอกใชหลายตว ตวทเปนทนยมกนกคอ MySQL Server55, PostgreSQL Server56,SQLite Engine57 ในทนจะกลาวถงเฉพาะ MySQL ซงเปนทนยมมากทสดในการใชงานกบ WebServer

การใชงาน Database Server สวนใหญบนระบบบฏบตการ Linux ทใชงานอยทวไปในเครอขายขององคกร ขนาดเลกถงขนาดกลางโดยทวไป (รวมถงหนวยงานทางการดานการศกษาเชนโรงเรยน วทยาลย และ มหาวทยาลย) การใชงานฐานขอมลจะไมไดใชจากตวโปรแกรม clientของตว Database Server เอง แตมกจะใชผาน Library ของภาษาทใชในการพฒนา หรอFramework ในการพฒนาโปรแกรม เชน ตว Web Application ทเปนทนยมใชงานกน เชนWordpress, MediaWiki, Joomla กจะมสวนของการ จดการสราง database, table และกำาหนดขอมลอนๆทจำาเปนสำาหรบการใชงาน เพอให application พรอม ทจะใชงานหลงจากตดตงตว application เหลานนลงไปไดเลย โดยทผตดตงและใชงานซอฟตแวรไมจำาเปนจะ ตองมความรเ กยวกบ SQL command หรอการจดการ database เองเลย เพยงแตจะตองมตวpackage พนฐาน ทจำาเปนตดตงใหครบกอน และในกรณของ Linux distribution โดยทวไป กจะใชการกำาหนด dependency ของ package สำาหรบระบ package อนๆทจำาเปนจะตองใช ถาจะตดตง package นนลงไป ดงนนเมอตดตง package ของ application เชน wordpress ลงไปตว package manager กจะเรยกตดตง package อนๆเชน php, mysql และ library อนๆทจำาเปนตองใชให

สำาหรบในทน กจะกลาวถงเฉพาะการตดตงตว Database Server และการจดการพนฐาน สวนในเรองของการ ใชงาน SQL command และรายละเอยดของการใชงาน Database Server ขอให

55 http://www.mysql.com56 http://www.postgresql.org57 http://www.sqlite.org

Page 94: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

อานจาก manual ของ MySQL58

10.2 การตดตงมายเอสควแอลดาตาเบสเซรฟเวอรตดตง MySQL Server โดยใชคำาสง

ในการตดตงครงแรกของ MySQL Server บนเครองเซรฟเวอรใดๆ ตวตดตงจะถาม passwordของ root ของ MySQL Server ซง account root ของ MySQL Server นจะไมมความเกยวของใดๆกบ root account ของ Linux หรอตวเซอรฟเวอรเอง แตจะเปน account ซงไดกำาหนดสทธในการเขาถง database หลก และ database ตางๆทสรางขนในภายหลง

ดงนน password สำา หรบ account root ของ MySQL นจ งไมควร ทจะเปน passwordเดยวกนกบ password root ของระบบ เพราะถงแม วา password ของ administratoraccount ของระบบใดๆกตาม ไมวาจะเปนของ system account หรอ account ของซอฟตแวรควรทจะมการกำาหนดและจดเกบรหสผานอยาง มความปลอดภนสงกตาม แตโดยวธการ ลกษณะของการจดเกบและใชงานของ administrator account ของตว Database Server อยางเชนMySQL กจะมการใชงานทไมมความปลอดภยเทาการจดเกบและใชงาน password ของระบบเชน ในบางกรณอาจจะตองเกบ password ของ MySQL ในลกษณะของ plaintext บน textfile บน filesystem ของระบบเอง

คา config โดยปรยายของ MySQL จะทำาให MySQL ใชงานเปน server บนเครอขาย TCP/IPไดเฉพาะ บนเครองของตนเอง ไมสามารถตดตอจากเครองอนๆได เนองจากเพอปองกนการรวไหลของขอมลผานเครอขาย เนองจากการสงขอมลของ MySQL จะสงแบบไมเขารหส แตสำาหรบการใชงานเครอขายภายในทอาจจะเขารหสในระดบ ของเครอขายเอง หรออยภายในเครอขายทปลอดภย และตองการแยกเอาตว MySQL Server ออกจาก Application Server (หรอ Web Server)กสามารถกำาหนด config ใหตว MySQL server สามารถตดตอผานเครอขายได ดดยการปรบเปลยนคา config ในไฟล /etc/mysql/my.conf โดยเปลยนคา bind-address จากคาเดม127.0.0.1 ใหเปนหมายเลข IP ของตว Server ซงใชในการตดตอกบเครองอนๆ หรออาจจะใช0.0.0.0 ซง แทน IP address ใดๆของเครองเอง ซงทำาใหตดตอกนไดกบทกๆ address ทมใหใชงาน

58 http://dev.mysql.com/doc

apt­get install mysql­server mysql­client

Page 95: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

นอกจากน ในกรณทมการตดตง firewall ไวบนตว Server กจะตองกำาหนดให port ของ MySQL(3306) สามารถ ตดตอไดจาก client ทตองการใชงาน Database ไดดวย

ตวอยางเชน ถาใช iptables เปนตวกำาหนด firewall และตองการให client ซงใชงานอยบนhost ซงม หมายเลข IP เปน 192.168.250.101 สามารถเขาถง MySQL ได กสามารถใขคำาสงดงตอไปน

10.3 การใชงานมายเอสควแอลไคลเอนทการสราง database สามารถใชคำาสง mysql ซงเปน tools ในชดของ package mysql-clientใน การสรางหรอสง SQL command ไปใหตว MySQL Server ได ตวอยางเชน ตองการสรางdatabase เพอ เกบคะแนนสอบของ นศ. โดยจะใช 2 table สำาหรบการเกบ ให table แรกสำาหรบเกบขอมล นศ. และ table ทสองสำาหรบเกบ คะแนน ซงจะสามารถ เขยนอธบายโดยใชSQL command ไดดงน

ผใชสามารถเรยกใชคำาสง mysql จาก shell command line และพมพ SQL command ขางตน แบบ interactive หรอ อาจจะสราง text file ใหมขอมลตาม SQL command ขางตน โดยสมมตใหมชอไฟลวา create-db.sql กสามารถทจะสงคำาสงดงกลาวใหคำาสง mysql โดยผานshell pipe แบบ batch ไดโดยการใชคำาสงดงน

และในสวนของการจดการกบขอมลหลงจากสราง database เสรจแลวกสามารถทำาไดโดยวธ

bind­address 0.0.0.0

iptables ­I INPUT ­s 192.168.250.101 ­p tcp ­­dport 3306 ­j ACCEPT

CREATE DATABASE exam; USE exam; CREATE TABLE student(id INT, name VARCHAR(40)); CREATE TABLE mark(id INT, midterm INT, final INT);

cat create­db.sql | mysql ­u root ­p

Page 96: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เดยวกน เชน ถาตองการเพมขอมลเหลาน เขาไปใน database exam ทเพงสรางขน

กสามารถสราง text file ใหมขอมลขางตน สมมตใหมชอวา dataset1.sql กสามารถใช mysqlสำาหรบการเพมขอมลโดยการใชคำาสงแบบเดยวกบการสราง database

ทงสองกรณ คำาสง mysql จะแสดง prompt สำาหรบการรบ password ซงเราจะตองพมพpassword ทถกตองลงไปกอน คำาสง mysql จงจะสามารถเขาถง database ได

ในกรณทตองการใชงานแบบ batch ซงอาจจะเรยกใชคำาสงจาก shell script โดยไมมผใช คอยพมพ password แบบ interactive ให กอาจจะใส password โดยพมพตามหลง option ’-p’ไปเลย ยกตวอยางเชน ในกรณทกำาหนดให account ’root’ ของ mysql ม password เปน’secret’ กจะใชคำาสงสำาหรบการสราง database ไดเปน

ขอสงเกตสำาหรบกรณนกคอวา ในการใช option -u สำาหรบการกำาหนด account จะมชองวางระหวาง -u กบชอ account (ซงในทนกคอ ’root’) หรอไมกได แตสำาหรบการระบ passwordตอทาย option -p จะตองไมมชองวางระหวาง -p และ password (ซงในทนคอ ’secret’)

อกวธการหนงในการระบ account และ password สำาหรบคำาสง mysql โดยไมตองใช option-u และ -p บน command line ของ shell กคอ ใชวธการสราง config file สำาหรบคำาสงmysql โดยจะมชอวา .my.cnf โดยจะเกบอยใน home directory ของผใช และในไฟลดงกลาวกจะม config ดงตอไปน

USE exam; INSERT INTO student VALUES(1, 'Chatchai J'); INSERT INTO student VALUES(2, 'Kraisorn J'); INSERT INTO mark VALUES(1, 30, 30); INSERT INTO mark VALUES(2, 40, 40);

cat dataset1.sql | mysql ­u root ­p

cat create­db.sql | mysql ­u root ­psecret

[client] user = root password = secret

Page 97: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

โดย [client] จะเปนการระบ section ของ config วาจะใชสวนทตามมาสำาหรบ mysql clientและ user = root กบ password = secret กจะอยใน format ของ key = value สำาหรบระบชอ account และ password ของ account ทจะใชตามลำาดบ ซงนอกเหนอ จาก user และpassword แลว key อนๆ ทสามารถกำาหนดเพมเขาไปใน .my.cnf ไฟลได กม host และdatabase เปนตน ซงคาตางๆเหลาน ถาผใชเรยกใชคำาสง mysql บน shell command lineโดยไมไดระบ option สำาหรบการกำาหนดคานนๆ กจะใชคาจาก config น แตถามการระบเปนoption บน command line กจะใชจาก command line

10.4 การสรางแอคเคาทใหมในการใชงาน Database โดยทวไปแลวจะไมนยมใช root account สำาหรบการจดการกบขอมลใน database โดยตรง แตมกจะใช root account สำาหรบการสราง database ขนมาใหม และสราง account ขนมาสำา หรบ application ทจะใช database นนๆ ในสวนของการสรางaccount ขนมา และกำาหนดสทธใหในการจดการ database นนๆได สามารถใชคำาสง grantprivileges จากคำาสง mysql ได ยกตวอยางเชน ตองการสราง account ทมชอวา ’teacher’สำาหรบจดการกบ database โดยมสทธในการจดการและแกไขขอมลตางๆใน database ชอexam ทงหมด กสามารถใชคำาสงตอไปน

คำาสงนจะเปนการสราง account, กำาหนด password ของ account และกำาหนดสทธในการจดการกบ database ในคำาสงเดยว ในทน สวนของการระบ account จะเปน ’teacher’@’%’ซง ’teacher’ คอชอของ account ทจะใหใชและ ’%’ จะเปนการระบ host ทสามารถเขามาใชงานได ซง ’%’ หมาย ถง host ใดๆไมจำากด ในกรณทตองการจำากด host กใหแทน ’%’ ดวยชอhost สวนเครองหมาย ’@’ จะใช เปนตวแบงระหวางชอ account กบชอของ host

สวนของ password จะระบ ในส วนของ IDENTIFIED BY ซ งใน ทน กำา หนดให account’teacher’ ม password เปน ’classroom’

GRANT ALL PRIVILEGES ON exam.* TO 'teacher'@'%' IDENTIFIED BY 'classroom';

Page 98: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

10.5 การแกปญหากรณลมรหสผานของรทของมายเอสควแอลเซรฟเวอร

ปญหาหนงซงมกจะเกดขนในการใชงาน MySQL Server สำาหรบระบบทไมมการเปลยนแปลงตวDatabase บอยๆ กคอการลม password ของ root account ซงเหตการณนเกดขนเนองจากหลงจากการ setup database เสรจเรยบรอยแลว กไมมการใช root account อกเปนเวลานาน

ในกรณนสามารถแกปญหาไดโดยหยดการทำางานของตว MySQL Server และใหเรมทำางานใหมในสภาวะซงไมม privileges ซงใน mode นผดแลสามารถใช account ของ root ไดโดยไมตองใส password โดยการใชคำาสง ดงตอไปน

ตว mysqld จะทำางานใน forground mode ซงจะตองเปด terminal อก terminal หนงเพอเรยกใชคำาสง mysql เพอเปลยน password โดยใชคำาสงดงน

ซงเปนการแกไข password ใน table ทชอ user ของ database mysql ซงเปน databaseหลกทใชในการ ควบคม account ของ MySQL Server เอง และ password ทจะกำาหนดใหกบaccount root ใหมในทน คอ ’secret’

หลงจากนน กสามารถหยดการทำางานของ mysqld ททำางานอยใน terminal เดมโดยการกดปมControl+

และ สงให MySQL Server เรมตนทำางานใหมตามปกต โดยการใชคำาสง

10.6 การแบคอพและรสตอรดาตาเบสdatabase ของ MySQL สามารถ backup ใหอย ใ นล กษณะไฟล ไ ด โดยการ ใชคำา ส ง

service mysql stop mysqld ­­skip­grant­tables

(  echo ­n "UPDATE mysql.user SET PASSWORD=PASSWORD('secret') "  echo    "WHERE USER='root';" ) | mysql

service mysql start

Page 99: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

mysqldump ซงสามารถ เลอก dump เฉพาะ database หรอ table ใด table หนงของdatabase หรอทกๆ database ทมได โดยทจะใชสทธของ account เชนเดยวกบการใชงานdatabase นนคอ อาจจะใชการระบ account กบ password ผาน option -u และ -p ตามลำาดบ หรอจะใช account กบ password ซงระบไวในไฟล .my.cnf

คำาสงตอไปนจะ backup database หลกของ MySQL Server ลงไปเกบไวในไฟลชอ mysql.sql

คำา สงตอไปนจะ backup ทกๆ database ทมอยบนเครอง server ลงไปเกบไวในไฟล ชอall-db.sql

และการ restore database จากไฟลท backup เอาไวกสามารถใชคำาสง mysql ในการ restoreได เชน เมอตองการ restore database หลกของ MySQL Server จากไฟล mysql.sql กจะใชคำาสง

โดยท ’mysql’ ตวสดทายของบรรทดคำาสงคอ ชอของ database ซงจะตองบอกในกรณทเปนการ backup เฉพาะ database แตในกรณทเปนไฟล all-db.sql ซง backup จากทกๆdatabase สามารถใชคำาสง

โดยไมตองระบชอของ database ใดๆ เพราะในไฟล SQL จะมคำาสงซงใชในการสราง databaseรวมอยดวยแลว

mysqldump ­u root ­psecret mysql > mysql.sql

mysqldump ­u root ­psecret ­­all­databases > all­db.sql

cat mysql.sql | mysql ­u root ­psecret mysql

cat all­db.sql | mysql ­u root ­psecret

Page 100: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

10.7 การใชพเอชพมายแอดมน สำาหรบจดการมายเอสควแอลเซรฟเวอร

phpMyAdmin59 เปน application ซงใชในการจดการ database ซงพฒนา โดยใชภาษา PHPซงจะตองใชงานอยบน Web Server จดเปนเครองมอสำาหรบจดการ MySQL Server ทนยม กนมากทสดตวนง เนองจากมลกษณะเปน GUI client โดยสามารถใช Web Browser ใดๆในการจดการกบ Database บน MySQL Server ได

ในทนจะกลาวถงเฉพาะการตดตง phpmyadmin บน Debian

สำาหรบ Debian จะม package ของ phpmyadmin และ package อนๆทจำาเปนจะตองตดตงกอนเพอทจะใหใชงาน phpmyadmin ได กำาหนดเปนรายการ Dependency เอาไวแลว เมอเรยกใชคำาสง

Debian กจะตดตง package อนๆทจำาเปนใหโดยอตโนมต (ในกรณทไมม package เหลานนตดตงเอาไวกอนแลว) ซง package เหลานนคอ Web Server, PHP และ library อนๆทจำาเปน

เมอตดตงเสรจเรยบรอยแลวกจะสามารถ จดการกบ MySQL Server บนเครอง Server ดงกลาวโดยใช Web Browser ใดๆ (ซงควรจะเปน GUI Web Browser ซงรองรบ frame) ไปท URLของ Server ตามดวย /phpmyadmin หรอในกรณทตองการทดสอบบนเครอง Server เอง อาจจะใช text mode Web Browser เชน w3m หรอ lynx โดบกำาหนด URL เปน address ของlocalhost ได ตวอยางเชน

เมอใช lynx เปน Web Browser เปนตน

59 http://www.phpmyadmin.net/home_page/index.php

apt­get install phpmyadmin

lynx http://localhost/phpmyadmin

Page 101: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 11 การตดตง NTP Server

11.1 การกำาหนดเวลาบนเครองคอมพวเตอรระบบคอมพวเตอรสมยใหมจะมชปวงจรรวม (Integrated Circuit -- IC) บนเมนบอรดใชกำาหนดเวลาของระบบใหมความถกตอง ซงทำาใหเซรฟเวอรหรอเครองคอมพวเตอรสวนตวของผใชงานทวไป สามารถแสดงเวลาไดอยางถกตองพอสมควร แตอยางไรกตาม โดยลกษณะตามธรรมชาตของชปวงจรรวมโดยทวไปซงใช ครสตล (Crystal) เปนตวกำาหนดความถ กจะมคาความผดพลาดจำานวนหนงทจะสะสมมากขนเรอยๆเมอเวลาผานไป คาเวลาผดพลาดสะสมนถาไมมการปรบคาเวลาใหถกตองกจะทำาใหการทำางานของคอมพวเตอรในเครอขายมปญหา เนองจากเวลาของเครองไมตรงกน สำาหรบอปกรณคอมพวเตอรสมยใหมเชน สมารทโฟน (Smartphone) โมไบลอนเทอรเนตดไวซ (MID) ซงมตวอปกรณรบสญญาณจพเอส (GPS) อย ปญหานกจะไดรบการแกไข โดยอปกรณรบคาเวลาทถกตองจากนาฬกาจพเอส (GPS Clock)60 ของดาวเทยมซงมตวกำาหนดเวลาเปนนาฬกาอตอมมค (Atomic Clock)61 ทมคาความเทยงตรงสง

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

11.2 เนทเวรคไทมโปรโตคอล (Network Time Protocol)สำาหรบคอมพวเตอรโดยทวไป ทไมมอปกรณทใชกำาหนดเวลาทมความเทยงตรงสงอยบนตวเอง แตสามารถเชอมตอกบเครอขายอนเทอรเนตได กสามารถใชเนทเวรคไทมโปรโตคอล (NetworkTime Protocol)62 สำาหรบการกำาหนดเวลาใหกบเครองตนเอง โดยการตดตอกบ เอนทพเซรฟเวอร(NTP Server) บนอนเทอรเนต เพอรบคาเวลาทถกตองมาปรบแตงคาเวลาของตนเองได เอนทพเซรฟเวอรจะใชในการซงโครไนซเวลา (synchronize time) ระหวางคอมพวเตอรทเปนเซรฟเวอรดวยกน โดยมการจดลำาดบชน (hierachy) คอมพวเตอรลำาดบชนบนสดซงเรยกวาไทมเซรฟเวอรสแตรตมหนง (Stratum 1 Time Server) จะเชอมตอกบอปกรณกำาหนดเวลาทมความเทยงตรงสง เชนนาฬกาจพเอส (GPS clock) นาฬกาอตอมมค (Atomic Clock) หรอ นาฬกาเรดโอ(Radio Clock) โดยจะเรยกอปกรณกำาหนดเวลาเหลานวา เซอปกรณสแตรตมศนย (Stratum 0

60 http://en.wikipedia.org/wiki/GPS_clock61 http://en.wikipedia.org/wiki/Atomic_clock62 http://en.wikipedia.org/wiki/Network_Time_Protocol

Page 102: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

Device)

คอมพวเตอรซงซงโครไนซเวลาจากไทมเซรฟเวอรสแตรตมหนง กจะมสถานะเปนไทมเซรฟเวอรสแตรตมสอง (Stratum 2 Server) และคอมพวเตอรซงซงโครไนซเวลาจากไทมเซรฟเวอรสแตรตมสอง กจะเปนไทมเซรฟเวอรสแตรตมสามตอไปตามลำาดบ อยางไรกตามในการใชงานเนทเวรคไทมโปรโตคอล มกจะไมไดเชอมตอกบไทมเซรฟเวอรเพยงเครองเดยว ดงนนจงไมไดหมายความวาเซรฟเวอรทมคาสแตรตมสงกวา จะมคาเวลาไมเทยงตรงหรอไมนาเชอถอเทาเซรฟเวอรทมคาสแตรตมทตำากวา63

สำาหรบเอนทพเซรฟเวอรซงใชงานบนเดเบยน จะทำาหนาทเปนทงเซรฟเวอรและไคลเอนทไดในเวลาเดยวกน (ตามการออกแบบของเนทเวรคไทมโปรโตคอล นนคอเปนไคลเอนทของสแตรตมทตำากวา และเปนเซรฟเวอร ของสแตรตมทสงกวา) แพกเกจสำาหรบการตดตงเอนทพเซรฟเวอรจะใชแพกเกจ ntp ตดตงไดดงน

11.3 การกำาหนดคาคอนฟกสำาหรบเอนทพเซรฟเวอรคาคอนฟกโดยปรยาย (default config) ของ ntp จะสามารถใชงานไดทนทโดยไมตองแกไขเพราะใชพล (pool) ของเอนทพเซรฟเวอร64 ทมอาสาสมครใหบรการจากทวโลกโดยการใชเทคนคการกำา หนดดเอนเอส (DNS) แบบราวดโรบน (round-robin) ทำา ให เอนทพเดมอน (ntpdaemon) ซงใช คอนฟกแบบปรยายสามารถตดตอกบเซรฟเวอรเหลานไดเลยโดยไมตองปรบเปลยนคาใดๆ แตอยางไรกตามเราสามารถปรบคา คอนฟกเพอใหตวเดมอน เลอกใชเอนทพเซรฟเวอรทอยในประเทศไทยได ซงจะทำาใหลดเวลาทใชในการตดตอลง

การแกไขคอนฟกทำาไดโดยแกไขไฟล /etc/ntp.conf โดยเพมบรรทด server เขาไปในไฟลดงน

โดยท

• ntp.ku.ac.th เปนเอนทพเซรฟเวอรของมหาวทยาลยเกษตรศาสตร

• time.navy.mi.th เปนเอนทพเซรฟเวอรของกองทพเรอ 63 http://en.wikipedia.org/wiki/Network_Time_Protocol64 http://www.pool.ntp.org/en/

apt­get install ntp

server ntp.ku.ac.th server time.navy.mi.th server time1.nimt.or.th server time2.nimt.or.th

Page 103: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• time1.nimt.or.th และ time2.nimt.or.th เปนเอนทพเซรฟเวอรสถาบนมาตรวทยา

เซรฟเวอรทง 4 เปนไทมเซรฟเวอรสแตรตมหนง

เมอตดตงปรบแกคอนฟกแลวเราสามารถ เรมตนการทำางานของไทมเซรฟเวอรโดยใชคำาสง

11.4 การตรวจสอบการทำางานของเอนทพเซรฟเวอรการตรวจสอบการทำางานและสถานะของการซงโครไนซเวลา จะใชคำาสง ntpq ดงน

ซงตวเลอก -p จะแสดงรายการของเซรฟเวอรแตละตวทซงโครไนซอย และ -n จะใหแสดงเฉพาะไอพแอดเดรส (เพอไมใหเสยเวลาในการคนหาชอแบบยอนกลบ) ซงตวอยางของผลจะไดดงน

ในสภาวะเรมตนกอนทเอนทพเซรฟเวอรจะซงโครไนซเวลากบเอนทพเซรฟเวอรตวอนๆได สถานะของ refid ของเซรฟเวอรแตละตวจะมสถานะเปน init และจะกำาหนดคา stratum ของเซรฟเวอรนนเปน 16 ซง เปนคาสงสดของคาปรยายทกำาหนดไวสำาหรบเอนทพเซรฟเวอรบนลนกซ

และเมอเอนทพเซรฟเวอรตดตอกบเอนทพเซรฟเวอรอนๆไดแลว ผลของคำาสงกจะไดดงตวอยาง

service ntp start

ntpq ­pn

$ ntpq ­pn      remote           refid      st t when poll reach   delay   offset  jitter ==============================================================================  118.175.67.83   .INIT.          16 u    ­   64    0    0.000    0.000   0.000  203.185.69.60   .INIT.          16 u    ­   64    0    0.000    0.000   0.001  203.185.69.59   .INIT.          16 u    ­   64    0    0.000    0.000   0.001  203.158.111.32  .INIT.          16 u    ­   64    0    0.000    0.000   0.001  158.108.32.17   .INIT.          16 u    ­   64    0    0.000    0.000   0.001  2001:1b10:100:: .INIT.          16 u    ­   64    0    0.000    0.000   0.001  158.108.7.157   .INIT.          16 u    ­   64    0    0.000    0.000   0.001

$ ntpq ­pn      remote           refid      st t when poll reach   delay   offset  jitter ============================================================================== ­118.175.67.83   .PPS.            1 u  103  128  357   49.985   48.998 118.254 *203.185.69.60   .PPS.            1 u   66  128  377   18.855   38.831  17.909 +203.185.69.59   .IRIG.           1 u   79  128  377   19.143   15.697  26.020 ­124.109.2.169   158.108.212.157  3 u   83  128  377   18.858   50.755  25.847 +158.108.7.157   .GPS.            1 u   51  128  377   17.261   11.196  26.233 x2600:3c01::f03c 69.25.96.13      2 u   62  128  177  309.405   82.926  17.542 ­158.108.212.157 158.108.96.32    2 u   44  128  377   16.833   59.279  34.745

Page 104: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

โดยในคอลมนแรกคา remote จะแสดงไอพแอดเดรสของเอนทพเซรฟเวอรทมการตดตอดวยโดยตวอกษรแรก ทเปนเครองหมาย * จะเปนตวระบวาเพยร (peer) ของเอนทพเซรฟเวอรนคอเซรฟเวอรตวใหน และใน คอลมนทสอง refid จะแสดงวาเวลาอางอง (reference time) ของเซรฟเวอรนนคออะไร ถาเปนไทมเซรฟเวอรซงมคาสแตรตมสงกวาหนง กจะแสดงหมายเลขไอพของไทมเซรฟเวอรซงเซรฟเวอรตวนนใชในการอางอง ซงในกรณมคาสแตรตมเปนหนงกจะแสดงวาอปกรณระบเวลา (reference device) ของเซรฟเวอรนนคออะไร คา st คอ stratum สวนคาdelay, offset และ jitter จะเปนการระบคาเวลาในระดบ milliseconds โดยถามคานอยแสดงวามความถกตองสงกวา คาทมคามากกวา

สำาหรบการตรวจสอบวาเวลาของเครองคอมพวเตอร มคาตางจากเอนทพเซรฟเวอรเทาไร วธการทงายทสดคอใชคำาสง ntpdate ซงตดตงไดดงน

คำา สงน ใชสำาหรบการกำาหนดเวลา สำาหรบเครองคอมพวเตอร ซงไมไดตออย กบเครอขายอนเทอรเนตตลอดเวลามการเชอมตอเปนบางชวง จะใชคำาสง ntpdate ในการรองขอคาเวลาจากเอนทพเซรฟเวอรเพอกำาหนดเวลาของเครอง แตคำาสงน ถาใชกบตวเลอก -q กสามารถใชในการตรวจสอบการทำา งานของ เอนทพเซรฟเวอร ไ ดเชนกน เชน เมอใชคำา ส ง ntpdate กบtime.psu.ac.th

จะแสดงผลวาเอนทพเซรฟเวอรทตรวจสอบมคาสแตรตมเปนเทาไร และในการตดตอระหวางเครองไคลเอนทซงเรยกใชคำาสง ntpdate ไปยงซรฟเวอรนนจะมคา delay และ offset เปนเทาไร

ในการตดตอกบเอนทพเซรฟเวอรอนจะตดตอผานยดพ (UDP) พอรท (port) 123 ดงนน ถาเอนทพเซรฟเวอรมการตดตงไฟรวอล (firewall) ไวหรออยในเครอขายซงมอปกรณไฟรวอล กตองเปดพอรทหมายเลข 123 เพอใหเอนทพเซรฟเวอรอน หรอเครองไคลเอนททตองการซงโครไนซเวลาตดตอเขามาได

apt­get install ntpdate

/usr/sbin/ntpdate ­q time.psu.ac.th server 10.10.3.1, stratum 2, offset 0.000531, delay 0.02629 10 Aug 14:42:46 ntpdate[7436]: adjust time server 10.10.3.1 offset 0.000531 sec

Page 105: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

บทท 12 การตดตงอารซงคเซรฟเวอร (Rsync Server)

12.1 การรบสงขอมลระหวางคอมพวเตอรในการรบสงขอมลจำานวนมากระหวางคอมพวเตอรทเชอมตออยบนเครอขาย อนเทอรเนตมวธการอยหลายวธ ตวอยางวธทเปนมาตรฐานวธการหนงกคอการใชเอฟทพเซรฟเวอร (FTP Server) ซงใชสำาหรบการรบสงไฟล (ซงไดกลาวถง ไปแลวในบทของการตดตงเอฟทพเซรฟเวอร) หรออาจจะใชสงผานเซรฟเวอรอนๆ เชนในเซรฟเวอรซงมให บรการซเคยวเชลล (Secure Shell Server)สำาหรบการรโมทลอกอน (Remote Login) กจะสามารถใชคำาสง scp สำาหรบการสงไฟลแบบปลอดภยมการเขารหสขอมล ผานทางซเคยวเชลลเซรฟเวอรไดเชนเดยวกน นอกจากนการใชเวบเซรฟเวอร สำาหรบการสงไฟลแบบทางเดยวกเปนอกรปแบบหนงททำาได

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

• ใชคำาสง scp -r สำาหรบสำาเนา (copy) ไฟลทงหมดในไดเรคตอรรวมทงไดเรคตอรยอยไปยงเซรฟเวอรปลายทางซงจะเปนการทำาสำาเนาทละไฟล

• ใชคำาสง tar สำาหรบการสรางไฟลแบบ archive จากไฟลทงหมดในไดเรคตอรเปนไฟลเดยว แลวสงไฟลนนไปยงเครองคอมพวเตอรปลายทาง 65 จากนนรโมทลอกอนไปยงเครองคอมพวเตอรปลายทาง แลวใชคำาสง tar สำาหรบแยกไฟลทงหมดออกมา

ทงสองวธทกลาวมาขางตนสามารถสงไฟลไปยงเครองคอมพวเตอรปลายทางได แตกมปญหาคอถามการเปลยนแปลงขอมลเพยงเลกนอย เชน มการเปลยนแปลงไฟลเพยงไฟลจากไฟลทงหมดในไดเรคตอร การสงขอมลไปใหมโดยใชวธการเดม กจะตองสงขอมลไปเหมอนกบเรมตนสงใหมทงหมดยกเวนผใชจะตองสามารถระบไดวาจะใหสงเฉพาะไฟลใด วธการนจะเปนการเพมความซบซอนของการใชงาน โปรแกรมอารซงค (rsync) จะชวยในการลดการสงไฟลทซำาซอนได

65 ซงอาจจะใช scp หรอ ftp หรอวธการอนๆ

Page 106: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

12.2 การตดตงแพคเกจอารซงค (rsync) โปรแกรมอารซงคเปนโปรแกรมแอพลเคชนซงสามารถตดตงไดโดยการใชคำาสง

Page 107: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

12.3 การรบสงไฟลโดยใชคำาสงอารซงคอารซงค (rsync)66 เปน โปรแกรมแอพลเคชนซงพฒนามาเพอแกปญหาน โดยในการสงไฟลจำานวนมาก จากเครองตนทางไปยงเครองปลายทางอารซงคจะสรางรายการ (listing) ของไฟลทงหมดทมทงตนทาง และปลายทางเพอนำามาเปรยบเทยบกน ในกรณทเปนการสงไฟลทงหมดครงแรก ซงยงไมมไฟลใดๆทเครองปลายทางเลยอารซงคกจะสงไฟลทงหมดเชนเดยวกบวธการสงไฟลโดยโปรแกรมแอพลเคชนอน แตในกรณทมไฟลเดมอยแลว อารซงคสามารถตรวจสอบไดวามไฟลใดบางทเปลยนแปลงไป และเลอกสงไปเฉพาะไฟลทเปลยนแปลงไปเทานน ทำาใหในการสงไฟลครงตอไป จะลดปรมาณของการสงขอมลใหเหลอเฉพาะเทาทจำาเปน

อารซงคสามารถทำางานไดโดยไมจำาเปนจะตองมการตดตงใหทำางานเปนเซรฟเวอร เพยงแตจะตองมโปรแกรมอารซงคตดตงเอาไวทงบนเครองคอมพวเตอรตนทางและเครองปลายทาง อารซงคสามารถเรยกใชผานซเคยวเชลลเซรฟเวอรได โดยการกำาหนดตนทาง (source) หรอปลายทาง(destination) ของการสงไฟลจะใชรปแบบเดยวกนกบคำาสง scp เชน ถาตองการซงค (sync)ไฟลและไดเรคตอรยอยทงหมด ในไดเรคตอร Documents ไปยงเซรฟเวอรซงมชอวา svr โดยใชสทธของผใชทชอวา user และใหไปเกบในไดเรคตอรปลายทาง /home/user/docs จะใชคำาสงscp ดงน

เมอเปลยนมาใชอารซงค กจะเปลยนเฉพาะคำาสง scp เปน rsync สวนพารามเตอรอนๆสามารถใชในรปแบบเดมได ดงน

67

ซงคำาสงอารซงคกจะใชวธการสงผานซเคยวเชลลเซรฟเวอรไปยงเครองปลายทาง แตเรยกใชอารซงคสำาหรบการเปรยบเทยบรายการของไฟลและสงเฉพาะไฟลทเปลยนแปลงเทานน

66 http://en.wikipedia.org/wiki/Rsync

67 คำาสงทงสองจะใหผลลพธสดทาย เกอบจะเหมอนกน จะตางกนในกรณทม symbolic links อยใน directory

Documents นนซง scp จะ copy ไฟลไปดวยแต rsync จะไม ถาตองการใหผล ออกมาเหมอนกน ในกรณของ rsync

จะตองเพม option ’-L’ เขาไปดวย

apt­get install rsync

scp ­r Documents/ user@svr:/home/user/docs

rsync ­r Documents/ user@svr:/home/user/docs

Page 108: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

12.4 การใชงานอารซงคในแบบเซรฟเวอรคำาสงอารซงคยงสามารถใชงานในลกษณะเซรฟเวอรได ซงวธการนจะตดตอผานโปรโตคอลของอารซงคเอง มขอดคอไมจำาเปนจะตองมแอคเคาท (account) ของผใชงานบนเครองเซรฟเวอรแบบทใชสงผานซเคยวเชลลเซรฟเวอร โดยอารซงคจะเรมตนทำางานโดยใชสทธของรท (root) แลวเปลยนสทธของการทำางานใหเปนผใชอนทมสทธตำากวาได ถามกำาหนดไวในไฟลคอนฟก

การใชงานอารซงคเปนเซรฟเวอรจะตองเรยกใชโปรแกรมโดยใชสทธของรทดงน

ก อน ทจะ ใช ง านอาร ซ งค ในแบบ เซ ร ฟ เวอร จะ ตอ งม คอน ฟก ไฟล ซ ง โ ดย ท ว ไป ค อ/etc/rsyncd.conf หรอในกรณทเกบในตำาแหนงอน อาจจะกำาหนดโดยคำาสงดงน

รปแบบของไฟลคอนฟก rsyncd.conf และพารามเตอรทใชกำาหนดการทำางานของตวเดมอน(daemon) สามารถอานไดจากแมนเพจ (man page) rsyncd.conf(5) โดยทวไปจะมลกษณะคราวๆดงตอไปน

โดยในคอนฟกแตละสวนจะอยในรปของ key = value ในสวนของโมดล (module) จะกำาหนดบรเวณซง อารซงคจะมการรบสงไฟล

การใชงานอารซงคในแบบของเซรฟเวอร จะใหบรการสำาหรบการรบสงไฟลในหลายสวนไดพรอมกน โดยจะเรยกแตละสวนวาโมดลซงหมายถงไดเรคตอรกำาหนดโดยพารามเตอร path

เชนจากตวอยางซงตองการใหผใชซงมชอแอคเคาทเปน user บนเครอง svr สามารถแบคอพ(backup) ขอมลของตนเองในไดเรคตอร Documents บนเครองคอมพวเตอรไคลเอนทไปเกบในไดเรคตอร /home/user/docs บนเครอง svr กจะตองสรางไฟลคอนฟก rsyncd.conf ซงมขอมลดงน

rsync ­­daemon

rsync ­­daemon ­­config=/tmp/rsyncd.conf

... global parameters ... [module] ... module parameters ... [module2] ... module2 parameters ...

Page 109: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

• comment จะเปนสวนของคำาอธบายวาโมดลนเกบขอมลใด

• path ระบตำาแหนง (directory) ของโมดล

• read only = false จะระบวา ผใชสามารถเขยนหรอแกไขขอมลในโมดลได (คาโดยปรยายจะเปน true นนคออานไดอยางเดยว)

การใชงานคำาสงอารซงคกบอารซงคเซรฟเวอรจะใชคำาสง ดงน

สำาหรบแสดงรายการโมดลตางๆทมอยบนเซรฟเวอร และในการเลอกทจะซงคกบขอมลในโมดลใดกจะใชชอของโมดลตอทาย

จากตวอยาง ในการซงคขอมลของผใชจากเครองไคลเอนทไปเกบบนเครองเซรฟเวอรกจะใชคำาสง

กรณทขอมลบนเครองคอมพวเตอรสญหาย ตองการทจะเอาไฟลซงเกบไวบนเครอง svr กลบมากเพยงเปลยนตำาแหนงของตนทาง (source) และปลายทาง (target) ไดเปน

กจะไดขอมลทแบคอพเอาไวกลบคนมา

uid = 0 gid = 0 [docs]      comment = backup for user's Documents/      path = /home/user/docs      read only = false

rsync host::

rsync host::module

rsync ­a Documents/ svr::docs/

rsync ­a svr::docs/ Documents/

Page 110: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ภาคผนวก: การตดตง Debian Squeezeการตดตงระบบปฏบตการแบบ Debian Linux สามารถทำาไดหลายวธ สามารถเลอกทจะตดตงผานสอประเภทตางๆไดหลายแบบ แบบทเปนทนยมมากทสดคอการใชวธการ Boot และตดตงจาก CDROM เนองจากตว CDROM Drive แทบทจะเปนอปกรณมาตรฐานสำาหรบเครองคอมพวเตอรแบบ Personal Computer ทวไปไมวาจะเปนแบบ Desktop หรอ Notebook วธการตดตงระบบปฏบตการจาก CDROM เปนวธการทใชกนอย ทวไปในการตดตงระบบปฏบตการสมยใหม ซงผใชคอมพวเตอรทวไปมกจะคนเคยกนด

โดยลกษณะของการเผยแพร (distribute) ระบบปฏบตการและแอพลเคชนโปรแกรม แบบOpen-Source ซงแตกตางจากซอฟตแวรแอพลเคชนและระบบปฏบตการแบบเชงพาณชย ซงทำาให Open-Source มการ เปลยนแปลง ทเรวกวาทงในการปรบปรงตวซอฟตแวรเอง หรอการแกปญหา security ทำาใหการบนทก สวนของระบบปฏบตการ หรอแพคเกจของโปรแกรมแอพลเคชนลงบนแผน CDROM มกจะเปนเรองไมคมคา เนองจากขอมลบนแผนนน มกจะลาสมยภายในเวลาไมนาน ดงนนแนวทางในการปฏบตสำาหรบการ ใชงานระบบปฏบตการแบบ Open-Sourceกคอ จะใชวธการ download แพคเกจของโปรแกรมจาก แหลงสำา เนาแพคเกจ (Debianpackage mirror) มาตดตงใหม หรอ ทดแทนโปรแกรมเดมทตดตงอย ทลาสมยไปแลว ซงวธการนถกนำามาใชทงในกรณทตดตงลงบน เครองคอมพวเตอรใหม หรอปรบปรงระบบ เดมทมตดตงเอาไวแลว

วธการตดตง Debian Linux โดย download แพคเกจของโปรแกรมทงหมดจากแหลงสำาเนาแพคเกจ ยงตองการ วธการ boot เครองคอมพวเตอร เพอใหระบบสำาหรบการตดตงเรมตนทำางาน ในทน จะใชการ boot จาก CDROM ซงแผน CDROM ทใชสำาหรบการตดตงในแบบนจะตางจากแผน CDROM ซงใชสำาหรบการตดตงแบบทวไป สำาหรบแผนทใชในการตดตงแบบทวไปนน มกจะมสวนของโปรแกรม รวมอยบนแผน CDROM (หรอ DVDROM) จนใชเนอทเตมแผนปกต ซงสามารถตดตงระบบปฏบตการ และโปรแกรมพนฐาน จากแผน CDROM ไดเลย ในขณะทแผนCDROM สำาหรบ boot และตดตงผาน เครอขาย จะมเฉพาะสวนของระบบปฏบตการและโปรแกรมเรมตนสำาหรบการตดตงเทานน สวนของแพคเกจโปรแกรมทงหมด จะ download ผานระบบเครอขาย ทำาใหขนาดของแผน boot น จะมขนาดเลกกวาแผน CDROM สำาหรบการตดตงแบบปกตมาก (สำาหรบ Debian Squeeze dist จะมขนาดราว 16 MB เมอเทยบกบ ขนาดประมาณ 680MB ของ CDROM สำาหรบตดตงแบบปกต)

Page 111: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

แหลงสำาเนาแพคเกจของโปรแกรมสำาหรบ Debian Linux อาจจะเปน FTP Server หรอ WebServer (ซงอาจจะเปนเซรฟเวอรเดยวกน แตใหบรการทงสองโปรโตคอล ) สำาหรบในทนจะเลอกใชแหลงสำา เนา แพคเกจเปน Web Server ทชอ ftp.th.debian.org ซงเปน Official Debianmirror ของ ประเทศไทย โดยขนตอนของการตดตงจะเปนดงน

• download debian installer image จ า กhttp://ftp.th.debian.org/debian/dists/testing/main/installer-i386/current/images/netboot/mini.iso หรอ แหลงสำาเนาแพคเกจทอน โดยเลอก dist ของ Debian และสถาปตยกรรมของโปรเซสเซอร ตามความเหมาะสม ในทนเลอกใช สถาปตยกรรมของCPU เปน i386 ซงเปนสถาปตยกรรมทแพรหลาย ทสดบนเครองคอมพวเตอรแบบ PC ในปจจบน (สำาหรบเครองคอมพวเตอรรนใหมๆ อาจจะใชสถาปตยกรรม ของ CPU แบบAMD64 ได ซงจะทำาใหสามารถ ใชประสทธภาพของ CPU ไดสงกวา แต i386 สามารถ ใชงานไดบน CPU ทรองรบ AMD64 ดวย) สวน dist ของ Debian ในทนเลอกใช testingเนองจาก ในชวงเวลาทกำาลงเขยนรายงานฉบบน Debian อยในชวงของการ เปลยนผานจาก Debian Stable ปจจบนซงใชรหสของ dist วา Lenny ไปเปน dist ใหมทมรหสวาSqueeze ซงขณะนยงอยใน testing

ในสภาวะปกต การตดตง Debian สำาหรบใชงานเปน Server ควรทจะเลอกใช dist เปน Stableมากกวาทจะเปน Testing เนองจากมเสถยรภาพของระบบปฏบตการและโปรแกรมสงกวา ยกเวนเฉพาะในกรณทม features บางอยางทตองการจากเคอรเนลของระบบปฏบตการ หรอมแพคเกจของโปรแกรม ซงไมมอยใน dist ทเปน Stable ซงในกรณนนกสามารถใช dist Testing ได

• ใชซอฟตแวรสำาหรบเขยน image ท download มาลงใน CD และใช CD แผนนนสำาหรบboot เครอง

ในตวอยางทจะแสดงตอไปจะใช VirtualBox สำาหรบแสดงการตดตง Debian Linux บนเครองคอมพวเตอรแบบ PC เพอความสะดวกในการสราง Screen Shot และ บรรยายประกอบภาพโดยเรมจากขนตอนแรกทตดตง ไปจนกระทงถงขนตอนของการ Reboot เครองใหม ซงหลงจากนน เครองทตดตง Debian Linux กพรอมทจะใชงานได

เรมจากการ boot เครองดวยแผน CD เครองจะอานระบบปฏบตการ Linux และเรมตนทำางานสวนของโปรแกรมทมอยบนแผน CD คอโปรแกรมสำาหรบตดตง ซงจะเขาสหนาจอแรกทจะตงคำาถาม กบผใช ดงรป รปท 10: เรมตนการตดตง Debian Squeeze

Page 112: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณของการตดตงแบบทวไป กจะเลอกตวเลอก Install สำาหรบเรมตนการตดตง โดยการกดปมEnter สามารถใชคยลกศรในการเลอกเมนอนๆได สวนของ Advanced Options จะใชสำาหรบผใชทมประสบการณ ในการตดตงมากอนแลว เชนตองการเลอก Desktop Environment แบบอนๆทไมใช Gnome Desktop หรอตองการตดตงแบบอตโนมต หรอจะตองการใชแผน boot นในลกษณะอนๆ เชน boot เครองใน rescue mode แทนทจะเปนการตดตงแบบทวไป เปนตนสำาหรบในกรณนเมอเลอก Install แลว กจะเขาสจอภาพถดไป ซงจะเปนการเลอกใชภาษา ดงรป105

รปท 10: เรมตนการตดตง Debian Squeeze

Page 113: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

คาโดยปรยายจะเปนภาษาองกฤษ (English) แตสำาหรบ Debian Squeeze ในการตดตงแบบText Mode จะรองรบภาษาไทยดวย ซงสามารถเลอกภาษาไทย (Thai) ไดโดยการใช ปมลกศรเลอน หรอ กดปมตวอกษร ’T’ สองครง ดงรป รปท 12: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย

รปท 11: เมนเลอกภาษาสำาหรบการตดตง คา default เปนภาษา English

Page 114: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนตอไปกจะเปนการเลอกตำาแหนงทตง (Location) ซงจะระบวาเครองคอมพวเตอรนอยทใดซงจะใชสำาหรบการระบเขตเวลา (Time Zone) และภาษาทใช (Locale) ซงถาเราเลอกใช ภาษาไทยสำาหรบการตดตง ระบบกจะใชคาตำาแหนงโดยปรยายเปนประเทศไทยเชนเดยวกน ดงรป รปท13: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย

รปท 12: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย

Page 115: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนตอไปจะเปนการเลอกชนดของแปนพมพ ดงรป รปท 14: เลอกชนดของแปนพมพ

รปท 13: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย

Page 116: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนตวตดตงจะตรวจสอบ Hardware ของเครอง เพอเลอกใช Driver ทเหมาะสม สำาหรบการตดตอกบเครอขาย สำา หรบเครองแบบ Notebook โดยทวไปจะม ทง Wireless และEthernet ในการตดตง การใชงาน Ethernet จะใชงานไดสะดวกกวา เมอเลอกใช Driver ทเหมาะสมแลว ตวตดตงกจะรองขอ IP address โดยใช DHCP ซงในทนจะสมมตวา ในเครอขายทใชงาน สำาหรบการตดตงครงน เครองสามารถรองขอ address ไดโดยไมมปญหา (ในกรณทมปญหา ตวตดตงจะใหผใชกำาหนด IP Address เอง) ขนตอนตอไปจะเปนการกำาหนด ชอเครองโดยตวโปรแกรมตดตงกำาหนดคาปรยายของชอเครองเปน debian ดงรป รปท 15: กำาหนดชอเครอง

รปท 14: เลอกชนดของแปนพมพ

Page 117: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สวนชอ domain name จะใชคาท DHCP server สงมาให ดงรป รปท 16: กำาหนดชอ domain

รปท 15: กำาหนดชอเครอง

Page 118: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนถดไปกจะเปนการเลอก แหลงสำาเนาแพคเกจ ซงแบงแยกตามประเทศ ดงรป รปท 17: แหลงสำาเนาแพคเกจสำาหรบแตละประเทศ

รปท 16: กำาหนดชอ domain

Page 119: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

สำาหรบประเทศไทย จะมแหลงสำาเนาอยมากกวาทปรากฏอยในรายการทแสดงไว แตทปรากฏอยจะเปนแหลงทได ลงทะเบยนไวกบ Debian Mirror

ในการตดตงควรจะเลอกแหลงทอยใกลทสด (บนเครอขายอนเตอรเนท) ในทนจะเลอกใช OfficialMirror ของประเทศไทย คอ ftp.th.debian.org ดงรป รปท 18: เลอกแหลงสำาเนาแพคเกจของเดเบยน

รปท 17: แหลงสำาเนาแพคเกจสำาหรบแตละประเทศ

Page 120: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในขนตอนถดไปตวตดตงจะถามขอมลของ proxy ซงใชในกรณทเครอขายทเครองคอมพวเตอร จะตองตดตอกบ แหลงสำาเนาแพคเกจผาน proxy ในกรณทไมจำาเปนตองใชกไมตองกรอกขอมลใดๆดงรป รปท 13: เลอกใชภาษาสำาหรบการตดตงเปนภาษาไทย

รปท 18: เลอกแหลงสำาเนาแพคเกจของเดเบยน

Page 121: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนตวตดตงจะเรม download โปรแกรมเพมเตมเพอทำางานในการตดตงตอไป ดงรป รปท 20: ตวตดตงเรม download โปรแกรมตดตงพนฐาน

รปท 19: กำาหนดคาของ proxy

Page 122: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนจะเปนการกำาหนดคารหสผานของ root ซงเปนผใชทมสทธสงสดของระบบ และสรางผใชใหมขนมา

ใน distribution อนๆของ Linux เชน Ubuntu จะเลอกใชวธการระงบการใชงาน root โดยการใช password แตจะใหสรางผใชขนมา และผใชนนสามารถใชสทธของผดแลระบบได โดยใชผานคำาสง sudo สำาหรบ Debian สามารถเลอกทจะใช root โดยการกำาหนดรหสผานให หรอจะใชวธการแบบเดยวกบ Ubuntu โดยไมกำาหนดรหสผานให root และจะตองสรางผใชขนมา และใชคำาสง sudo เมอตองการสทธของ root แทน ดงรป รปท 21: กำาหนดรหสผานให root

รปท 20: ตวตดตงเรม download โปรแกรมตดตงพนฐาน

Page 123: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในกรณทกำาหนดรหสผานให root จะตองยนยนรหสผานนนซำาอกครงหนง ดงรป รปท 22: ยนยนรหสผานของ root ซำา เพอเปนการตรวจสอบวา รหสผานทใสเขาไปนนถกตอง

รปท 21: กำาหนดรหสผานให root

Page 124: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนตอไปจะเปนการสรางผใชขนมาใหม โดยตวตดตงจะถามชอเตมของผใช เพอทจะใชชอนนสำาหรบกำาหนดเปนชอบญช (login name) ดงรป รปท 23: กำาหนดชอเตมของผใช

รปท 22: ยนยนรหสผานของ root ซำา

Page 125: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ซงในทนควรจะใชเปนภาษาองกฤษ สำาหรบ ชอบญช จะตองเปนภาษาองกฤษเรมตนดวยตวพมพเลก และตามดวยตวพมพเลกกบตวเลขเทานน ไมสามารถใช ชองวาง หรอสญลกษณพเศษอนๆไดดงรป รปท 24: กำาหนดชอบญชสำาหรบ login

รปท 23: กำาหนดชอเตมของผใช

Page 126: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนกจะเปนการกำาหนดรหสผาน ซงจะตองยนยนรหสผานนนซำาอกครงเชนเดยวกนกบ ในขนตอนของการกำาหนดรหสผานให root

ในรป รปท 25: กำาหนดรหสผานใหผใชงาน จะเปนการกำาหนดรหสผาน และรป รปท 26: ยนยนรหสผานซำาอกครง จะเปนการยนยนรหสผาน

รปท 24: กำาหนดชอบญชสำาหรบ login

Page 127: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

รปท 25: กำาหนดรหสผานใหผใชงาน

Page 128: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนกจะเปนขนตอนของการจดเตรยมพนทสำาหรบจดเกบระบบปฏบตการและแอพลเคชนซงโดยทวไปแลวกจะเปนฮารดดสก เนองจากสถาปตยกรรมของ PC ปจจบนทำาให สามารถ แบงเนอทบนฮารดดสก เปนสวนยอยเรยกวาพารทชน (partition) และสามารถตดตงระบบปฏบตการหลายตวอยรวมกนบนฮารดดสกตวเดยว โดยแยกกนอยหลายพารทชนได ดงนนในขนตอนน ตวตดตงของ Debian จะใหผใชเลอกทจะตดตงไดหลายรปแบบ รวมทงตดตงให Debian ใชงานฮารดดสกรวมกบ ระบบปฏบตการตวอนทตดตงไวกอนแลวได

แตสำาหรบในกรณน จะขอแสดงรปแบบทซบซอนนอยทสดคอ มระบบปฏบตการ Debian Linuxเพยงตวเดยวตดตงอยบนฮาดรดสก และใชเนอททงหมดเกบขอมลไวรวมกน ในพารทชนเดยว ไมมการแบงเปนพารทชนยอย

ในการตดตงจะเรมจากคำาถามสำาหรบการแบงพารทชนดงรป รปท 27: การกำาหนดพารทชนสำาหรบการตดตง

รปท 26: ยนยนรหสผานซำาอกครง

Page 129: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เลอกการตดตง โดยใชเนอททงหมด และไมตองใช LVM (Logical Volume Manager) 68 และไมตองมการเขารหสขอมลใดๆ

ตอจากนนจะเปนการเลอกฮารดดสก ซงหนาตางนมไวกรณสำาหรบเครองทมฮารดดสกหลายตวจะไดระบฮารดดสกตวทตองการตดตง Debian Linux ไดถกตอง แตเนองจากในกรณน มฮารดดสกเพยงตวเดยวจงม ตวเลอกเพยงตวเดยวใหเลอก ดงรป รปท 28: ระบฮารดดสกทจะใชตดตง

68 Logical Volume จะเหมาะสำาหรบการแบงเนอทฮารดดสกเปนสวนยอย และตองการใหสามารถปรบเปลยนขนาดของเนอทในแตละสวนในภายหลงได ซงเหมาะ สำาหรบการใชงานในระดบ Server ซงมการใหบรการขอมลจำานวนมากและอาจจะมการ ปรบเปลยนเนอทสำาหรบการเกบขอมล แตเนองจากมรายละเอยดมากเกนไป ดงนนจะไมกลาวถงในทน

รปท 27: การกำาหนดพารทชนสำาหรบการตดตง

Page 130: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

และระบรปแบบของการแบงพารทชนสำาหรบเกบขอมล ดงรป รปท 29: กำาหนดรปแบบของพารทชนทใชเกบขอมล

รปท 28: ระบฮารดดสกทจะใชตดตง

Page 131: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนตอไปตวตดตงจะคำานวณเนอทและใหยนยนรปแบบพารทชนทจะสรางบนฮารดดสก ดงรปรปท 30: ยนยนรปแบบการแบงพารทชน

รปท 29: กำาหนดรปแบบของพารทชนทใชเกบขอมล

Page 132: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในขนตอนเกยวกบการกำาหนดรปแบบของสรางพารทชนบนฮารดดสกทงหมด จะเปนขนตอน ของการเตรยมการแตจะยงไมมการเขยนขอมลจรงลงไปในฮารดดสก เพอทวาในกรณท ผใชเปลยนใจกจะสามารถยกเลกไดโดยไมมขอมลเสยหาย ดงนนในขนตอนตอไป ตวตดตงจะใหยนยนอกครงและจะเขยนรปแบบของการสรางพารทชนลงไปบนฮารดดสกจรงๆ เมอผานขนตอนนจะไมสามารถยกเลกสงททำาได ดงรป รปท 31: ยนยนรปแบบทเลอกไวและเขยนขอมลลงฮารดดสก

รปท 30: ยนยนรปแบบการแบงพารทชน

Page 133: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนตวตดตงกจะเรมกระบวนการของการฟอรแมทพารทชน ดงรป รปท 32: ฟอรแมทพารทชน

รปท 31: ยนยนรปแบบทเลอกไวและเขยนขอมลลงฮารดดสก

Page 134: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ขนตอนถดไป กจะเปนการตดตงระบบปฏบตการและโปรแกรมพนฐานลงบนฮารดดสก ดงรป รปท 33: ตดตงระบบพนฐาน

รปท 32: ฟอรแมทพารทชน

Page 135: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

ในระหวางทกำาลงตดตงระบบพนฐานเมอมาถงสวนของการตดตงและปรบแตงคาของคยบอรด(keyboard configuration) จะมการใหเลอกรปแบบ Layout ของการวางตำา แหนงคย บนคยบอรดซงจะม 3 รปแบบคอ เกษมณ, ปตตโชต, และมาตรฐาน มอก-820.2538 ตามลำาดบ ดงแสดงในรป รปท 34: เลอกรปแบบของคยบอรด

รปท 33: ตดตงระบบพนฐาน

Page 136: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนจะเปนการเลอกคยสำาหรบการสลบภาษาระหวางไทยกบองกฤษ ดงรป รปท 35: เลอกคยสำาหรบสลบภาษา

รปท 34: เลอกรปแบบของคยบอรด

Page 137: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอผานขนตอนนกจะกลบเขาสการตดตงระบบพนฐานตอ ดงรป รปท 36: ตดตงระบบพนฐานตอ

รปท 35: เลอกคยสำาหรบสลบภาษา

Page 138: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอตดตงระบบพนฐานเสรจ กจะเปนขนตอนเตรยมการสำาหรบตดตงซอฟตแวร ดงรป รปท 37: เตรยมการสำาหรบการเลอกและตดตงซอฟตแวร

รปท 36: ตดตงระบบพนฐานตอ

Page 139: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

โดยกอนทจะตดตงซอฟตแวรสำาหรบใชงาน ตวตดตงของ Debian จะมแพคเกจทชอวา popconหรอ Popularity Contest ซงใชสำาหรบการเกบขอมลวามแพคเกจใดบาง ทผใชเลอกทจะตดตงและใชงาน เพอทจะสงขอมลกลบไปใหผพฒนาทราบ โดยในสวนนผใชสามารถเลอกทจะใหสงขอมลน กลบหรอไมกได โดยคาปรยายจะเปนไมสงขอมลกลบไป

การเลอกตงคาสำาหรบแพคเกจ popularity-contest ดงรป รปท 38: คำาถามสำาหรบการตงคาใหกบ popularity contest

รปท 37: เตรยมการสำาหรบการเลอกและตดตงซอฟตแวร

Page 140: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

หลงจากนนจะเปนการเลอกตดตง ชดซอฟตแวรสำาหรบการใชงาน ผใชสามารถเลอกตดตง แพคเกจแยกแตละตวได แตในขนตอนนจะเปนวธการเลอกตดตง ตามลกษณะการใชงาน โดยคาโดยปรยายจะเปนการตดตงสำาหรบเปน Graphical Desktop ดงรป รปท 39: เลอกชดของซอฟตแวรทจะตดตง

รปท 38: คำาถามสำาหรบการตงคาใหกบ popularity contest

Page 141: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอเลอกแลว ตวตดตงกจะเรม download แพคเกจของโปรแกรมแตละตวทมในชดซอฟตแวรและตดตงลงไปจนครบ

ขนตอนสดทายกอนทจะเสรจสนในกระบวนการของการตดตง กคอการตดตง boot loader ซงคาโดยทวไปจะเปนการตดตง grub boot loader ซงสามารถใช boot ทง Linux และระบบปฏบตการอนๆ (ถามตดตงอย) ไดดวย ถามระบบปฏบตการอนทม boot loader อยแลวและไมตองการเปลยน boot loader กสามารถเลอกทจะขามขนตอนนไปได แตสำาหรบในกรณทวไปการใช grubเปน boot loader จะเปนตวเลอกทดทสด ดงรป รปท 40: ตงคาใช grub เปน boot loader

รปท 39: เลอกชดของซอฟตแวรทจะตดตง

Page 142: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

เมอตดตง boot loader เสรจแลว การตดตงกถอวาเสรจสมบรณ ตวตดตงจะแสดงขอความสดทาย กอนทจะ reboot เครอง ดงรป รปท 41: เสรจสนกระบวนการของการตดตง

รปท 40: ตงคาใช grub เปน boot loader

Page 143: การนำาOpen-Source Software มาใช้ สำาหรับการให้บริการ ...fivedots.coe.psu.ac.th/Software.coe/241-478/report-20130822.pdf ·

รปท 41: เสรจสนกระบวนการของการตดตง