TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN

HỮU NGHỊ VIỆT - HÀN

KHOA CÔNG NGHỆ THÔNG TIN



ĐỒ ÁN TỐT NGHIỆP

CHUYÊN NGÀNH: MẠNG MÁY TÍNH

Đề tài:

GIÁM SÁT HỆ THỐNG MẠNG

BẰNG PHẦN MỀM ZABBIX

SVTH

: Võ Tiến Thịnh

Lớp

: CCMM08A

Niên khóa : 2014 - 2017

CBHD

: Ths. Đỗ Công Đức

Đà Nẵng, tháng 06 năm 2017

LỜI NÓI ĐẦU

Trong vai trò là người quản trị hệ thống hay là một chuyên gia bảo mật thông tin

thì công tác giám sát luôn là một việc cần thiết. Giám sát mạng cho chúng ta biết được

tình trạng băng thông được sử dụng trên mạng, xác định được người dùng nào đang

chạy các ứng dụng chia sẻ file, hoặc có virus/trojan nào đang âm thầm hoạt động trên

mạng hay không.

Có rất nhiều công cụ có thể dùng cho quá trình giám sát mạng và Zabbix cũng

nằm trong số các công cụ đó.

Mục tiêu của đề tài là tìm hiểu về hệ thống giám sát mạng và phát triển ứng dụng

sử dụng phần mềm mã nguồn mở Zabbix. Nhưng cho đến nay, phần mềm Zabbix chưa

được ứng dụng rộng rãi tại Việt Nam. Chính vì thế em muốn nghiên cứu phần mềm

Zabbix để góp phần khai thác và phát triển phần mềm mã nguồn mở tại Việt Nam.

Em xin gửi lời cảm ơn chân thành tới Thầy Đỗ Công Đức, đã trực tiếp hướng dẫn

và tận tình chỉ bảo, truyền đạt kinh nghiệm giúp em hoàn thành đề tài. Trong suốt quá

trình thực hiện đề tài, em đã nhận được rất nhiều sự hỗ trợ, giúp đỡ từ phía nhà trường

và các thầy cô.

Cuối cùng, em xin cảm ơn tất cả các bạn sinh viên trong lớp đã giúp em trong

những buổi trao đổi về các ý tưởng cũng như công nghệ để phát triển đề tài.

i

Đà Nẵng, ngày 08 tháng 06 năm 2017

MỤC LỤC

LỜI NÓI ĐẦU ................................................................................................................. i

MỤC LỤC ...................................................................................................................... ii

DANH MỤC HÌNH ẢNH ............................................................................................ iv

DANH MỤC BẢNG BIỂU .......................................................................................... vi

PHẦN MỞ ĐẦU ............................................................................................................ 1

CHƯƠNG I. GIỚI THIỆU TRUNG TÂM INTERNET VIỆT NAM VNNIC VÀ

QUẢN LÝ HỆ THỐNG MẠNG VỚI GIAO THỨC SNMP ..................................... 3

1.1. Giới thiệu chung ............................................................................................... 3

1.1.1. Mục tiêu hoạt động ...................................................................................... 3

1.1.2. Cơ cấu tổ chức ............................................................................................ 4

1.1.3. Lĩnh vực hoạt động ...................................................................................... 5

1.2. Giới thiệu chung về quản lý hệ thống mạng. ................................................. 5

1.2.1. Giới thiệu ..................................................................................................... 5

1.2.2. Các chức năng chính ................................................................................... 6

1.3. Tổng quan về giao thức SNMP ....................................................................... 7

1.3.1. Giao thức SNMP là gì? ............................................................................... 7

1.3.2. Ưu điểm trong thiết kế của SNMP. ............................................................. 8

1.3.3. Các phiên bản của SNMP ........................................................................... 9

1.4. Các khái niệm nền tảng của SNMP ................................................................ 9

1.4.1. Các thành phần trong SNMP ...................................................................... 9

1.4.2. Bộ phận quản lý (Manager) ........................................................................ 9

1.4.3. Agent.......................................................................................................... 10

1.4.4. Cở sở thông tin quản lý – MIB .................................................................. 11

1.5. Các phương thức của SNMP ........................................................................ 11

1.5.1. GetRequest ................................................................................................ 12

1.5.2. GetNextRequest ......................................................................................... 12

1.5.3. SetRequest ................................................................................................. 12

1.5.4. GetResponse .............................................................................................. 12

1.5.5. Trap ........................................................................................................... 13

1.6. Liên lạc giữa Manager mà Agent ................................................................. 14

1.6.1. Vận chuyển thông tin giữa Manager và Agent ......................................... 15

ii

1.6.2. Bảo vệ thông tin liên lạc giữa Manager và Agent .................................... 15

1.7. Các cơ chế bảo mật cho SNMP ..................................................................... 16

1.7.1. Community string ...................................................................................... 17

1.7.2. View ........................................................................................................... 18

1.7.3. SNMP Access Control List ........................................................................ 18

1.8. Cấu trúc bản tin SNMP ................................................................................. 18

1.9. Phương thức giám sát Poll và Alert ............................................................. 19

1.9.1. Phương thức Poll ...................................................................................... 19

1.9.2. Phương thức giám sát Alert ...................................................................... 20

CHƯƠNG II. CÁC YÊU CẦU CỦA QUẢN LÝ HỆ THỐNG MẠNG VÀ PHẦN

MỀM QUẢN LÝ HỆ THỐNG MẠNG ZABBIX ..................................................... 21

2.1. Các yêu cầu quản lý hệ thống mạng ............................................................. 21

2.2. Kiến trúc quản lý hệ thống mạng ................................................................. 22

2.2.1. Kiến trúc quản lý mạng ............................................................................. 22

2.2.2. Cơ chế quản lý mạng ................................................................................. 22

2.3. Giới thiệu về phần mềm Zabbix ................................................................... 23

2.4. Các ưu điểm của phần mền Zabbix.............................................................. 24

2.5. Các yêu cầu để cài đặt phần mềm ................................................................ 24

2.6. Các thành phần cơ bản của Zabbix ............................................................. 24

2.6.1. Zabbix server ............................................................................................. 24

2.6.2. Zabbix Proxy ............................................................................................. 25

2.6.3. Zabbix Agent ............................................................................................. 25

2.6.4. Web interface ............................................................................................ 25

CHƯƠNG III. TRIỂN KHAI GIÁM SÁT VÀ QUẢN LÝ HỆ THỐNG MẠNG

BẰNG PHẦN MỀM ZABBIX .................................................................................... 26

3.1. Triển khai mô hình và cài đặt phần mềm Zabbix ...................................... 26

3.1.1. Mô hình triển khai ..................................................................................... 26

3.1.2. Quá trình cài đặt ....................................................................................... 26

3.2. Các chức năng cơ bản của Zabbix Server 2.4 ............................................. 37

3.3. Cấu hình Zabbix Agent để quản lý máy khách Windows ......................... 39

3.4. Triển khai giám sát Webserver trên máy Zabbix Client ........................... 43

KẾT LUẬN .................................................................................................................. 49

iii

TÀI LIỆU THAM KHẢO ........................................................................................... vii

DANH MỤC HÌNH ẢNH

Hình 1.1. Giao thức SNMP ............................................................................................. 7

Hình 1.2. Các phương thức của SNMP ......................................................................... 14

Hình 1.3. Cấu trúc bảng tin SNMP................................................................................ 19

Hình 1.4. Phương thức giám sát Poll ............................................................................. 20

Hình 1.5. Phương thức giám sát Alert ........................................................................... 20

Hình 3.1. Mô hình triển khai ......................................................................................... 26

Hình 3.2. Cài đặt hệ điều hành CentOS 6.5 trên máy ảo ............................................... 26

Hình 3.3. Giao diện đăng nhập vào CentOS 6.5 ........................................................... 27

Hình 3.4. Cài đặt Repo trên CentOS 6.5 ....................................................................... 27

Hình 3.5. Cài đặt Apache cho máy chủ ......................................................................... 28

Hình 3.6. Cài đặt MySQL Server .................................................................................. 28

Hình 3.7. Cài đặt PHP ................................................................................................... 29

Hình 3.8. Cài đặt Repo cho Zabbix 2.4 ......................................................................... 29

Hình 3.9. Chọn phiên bản phù hợp nếu cài từ Source trên website của Zabbix ........... 30

Hình 3.10. Cài Zabbix từ Pakages ................................................................................. 30

Hình 3.11. Cài đặt Zabbix Agent để quản lý thông tin của máy chủ ............................ 31

Hình 3.12. Cấu hình địa chỉ máy chủ cho Agent .......................................................... 31

Hình 3.13. Cấu hình lại thời gian cho Zabbix ............................................................... 31

Hình 3.14. Import các Database mặc định của Zabbix ................................................. 32

Hình 3.15. Cấu hình các thông số cho Zabbix Server ................................................... 32

Hình 3.16. Giao diện cài đặt của Zabbix 2.4 ................................................................. 33

Hình 3.17. Giao diện kiểm tra các cấu hình của Zabbix ............................................... 34

Hình 3.18. Giao diện khai báo cở sở dữ liệu và tài khoản mật khẩu............................. 34

Hình 3.19. Giao diện khai báo ip, cổng và tên máy chủ ............................................... 35

Hình 3.20. Giao diện kiểm tra lại thông tin trước khi cài đặt ........................................ 35

Hình 3.21. Giao diện sau khi cài đặt thành công ........................................................... 36

Hình 3.22. Giao diện đăng nhập của Zabbix 2.4 ........................................................... 36

Hình 3.23. Giao diện sau khi đăng nhập thành công ..................................................... 37

Hình 3.24. Khởi động Zabbix Server để tiếp nhận các thông tin từ Agent ................... 37

Hình 3.25. Giao diện thông tin CPU của máy chủ ........................................................ 38

iv

Hình 3.27. Giao diện thông tin hiệu năng của máy chủ ................................................ 39

Hình 3.28. Cài đặt Zabbix Agent trên máy Windows ................................................... 39

Hình 3.29. Địa chỉ của máy cần giám sát ...................................................................... 39

Hình 3.30. Giao diện Configuration của Zabbix Server ................................................ 40

Hình 3.31. Tạo thành công 1 host .................................................................................. 41

Hình 3.32. Tiếp nhận máy Client của Zabbix Server .................................................... 41

Hình 3.33. Giao diện thông tin CPU của máy trạm ...................................................... 42

Hình 3.34. Giao diện thông tin RAM của máy trạm ..................................................... 42

Hình 3.35. Giao diện thông tin ICMP giữa máy chủ và Router .................................... 43

Hình 3.36. Tạo ứng dụng trong user Zabbix Client ...................................................... 44

Hình 3.37. Đặt tên cho ứng dụng .................................................................................. 44

Hình 3.38. Tạo web cho máy Zabbix Client ................................................................. 45

Hình 3.39. Điền các thông tin tạo Web ......................................................................... 46

Hình 3.40. Tạo xong web cho máy Zabbix Client ........................................................ 47

Hình 3.41. Giao diện giám sát Web của máy Zabbix Server ........................................ 47

Hình 3.42. Giao diện thông tin tốc độ Download của Web .......................................... 47

v

Hình 3.43. Giao diện thông tin Thời gian đáp ứng của Web ........................................ 48

DANH MỤC BẢNG BIỂU

Bảng 1.1. Các phương thức của SNMP ......................................................................... 11

vi

Bảng 2.1. Các yêu cầu để cài đặt phần mềm ................................................................. 24

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

PHẦN MỞ ĐẦU

1. Lý do chọn đề tài

Trong vai trò là người quản trị hệ thống hay là một chuyên gia bảo mật thông tin

thì công tác giám sát luôn là một việc cần thiết. Giám sát mạng cho chúng ta biết được

tình trạng băng thông được sử dụng trên mạng, xác định được người dùng nào đang

chạy các ứng dụng chia sẻ file, hoặc có virus/trojan nào đang âm thầm hoạt động trên

mạng hay không. Có rất nhiều công cụ có thể dùng cho quá trình giám sát mạng và

Zabbix cũng nằm trong số các công cụ đó.

2. Mục tiêu và nhiệm vụ nghiên cứu

Mục tiêu của đề tài là tìm hiểu về hệ thống giám sát mạng và phát triển ứng dụng

sử dụng phần mềm mã nguồn mở Zabbix. Nhưng cho đến nay, phần mềm Zabbix chưa

được ứng dụng rộng rãi tại Việt Nam. Chính vì thế nhóm muốn nghiên cứu phần mềm

Zabbix để góp phần khai thác và phát triển phần mềm mã nguồn mở tại Việt Nam.

3. Đối tượng và phạm vi nghiên cứu

- Đối tượng: Giao thức SNMP và phần mềm Zabbix

- Phạm vi: Trung tâm internet Việt Nam (VNNIC)

4. Phương pháp nghiên cứu.

Giám sát hệ thống mạng bằng phần mềm Zabbix với giao thức SNMP tại Trung

Tâm Internet Việt Nam (VNNIC)

5. Dự kiến kết quả

- 1 tháng (6/5/2017 đến 6/6/2017)

6. Ý nghĩa khoa học và thực tiễn

7. Dự kiến bố cục báo cáo

Báo cáo được trình bày bao gồm các phần chính như sau:

MỞ ĐẦU

CHƯƠNG I: Giới thiệu trung tâm Internet Việt Nam VNNIC và quản lý hệ thống

mạng với giao thức SNMP

CHƯƠNG II: Các yêu cầu của quản lý hệ thống mạng và phần mềm quản lý hệ

thống mạng Zabbix

CHƯƠNG III: Triển khai giám sát và quản lý hệ thống mạng bằng phần mềm

Zabbix

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 1

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Toàn bộ báo cáo dự kiến tối thiểu khoảng 60 trang.

8. Dự kiến tiến độ thực hiện

Stt Thời gian Nội dung làm việc

Từ 06/5 đến Tìm hiểu về phần nội dung và cài đặt phần mềm Zabbix 1 20/5 2.4 trên hệ thống máy chủ CentOS 6.5

Từ 21/5 đến Triển khai quá trình giám sát mạng thông qua các thiết bị, 2 05/6 máy tính, giám sát các website,router,switch,….

TÀI LIỆU THAM KHẢO

[1] Bộ tài liệu SNMP Toàn tập gồm 5 chương của tác giả Diệp Thanh Nguyên:

https://sites.google.com/site/snmptoantap

[2] Trang web chính thức của phần mềm Zabbix:

http://www.zabbix.com

[3] Một số thông tin về Zabbix của Wikipedia:

https://en.wikipedia.org/wiki/Zabbix

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 2

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

CHƯƠNG I. GIỚI THIỆU TRUNG TÂM INTERNET

VIỆT NAM VNNIC VÀ QUẢN LÝ HỆ THỐNG MẠNG

VỚI GIAO THỨC SNMP

1.1. Giới thiệu chung

Tên cơ quan: Trung Tâm Internet Việt Nam VNNIC

Địa chỉ: Số 7, An Hải Bắc, Sơn Trà, Đà Nẵng

Email: Webmaster@vnnic.vn

Website: www.vnnic.vn

Trung tâm Internet Việt Nam (VNNIC) là đơn vị trực thuộc Bộ Thông tin và

Truyền thông, được thành lập ngày 28/04/2000, thực hiện chức năng quản lý và thúc

đẩy việc sử dụng tài nguyên Internet ở Việt Nam; thiết lập, quản lý và khai thác Hệ

thống DNS quốc gia; Trạm trung chuyển Internet quốc gia.

Từ khi đi vào hoạt động, VNNIC đã góp phần quan trọng từng bước đưa Internet

Việt Nam hội nhập thế giới, là đầu mối cung cấp thông tin, hướng dẫn người sử dụng

Internet tại Việt Nam, thúc đẩy Internet trong nước phát triển.

1.1.1. Mục tiêu hoạt động

Chức năng, nhiệm vụ, quyền hạn của Trung tâm được quy định tại Quyết định

số 1198/QĐ-BTTTT ngày 20/7/2015 của Bộ trưởng Bộ Thông tin và Truyền thông,

trong đó bao gồm:

- Thực hiện việc cấp, phân bổ, ngừng, tạm ngừng, thu hồi địa chỉ (IP) và số hiệu

mạng (ASN) ở cấp quốc gia.

- Tổ chức việc đăng ký sử dụng và thực hiện việc ngừng, tạm ngừng, thu hồi tên

miền quốc gia Việt Nam và các tên miền thuộc quyền quản lý của Việt Nam.

- Xây dựng và trình Bộ Thông tin và Truyền thông phê duyệt quy hoạch tài

nguyên Internet, kế hoạch phát triển, đầu tư xây dựng cơ sở hạ tầng kỹ thuật phù hợp

với yêu cầu thực tiễn.

- Thiết lập, quản lý, khai thác hoạt động hệ thống máy chủ tên miền (DNS) quốc

gia, Trạm trung chuyển Internet quốc gia; đăng ký và duy trì địa chỉ IP, số hiệu mạng

cho Internet Việt Nam; tham gia khai thác các công nghệ liên quan đến tài nguyên

Internet và giao thức IP.

- Lựa chọn, ký kết hợp đồng với các nhà đăng ký tên miền .vn.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 3

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Kiểm tra, giám sát việc cấp, đăng ký, sử dụng địa chỉ IP, số hiệu mạng và tên

miền đối với các tổ chức, cá nhân tham gia hoạt động Internet.

- Nghiên cứu đề xuất và tham gia với các đơn vị chức năng trực thuộc Bộ để xây

dựng các văn bản quy phạm pháp luật về công tác quản lý nhà nước về tài nguyên

Internet, về cung cấp, sử dụng dịch vụ Internet trên phạm vi toàn quốc.

- Đại diện cho Bộ Thông tin và Truyền thông tham gia các hoạt động của các tổ

chức Internet quốc tế liên quan đến tài nguyên Internet theo phân công, ủy quyền của

Bộ Bộ Thông tin và Truyền thông.

- Tham gia thu thập, phân tích, đánh giá các thông tin, số liệu thống kê liên quan

đến hoạt động Internet nói chung và tài nguyên Internet nói riêng theo quy định của Bộ

Thông tin và Truyền thông.

- Thu phí và lệ phí các hoạt động theo chức năng, nhiệm vụ, quyền hạn và theo

quy định của pháp luật.

- Hợp tác với các tổ chức quốc tế để khai thác dự phòng hệ thống cho tên miền

quốc gia, đăng ký và duy trì tài nguyên Internet Việt Nam, quảng bá quốc tế về

Internet Việt Nam và phát triển sử dụng tên miền quốc gia.

- Bảo đảm an toàn, bảo mật cho hệ thống DNS quốc gia, Trạm trung chuyển

Internet quốc gia và các hoạt động liên quan đến tài nguyên Internet

1.1.2. Cơ cấu tổ chức

Tổ chức bộ máy, biên chế của Trung tâm bao gồm 7 Phòng, Ban và 02 Chi

nhánh:

- Phòng Tổ chức - Hành chính.

- Phòng Tài chính - Kế toán.

- Phòng Kỹ thuật.

- Phòng Kinh tế.

- Phòng Quan hệ cộng đồng và Thống kê.

- Đài DNS và VNIX.

- Chi nhánh tại Thành phố Hồ Chí Minh.

- Chi nhánh tại Thành phố Đà Nẵng.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 4

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Sơ đồ cơ cấu tổ chức của Trung tâm:

1.1.3. Lĩnh vực hoạt động

Thực hiện việc cấp, phân bổ, ngừng, tạm ngừng, thu hồi địa chỉ (IP) và số hiệu

mạng (ASN) ở cấp quốc gia.

1.2. Giới thiệu chung về quản lý hệ thống mạng.

1.2.1. Giới thiệu

Sự phát triển và hội tụ mạng trong những năm gần đây đã tác động mạnh mẽ tới

tất cả các khía cạnh của mạng lưới, thậm chí cả về những nhận thức nền tảng và

phương pháp tiếp cận. Quản lý mạng cũng là một trong những lĩnh vực đang có những

sự thay đổi và hoàn thiện mạnh mẽ trong cả nỗ lực tiêu chuẩn hoá của các tổ chức tiêu

chuẩn lớn trên thế giới và yêu cầu từ phía người sử dụng dịch vụ. Mặt khác các nhà

khai thác mạng, nhà cung cấp thiết bị và người sử dụng thường áp dụng các phương

pháp chiến lược khác nhau cho việc quản lý mạng và thiết bị của mình. Mỗi nhà cung

cấp thiết bị thường đưa ra giải pháp quản lý mạng riêng cho sản phẩm của mình. Trong

bối cảnh hội tụ mạng hiện nay, số lượng thiết bị và dịch vụ rất đa dạng và phức tạp đã

tạo ra các thách thức lớn trong vấn đề quản lý mạng.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 5

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Nhiệm vụ của quản lý mạng rất rõ ràng về mặt nguyên tắc chung, nhưng các bài

toán quản lý cụ thể lại có độ phức tạp rất lớn. Điều này xuất phát từ tính đa dạng của

các hệ thống thiết bị và các đặc tính quản lý của các loại thiết bị, xa hơn nữa là chiến

lược quản lý phải phù hợp với kiến trúc mạng và đáp ứng yêu cầu của người sử dụng.

Một loạt các thiết bị điển hình cần được quản lý gồm: Máy tính cá nhân, máy trạm,

server, máy vi tính cỡ nhỏ, máy vi tính cỡ lớn, các thiết bị đầu cuối, thiết bị đo kiểm,

máy điện thoại, tổng đài điện thoại nội bộ, các thiết bị truyền hình, máy quay,

modem,bộ ghép kênh, bộ chuyển đổi giao thức, CSU/DSU, bộ ghép kênh thống kê, bộ

ghép và giải gói, thiết bị tương thích ISDN, card NIC, các bộ mã hoá và giải mã tín

hiệu, thiết bị nén dữ liệu, các gateway, các bộ xử lý front-end, các đường trung kế,

DSC/DAC, các bộ lặp, bộ tái tạo tín hiệu, các thiết bị chuyển mạch, các bridge, router

và switch, tất cả mới chỉ là một phần của danh sách các thiết bị sẽ phải được quản lý.

Toàn cảnh của bức tranh quản lý phải bao gồm quản lý các tài nguyên mạng cũng

như các tài nguyên dịch vụ, người sử dụng, các ứng dụng hệ thống, các cơ sở dữ liệu

khác nhau trong các loại môi trường ứng dụng. Về mặt kĩ thuật, tất cả thông tin trên

được thu thập, trao đổi và được kết hợp với hoạt động quản lý mạng dưới dạng các số

liệu quản lý bởi các kĩ thuật tương tự như các kĩ thuật sử dụng trong mạng truyền số

liệu. Tuy nhiên sự khác nhau căn bản giữa truyền thông số liệu và trao đổi thông tin

quản lý là việc trao đổi thông tin quản lý đòi hỏi các trường dữ liệu chuyên biệt, các

giao thức truyền thông cũng như các mô hình thông tin chuyên biệt, các kỹ năng

chuyên biệt để có thể thiết kế, vận hành hệ thống quản lý cũng như biên dịch các thông

tin quản lý về báo lỗi, hiện trạng hệ thống, cấu hình và độ bảo mật.

1.2.2. Các chức năng chính

Gồm có 3 chức năng chính:

 Chức năng giám sát có nhiệm vụ thu thập liên tục các thông tin về trạng thái

của các tài nguyên được quản lí sau đó chuyển các thông tin này dưới dạng các sự kiện

và đưa ra các cảnh báo khi các tham số của tài nguyên mạng được quản lí vượt quá

ngưỡng cho phép.

 Chức năng quản lí có nhiệm vụ thực hiện các yêu cầu của người quản lí hoặc

các ứng dụng quản lí nhằm thay đổi trạng thái hay cấu hình của một tài nguyên được

quản lí nào đó.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 6

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

 Chức năng đưa ra báo cáo có nhiệm vụ chuyển đổi và hiển thị các báo cáo

dưới dạng mà người quản lí có thể đọc, đánh giá hoặc tìm kiếm, tra cứu thông tin được

báo cáo.

1.3. Tổng quan về giao thức SNMP

1.3.1. Giao thức SNMP là gì?

SNMP là “giao thức quản lý mạng đơn giản”, dịch từ cụm từ “Simple Network

Management Protocol”.

Hình 1.1. Giao thức SNMP

Thế nào là giao thức quản lý mạng đơn giản? Giao thức là một tập hợp các thủ

tục mà các bên tham gia cần tuân theo để có thể giao tiếp được với nhau. Trong lĩnh

vực thông tin, một giao thức quy định cấu trúc, định dạng (format) của dòng dữ liệu

trao đổi với nhau và quy định trình tự, thủ tục để trao đổi dòng dữ liệu đó. Nếu một

bên tham gia gửi dữ liệu không đúng định dạng hoặc không theo trình tự thì các bên

khác sẽ không hiểu hoặc từ chối trao đổi thông tin. SNMP là một giao thức, do đó nó

có những quy định riêng mà các thành phần trong mạng phải tuân theo.

Một thiết bị hiểu được và hoạt động tuân theo giao thức SNMP được gọi là “có

hỗ trợ SNMP” (SNMP supported) hoặc “tương thích SNMP” (SNMP compartible).

SNMP dùng để quản lý, nghĩa là có thể theo dõi, có thể lấy thông tin, có thể được

thông báo, và có thể tác động để hệ thống hoạt động như ý muốn. Ví dụ một số khả

năng của phần mềm SNMP:

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 7

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Theo dõi tốc độ đường truyền của một router, biết được tổng số byte đã

truyền/nhận.

- Lấy thông tin máy chủ đang có bao nhiêu ổ cứng, mỗi ổ cứng còn trống bao

nhiêu.

- Tự động nhận cảnh báo khi switch có một port bị down.

- Điều khiển tắt (shutdown) các port trên switch.

SNMP dùng để quản lý mạng, nghĩa là nó được thiết kế để chạy trên nền TCP/IP

và quản lý các thiết bị có nối mạng TCP/IP. Các thiết bị mạng không nhất thiết phải là

máy tính mà có thể là switch, router, firewall, adsl gateway, và cả một số phần mềm

cho phép quản trị bằng SNMP. Giả sử bạn có một cái máy giặt có thể nối mạng IP và

nó hỗ trợ SNMP thì bạn có thể quản lý nó từ xa bằng SNMP.

SNMP là giao thức đơn giản, do nó được thiết kế đơn giản trong cấu trúc bản tin

và thủ tục hoạt động, và còn đơn giản trong bảo mật (ngoại trừ SNMP version 3). Sử

dụng phần mềm SNMP, người quản trị mạng có thể quản lý, giám sát tập trung từ xa

toàn mạng của mình.

1.3.2. Ưu điểm trong thiết kế của SNMP.

SNMP được thiết kế để đơn giản hóa quá trình quản lý các thành phần trong

mạng. Nhờ đó các phần mềm SNMP có thể được phát triển nhanh và tốn ít chi phí

(trong chương 5 tác giả sẽ trình bày cách xây dựng phần mềm giám sát SNMP, bạn sẽ

thấy tính đơn giản của nó).

SNMP được thiết kế để có thể mở rộng các chức năng quản lý, giám sát. Không

có giới hạn rằng SNMP có thể quản lý được cái gì. Khi có một thiết bị mới với các

thuộc tính, tính năng mới thì người ta có thể thiết kế “custom” SNMP để phục vụ cho

riêng mình (trong chương 3 tác giả sẽ trình bày file cấu trúc dữ liệu của SNMP).

SNMP được thiết kế để có thể hoạt động độc lập với các kiến trúc và cơ chế của

các thiết bị hỗ trợ SNMP. Các thiết bị khác nhau có hoạt động khác nhau nhưng đáp

ứng SNMP là giống nhau. Ví dụ bạn có thể dùng 1 phần mềm để theo dõi dung lượng

ổ cứng còn trống của các máy chủ chạy HĐH Windows và Linux; trong khi nếu không

dùng SNMP mà làm trực tiếp trên các HĐH này thì bạn phải thực hiện theo các cách

khác nhau.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 8

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

1.3.3. Các phiên bản của SNMP

SNMP có 4 phiên bản: SNMPv1, SNMPv2c, SNMPv2u và SNMPv3. Các phiên

bản này khác nhau một chút ở định dạng bản tin và phương thức hoạt động. Hiện tại

SNMPv1 là phổ biến nhất do có nhiều thiết bị tương thích nhất và có nhiều phần mềm

hỗ trợ nhất. Trong khi đó chỉ có một số thiết bị và phần mềm hỗ trợ SNMPv3.

Năm 1993, SNMP Version 2 (SNMPv2) được IETF đưa ra với mục đích giải

quyết vấn đề tồn tại trong SNMPv1 là cơ chế đảm bảo bảo mật. SNMPv2 có nhiều

thay đổi so với SNMPv1 như hổ trợ các mạng trung tâm cấp cao, mạng phân tán, cơ

chế bảo mật, làm việc với khối dữ liệu lớn... Tuy nhiên SNMPv2 không được chấp

nhận hoàn toàn bởi vì SNMPv2 chưa thoả mãn vấn đề bảo mật và quản trị bởi vậy năm

1996 những phần bảo mật trong SNMPv2 bị bỏ qua và SNMPv2 được gọi là

“SNMPv2 trên cơ sở truyền thông” hay SNMPv2c.

Năm 1998, IETF bắt đầu đưa ra SNMPv3 được định nghĩa trong RFCs 2571-

2575. Về bản chất, SNMPv3 mở rộng để đạt được cả hai mục đích là bảo mật và quản

trị. SNMPv3 hổ trợ kiến trúc theo kiểu module để có thể dễ dàng mở rộng. Như thế

nếu các giao thức bảo mật được mở rộng chúng có thể được hỗ trợ bởi SNMPv3 bằng

cách định nghĩa như là các module riêng.

1.4. Các khái niệm nền tảng của SNMP

1.4.1. Các thành phần trong SNMP

Hệ thống quản lý mạng dựa trên SNMP gồm ba thành phần: bộ phận quản lí

(manager), đại lý (agent) và cơ sở dữ liệu gọi là Cơ sở thông tin quản lý (MIB). Mặc

dù SNMP là một giao thức quản lý việc chuyển giao thông tin giữa ba thực thể trên,

song nó cũng định nghĩa mối quan hệ client-server (chủ tớ). Ở đây, những chương

trình client là bộ phận quản lý, trong khi client thực hiện ở các thiết bị từ xa có thể

được coi là server. Khi đó, cơ sở dữ liệu do agent SNMP quản lý là đại diện cho MIB

của SNMP.

1.4.2. Bộ phận quản lý (Manager)

Bộ phận quản lý là một chương trình vận hành trên một hoặc nhiều máy tính

trạm. Tùy thuộc vào cấu hình, mỗi bộ phận quản lí có thể được dùng để quản lý một

mạng con, hoặc nhiều bộ phận quản lý có thể được dùng để quản lý cùng một mạng

con hay một mạng chung. Tương tác thực sự giữa một người sử dụng cuối (end-user)

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 9

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

và bộ phận quản lý được duy trì qua việc sử dụng một hoặc nhiều chương trình ứng

dụng mà cùng với bộ phận quản lý, biến mặt bằng phần cứng thành Trạm quản lý

mạng (NMS). Ngày nay, trong thời kỳ các chương trình giao diện người sử dụng đồ

họa (GUI), hầu hết những chương trình ứng dụng cung cấp môi trường cửa sổ chỉ và

click chuột, thực hiện liên vận hành với bộ phận quản lý để tạo ra những bản đồ họa và

biểu đồ cung cấp những tổng kết hoạt động của mạng dưới dạng thấy được.

Qua bộ phận quản lý, những yêu cầu được chuyển tới một hoặc nhiều thiết bị

chịu sự quản lý. Ban đầu SNMP được phát triển để sử dụng trên mạng TCP/IP và

những mạng này tiếp tục làm mạng vận chuyển cho phần lớn các sản phẩm quản lý

mạng dựa trên SNMP. Tuy nhiên SNMP cũng có thể được chuyển qua NetWare IPX

và những cơ cấu vận chuyển khác.

1.4.3. Agent

Thiết bị chịu sự quản lý (Managed device): Là một nút mạng hỗ trợ giao thức

SNMP và thuộc về mạng bị quản lý. Thiết bị có nhiệm vụ thu thập thông tin quản lý và

luu trữ để phục vụ cho hệ thống quản lý mạng. Những thiết bị chịu sự quản lý, đôi khi

được gọi là những phần tử mạng, có thể là những bộ định tuyến và máy chủ truy cập-

Access Server, switch và bridge, hub, máy tính hay là những máy in trong mạng.

Mỗi thiết bị chịu sự quản lý bao gồm phần mềm hoặc phần sụn (firmware) dưới

dạng mã phiên dịch những yêu cầu SNMP và đáp ứng của những yêu cầu đó. Phần

mềm hoặc phần sụn này được coi là một agent. Mặc dù mỗi thiết bị bắt buộc bao gồm

một agent chịu quản lý trực tiếp, những thiết bị tương thích không theo SNMP cũng có

thể quản lý được nếu như chúng hỗ trợ một giao thức quản lý độc quyền. Ðể thực hiện

được điều này, phải giành được một agent ủy nhiệm (proxy agent). Proxy agent này có

thể được xét như một bộ chuyển đổi giao thức vì nó phiên dịch những yêu cầu SNMP

thành giao thức quản lý độc quyền của thiết bị không hoạt động theo giao thức SNMP.

Mặc dù SNMP chủ yếu là giao thức đáp ứng thăm dò (poll-respond) với những

yêu cầu do bộ phận quản lý tạo ra dẫn đến những đáp ứng trong agent, agent cũng có

khả năng đề xướng ra một “đáp ứng tự nguyện”. Ðáp ứng tự nguyện này là điều kiện

cảnh báo từ việc giám sát agent với hoạt động đã được định nghĩa trước và chỉ ra rằng

đã tới ngưỡng định trước. Dưới sự điều khiển của SNMP, việc truyền cảnh báo này

được coi là cái bẫy (trap).

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 10

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

1.4.4. Cở sở thông tin quản lý – MIB

Mỗi thiết bị chịu sự quản lý có thể có cấu hình, trạng thái và thông tin thống kê

rất đa dạng, định nghĩa chức năng và khả năng vận hành của thiết bị. Thông tin này có

thể bao gồm việc thiết lập chuyển mạch phần cứng, những giá trị khác nhau lưu trữ

trong các bảng ghi nhớ dữ liệu, bộ hồ sơ hoặc các trường thông tin trong hồ sơ lưu trữ

ở các file và những biến hoặc thành phần dữ liệu tương tự. Nhìn chung, những thành

phần dữ liệu này được coi là cơ sở thông tin quản lý của thiết bị chịu sự quản lý. Xét

riêng, mỗi thành phần dữ liệu biến đổi được coi là một đối tượng bị quản lý và bao

gồm tên, một hoặc nhiều thuộc tính, và một tập các hoạt động (operation) thực hiện

trên đối tượng đó. Vì vậy MIB định nghĩa loại thông tin có thể khôi phục từ một thiết

bị chịu sự quản lý và những bố trí (settings) thiết bị mà có thể điều khiển từ hệ thống

quản lí.

1.5. Các phương thức của SNMP

Giao thức SNMPv1 có 5 phương thức hoạt động, tương ứng với 5 loại bản tin

như sau:

Bảng 1.1. Các phương thức của SNMP

Mô tả Phương thức

Manager gửi GetRequest cho agent để yêu cầu agent cung cấp

GetRequest thông tin nào đó dựa vào ObjectID (trong GetRequest có chứa

OID)

Manager gửi GetNextRequest có chứa một ObjectID cho agent để GetNextRequest yêu cầu cung cấp thông tin nằm kế tiếp ObjectID đó trong MIB.

Manager gửi SetRequest cho agent để đặt giá trị cho đối tượng của SetRequest agent dựa vào ObjectID

Agent gửi GetResponse cho Manager để trả lời khi nhận được GetResponse GetRequest/GetNextRequest

Agent tự động gửi Trap cho Manager khi có một sự kiện xảy ra đối Trap với một object nào đó trong agent

Mỗi bản tin đều có chứa OID để cho biết object mang trong nó là gì. OID trong

GetRequest cho biết nó muốn lấy thông tin của object nào. OID trong GetResponse

cho biết nó mang giá trị của object nào. OID trong SetRequest chỉ ra nó muốn thiết lập

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 11

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

giá trị cho object nào. OID trong Trap chỉ ra nó thông báo sự kiện xảy ra đối với object

nào.

1.5.1. GetRequest

Bản tin GetRequest được manager gửi đến agent để lấy một thông tin nào đó.

Trong GetRequest có chứa OID của object muốn lấy. VD: Muốn lấy thông tin tên của

Device1 thì manager gửi bản tin GetRequest OID=1.3.6.1.2.1.1.5 đến Device1, tiến

trình SNMP agent trên Device1 sẽ nhận được bản tin và tạo bản tin trả lời.

Trong một bản tin GetRequest có thể chứa nhiều OID, nghĩa là dùng một

GetRequest có thể lấy về cùng lúc nhiều thông tin.

1.5.2. GetNextRequest

Bản tin GetNextRequest cũng dùng để lấy thông tin và cũng có chứa OID, tuy

nhiên nó dùng để lấy thông tin của object nằm kế tiếp object được chỉ ra trong bản tin.

Tại sao phải có phương thức GetNextRequest ? Như bạn đã biết khi đọc qua

những phần trên: một MIB bao gồm nhiều OID được sắp xếp thứ tự nhưng không liên

tục, nếu biết một OID thì không xác định được OID kế tiếp. Do đó ta cần

GetNextRequest để lấy về giá trị của OID kế tiếp. Nếu thực hiện GetNextRequest liên

tục thì ta sẽ lấy được toàn bộ thông tin của agent.

1.5.3. SetRequest

Bản tin SetRequest được manager gửi cho agent để thiết lập giá trị cho một

object nào đó. Ví dụ:

- Có thể đặt lại tên của một máy tính hay router bằng phần mềm SNMP manager,

bằng cách gửi bản tin SetRequest có OID là 1.3.6.1.2.1.1.5.0 (sysName.0) và có giá trị

là tên mới cần đặt.

- Có thể shutdown một port trên switch bằng phần mềm SNMP manager, bằng

cách gửi bản tin có OID là 1.3.6.1.2.1.2.2.1.7 (ifAdminStatus) và có giá trị là 27.

Chỉ những object có quyền READ_WRITE mới có thể thay đổi được giá trị.

1.5.4. GetResponse

Mỗi khi SNMP agent nhận được các bản tin GetRequest, GetNextRequest hay

SetRequest thì nó sẽ gửi lại bản tin GetResponse để trả lời. Trong bản tin GetResponse

có chứa OID của object được request và giá trị của object đó.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 12

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

1.5.5. Trap

Bản tin Trap được agent tự động gửi cho manager mỗi khi có sự kiện xảy ra bên

trong agent, các sự kiện này không phải là các hoạt động thường xuyên của agent mà

là các sự kiện mang tính biến cố. Ví dụ: Khi có một port down, khi có một người dùng

login không thành công, hoặc khi thiết bị khởi động lại, agent sẽ gửi trap cho manager.

Tuy nhiên không phải mọi biến cố đều được agent gửi trap, cũng không phải mọi

agent đều gửi trap khi xảy ra cùng một biến cố. Việc agent gửi hay không gửi trap cho

biến cố nào là do hãng sản xuất device/agent quy định.

Phương thức trap là độc lập với các phương thức request/response. SNMP

request/response dùng để quản lý còn SNMP trap dùng để cảnh báo. Nguồn gửi trap

gọi là Trap Sender và nơi nhận trap gọi là Trap Receiver. Một trap sender có thể được

cấu hình để gửi trap đến nhiều trap receiver cùng lúc.

Có 2 loại trap: trap phổ biến (generic trap) và trap đặc thù (specific trap). Generic

trap được quy định trong các chuẩn SNMP, còn specific trap do người dùng tự định

nghĩa (người dùng ở đây là hãng sản xuất SNMP device). Loại trap là một số nguyên

chứa trong bản tin trap, dựa vào đó mà phía nhận trap biết bản tin trap có nghĩa gì.

Theo SNMPv1, generic trap có 7 loại sau: coldStart(0), warmStart(1),

linkDown(2), linkUp(3), authenticationFailure(4), egpNeighborloss(5),

enterpriseSpecific(6). Giá trị trong ngoặc là mã số của các loại trap. Ý nghĩa của các

bản tin generic-trap như sau:

- coldStart: thông báo rằng thiết bị gửi bản tin này đang khởi động lại

(reinitialize) và cấu hình của nó có thể bị thay đổi sau khi khởi động.

- warmStart: thông báo rằng thiết bị gửi bản tin này đang khởi động lại và giữ

nguyên cấu hình cũ.

- linkDown: thông báo rằng thiết bị gửi bản tin này phát hiện được một trong

những kết nối truyền thông (communication link) của nó gặp lỗi. Trong bản tin trap có

tham số chỉ ra ifIndex của kết nối bị lỗi.

- linkUp: thông báo rằng thiết bị gửi bản tin này phát hiện được một trong những

kết nối truyền thông của nó đã khôi phục trở lại. Trong bản tin trap có tham số chỉ ra

ifIndex của kết nối được khôi phục.

- authenticationFailure: thông báo rằng thiết bị gửi bản tin này đã nhận được một

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 13

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

bản tin không được chứng thực thành công (bản tin bị chứng thực không thành công

có thể thuộc nhiều giao thức khác nhau như telnet, ssh, snmp, ftp, …). Thông thường

trap loại này xảy ra là do user đăng nhập không thành công vào thiết bị.

- egpNeighborloss: thông báo rằng một trong số những “EGP neighbor” 8 của

thiết bị gửi trap đã bị coi là down và quan hệ đối tác (peer relationship) giữa 2 bên

không còn được duy trì.

- enterpriseSpecific: thông báo rằng bản tin trap này không thuộc các kiểu

generic như trên mà nó là một loại bản tin do người dùng tự định nghĩa.

Người dùng có thể tự định nghĩa thêm các loại trap để làm phong phú thêm khả

năng cảnh báo của thiết bị như: boardFailed, configChanged, powerLoss, cpuTooHigh,

v.v…. Người dùng tự quy định ý nghĩa và giá trị của các specific trap này, và dĩ nhiên

chỉ những trap receiver và trap sender hỗ trợ cùng một MIB mới có thể hiểu ý nghĩa

của specific trap. Do đó nếu bạn dùng một phần mềm trap receiver bất kỳ để nhận trap

của các trap sender bất kỳ, bạn có thể đọc và hiểu các generic trap khi chúng xảy ra;

nhưng bạn sẽ không hiểu ý nghĩa các specific trap khi chúng hiện lên màn hình vì bản

tin trap chỉ chứa những con số.

Hình 1.2. Các phương thức của SNMP

Đối với các phương thức Get/Set/Response thì SNMP Agent lắng nghe ở port

UDP 161, còn phương thức trap thì SNMP Trap Receiver lắng nghe ở port UDP 162.

1.6. Liên lạc giữa Manager mà Agent

Nhìn trên phương diện truyền thông, nhà quản lí (manager) và các tác nhân

(agent) cũng là những người sử dụng, sử dụng một giao thức ứng dụng. Giao thức

quản lý yêu cầu cơ chế vận tải để hổ trợ tương tác giữa các tác nhân và nhà quản lý.

Management trước hết phải xác định được các agent mà nó muốn liên lạc. có thể

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 14

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

xác định được ứng dụng tác nhân bằng địa chỉ IP của nó và cổng UDP được gán cho

nó. Cổng UDP 161 được dành riêng cho các agent SNMP. Management gói lệnh

SNMP vào một phong bì UDP/IP. Phong bì này chứa cổng nguồn, địa chỉ IP đích và

cổng 161. Một thực thể IP tại chổ sẽ chuyển giao khung UDP tới hệ thống bị quản lý.

Tiếp đó, một thực thể UDP tại chổ sẽ chuyển phát nó tới các agent. Tương tự như vậy,

lệnh TRAP cũng cần xác định những management mà nó cần liên hệ. Chúng sử dụng

địa chỉ IP cũng như cổng UDP dành cho mamagement SNMP, đó là cổng 162.

1.6.1. Vận chuyển thông tin giữa Manager và Agent

Việc lựa chọn cơ chế vận chuyển có tính trực giao với giao thức truyền thông đó.

SNMP chỉ đòi hỏi cơ chế truyền tải không tin cậy dữ liệu đồ (datagram) để truyền đưa

các PDU (đơn vị dữ liệu giao thức) giữa management và các agent. Ðiều này cho phép

sự ánh xạ của SNMP tới nhiều nhóm giao thức. Mô hình vận chuyển datagram giảm

được độ phức tạp của ánh xạ tầng vận chuyển. Tuy nhiên, vẩn phải nhận thức thấy sự

tham gia của một số lựa chọn tầng vận chuyển. Các tầng vận chuyển khác nhau có thể

sử dụng nhiều kỹ thuật đánh địa chỉ khác nhau. Các tầng vận chuyển khác nhau có thể

đua ra những hạn chế quy mô của PDU. Ánh xạ tầng vận chuyển có trách nhiệm phải

xử lý các vấn đề đánh địa chỉ, hạn chế quy mô PDU và một số tham số tầng vận

chuyển khác.

Trong phiên bản thứ hai của SNMP, người ta sử dụng kinh nghiệm để làm sắc

nét và đơn giản hóa quá trình ánh xạ tới các chuẩn vận chuyển khác nhau. Giao thức

quản lý được tách khỏi môi trường vận chuyển một cách trực giao, điều này cũng được

khuyến khích sử dụng cho bất cứ nhóm giao thức nào.

1.6.2. Bảo vệ thông tin liên lạc giữa Manager và Agent

Trong điều kiện mạng thiếu ổn định và thiếu độ tin cậy thì sẽ liên lạc quản lý

càng trở nên quan trọng. Làm thế nào để các management liên lạc với các agent một

cách tin cậy? Việc SNMP sử dụng cơ chế UDP để liên lạc đã có nghĩa là thiếu đi độ

tin cậy. SNMP hoàn toàn để lại cho chương trình management chịu trách nhiệm và xử

lý việc mất thông tin. Các lệnh GET, GET-NEXT, và SET đều được phúc đáp bằng

một lệnh GET-RESPONSE. Hệ thống có thể dễ dàng phát hiện ra việc bị mất một lệnh

khi không nhận được lệnh trả lại. Nó có thể lặp lại yêu cầu đó một lần nữa hoặc có

những hành động khác. Tuy nhiên, các bản tin TRAP do agent tạo ra và không được

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 15

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

phúc đáp khẳng định. Khi lệnh TRAP bị thất lạc, các chương trình agent sẽ không biết

về điều đó (tất nhiên là management cũng không hay biết về điều này). Thông thường

các bản tin TRAP mang những thông tin hết sức quan trọng cho management, do vậy

management cần chú ý và cần bảo đảm việc chuyển phát chúng một cách tin cậy.

Một câu hỏi đặt ra là làm thế nào để chuyển phát các bản tin TRAP tránh mất

mát, thất lạc? Ta có thể thiết kế cho các agent lặp lại bản tin TRAP. Biến số MIB có

thể đọc số lần lặp lại theo yêu cầu. Lệnh SET của management có thể đặt cấu hình cho

biến số này. Có một cách khác là agent có thể lặp lại lệnh TRAP cho đến khi

management đặt biến số MIB để chấm dứt sự cố. Hãy ghi nhớ rằng, cả hai phương

pháp trên đều chỉ cho ta những giải pháp từng phần. Trong trường hợp thứ nhất, số lần

lặp lại có thể không đủ để đảm bảo liên lạc một cách tin cậy. Trong trường hợp thứ

hai, một sự cố mạng có thể dẩn đến việc hàng loạt bản tin TRAP bị mất tùy thuộc vào

tốc độ mà các agent tạo ra chúng. Ðiều này làm cho sự cố mạng trở nên trầm trọng

hơn. Trong cả hai trường hợp, nếu ta cần chuyển phát những bản tin TRAP tới nhiều

management, thì có thể xảy ra tình trạng không nhất quán giữa các management hoặc

xảy ra hiện tượng thất lạc thông tin rất phức tạp. Nếu các agent phải chịu trách nhiệm

về thiết kế cho việc phục hồi những bản tin TRAP thì càng làm tăng thêm độ phức tạp

trong việc quản lý các agent trong môi trường đa nhà chế tạo.

Người ta cũng đã theo đuổi cải tiến cơ chế xử lý bản tin sự cố cho phiên bản thứ

hai của SNMP. Thứ nhất là đơn nguyên TRAP được bỏ đi và thay thế nó bằng một

lệnh

GET/RESPONSE không yêu cầu. Lệnh này do agent tạo ra và chuyển đến cho

“management bẫy” tại cổng UDP-162. Ðiều này phản ánh một quan điểm là nhà quản

lý sự cố có thể thống nhất các bản tin sự cố rồi trả lại cho các yêu cầu ảo. Bằng cách

bỏ đi một đơn thể, giao thức được đơn giản hóa. Người ta cũng bổ sung thêm một cơ

sở thông tin quản lý đặc biệt TRAP MIB để thống nhất việc xử lý sự cố, các

management nhận bản tin về các sự cố này và việc lặp lại để cải thiện độ tin cậy trong

chuyển phát thông tin.

1.7. Các cơ chế bảo mật cho SNMP

Một SNMP management station có thể quản lý/giám sát nhiều SNMP element,

thông qua hoạt động gửi request và nhận trap. Tuy nhiên một SNMP element có thể

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 16

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

được cấu hình để chỉ cho phép các SNMP management station nào đó được phép quản

lý/giám sát mình.

Các cơ chế bảo mật đơn giản này gồm có: community string, view và SNMP

access control list.

1.7.1. Community string

Community string là một chuỗi ký tự được cài đặt giống nhau trên cả SNMP

manager và SNMP agent, đóng vai trò như “mật khẩu” giữa 2 bên khi trao đổi dữ liệu.

Community string có 3 loại: Read-community, Write-Community và Trap-

Community.

Khi manager gửi GetRequest, GetNextRequest đến agent thì trong bản tin gửi đi

có chứa Read-Community. Khi agent nhận được bản tin request thì nó sẽ so sánh

Read-community do manager gửi và Read-community mà nó được cài đặt. Nếu 2

chuỗi này giống nhau, agent sẽ trả lời; nếu 2 chuỗi này khác nhau, agent sẽ không trả

lời.

- Write-Community được dùng trong bản tin SetRequest. Agent chỉ chấp nhận

thay đổi dữ liệu khi write-community 2 bên giống nhau.

- Trap-community nằm trong bản tin trap của trap sender gửi cho trap receiver.

Trap receiver chỉ nhận và lưu trữ bản tin trap chỉ khi trap-community 2 bên giống

nhau, tuy nhiên cũng có nhiều trap receiver được cấu hình nhận tất cả bản tin trap mà

không quan tâm đến trap-community.

- Community string có 3 loại như trên nhưng cùng một loại có thể có nhiều string

khác nhau. Nghĩa là một agent có thể khai báo nhiều read-community, nhiều write-

community.

Trên hầu hết hệ thống, read-community mặc định là “public”, write-community

mặc định là “private” và trap-community mặc định là “public”.

Community string chỉ là chuỗi ký tự dạng cleartext, do đó hoàn toàn có thể bị

nghe lén khi truyền trên mạng. Hơn nữa, các community mặc định thường là “public”

và “private” nên nếu người quản trị không thay đổi thì chúng có thể dễ dàng bị dò ra.

Khi community string trong mạng bị lộ, một người dùng bình thường tại một máy tính

nào đó trong mạng có thể quản lý/giám sát toàn bộ các device có cùng community mà

không được sự cho phép của người quản trị.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 17

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

1.7.2. View

Khi manager có read-community thì nó có thể đọc toàn bộ OID của agent. Tuy

nhiên agent có thể quy định chỉ cho phép đọc một số OID có liên quan nhau, tức là chỉ

đọc được một phần của MIB. Tập con của MIB này gọi là view, trên agent có thể định

nghĩa nhiều view. Ví dụ: agent có thể định nghĩa view interfaceView bao gồm các

OID liên quan đến interface, storageView bao gồm các OID liên quan đến lưu trữ, hay

AllView bao gồm tất cả các OID.

Một view phải gắn liền với một community string. Tùy vào community string

nhận được là gì mà agent xử lý trên view tương ứng. Ví dụ: agent định nghĩa read-

community “inf” trên view interfaceView, và “sto” trên storageView; khi manager gửi

request lấy OID ifNumber với community là “inf” thì sẽ được đáp ứng do ifNumber

nằm trong interfaceView; nếu manager request OID hrStorageSize với community

“inf” thì agent sẽ không trả lời do hrStorageSize không nằm trong interfaceView;

nhưng nếu manager request hrStorageSize với community “sto” thì sẽ được trả lời do

hrStorageSize nằm trong storageView.

Việc định nghĩa các view như thế nào tùy thuộc vào từng SNMP agent khác

nhau. Có nhiều hệ thống không hỗ trợ tính năng view.

1.7.3. SNMP Access Control List

Khi manager gửi không đúng community hoặc khi OID cần lấy lại không nằm

trong view cho phép thì agent sẽ không trả lời. Tuy nhiên khi community bị lộ thì một

manager nào đó vẫn request được thông tin.

Để ngăn chặn hoàn toàn các SNMP manager không được phép, người quản trị có

thể dùng đến SNMP access control list (ACL). SNMP ACL là một danh sách các địa

chỉ IP được phép quản lý/giám sát agent, nó chỉ áp dụng riêng cho giao thức SNMP và

được cài trên agent. Nếu một manager có IP không được phép trong ACL gửi request

thì agent sẽ không xử lý, dù request có community string là đúng.

Đa số các thiết bị tương thích SNMP đều cho phép thiết lập SNMP ACL.

1.8. Cấu trúc bản tin SNMP

SNMP chạy trên nền UDP. Cấu trúc của một bản tin SNMP bao gồm: version,

community và data.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 18

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Hình 1.3. Cấu trúc bảng tin SNMP

- Version: v1 = 0, v2c = 1, v2u = 2, v3 = 3.

Phần Data trong bản tin SNMP gọi là PDU (Protocol Data Unit). SNMPv1 có 5

phương thức hoạt động tương ứng 5 loại PDU. Tuy nhiên chỉ có 2 loại định dạng bản

tin là PDU và Trap-PDU; trong đó các bản tin Get, GetNext, Set, GetResponse có

cùng định dạng là PDU, còn bản tin Trap có định dạng là Trap-PDU.

1.9. Phương thức giám sát Poll và Alert

Đây là hai phương thức cơ bản của các kỹ thuật giám sát hệ thống, nhiều phần

mềm và giao thức được xây dựng dựa trên hai phương thức này, trong đó có SNMP.

Việc hiểu rõ hoạt động của Poll & Alert và ưu nhược điểm của chúng sẽ giúp chúng ta

dễ dàng tìm hiểu nguyên tắc hoạt động của các giao thức hay phần mềm giám sát.

Hoặc nếu muốn tự phát triển một cơ chế giám sát của riêng mình thì nó cũng là cơ sở

để giúp chúng ta xây dựng một nguyên tắc hoạt động đúng đắn.

1.9.1. Phương thức Poll

Nguyên tắc hoạt động: Trung tâm giám sát (manager) sẽ thường xuyên hỏi thông

tin của thiết bị cần giám sát (device). Nếu Manager không hỏi thì Device không trả lời,

nếu Manager hỏi thì Device phải trả lời. Bằng cách hỏi thường xuyên, Manager sẽ

luôn cập nhật được thông tin mới nhất từ Device. Ví dụ: Người quản lý cần theo dõi

khi nào thợ làm xong việc. Anh ta cứ thường xuyên hỏi người thợ “Anh đã làm xong

chưa ?”, và người thợ sẽ trả lời “Xong” hoặc “Chưa”.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 19

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Hình 1.4. Phương thức giám sát Poll

1.9.2. Phương thức giám sát Alert

Nguyên tắc hoạt động: Mỗi khi trong Device xảy ra một sự kiện (event) nào đó

thì Device sẽ tự động gửi thông báo cho Manager, gọi là Alert. Manager không hỏi

thông tin định kỳ từ Device. Ví dụ: Người quản lý cần theo dõi tình hình làm việc của

thợ, anh ta yêu cầu người thợ thông báo cho mình khi có vấn đề gì đó xảy ra. Người

thợ sẽ thông báo các sự kiện đại loại như “Tiến độ đã hoàn thành 50%”, “Mất điện lúc

10h”, “Có điện lại lúc 11h”, “Mới có tai nạn xảy ra”.

Hình 1.5. Phương thức giám sát Alert

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 20

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

CHƯƠNG II. CÁC YÊU CẦU CỦA QUẢN LÝ

HỆ THỐNG MẠNG VÀ PHẦN MỀM QUẢN LÝ

HỆ THỐNG MẠNG ZABBIX

2.1. Các yêu cầu quản lý hệ thống mạng

Các cơ chế quản lý mạng được nhìn nhận từ hai góc độ, góc độ mạng chỉ ra hệ

thống quản lý nằm tại các mức cao của mô hình OSI và từ phía người điều hành quản

lý hệ thống mạng. Mặc dù có rất nhiều quan điểm khác nhau về mô hình quản lý hệ

thống nhưng đều thống nhất bởi ba chức năng quản lý cơ bản gồm: giám sát, điều

khiển và đưa ra báo cáo tới người điều hành.

 Chức năng giám sát có nhiệm vụ thu thập liên tục các thông tin về trạng thái

của các tài nguyên được quản lý sau đó chuyển các thông tin này dưới dạng các sự

kiện và đưa ra các cảnh báo khi các tham số của tài nguyên mạng được quản lý vượt

quá ngưỡng cho phép.

 Chức năng quản lý có nhiệm vụ thực hiện các yêu cầu của người quản lý hoặc

các ứng dụng quản lý nhằm thay đổi trạng thái hay cấu hình của một tài nguyên được

quản lý nào đó.

 Chức năng đưa ra báo cáo có nhiệm vụ chuyển đổi và hiển thị các báo cáo

dưới dạng mà người quản lí có thể đọc, đánh giá hoặc tìm kiếm, tra cứu thông tin được

báo cáo.

Dưới góc độ của người điều hành quản lý mạng, một số yêu cầu cơ bản thường

được đặt ra gồm:

 Có thể truy nhập và cấu hình lại từ xa các tài nguyên được quản lý.

 Dễ dàng trong việc cài đặt, vận hành và bảo dưỡng hệ thống quản lý cũng như

các ứng dụng của nó.

 Bảo mật hoạt động quản lý và truy nhập của người sử dụng, bảo mật truyền

thông các thông tin quản lý.

 Có khả năng đưa ra các báo cáo đầy đủ và rõ nghĩa về các thông tin quản lý.

 Quản lý theo thời gian thực và hoạt động quản lý hàng ngày được thực hiện

một cách tự động.

 Mềm dẻo trong việc nâng cấp hệ thống và có khả năng tương thích với nhiều

công nghệ khác nhau.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 21

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

 Có khả năng lưu trữ và khôi phục các thông tin quản lý. Kiến trúc quản lý hệ

thống mạng

2.2. Kiến trúc quản lý hệ thống mạng

2.2.1. Kiến trúc quản lý mạng

Quản lý mạng gồm một tập các chức năng để điều khiển, lập kế hoạch, liên kết,

triển khai và giám sát tài nguyên mạng. Quản lý mạng có thể được nhìn nhận như một

cấu trúc gồm nhiều lớp:

 Quản lý kinh doanh: Quản lý khía cạnh kinh doanh của mạng ví dụ như: ngân

sách/tài nguyên, kế hoạch và các thỏa thuận.

 Quản lý dịch vụ: Quản lý các dịch vụ cung cấp cho người sử dụng, ví dụ các

dịch vụ cung cấp bao gồm việc quản lý băng thông truy nhập, lưu trữ dữ liệu và các

ứng dụng cung cấp.

 Quản lý mạng: Quản lý toàn bộ thiết bị mạng trong mạng.

 Quản lý phần tử: Quản lý một tập hợp thiết bị mạng, ví dụ các bộ định tuyến

truy nhập hoặc các hệ thống quản lý thuê bao.

 Quản lý phần tử mạng: Quản lý từng thiết bị đơn trong mạng, ví dụ bộ định

tuyến, chuyển mạch, Hub.

Quản lý mạng có thể chia thành hai chức năng cơ sở: truyền tải thông tin quản lý

qua hệ thống và quản lý các phần tử thông tin quản lý mạng. Các chức năng này gồm

các nhiệm vụ khác nhau như: Giám sát, cấu hình, sửa lỗi và lập kế hoạch được thực

hiện bởi nhà quản trị hoặc nhân viên quản lý mạng.

2.2.2. Cơ chế quản lý mạng

Cơ chế quản lý mạng bao gồm cả các giao thức quản lý mạng, các giao thức quản

lý mạng cung cấp các cơ chế thu thập, thay đổi và truyền các dữ liệu quản lý mạng qua

mạng.

Các cơ chế giám sát nhằm để xác định các đặc tính của thiết bị mạng, tiến trình

giám sát bao gồm thu thập được và lưu trữ các tập con của dữ liệu đó. Dữ liệu thường

được thu thập thông qua polling hoặc tiến trình giám sát gồm các giao thức quản lý

mạng.

Xử lý dữ liệu sau quá trình thu thập thông tin quản lý mạng là bước loại bỏ bớt

các thông tin dữ liệu không cần thiết đối với từng nhiệm vụ quản lý. Sự thể hiện các

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 22

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

thông tin quản lý cho người quản lý cho phép người quản lý nắm bắt hiệu quả nhất các

tính năng và đặc tính mạng cần quản lý. Một số kĩ thuật biểu diễn dữ liệu thường được

sử dụng dưới dạng ký tự, đồ thị hoặc lưu đồ (tĩnh hoặc động).

Tại thời điểm xử lý thông tin dữ liệu, rất nhiều các thông tin chưa kịp xử lý được

lưu trữ tại các vùng nhớ lưu trữ khác nhau. Các cơ chế dự phòng và cập nhật lưu trữ

luôn được xác định trước trong các cơ chế quản lý mạng nhằm tránh tối đa tổn thất dữ

liệu.

Các phân tích thời gian thực luôn yêu cầu thời gian hỏi đáp tới các thiết bị quản

lý trong khoảng thời gian ngắn. Đây là điều kiện đánh đổi giữa số lượng đặc tính và

thiết bị mạng với lượng tài nguyên (khả năng tính toán, số lượng thiết bị tính toán, bộ

nhớ, lưu trữ) cần thiết để hỗ trợ các phân tích.

Thực hiện nhiệm vụ cấu hình chính là cài đặt các tham số trong một thiết bị

mạng để điều hành và điều khiển các phần tử. Các cơ chế cấu hình bao gồm truy nhập

trực tiếp tới các thiết bị, truy nhập từ xa và lấy các file cấu hình từ các thiết bị đó. Dữ

liệu cấu hình được thông qua các cách sau:

 Các câu lệnh SET của SNMP

 Truy nhập qua Telnet và giao diện dòng lệnh

 Truy nhập qua HTTP

 Truy nhập qua kiến trúc CORBA

 Sử dụng FTP/TFTP để lấy file cấu hình

2.3. Giới thiệu về phần mềm Zabbix

Zabbix là một công cụ mã nguồn mở giải quyết cho ta các vấn đề về giám sát.

Zabbix là phần mềm sử dụng các tham số của một mạng, tình trạng và tính toàn vẹn

của Server cũng như các thiết bị mạng. Zabbix sử dụng một cơ chế thống báo linh hoạt

cho phép người dùng cấu hình email hoặc sms để cảnh báo dựa trên sự kiện được ta

thiết lập sẵn. Ngoài ra Zabbix cung cấp báo cáo và dữ liệu chính xác dựa trên cơ sở dữ

liệu. Điều này khiến cho Zabbix trở nên lý tưởng hơn.

Tất cả các cấu hình của Zabbix thông qua giao diện web. Việc lên kế hoạch và

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 23

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

cấu hình một cách đúng đắn sẽ giúp cho việc giám sát trở nên dễ dàng và thuận tiện

hơn. Zabbix đóng một vai trò quan trọng trong việc theo dõi hạ tầng mạng.

2.4. Các ưu điểm của phần mền Zabbix

 Giám sát cả Server và thiết bị mạng

 Dễ dàng thao tác và cấu hình

 Hỗ trợ máy chủ Linux, Solaris, FreeBSD …

 Đáng tin cậy trong việc chứng thực người dùng

 Linh hoạt trong việc phân quyền người dùng giao diện web đẹp mắt

 Thông báo sự cố qua email và SMS

 Biểu đổ theo dõi và báo cáo

 Mã nguồn mở và chi phí thấp

2.5. Các yêu cầu để cài đặt phần mềm

Zabbix yêu cầu tối thiểu về RAM là 128, 256MB không gian trống của ổ đĩa

cứng. Tuy nhiên số lượng ổ cứng tùy thuộc vào số lượng hosts và các thông số được

giám sát. Phụ thuộc vào số lượng hosts được giám sát mà Zabbix yêu cầu tối thiểu các

tài nguyên như sau:

Bảng 2.1. Các yêu cầu để cài đặt phần mềm

Monitored Name Platform CPU/Memory Database hosts

Ubuntu PII 350MHz Small MySQL MyISAM 20 Linux 256MB

Ubuntu AMD Athlon Medium MySQL InnoDB 500 Linux 64 bit 3200+ 2GB

Ubuntu Intel Dual Core RAID10 MySQL >1000 Large Linux 64 bit 6400 4GB InnoDB or PostgreSQL

RedHat Intel Xeon Fast RAID10 MySQL Very >10000 Enterprise 2xCPU 8GB InnoDB or PostgreSQL large

2.6. Các thành phần cơ bản của Zabbix

2.6.1. Zabbix server

Đây là thành phần trung tâm của phần mềm Zabbix. Zabbix Server có thể kiểm

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 24

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

tra các dịch vụ mạng từ xa thông qua các báo cáo của Agent gửi về cho Zabbix Server

và từ đó nó sẽ lưu trữ tất cả các cấu hình cũng như là các số liệu thống kê.

2.6.2. Zabbix Proxy

Là phần tùy chọn của Zabbix. Nó có nhiệm vụ thu nhận dữ liệu, lưu trong bộ nhớ

đệm và chuyển đến Zabbix Server. Zabbix Proxy là một giải pháp lý tưởng cho việc

giám sát tập trung của các địa điểm từ xa, chi nhánh công ty, các mạng lưới không có

quản trị viên nội bộ. Zabbix Proxy cũng được sử dụng để phân phối tải của một Zabbix

Server

2.6.3. Zabbix Agent

Để giám sát chủ động các thiết bị cục bộ và các ứng dụng (ổ cứng, bộ nhớ, …)

trên hệ thống mạng. Zabbix Agent sẽ được cài lên trên Server và từ đó Agent sẽ thu

thập thông tin hoạt động từ Server mà nó đang chạy và báo cáo dữ liệu này đến Zabbix

Server để xử lý.

2.6.4. Web interface

Để dễ dàng truy cập dữ liệu theo dõi và sau đó cấu hình từ giao diện web cung

cấp. Giao diện là một phần của Zabbix Server, và thường chạy trên các máy chủ.

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 25

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

CHƯƠNG III. TRIỂN KHAI GIÁM SÁT VÀ QUẢN LÝ

HỆ THỐNG MẠNG BẰNG PHẦN MỀM ZABBIX

3.1. Triển khai mô hình và cài đặt phần mềm Zabbix

3.1.1. Mô hình triển khai

- Các thiết bị: Router, Switch, PC,…

- Các dịch vụ: Mail Server, Web Server,…

- Mô hình:

Hình 3.1. Mô hình triển khai

3.1.2. Quá trình cài đặt

Để triền khai phần mềm quản lý hệ thống mạng Zabbix nhóm đã dùng hệ điều

hành CentOS 6.5 trên máy ảo, hệ cơ sở dữ liệu MySQL, Zabbix phiên bản 2.4

Bước 1. Cài đặt hệ điều hành CentOS 6.5

Hình 3.2. Cài đặt hệ điều hành CentOS 6.5 trên máy ảo

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 26

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 2. Đăng nhập vào CentOS với User: root và Password: 123456

Hình 3.3. Giao diện đăng nhập vào CentOS 6.5

Bước 3. Cài đặt Repo trên máy ảo CentOS 6.5

Tùy theo phiên bản CentOS 64bit hay 32bit mà mình chọn lựa gói cho phù hợp

với thông số hệ điều hành.

Ở đây bản CentOS là bản 64bit.

rpm-Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-

8.noarch.rpm

Hình 3.4. Cài đặt Repo trên CentOS 6.5

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 27

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 4. Cài đặt Apache cho máy chủ

yum install httpd httpd-devel -y

Hình 3.5. Cài đặt Apache cho máy chủ

Bước 5. Cài đặt cơ sở dữ liệu MySQL-Server

Hình 3.6. Cài đặt MySQL Server

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 28

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 6. Cài đặt PHP

yum install php php-cli php-common php-devel php-pear php-gd php-mbstring

php-mysql php-xml -y

Hình 3.7. Cài đặt PHP

Bước 7. Cài đặt Repo cho Zabbix 2.4

rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-

1.el6.noarch.rpm

Hình 3.8. Cài đặt Repo cho Zabbix 2.4

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 29

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 8. Cài đặt Zabbix cùng với MySQL

Ở bước này chúng ta có thể lựa chọn cài từ Source hoặc từ Pakages.

Để cài từ Source thì cần phải chọn đúng với hệ điều hành và phiên bản có hỗ trợ

đầy đủ để tải về từ trang web chính thức của Zabbix.

Hình 3.9. Chọn phiên bản phù hợp nếu cài từ Source trên website của Zabbix

Để cài từ Pakages ta dùng lệnh:

yum install zabbix-server-mysql zabbix-web-mysql -y

Hình 3.10. Cài Zabbix từ Pakages

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 30

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 9. Cài đặt Zabbix Agent

Cài đặt Zabbix Agent dùng để quản lý thông tin của chính máy chủ.

yum install zabbix-agent -y

Hình 3.11. Cài đặt Zabbix Agent để quản lý thông tin của máy chủ

Bước 10. Cấu hình Zabbix Agent cho Server

vi /etc/zabbix/zabbix_agentd.conf

Cấu hình địa chủ IP của Server để Agent có thể gửi thông tin đến máy chủ.

Hình 3.12. Cấu hình địa chỉ máy chủ cho Agent

Bước 11. Cấu hình lại thời gian cho Zabbix

ln -sf /usr/share/zoneinfo/Asia/Ho_Chi_Minh /etc/localtime

vi /etc/httpd/conf.d/zabbix.conf

Hình 3.13. Cấu hình lại thời gian cho Zabbix

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 31

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 12. Cấu hình Database cho Zabbix

Mysql –u root -p

mysql> CREATE DATABASE zabbix CHARACTER SET UTF8;

mysql> GRANT ALL PRIVILEGES on zabbix.* to ‘zabbix’@’localhost’

IDENTIFIED BY ‘123456‘;

mysql> FLUSH PRIVILEGES;

mysql> quit

Bước 13: Import các Database mặc định của Zabbix

cd /usr/share/doc/zabbix-server-mysql-2.4.7/create/

mysql -u root zabbix < schema.sql

mysql -u root zabbix < images.sql

mysql -u root zabbix < data.sql

Hình 3.14. Import các Database mặc định của Zabbix

Bước 14. Cấu hình cho Zabbix Server

vi /etc/zabbix/zabbix_server.conf

Hình 3.15. Cấu hình các thông số cho Zabbix Server

Bước 15. Khởi động Zabbix Server

- Cấu hình lại tường lửa hoặc có thể tắt tường lửa

service iptables stop

- Khởi động dịch vụ Httpd:

/etc/init.d/httpd start

- Khởi động cơ sở dữ liệu MySQL

/etc/init.d/mysqld start

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 32

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Khởi động Zabbix Agent để quản lý tài nguyên máy chủ

/etc/init.d/zabbix-agent start

- Khởi động Zabbix Server

/etc/init.d/zabbix-server start

Bước 16. Tiếp tục các bước cài đặt trên giao diện Web

Giao diện cài đặt của Zabbix 2.4.

Hình 3.16. Giao diện cài đặt của Zabbix 2.4

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 33

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Kiếm tra cấu hình của Zabbix, nếu sai buộc chúng ta phải cấu hình lại.

Hình 3.17. Giao diện kiểm tra các cấu hình của Zabbix

- Khai báo cơ sở dữ liệu và tên người dùng, mật khẩu.

Hình 3.18. Giao diện khai báo cở sở dữ liệu và tài khoản mật khẩu

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 34

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Khai báo địa chỉ, cổng và tên máy chủ Zabbix.

Hình 3.19. Giao diện khai báo ip, cổng và tên máy chủ

- Kiểm tra lại thông tin trước khi tiến hành cài đặt.

Hình 3.20. Giao diện kiểm tra lại thông tin trước khi cài đặt

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 35

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Sau khi cài đặt thành công.

Hình 3.21. Giao diện sau khi cài đặt thành công

- Giao diện đăng nhập của Zabbix Server 2.4

Hình 3.22. Giao diện đăng nhập của Zabbix 2.4

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 36

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Giao diện chính của Zabbix sau khi đăng nhập thành công

Hình 3.23. Giao diện sau khi đăng nhập thành công

3.2. Các chức năng cơ bản của Zabbix Server 2.4

- Trước hết phải bật Host trong cấu hình của Zabbix lên mới có thể tiếp nhận các

thông tin từ Agent.

Hình 3.24. Khởi động Zabbix Server để tiếp nhận các thông tin từ Agent

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 37

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Tải bộ xử lý (trung bình 1 phút trên mỗi lõi)

Tải bộ xử lý (trung bình 5 phút trên mỗi lõi)

Tải bộ xử lý (trung bình 15 phút trên mỗi lõi)

Kích hoạt: Tải bộ xử lý quá cao trên máy chủ Zabbix (> 5) Hình 3.25. Giao diện thông tin CPU của máy chủ

Bộ nhớ sẵn có

Hình 3.26. Giao diện thông tin RAM của máy chủ

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 38

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Các giá trị được xử lý bởi máy chủ Zabbix mỗi giây Hàng đợi Zabbix

Hình 3.27. Giao diện thông tin hiệu năng của máy chủ

3.3. Cấu hình Zabbix Agent để quản lý máy khách Windows

Hình 3.28. Cài đặt Zabbix Agent trên máy Windows

Như vậy là khi dịch vụ này được khởi động, máy chủ Zabbix có thể nhận được

các thông tin từ máy khách đã được cài đặt và cấu hình Zabbix Agent.

1. Giám sát máy Client Agent từ xa

- Đầu tiên ta xem địa chỉ IP của máy cần giám sát

Hình 3.29. Địa chỉ của máy cần giám sát

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 39

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Trên máy Zabbix Server ta vào Configuration -> Hosts

Hình 3.30. Giao diện Configuration của Zabbix Server

Tiếp theo ta sẽ tạo 1 host mới để giám sát

- Điền đầy đủ thông tin của máy cần giám sát như: Host Name, Group, IP

address,…..

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 40

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Vào tab Templates thêm những thuộc tính

Hình 3.31. Tạo thành công 1 host

- Việc tiếp nhận máy client đã thành công

Hình 3.32. Tiếp nhận máy Client của Zabbix Server

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 41

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Tải bộ xử lý (trung bình 1 phút trên mỗi lõi)

Tải bộ xử lý (trung bình 5 phút trên mỗi lõi)

Tải bộ xử lý (trung bình 15 phút trên mỗi lõi)

Kích hoạt: Tải bộ xử lý quá cao trên máy Zabbix Client (> 5) Hình 3.33. Giao diện thông tin CPU của máy trạm

Bộ nhớ trống

Thiếu bộ nhớ trống trên máy chủ Zabbix Client (<10000)

Hình 3.34. Giao diện thông tin RAM của máy trạm

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 42

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

- Giám sát Router, Switch (gói ICMP)

Thời gian đáp ứng ICMP

Thời gian đáp ứng quá cao trên cisco-sw1 (>0.15)

Hình 3.35. Giao diện thông tin ICMP giữa máy chủ và Router

3.4. Triển khai giám sát Webserver trên máy Zabbix Client

Bước 1. Tạo 1 ứng dụng trong user Zabbix Client

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 43

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Hình 3.36. Tạo ứng dụng trong user Zabbix Client

Bước 2. Đặt tên cho ứng dụng

Hình 3.37. Đặt tên cho ứng dụng

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 44

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 3. Tạo web cho máy Zabbix Client

Hình 3.38. Tạo web cho máy Zabbix Client

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 45

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Bước 4. Điền các thông tin để tạo một Web

- Vào mục Steps để thêm các chế độ quản lý

Hình 3.39. Điền các thông tin tạo Web

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 46

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Hình 3.40. Tạo xong web cho máy Zabbix Client

Bước 5. Tiến hành giám sát Monitoring  Web

Hình 3.41. Giao diện giám sát Web của máy Zabbix Server

Tốc độ download speed của bước “thinh2” của kịch bản “web1”

Hình 3.42. Giao diện thông tin tốc độ Download của Web

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 47

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

Thời gian đáp ứng của bước “thinh2” của kịch bản “web1”

Hình 3.43. Giao diện thông tin Thời gian đáp ứng của Web

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 48

Giám sát hệ thống mạng bằng phần mềm Zabbix

GVHD: Ths. Đỗ Công Đức

KẾT LUẬN

1. Kết quả đạt được

- Phần mềm zabbix giám sát dựa trên cơ chế agent/server. với cơ chế này khả

năng giám sát toàn diện hơn nhờ có agent.

- Hệ thống có cấu trúc mở cho phép phát triển, tùy biến, tích hợp với các hệ

thống khác một cách linh hoạt, dễ dàng.

- Hệ thống cho phép giám sát trạng thái, các thong số thống khê của thiết bị cũng

như các dịch vụ theo thời gian.

- Tuy nhiên nhóm đã cố gắng hết sức chỉ dừng ở mức độ theo dõi, giám sát máy

chủ như giám sát tài nguyên máy, dung lượng traffic.

2. Ưu điểm - khuyết điểm

Ưu điểm

- Hiển thị tham số thống kê: CPU, RAM, không gian lưu trữ, các tiến trình, lưu

lượng trên các interface,.... của thiết bị theo thời gian, trực quan.

- Giám sát được hầu hết các thiết bị mạng, các ứng dụng dịch vụ (SMTP, POP3,

HTTP, FTP,....)

- Phát triển sự cố, phát triển tấn công nhanh chống đưa ra cảnh báo cho người

quản trị mạng.

Khuyết điểm:

- Cài đặt phức tạp, khó khăn.

3. Hướng phát triển

- Nghiên cứu sâu hơn về hệ thống giám sát mạng Zabbix và các công cụ hỗ trợ

giám sát mạng.

- Phát triển các chức năng trên Zabbix như: Chức năng cảnh báo thông qua SMS,

Mail,...

SVTH: Võ Tiến Thịnh – Lớp CCMM08A

Trang 49

TÀI LIỆU THAM KHẢO

Tài liệu Internet:

[1] Bộ tài liệu SNMP Toàn tập gồm 5 chương của tác giả Diệp Thanh Nguyên:

https://sites.google.com/site/snmptoantap

[2] Trang web chính thức của phần mềm Zabbix:

http://www.zabbix.com

[3] Hướng dẫn cài đặt phiên bản 2.4 của Zabbix:

https://www.zabbix.com/documentation/2.4

[4] Các phiên bản Zabbix cho các hệ điều hành tương ứng:

http://www.zabbix.com/download.php

[5] Một số thông tin về Zabbix của Wikipedia:

https://en.wikipedia.org/wiki/Zabbix

[6] Một số thông tin về Trung tâm Internet Việt Nam (VNNIC)

vii

http://vnnic.vn