Professional Documents
Culture Documents
23 ระบบบริหารจัดการ Syslog
23 ระบบบริหารจัดการ Syslog
23 ระบบบริหารจัดการ Syslog
สารนิพนธ์น้เี ป็นส่วนหนึ่งของการศึกษา
หลักสูตรวิทยาศาสตรมหาบัณฑิต สาขาวิชาเทคโนโลยีสารสนเทศ
คณะวิทยาการและเทคโนโลยีสารสนเทศ
มหาวิทยาลัยเทคโนโลยีมหานคร
ปีการศึกษา 2557
หัวข้อโครงงาน ระบบบริหารจัดการ Syslog
นักศึกษา นางสาว พัชรินธร รื่นราตรี
รหัสนักศึกษา 5517670013
หลักสูตร วิทยาศาสตรมหาบัณฑิต สาขาเทคโนโลยีสารสนเทศ
ปีการศึกษา 2557
อาจารย์ผคู้ วบคุมโครงงาน ผศ.ดร.วรพล ลีลาเกียรติสกุล
บทคัดย่อ
สารนิพนธ์ระบบบริหารจัดการ Syslog มีวตั ถุประสงค์เพื่อบริห ารจัดการข้อมูลล็อก ที่
ได้ม าจากการทางานต่างๆ ของเครื่อ งในระบบที่ทางานบนเครือข่าย ช่วยให้การทางานของ
ผูด้ ู แ ลระบบและผู้ท่ี ม ีส่ว นเกี่ย วข้องกับ ระบบสามารถท างานได้ง่ าย ถู ก ต้อ ง สะดวกและมี
ประสิทธิภาพ มีการจัดการกับรูปแบบของ Syslog message ใหม่ให้ง่ายต่อการนาไปใช้ แจ้ง
เตือ นการท างานหากพบว่าข้อมูลล็อก(Log) นัน้ พบความผิดปกติ ตามเงื่อนไขที่ผู้ดูแ ลระบบ
กาหนดไว้ ข้อมูลล็อกจะถูกบันทึกไว้ในฐานข้อมูลสามารถนาเสนอออกมาเป็ นรายงาน เพือ่ เป็ น
ตัวช่วยในการวิเคราะห์ ตัดสินใจในการดูแ ล พัฒนาระบบ ลดข้อผิดพลาดในการทางานของ
ระบบให้สามารถทางานได้อย่างมีประสิทธิภาพสูงสุด
I
กิ ตติ กรรมประกาศ
สารนิ พ นธ์ น้ี ส าเร็จ ลุล่ว งได้ด้ วยดี ด้ว ยค วามกรุณ าจากบุ ค คลหลายฝ่า ยที่เ ป็ น ผู้ ม ี
อุปการะคุณให้คาแนะ ให้คาปรึกษา และให้ความช่วยเหลือ ข้าพเจ้าขอขอบพระคุณมา ณ ที่น้ี
ข้าพเจ้าขอขอบพระคุณ ผศ.ดร.วรพล ลีลาเกียรติสกุ ล อาจารย์ท่ีปรึกษาโครงงาน ที่
กรุณาแนะนา และตรวจสอบ แก้ไขข้อบกพร่องต่าง ๆ ที่เป็ นประโยชน์ ต่อการทาสารนิพนธ์ ทา
ให้สารนิพนธ์มคี วามถูกต้องสมบูรณ์ ครบถ้วน และเกิดประโยชน์สูงสุด
ข้าพเจ้าขอขอบพระคุ ณ อาจารย์พ งษ์ สุรี ลิ้ม มณี ว ิจิต ร ที่ก รุณ าให้คาปรึกษา ชี้แ นะ
แนะนา ดูแล ด้วยความเอาใจใส่เป็ นอย่างดี จนสามารถทาให้ เกิดแนวคิดในการทาสารนิพนธ์
ฉบับนี้
ข้า พเจ้า ขอขอบพระคุณ ครูอ าจารย์ทุ ก ๆท่ านที่ อบรมสัง่ สอนวิช าการต่ างๆ ให้แ ก่
ข้าพเจ้า จนทาข้าพเจ้าได้นาวิชาการ และความรูม้ าพัฒนาโครงงานนี้ ให้เป็นประโยชน์ แก่ผอู้ ่นื
และตัวข้าพเจ้าเอง
ขอขอบคุณเพื่อนๆ พี่ๆ น้อ งๆ และผูท้ ่มี คี วามเกี่ยวข้องทุกคนที่ให้ความช่วยเหลือ ให้
กาลังใจ และหวังดีกบั ข้าพเจ้ามาโดยตลอด
พัชรินธร รื่นราตรี
ธันวาคม 2557
II
สารบัญ
หน้า
บทคัดย่อ I
กิตติกรรมประกาศ II
สารบัญ III
สารบัญตาราง V
สารบัญรูป VI
บทที่ 1 บทนา 1
ั
1.1 ปญหาและแรงจู งใจ 1
1.2 สารนิพนธ์ท่นี าเสนอ 1
1.3 วัตถุประสงค์ 1
1.4 ขอบเขตสารนิพนธ์ 2
1.5 โครงสร้างของสารนิพนธ์ 2
บทที่ 2 พืน้ ฐานและทฤษฎีท่เี กี่ยวข้อง 3
2.1 ทฤษฎีการทางานของระบบ 3
2.2 Syslog 3
2.3 การคานวณหาค่า Facility และ Severity จากค่า Priority 6
2.4 การแจ้งเตือนเหตุการณ์ผา่ นทาง SMS (Google Calendar API) 7
บทที่ 3 การออกแบบและวิธดี าเนินการ 9
3.1 การวิเคราะห์และออกแบบระบบ 9
3.2 การทางานของระบบ 10
3.3 ER Diagram ของระบบ MyBase 12
3.4 การออกแบบกระบวนการรับส่งข้อมูลและ Flow การทางาน 13
3.5 โครงสร้างฐานข้อมูล 24
บทที่ 4 การทดลองและผลการทดลอง 29
4.1 ขัน้ ตอนการทางานและเครื่องมือที่ใช้ในการทดลองระบบ 29
4.2 การทางานของเซิร์ฟเวอร์ 30
4.3 การทางานของโปรแกรม 32
III
สารบัญ(ต่ อ)
หน้า
บทที่ 5 สรุปผลการดาเนินงาน 45
5.1 ผลการดาเนินงาน 45
ั
5.2 ปญหาและอุ ปสรรค 45
5.3 แนวทางการแก้ไข 45
5.4 แนวทางการพัฒนาในอนาคต 45
เอกสารอ้างอิง 46
ภาคผนวก ก ก-1
IV
สารบัญตาราง
หน้ า
V
สารบัญรูป
หน้ า
VI
สารบัญรูป(ต่ อ)
หน้า
VII
บทที่ 1
บทนำ
1.1 ปัญหำและแรงจูงใจ
เนื่องจากปจั จุบนั มีการจัดเก็บข้อมูลล็อก(Log)บนเครือข่าย แต่ขอ้ มูลล็อกนัน้ ไม่มกี าร
จัดการหรือมีการวิเคราะห์ใดๆกับข้อมูลที่เก็บไว้ ซึ่งข้อมูลล็อกที่เก็บไว้นัน้ สามารถนามาเป็ น
ข้อมูลในการวิเคราะห์การใช้งานทรัพยากร นามาเป็ นข้อมูล ในการตัดสินใจต่างๆบนเครือข่าย
แจ้งเตือนความผิดปกติของเครือข่าย เพือ่ ทาให้เครือข่ายมีประสิทธิภาพในการทางานสูงสุด
จึง เป็ นที่มาในการทาระบบมอนิ เตอร์เครือข่าย มีการท าระบบจัดการข้อมูล ล็อกเพื่อ
นามาใช้แ จ้งเตือนการทางานของระบบเครือข่ายเพือ่ ให้สามารถทราบถึงความผิดปกติของระบบ
เครือข่าย หรือเพื่อช่วยในการตัดสินใจต่างๆบนระบบเครือข่าย โดยมีรูปแบบและการจัดการ
ตรวจสอบที่ง่ายขึน้
1.3 วัตถุประสงค์
1.3.1 เพื่อเพิม่ ประสิทธิภาพในการทางานของผูด้ ูแ ลระบบให้ทางานได้อย่างรวดเร็ว
และมีความแม่นยาถูกต้อง
1.3.2 เพือ่ เพิม่ ประสิทธิภาพการทางานของระบบ
1.3.3 เพือ่ ให้เกิดความรวดเร็วในการติดตามและแก้ไขระบบ
1.3.4 เพือ่ ลดภาระและข้อผิดพลาดของผูด้ ูแลระบบ
1
1.4 ขอบเขตสำรนิ พนธ์
1.4.1 ระบบสามารถจัดการข้อมูลภายในระบบ ได้แก่
1.4.1.1 การเพิม่ ลบ แก้ไข ข้อมูลผูใ้ ช้งานระบบ
1.4.1.2 การเพิม่ ลบ แก้ไข เงื่อนไขในการเก็บข้อมูลล็อก
1.4.1.3 การเพิม่ ลบ แก้ไข การตัง้ ค่าการแจ้งเตือนของระบบ
1.4.2 ระบบสามารถแสดงเหตุการณ์ขอ้ มูล แบ่งเป็น
1.4.2.1 แสดงเหตุการณ์จากค่า Facility
1.4.2.2 แสดงเหตุการณ์จากค่า Severity
1.4.2.3 แสดงเหตูการณ์จากค่า Content
1.4.3 ระบบสามารถแจ้งเตือนเหตุการณ์ผดิ ปกติผา่ นทางอีเมล์ได้
1.4.4 ระบบสามารถแจ้งเตือนเหตุการณ์ผดิ ปกติผา่ นทาง SMS
1.4.5 ระบบสามารถออกรายงานสรุปข้อมูลล็อกได้ตามค่าที่กาหนด
2
บทที่ 2
พื้นฐำนและทฤษฎีที่เกี่ยวข้อง
2.1 ทฤษฎีกำรทำงำนของระบบ
วัต ถุป ระสงค์ ของสารนิ พ นธ์เล่มนี้ เพื่อ ศึกษาและพัฒ นาระบบมอนิ เตอร์ก ารใช้ง าน
เครือข่าย โดยมีการจัดการข้อมูลล็อกให้มปี ระสิทธิภาพมากขึน้ ซึ่งระบบจะเกี่ยวข้องกับทฤษฏี
องค์ความรู้ ประกอบการศึกษาและพัฒนาระบบซึ่งจะมีหวั ข้อที่ศกึ ษาดังนี้
2.1.1 Syslog
2.1.2 การคานวณหาค่า Facility และ Severity จากค่า Priority
2.1.3 การส่งการแจ้งเตือนล็อกผ่านทาง SMS (Google Calendar API)
3
2.2.1.1 PRIORITY
เป็นเลข 8 บิตที่แ สดงอยู่ภายใต้เครื่องหมาย “<>” ซึ่งเป็นค่าที่ได้มาจากการคานวณค่า
Facility กับ Severity
Facility ค่าและชื่อของกระบวนการที่ถูกกาหนดไว้ตาม RFC3164
ซึ่งมีค่าต่างๆดังตารางที่ 2.2
4
Severity หรือ เรีย กอีกอย่างว่า Level คือระดับ ของความรุนแรง
ของความผิดปกติการแจ้งเตือนข้อผิดพลาด ซึ่งมีค่าต่างๆดังตาราง
ที่ 2.3
5
2.2.1.3 MESSAGE ชุดข้อมูลทีอธิบายข้อมูลล็อค
Tag เป็นชื่อของโปรแกรมหรือชื่อของ โปรเซสที่สร้างล็อก เนื้อหามี
รายละเอียด เป็นข้อความ ในบางครัง้ อาจจะปรากฏหมายเลขของ
โปรเซส pid ซึ่งจะอยูใ่ นเครื่องหมาย [ ] แล้วตามด้วยเครื่องหมาย
“:”
Content เป็ น ส่วนของข้อมูลรายละเอีย ดล็อกซึ่ง ไม่ม ีรูปแบบหรือ
ข้อกาหนดในการแสดงผล
การประมวลผลข้อความ syslog อ้างอิงตามมาตรฐาน RFC3164 โดยระบุไว้วา่ รูปแบบ
ข้อความ syslog จะมี 2 แบบคือ
<PRI>TIMESTAMP HOSTNAME TAG: CONTENT และ
<PRI>TIMESTAMP HOSTNAME TAG[PID]: CONTENT
ตัวอย่าง Syslog
<34>Oct 11 22:14:15 mymachine su: 'su root' failed for lonvick on /dev/pts/8
Severity = 2
0 0 0 0 0 0 1 0
6
หรือคานวณจาก
Priority = (Facility * 8) + Severity
Facility = priority >> 3
และค่า Severity = priority & 7 (0000111)
ดังนัน้ ค่า Priority 27 มีค่า Facility 3 และค่า Severity Level 3
7
$client= new Google_Client();
$client->setApplicationName("MyApplication");
$client->setDeveloperKey(MY_SIMPLE_API_KEY);
- Building the Service object
$service = new Google_Service_Books($client);
- Calling an API
$optParams = array('filter' => 'free-ebooks');
$results = $service->volumes->listVolumes('Henry
David Thoreau', $optParams);
- Handling the result
foreach ($results as $item) {
echo $item['volumeInfo']['title'], "<br /> \n";
}
8
บทที่ 3
กำรออกแบบและวิธีกำรดำเนิ นกำร
3.1 กำรวิเครำะห์และออกแบบระบบ
โครงสร้างของระบบ
1. Server
2. MyManagement
3. MyBase
มีรายละเอียดของโครงสร้างส่วนต่างๆดังนี้
3.1.1 Server
เป็ น ส่ ว นประมวลผลหลัก ที่ท างานในอยู่เบื้อ งหลัง ที่ใช้ในการรับ ค่ าและตรวจสอบ
แหล่ง ที่ม าของข้อมูลล็อ กจากเครื่อ ง Client แล้ว นามาวิเคราะห์ จัดรูป แบบ และดาเนิ น การ
จัด เก็บข้อมูลล็อก ตามข้อกาหนดที่ ได้กาหนดเงื่อนไขไว้ เพื่อเก็บลงใน MyBase เมื่อพบว่ามี
ข้อมูลล็อกแสดงเหตุการณ์ ผดิ ปกติ มีค่า facility และ severity ที่กาหนดให้มกี ารแจ้งเตือน โดย
แจ้งเตือนผ่านทางหน้าเว็บ MyManagement อีเมลล์ หรือ SMS
3.1.2 MyManagement
เป็ นส่วนที่ใช้ในการบริหารจัดการ สร้าง ลบ แก้ไข ตัง้ ค่าข้อมูลต่างๆ ทางานร่วมกับ
Server ในการกาหนดค่า Facility, Severity, กาหนดช่องทางการแจ้ง เตือนความผิดปกติ การ
สร้างผูใ้ ช้งานระบบ การกาหนดสิทธิการใช้งาน การระบุเครื่องที่ตอ้ งการรับข้อมูลล็อก การแสดง
ข้อมูลล็อก การออกรายงานสรุป ฯลฯ
3.1.3 MyBase
เป็นส่วน Data Base ที่เป็นพืน้ ที่เก็บข้อมูลต่างๆ ที่ได้รบั มาจาก Server ซึ่งจะแบ่งแยก
การจัด เก็บ ข้อ มูล ต่ า งๆ ตามความเหมาะสม โดยที่ Server และ MyManagement จะเป็ น
กาหนดการทางาน ประมวลผลและวิเคราะห์วา่ จะต้องเก็บข้อมูลใดบ้าง ไว้ท่ตี ารางใดบ้าง
9
3.2 กำรทำงำนของระบบ
log Email
MyManagement
Client User
Switch
MyBase
log SMS
Mobile Phone
Client
10
3.2.1 การรับข้อมูลล็อก จากเครื่อง Client แล้วบันทึกลงฐานข้อมูล
Server ทาหน้าที่รบั ข้อมูลล็อกจากเครื่อง Client ซึ่ง Server ทางานอยู่บนโปรโตคอล
UDP พอร์ต 514 ตามมาตรฐานของการรับส่งข้อมูลของโปรโตคอล syslog ดังรูปที่ 3.2
ค้ น ห า ข้ อ มู ล ว่ า เป็ น ไอ พี ที่
ต้องการ
ส่งไอพีทตี่ อ้ งการ
ตรวจสอบว่า เป็นไอพีท ี่
ต้องการ แล้วประมวลผลข้อมูล
ล็อก
บันทึกข้อมูลล็อก
อธิ บำยกำรทำงำน
จากรูปที่ 3.2 เมื่อ Client ส่งข้อมูลล็อกมาที่ Server ข้อมูลล็อกนัน้ จะต้องถูกตรวจสอบ
ไอพีเครื่องก่อนว่าเป็ นเครื่องที่ถูกระบุไว้ในฐานข้อมูล หากตรงตามที่ระบุไว้ Server จะทาการ
ประมวลผลและวิเคราะห์แยกข้อมูลล็อก แล้วบันทึกลงฐานข้อมูล
11
IP Device Descrition
1
has
N
UserDevice ID
NN SourseIP Content
has Time
GPassword
LogID
o LogStore
Hostname
Gmail has has Date 11
1
Tag
Password N
AlertLog ID o
1
1
UserID
User has ID has has SID
1 1
NotifyStatus
Status 1 1
NotifiedLog Sname
3.3 ER Diagram ของระบบ MyBase มีข้อมูลดังต่อไปนี้
Facility Severity
has
Username
1 1 Snickname
FID
1
has has SDecription
Fnickname FDescription 11
Statusname 1 RecLog ProfileName
has
ID
12
3.4 กำรออกแบบกระบวนกำรรับส่งข้อมูลและ Flow กำรทำงำน
3.4.1 ภาพรวมการทางาน Server
facility severity
facility severity
facility severity
13
3.4.2 ภาพรวมการทางาน MyManagement
Username,Password
Login
จากรู ป ที่ 3.5 เมื่อ ผูใ้ ข้ง านเปิ ด เว็บ แอฟลิเคชัน่ MyManagement ขึ้น มา ต้อ งท าการ
login เพื่อเข้าใช้ง านระบบ โดยเมื่อทาการกรอกข้อมูล Username และ Password ระบบจะทา
การตรวจสอบจากฐานข้อมูล เพือ่ ตรวจสอบสิทธิในการเข้าใช้งาน หลังจากการทางานเสร็จสิ้น
logout เพือ่ ทาการสิ้นสุดการใช้งาน
14
3.4.3 ภาพการเพิม่ ข้อมูลผูใ้ ช้งานระบบ
Username, Password
Login
Status Admin
15
3.4.4 ภาพการ Login เพือ่ เข้าสู่ระบบ
Username, Password
Login
Status Admin
16
3.4.5 ภาพการแสดงข้อมูลล็อก
Login
17
3.4.6 ภาพการค้นหาข้อมูลล็อก
Login
Facility Facility
Severity Severity
Content Content
Date Date
จากรูปที่ 3.9 เมือ่ login ผ่านแล้ว ไม่วา่ จะเป็ นแอดมิน หรือ ผูใ้ ช้ง านทัว่ ไปจะสามารถ
ค้นหาข้อมูลล็อก โดยมีการคัดกรองจากการเลือกดูขอ้ มูลล็อกจาก Facility, Severity, Content
และ Date หลังจากการทางานเสร็จสิ้น logout เพือ่ ทาการสิ้นสุดการใช้งาน
18
3.4.7 ภาพการเพิม่ ข้อมูลค่า Facility
Login
Status Admin
Facility
19
3.4.8 ภาพการเพิม่ ข้อมูลค่า Severity
Login
Status Admin
Severity
จากรู ป ที่ 3.11 เมื่อ มีก าร login แล้ว มีส ถานะเป็ น แอดมิน สามารถเพิ่ม ข้อ มู ล ค่ า
Severity ได้ โดยค่าค่า Severity จะอ้างอิงตามมาตรฐาน RFC3164 หลังจากการทางานเสร็จสิน้
logout เพือ่ ทาการสิ้นสุดการใช้งาน
20
3.4.9 ภาพการกาหนดไอพีเครื่องที่ตอ้ งการเก็บข้อมูลล็อกลงฐานข้อมูล
Login
Status Admin
21
3.4.10 ภาพแสดงการกาหนดเงื่อนไขในการเก็บข้อมูลล็อกลงฐานข้อมูล
Login
Status Admin
Facility Facility
Severity Severity
Content Content
จากรู ป ที่ 3.13 เมื่อ มีก าร login แล้ว มีส ถานะเป็ น แอดมิน สามารถท าการก าหนด
เงื่อนไขในการเก็บข้อมูลล็อกลงฐานข้อมูล โดยมีการกาหนดเงื่อนไขจากค่า Facility, Severity
และ Content เพื่อ ก าหนดค่ า เก็ บ ลงฐานข้อ มู ล เมื่อ มีก ารส่ ง ข้อ มู ล ล็อ กมายัง Server จะ
ตรวจสอบว่าข้อ มูลล็อกที่เข้ามานั ้น ตรงตามค่าที่กาหนดไว้ห รือไม่ถ้าตรงตามเงื่อนไขจะเก็บ
ข้อมูลล็อกนัน้ ลงฐานข้อมูลต่อไป หลังจากการทางานเสร็จสิ้น logout เพื่อทาการสิ้นสุดการใช้
งาน
22
3.4.11 ภาพการกาหนดเงื่อนไขและช่องทางการแจ้งเตือนเมือ่ เกิดเหตุการณ์ผดิ ปกติ
Login
Status Admin
Facility
Severity
Content
SMS
จากรู ป ที่ 3.14 เมื่อ มีก าร login แล้ว มีส ถานะเป็ น แอดมิน สามารถท าการก าหนด
เงื่อนไขและช่องทางการแจ้ง เตือนได้โดยเลือกค่า Facility, Severity และ Content เมื่อกาหนด
เงื่อนไขเสร็จก็เลือกช่องทางในการส่งการแจ้ง เตือนว่าจะส่งทาง Email หรือ SMS ก็ได้ แล้วจึง
กาหนดว่าจะทาการแจ้งเตือนไปยังผูใ้ ช้งานคนใดบ้าง และ logout เพือ่ สิ้นสุดการทางาน
23
3.4 โครงสร้ำงฐำนข้อมูล
ข้อมูลต่างๆ ของการใช้ง านในระบบจะถูกเก็บไว้ในระบบฐานข้อมูล โดยฐานข้อมูลจะถูก
แบ่งส่วนในการจัดเก็บข้อมูลดังนี้
3.4.1 ตารางผูใ้ ช้งานระบบ (User)
ตารางที่ใช้เก็บข้อมูลของผูใ้ ช้งานระบบ โดยระบุขอ้ มูลต่างๆ ชื่อ รหัสผ่าน อีเมล์ท่จี ะใช้
แจ้งเตือนเมื่อเกิดปญหา ั สิทธ์ในการใช้งาน เป็ นผูด้ ูแ ลระบบ ที่สามารถจัดการ เพิม่ ลบ แก้ไข
ข้อมูลผูใ้ ช้งานได้ และสิทธิ ์เป็นผูใ้ ช้งานทัวไป
่ ดังตารางที่ 3.1
24
3.4.3 ตารางข้อมูลเก็บข้อมูลล็อก (LogStore)
ตารางที่เก็บข้อมูล syslog เก็บรายละเอียดของ syslog โดยจะอ้างอิงกับตาราง Facility
และ Severity เพือ่ นามาเป็นข้อมูลในการแจ้งเตือน ดังตารางที่ 3.3
25
3.4.5 ตารางข้อมูล Severity
ตารางที่เก็บค่าหมายเลข Severity และชื่อ Severity เพื่อนาไปอ้างอิงกับตาราง syslog
ดังตารางที่ 3.5
26
3.4.7 ตารางข้อมูล RecLog
ตารางที่เก็บค่าตัวเลขของ Facility และ Severity เพือ่ เป็นเงื่อนไขในการเก็บข้อมูลล็อก
โดยการวิเคราะห์ของ Server ดังตารางที่ 3.7
27
3.4.9 ตารางสถานะการแจ้งเตือน (NotifyStatus)
ตารางที่เก็บข้อมูลหลักของสิทธิ ์ผูใ้ ช้งานในระบบ เมือ่ มีการเพิม่ ลบ แก้ไข ข้อมูลต้องมี
การตรวจสอบสิทธิ ์ โดยอ้างอิงกับตารางผูใ้ ช้งาน ดังตารางที่ 3.9
28
บทที่ 4
กำรทดลองและผลกำรทดลอง
log Email
MyManagement
5
2
Client User
1
4
Switch
3
MyBase
log SMS
Mobile Phone
Client
29
เครื่องมือที่ใช้ในการทดลอง
1. เครื่อง Client
2. Switch Cisco 2900 Series
3. Syslog และ Web Server
OS : Windows 7
Web Server : apache
Database : MySQL
30
4.2.2 การส่งการแจ้งเตือนทาง SMS ผ่าน Google Calendar
เมือ่ เกิดเหตุการณ์ ผดิ ปกติตามเงื่อนไขที่ผดู้ ูแลระบบกาหนดค่าต่างๆ ไว้ ระบบจะทาการ
แจ้ง เตือนไปยัง ผูใ้ ช้ง านระบบที่มคี วามเกี่ยวข้อง โดยผ่านทาง SMS หมายเลขโทรศัพท์ท่ีได้
เชื่อมโยงกับ Google ไว้ ดังรูปที่ 4.3
31
รูปที่ 4.4 ตัวอย่าง Email ที่ถูกส่งจากระบบแจ้งเตือน
4.3 กำรทำงำนของโปรแกรม
เมือ่ เริม่ การทางานในส่วนของโปรแกรม จะต้องมีการทาการยืนยันตัวตนเพือ่ เข้าสู่ระบบ
โดยผูใ้ ช้ง านจะต้องกรอกข้อ มูล username และ password เพื่อ ตรวจสอบสิท ธิว่าผู้ใช้ง านมี
สถานะเป็ น ผูด้ ูแ ลระบบ หรือ ผูใ้ ช้งาน ซึ่ง มีการกาหนดการใช้ง านที่แตกต่างกัน ดัง รูปที่ 4.5
และหากเมือ่ การยืนยันตัวตนไม่ผา่ นจะแสดงหน้าจอ ดังรูปที่ 4.6
32
เมือ่ ทาการยืนยันตัวตนเข้าสู่ระบบเรียบร้อย หากผูใ้ ช้งานมีสถานะเป็ น “Administrator”
จะมีสทิ ธิในการกาหนดค่าข้อมูลและเงื่อนไขต่างๆดังนี้
4.3.1 เพิม่ ลบ แก้ไข ผูใ้ ช้งานระบบ
หน้าจอเพิม่ ข้อมูลผูใ้ ช้งานระบบ กาหนดค่าข้อมูลดังนี้
Username คือ ชื่อผูใ้ ช้งานเพือ่ เข้าสู่โปรแกรม
Password คือ รหัสผ่านเพือ่ เข้าสู่การใช้งานโปรแกรม
Re-Enter Password คือ ยืนยันรหัสผ่านเข้าสู่ระบบอีกครัง้
Group คือ กาหนดสิทธิให้กบั ผูใ้ ช้งานว่าเป็น “Administrator”(ผูด้ ูแลระบบ)
หรือ “User”(ผูใ้ ช้งานระบบ) ดังรูปที่ 4.7
33
รูปที่ 4.9 หน้าจอกาหนดสิทธิผใู้ ช้งาน
34
รูปที่ 4.11 หน้าจอเพิม่ ข้อมูลผูใ้ ช้งาน
35
4.3.3 เพิม่ ลบ แก้ไขข้อมูลของที่ตอ้ งการเก็บข้อมูลล็อก
หน้ า จอก าหนดเงื่อ นไขในการเก็ บ ข้อ มูล ล็อ ก คัด กรองข้อ มู ล ล็อ กที่ จ ะจัด เก็ บ ลง
ฐานข้อมูล เพือ่ นามาใช้ในการแจ้งเตือนผูท้ ่มี คี วามเกี่ยวข้องกับเซิร์ฟเวอร์นนั ้ ๆ กาหนดค่าข้อมูล
ดังนี้
IP คือ หมายเลข IP เครื่องที่ตอ้ งการเก็บข้อมูลล็อก
Facility คือ กาหนดเงื่อนไขค่า Facility
Severity คือ กาหนดเงื่อนไขค่า Severity
Content คือ กาหนดเงื่อนไขค่า Content ดังรูปที่ 4.13
36
4.3.4 เพิม่ ลบ แก้ไขค่า Facility
หน้าจอเพิม่ ข้อมูลค่า Facility ตามมาตรฐาน RFC3164 กาหนดค่าข้อมูลดังนี้
Facility Number คือ หมายเลขค่า Facility
Facility Name คือ ชื่อของค่า Facility
Facility Nickname คือ ชื่อย่อของค่า Facility
Facility Description คือ คาอธิบายค่า Facility ดังรูปที่ 4.14
37
4.3.5 เพิม่ ลบ แก้ไขค่า Severity
หน้าจอเพิม่ ข้อมูลค่า Severity หรือ Level ตามมาตรฐาน RFC 3164 กาหนดค่าข้อมูล
ดังนี้
Severity Number คือ หมายเลขค่า Severity
Severity Name คือ ชื่อของค่า Severity
Severity Nickname คือ ชื่อย่อของค่า Severity
Severity Description คือ คาอธิบายค่า Severity ดังรูปที่ 4.16
38
4.3.6 เพิม่ ลบ แก้ไขข้อมูลเครื่องในระบบ
หน้าจอเพิม่ ข้อมูลเครื่องในระบบ กาหนดค่าข้อมูลดังนี้
Device’s IP Number คือ หมายเลข IP ของเครื่องที่เราต้องการเก็บข้อมูล
ล็อก
Device Description คือ รายละเอียดต่างๆ ของเครื่องที่เราต้องการเก็บ
ข้อมูลล็อก ดังรูปที่ 4.18
39
4.3.7 เพิม่ ลบ แก้ไขข้อมูลความเกี่ยวข้องระหว่างผูใ้ ช้งานกับเครื่องเซิร์ฟเวอร์
หน้าจอกาหนดข้อมูลความเกี่ยวข้องระหว่างผูใ้ ช้งานกับเครื่องเซิร์ฟเวอร์ท่เี ก็บข้อมูล
ล็อก เพื่อแจ้ง เตือนผูใ้ ช้ง านที่รบั ผิดชอบเครื่องเซิร์ฟเวอร์นัน้ ๆเมื่อเกิดความผิดปกติ ดังรูป ที่
4.20
40
4.3.9 แสดงข้อมูลล็อกผ่านโปรแกรม
หน้าจอการแสดงผลข้อมูลล็อกที่ผ่านเงื่อนไขการเก็บ ข้อมูล ล็อกทัง้ หมดที่ถู กเก็บลง
ฐานข้อมูล จะแสดงในหน้านี้ โดยผูด้ ูแลระบบสามารถทาการกรองดูเฉพาะข้อมูลที่ตอ้ งการได้ ดัง
รูปที่ 4.22
41
4.3.11 ออกรายงาน
หน้าจอการออกรายงาน โดยที่สามารถกาหนดช่วงเวลาและเงื่อนไขในการออกรายงาน
ได้มากกว่า 1 เงื่อนไข ดังรูปที่ 4.24
42
4.3.13 แสดงข้อมูลล็อกที่มกี ารแจ้งเตือนของผูใ้ ช้งานระบบ
หน้าจอการแสดงผลข้อมูลล็อกที่ผา่ นเงื่อนไขการแจ้งเตือนไปยังผูใ้ ช้งานระบบ ซึ่งผูด้ ูแ ล
ระบบได้มกี ารตัง้ ค่าไว้แ ล้วในส่วนการจัดการ ว่าถ้าเครื่องใดมีความผิดปกติ ให้แ จ้ง เตือนไปยัง
ผูใ้ ช้งานคนใด ทางช่องทางการแจ้งเตือนใดบ้าง โดยผูใ้ ช้งานระบบสามารถทาการกรองดูเฉพาะ
ข้อมูลที่ตอ้ งการได้ ดังรูปที่ 4.26
43
4.3.15 จัดการข้อมูลส่วนตัวของผูใ้ ช้งานระบบ
หน้าจอการจัดการข้อมูลส่วนตัวของผูใ้ ช้งานระบบ โดยทาการกดที่ช่อื ผูใ้ ช้งาน แล้วกดที่
ปุม่ “Edit” สามารถแก้ไขข้อมูลต่างๆ ดังรูปที่ 4.28 และ รูปที่ 4.29 ตามลาดับ
44
บทที่ 5
สรุปผลกำรดำเนิ นงำน
5.2 ปัญหำและอุปสรรค
5.2.1 ในการส่ง SMS เพือ่ แจ้งเตือนความผิดปกตินนั ้ ระบบใช้การทางานผ่าน Google
Calendar จึง จาเป็ นต้องให้ผใู้ ช้ง านระบบทุกคนมีบญ ั ชีของ Google และต้องแจ้ง รหัสผ่านเข้า
บัญชีกบั ผูด้ ูแลระบบ เพือ่ ให้สามารถส่ง SMS ได้
5.2.2 ในการรับการแจ้งเตือน SMS ผ่าน Google Calendar ได้ใช้มกี ารทางานโดยใช้
API แต่ ตัว เวอร์ ชั น่ เก่ า ปิ ด เซอร์ ว ิส ไปแล้ว ป จั จุ บ ัน ได้ ม ีก ารอั พ เดทเวอร์ ชัน่ API Google
Calendar version3 ใหม่
5.3 แนวทำงกำรแก้ไข
5.3.1 ผูใ้ ช้ง านระบบต้องสร้างบัญชี Google ใหม่ท่ใี ช้สาหรับทางานระบบเท่านัน้ เพื่อ
ป้องกันความเป็นส่วนตัว
5.3.2 ปรับ ปรุ ง โปรแกรมในส่ ว นที่เกี่ยวข้อ งกับ การส่ ง SMS ให้รองรับ การท างาน
ร่วมกับ API Google Calendar เวอร์ชนใหม่
ั่
5.4 แนวทำงกำรพัฒนำในอนำคต
5.4.1 พัฒนาระบบให้สามารถใช้กบั มาตรฐาน Syslog RFC 5424
45
เอกสำรอ้ำงอิง
46
วิธีการตัง้ ค่าการแจ้งทาง SMS ผ่านทาง Google Calendar
1. ทำกำร Login เข้ำสู่บญ
ั ชี Gmail www.gmail.com โดยกรอกข้อมูล Username และ
Password แล้วกดปุ่ม “ลงชื่อเข้ำใช้งำน” ดังรูปที่ ก-1
ก-1
3. เลือกเมนู “กำรตัง้ ค่ำ” คลิกเมำส์เลือกที่เมนู “กำรตัง้ ค่ำ” เพือ่ ทำกำรตัง้ ค่ำกำรแจ้งเตือน
ดังรูปที่ ก-3
ก-2
หลังจำกนัน้ Google จะทำกำรส่งรหัสกำรยืนยันมำ SMS ดังรูปที่ ก-6
ก-3
7. กดปุม่ “บันทึก” กำรตัง้ ค่ำ ดังรูปที่ ก-9
ก-4
วิธีการตัง้ ค่าการแจ้งทาง SMS ผ่านทาง Google Calendar
1. ทำกำร Login เข้ำสู่บญ
ั ชี Gmail www.gmail.com โดยกรอกข้อมูล Username และ
Password แล้วกดปุ่ม “ลงชื่อเข้ำใช้งำน” ดังรูปที่ ก-1
ก-1
3. เลือกเมนู “กำรตัง้ ค่ำ” คลิกเมำส์เลือกที่เมนู “กำรตัง้ ค่ำ” เพือ่ ทำกำรตัง้ ค่ำกำรแจ้งเตือน
ดังรูปที่ ก-3
ก-2
หลังจำกนัน้ Google จะทำกำรส่งรหัสกำรยืนยันมำ SMS ดังรูปที่ ก-6
ก-3
7. กดปุม่ “บันทึก” กำรตัง้ ค่ำ ดังรูปที่ ก-9
ก-4