Giới thiệu về quản lý mạng và internet
Tổng quan về quản lý mạng
1.1.1 Giới thiệu chung về quản lý mạng
Quản lý mạng đang trải qua những thay đổi mạnh mẽ, đáp ứng nhu cầu từ người sử dụng và các tiêu chuẩn quốc tế Các nhà khai thác mạng và nhà cung cấp thiết bị áp dụng nhiều phương pháp khác nhau để tối ưu hóa quản lý dịch vụ và thiết bị Mỗi nhà cung cấp thường đưa ra giải pháp quản lý riêng, nhằm tăng cường lợi thế cạnh tranh Trong bối cảnh hội tụ dịch vụ và thiết bị, sự đa dạng và phức tạp của các thiết bị đã tạo ra thách thức lớn trong quản lý mạng Quản lý mạng được định nghĩa là việc kiểm soát, lập kế hoạch, triển khai và giám sát các nguồn tài nguyên trong mạng viễn thông hoặc mạng máy tính, bao gồm nhiều chức năng như quản lý cấu hình, quản lý lỗi và quản lý hiệu năng Mặc dù nhiệm vụ quản lý mạng có nguyên tắc rõ ràng, nhưng các bài toán cụ thể lại rất phức tạp do sự đa dạng của thiết bị và chiến lược quản lý cần phù hợp với kiến trúc mạng và yêu cầu người dùng Các thiết bị cần quản lý bao gồm máy tính cá nhân, máy chủ, thiết bị đầu cuối và nhiều thiết bị mạng khác Mục tiêu quản lý mạng không chỉ là quản lý thiết bị mà còn bao gồm nhiều khía cạnh khác của mạng truyền thông.
Quản lý mạng bao gồm 7 thành phần chính như mạng, tài nguyên dịch vụ, đặc tính người sử dụng, phần mềm ứng dụng hệ thống và cơ sở dữ liệu Về mặt kỹ thuật, thông tin từ các thành phần này được thu thập và trao đổi, sau đó được kết hợp với hoạt động quản lý để phân tích và xử lý Quản lý mạng sử dụng phương pháp truyền thông dữ liệu để truyền tải thông tin, nhưng yêu cầu cao hơn về bảo mật, chất lượng và độ tin cậy so với các mô hình truyền thông thông thường Điều này cho thấy quản lý mạng là một phần quan trọng trong việc điều khiển hệ thống, đòi hỏi các trường dữ liệu, giao thức truyền thông và mô hình thông tin chuyên biệt để phản ánh chính xác thông tin của thiết bị cần quản lý.
1.1.2 Mục tiêu của quản lý mạng
Quản lý tài nguyên và dịch vụ hệ thống bao gồm việc điều khiển, giám sát, cập nhật và báo cáo tình trạng hệ thống, cũng như cấu hình thiết bị và các dịch vụ mạng một cách hiệu quả.
Đơn giản hóa quản lý hệ thống là nhiệm vụ quan trọng giúp trích xuất thông tin dễ hiểu cho người quản lý, đồng thời hệ thống cần có khả năng tương tác hiệu quả với các đối tượng quản lý cấp cao.
Cung cấp dịch vụ tin cậy là yếu tố quan trọng để đảm bảo mạng hoạt động với chất lượng dịch vụ tốt nhất và giảm thiểu thời gian chết Các hệ thống quản lý phân tán cần phải có khả năng phát hiện và khắc phục lỗi kịp thời Hơn nữa, quản lý mạng cũng phải đảm bảo an toàn trước mọi mối đe dọa tấn công.
Để duy trì giá thành mạng hiệu quả, hệ thống quản lý cần xác định rõ tài nguyên và người sử dụng mạng Việc theo dõi và báo cáo tất cả nguồn tài nguyên và dịch vụ của hệ thống là cần thiết để đánh giá hiệu quả sử dụng mạng.
1.1.3 Thành phần chính của quản lý mạng
Hệ thống quản lý mạng có 3 thành phần chính:
- Trung tâm quản lý bao gồm quản trị viên mạng và các cơ sở của họ
- Thiết bị được quản lý là thiết bị mạng, bao gồm cả phần mềm của nó, được điều khiển bởi trung tâm quản lý
Giao thức quản lý mạng là chính sách giữa trung tâm quản lý và các thiết bị được quản lý, cho phép trung tâm nắm bắt trạng thái của các thiết bị này.
1.1.4 Chức năng của quản lý mạng
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 liên tục thu thập thông tin về trạng thái của các tài nguyên quản lý, sau đó chuyển đổi thông tin này thành các sự kiện và cảnh báo khi các tham số của tài nguyên mạng vượt quá ngưỡng cho phép.
Chức năng quản lý đảm nhận nhiệm vụ thực hiện các yêu cầu từ người quản lý hoặc các ứng dụng quản lý, nhằm thay đổi trạng thái hoặc cấu hình của tài nguyên được quản lý.
Chức năng báo cáo chuyển đổi và hiển thị thông tin quản lý dưới dạng dễ đọc, giúp người quản lý có thể đánh giá, tìm kiếm và tra cứu thông tin một cách hiệu quả.
Tìm hiểu chung về giao thức SNMP
Giao thức quản lý mạng đơn giản SNMP là tiêu chuẩn phổ biến trong các mạng TCP/IP, cho phép quản lý thiết bị như máy trạm, máy chủ, bộ định tuyến và hub từ một máy tính trung tâm SNMP sử dụng các hệ thống quản lý và đại diện quản lý (Agent) để thực hiện các dịch vụ quản lý Vào đầu năm 1988, Tổ chức kiến trúc Internet IAB đã giới thiệu một khung quản lý cho internet dựa trên TCP/IP, bao gồm ba thành phần chính.
- Một khung khái niệm để định nghĩa các luật mô tả thông tin quản lý gọi là cấu trúc thông tin quản lý SMI (Structure of Management Information);
- Một cơ sở dữ liệu ảo chứa các thông tin về thiết bị được quản lý gọi là cơ sở thông tin quản lý MIB;
Giao thức quản lý mạng đơn giản (SNMP) là một giao thức truyền thông thiết yếu, cho phép trao đổi thông tin giữa một khối quản lý và các thiết bị được quản lý SNMP đóng vai trò quan trọng trong việc giám sát và quản lý hiệu suất của mạng, giúp các quản trị viên theo dõi và điều chỉnh hoạt động của các thiết bị trong hệ thống.
Trong đó, giao thức SNMP được sử dụng để:
Cấu hình thiết bị từ xa cho phép thông tin được gửi đến máy chủ quản lý thông qua mạng thông tin quản lý, nhằm thực hiện các tác vụ cấu hình thiết bị Chẳng hạn, quản trị mạng có thể sử dụng SNMP để ngắt kết nối trên các giao diện router hoặc kiểm tra tốc độ của card mạng.
Giám sát hiệu năng mạng thông qua SNMP cho phép theo dõi tốc độ xử lý của thiết bị và thông lượng mạng, đồng thời thu thập thông tin về tỷ lệ truyền gói tin thành công và thất bại tại các phần tử mạng.
Phát hiện lỗi mạng và các truy cập không hợp lệ là rất quan trọng Các cảnh báo được cấu hình trên thiết bị giúp phát hiện các sự kiện vượt ngưỡng cho phép Giao thức SNMP cho phép chuyển thông tin cảnh báo đến hệ thống quản lý, từ đó đưa ra các giải pháp phù hợp để khắc phục sự cố.
SNMP (Simple Network Management Protocol) được sử dụng để giám sát mức độ sử dụng và hiệu suất của thiết bị mạng, đồng thời theo dõi sự chiếm dụng của người dùng, nhóm người dùng hoặc kiểu dịch vụ.
Giao thức SNMP hoạt động dựa trên cơ chế yêu cầu - đáp ứng bất đồng bộ, kết hợp với cơ chế thăm dò và bẫy gián tiếp tại thiết bị được quản lý.
Giao thức quản lý mạng đơn giản SNMP bao gồm ba phiên bản: SNMPv1, SNMPv2 và SNMPv3 SNMPv1 là phiên bản đơn giản và hiệu quả, nhưng có một số hạn chế đã dẫn đến sự phát triển của SNMPv2 Mặc dù SNMPv2 đã khắc phục nhiều lỗi của SNMPv1, nhưng vẫn không giải quyết được các vấn đề bảo mật như bảo vệ dữ liệu, ngăn chặn giả mạo và truy cập trái phép vào cơ sở dữ liệu quản lý Do đó, SNMPv3 đã được cải tiến với các tính năng bảo mật bổ sung như kiểm soát truy cập, xác thực và mã hóa dữ liệu quản lý.
SNMPv1 là tiêu chuẩn đầu tiên của SNMP trong quản lý mạng internet, bao gồm ba nhóm điều hành chính: chỉ đọc (read-only), ghi (read-write) và bẫy (trap) An ninh trong SNMPv1 dựa vào mật khẩu, cho phép bất kỳ ứng dụng nào truy cập thông tin quản lý thiết bị, dẫn đến việc vấn đề an ninh chưa được chú trọng đúng mức.
SNMPv2 được xây dựng dựa trên nền tảng của SNMPv1, với định nghĩa bản tin tương tự Phiên bản này mở rộng các nhóm đối tượng thiết bị quản lý nhằm khắc phục những hạn chế của SNMPv1.
SNMPv3 hoàn toàn tương thích với SNMPv1 và SNMPv2, đồng thời tích hợp các tính năng bảo mật và khung quản lý mới từ SNMPv2 Dưới đây là danh sách các tiêu chuẩn bổ sung cho các phiên bản của SNMP.
- Để cải thiện khả năng của SNMP trong việc cấu hình mạng và thiết bị, RFC 3512
Năm 2003, đã đưa ra hướng dẫn cấu hình chi tiết liên quan đến các nhà cung cấp thiết bị mạng, các nhà phát triển ứng dụng quản lý, cùng với những vấn đề liên quan đến yêu cầu và phát triển công nghệ mạng.
RFC 3781 (2004) defines the Structure of Management Information for the Next Generation (SMIng), aimed at enhancing the efficiency of network information processing in modern environments.
Để nâng cao tính bảo mật cho SNMP, RFC 3826 (2004) đã giới thiệu giao thức mã hóa đối xứng, hỗ trợ cho các giao thức trong mô hình bảo mật người dùng (User -based Security Model - UMS) dành cho SNMPv3.
RFC4088 (2005) định nghĩa lược đồ URI (Uniform Resource Identifiers) nhằm mở rộng khả năng quản lý SNMP tới các thiết bị không hỗ trợ quản lý SNMP.
- Để tích hợp quản lý trong các mạng không dây dựa trên IEEE 802.xx, RFC 4789
(2006) mô tả cách thức các bản tin SNMP truyền trực tiếp trên mạng IEEE 802.xx;
Quản lý truyền thông trong SNMP
Hai phương thức giám sát mạng
Trước khi khám phá giao thức SNMP, chúng ta cần tìm hiểu về hai phương thức giám sát mạng cơ bản là Poll và Alert Đây là hai kỹ thuật quan trọng trong giám sát hệ thống, và nhiều giao thức cũng như phần mềm được phát triển dựa trên hai phương pháp này.
SNMP Agent SNMP NMS - Network
12 này, trong đó có SNMP Việc hiểu được hai phương thức giúp chúng ta dễ dàng hơn trong việc tìm hiểu nguyên tắc hoạt động của giao thức SNMP
Nguyên tắc hoạt động của hệ thống giám sát là Trung tâm giám sát (Manager) sẽ thường xuyên yêu cầu thông tin từ thiết bị cần giám sát (Device) Thiết bị sẽ không tự động phản hồi nếu không có yêu cầu từ Manager, nhưng khi được hỏi, Device phải cung cấp thông tin Nhờ vào việc hỏi liên tục, Manager sẽ luôn nhận được thông tin mới nhất từ Device.
Hình 2 : Hình minh họa cơ chế Poll
Nguyên tắc hoạt động của hệ thống là khi có sự kiện xảy ra trong thiết bị, thiết bị sẽ tự động gửi thông báo cho quản lý, được gọi là Alert Quản lý không yêu cầu thông tin định kỳ từ thiết bị.
Thiết bị chỉ gửi thông báo khi có sự kiện quan trọng, không cung cấp thông tin thay đổi thường xuyên và sẽ không phát ra cảnh báo nếu không có sự kiện nào diễn ra.
Hình 3:Hình minh họa cơ chế Alert
2.1.3 So sánh hai phương thức Poll và Alert
Dựa vào khái niệm đã nêu, hai phương thức này có cơ chế hoạt động hoàn toàn khác nhau, mỗi phương thức mang đến những ưu và nhược điểm riêng Đối với phương thức Poll, ưu điểm nổi bật là
Bạn có thể chủ động thu thập thông tin cần thiết từ các đối tượng mà bạn quan tâm, mà không cần phải lấy những thông tin không liên quan từ các nguồn khác.
- Có thể lập bảng trạng thái tất cả các thông tin của Device sau khi Poll qua một lượt các thông tin đó
- Chỉ cần cài đặt tại Manager để trỏ đến tất cả các Device Có thể dễ dàng thay đổi một Manager khác
Nếu tần suất Poll thấp, thời gian chờ giữa hai chu kỳ Poll dài sẽ khiến Manager chậm cập nhật các thay đổi của Device Điều này có nghĩa là khi thông tin của Device đã thay đổi nhưng chưa đến lượt Poll tiếp theo, Manager vẫn sẽ giữ lại những thông tin cũ.
Khi thiết bị có sự thay đổi và sau đó trở lại trạng thái ban đầu trước khi đến lượt Poll tiếp theo, Manager có thể bỏ sót các sự kiện Phương thức Alert mang lại ưu điểm trong việc phát hiện kịp thời các thay đổi này.
Khi sự kiện xảy ra, Device sẽ ngay lập tức gửi thông báo Alert đến Manager, giúp Manager luôn nắm bắt thông tin mới nhất và cập nhật nhanh chóng tình trạng của Device.
- Manager sẽ được thông báo mỗi khi có sự kiện xảy ra ở Device, do đó Manager không bỏ sót bất kỳ sự kiện nào
Tất cả các sự kiện diễn ra đều được gửi đến Manager, vì vậy Manager cần có cơ chế để lọc ra những sự kiện quan trọng Ngoài ra, thiết bị cũng cần thiết lập chế độ chỉ gửi những sự kiện cần thiết để tối ưu hóa quy trình quản lý.
- Nếu không có event gì xảy ra thì Manager không biết được trạng thái của Device
- Phải cài đặt tại từng Device để trỏ đến Manager Khi thay đổi Manager thì phải cài đặt lại trên tất cả Device để trỏ về Manager mới
Khi đường truyền bị gián đoạn và thiết bị thay đổi, hệ thống vẫn gửi cảnh báo cho người quản lý, nhưng cảnh báo này không đến được tay họ Ngay cả khi đường truyền được khôi phục, người quản lý vẫn không thể nắm bắt được những sự kiện đã xảy ra trước đó.
Hai phương thức Poll và Alert có những ưu điểm và nhược điểm khác nhau Vì vậy, trong nhiều trường hợp, việc kết hợp cả Poll và Alert sẽ mang lại hiệu quả tối ưu nhất.
Sơ lược về giao thức UDP
2.2.1 Giao thức UDP là gì?
UDP (User Datagram Protocol) là một trong những giao thức cốt lõi của giao thức TCP/IP
Giao thức UDP cho phép các chương trình trên mạng máy tính gửi dữ liệu ngắn gọi là datagram đến máy khác Mặc dù UDP không đảm bảo tính tin cậy và thứ tự truyền nhận, dẫn đến khả năng mất gói hoặc nhận gói không theo thứ tự, nhưng nó lại nhanh và hiệu quả, đặc biệt cho những ứng dụng yêu cầu kích thước nhỏ và thời gian phản hồi khắt khe.
2.2.2 Cách thức hoạt động của UDP
Giao thức UDP hoạt động tương tự như TCP nhưng không thực hiện kiểm tra lỗi và quá trình bắt tay ba bước Khi sử dụng UDP, các gói tin được gửi ngay lập tức mà không cần chờ xác nhận từ bên nhận, giúp tăng tốc độ truyền tải Tuy nhiên, nếu bên nhận bỏ lỡ gói tin, chúng sẽ không được gửi lại, dẫn đến việc mất dữ liệu Điều này cho phép thiết bị giao tiếp nhanh hơn, mặc dù có thể gây ra mất mát thông tin.
Hình 4:Minh họa quá trình truyền gói tin trong UDP
2.2.3 Giao thức UDP trong SNMP
SNMP, hay Simple Network Management Protocol, là một giao thức quản lý mạng hiệu quả, được thiết kế để đảm bảo sự đơn giản và tốc độ nhanh chóng Với yêu cầu này, giao thức UDP trở thành lựa chọn tối ưu nhờ vào tính đơn giản và hiệu suất cao của nó.
UDP cho phép truyền tải dữ liệu nhanh chóng mà không cần thiết lập kết nối trước, khác với các giao thức yêu cầu quá trình bắt tay ba bước Hơn nữa, các gói tin từ SNMP Manager được gửi đi với cơ chế hiệu quả, giúp tối ưu hóa quá trình truyền thông.
UDP cho phép thử lại trong trường hợp gói tin bị mất, do đó không cần phải đảm bảo gói tin sẽ đến đích ngay lần gửi đầu tiên Nhờ vào tính năng này, UDP mang lại tốc độ nhanh hơn và sự đơn giản trong việc quản lý và giám sát các SNMP Agent so với TCP.
Các thành phần chính trong giao thức SNMP
Hệ thống quản lý mạng dựa trên SNMP sử dụng kiến trúc phổ biến là kiến trúc manager-agent.
Khối quản lý là một phần mềm quản lý vận hành có thể hoạt động trên một hoặc nhiều máy tính chủ Tùy vào yêu cầu và phạm vi sử dụng, khối quản lý có khả năng quản lý cả mạng con lẫn mạng chung.
Khối quản lý thường được gọi là trạm quản lý mạng (NMS)
Một NMS chịu trách nhiệm thăm dò và nhận bẫy từ các Agent trong mạng
Khối quản lý xử lý các yêu cầu quản lý được chuyển tới từ các Agent hoặc đưa ra các yêu cầu tới các đại lý Agent
Agent là một thực thể trong nút mạng bị quản lý nhằm hỗ trợ cho Manager thực hiện các tác vụ quản lý thông qua giao thức SNMP
Agent có vai trò quan trọng trong việc thu thập thông tin quản lý và truyền đạt đến khối quản lý, phục vụ cho hệ thống quản lý mạng Đồng thời, Agent cũng chuyển đổi các yêu cầu quản lý thành các tác vụ cụ thể để thiết bị chịu quản lý thực hiện.
SNMP không chỉ quản lý các thiết bị tương thích qua Agent mà còn có khả năng quản lý các thiết bị không tương thích thông qua giải pháp giao thức quản lý độc quyền.
Agent có thể tự khởi phát các cảnh báo của thiết bị tới Manager khi có các các sự kiện vượt ngưỡng bằng các bản tin bẫy (TRAP)
2.3.3 Cơ sở thông tin quản lý – MIB (Management Information Base)
Mỗi thiết bị quản lý đều có cấu hình, trạng thái và thông tin thống kê, định nghĩa chức năng và khả năng vận hành của nó Những thành phần dữ liệu này được xem là cơ sở thông tin quản lý của thiết bị.
Cơ sở thông tin quản lý MIB là một cơ sở dữ liệu quan trọng, lưu trữ các thuộc tính quản lý của thiết bị Thông tin quản lý được truy cập và sử dụng thông qua các lệnh từ Manager, và được thực hiện bởi các Agent.
Ta sẽ cùng tìm hiểu kĩ hơn về cơ sở thông tin quản lý MIB ở phần sau
2.3.4 Mã nhận diên đối tượng – OID (Object Identifier)
OID, hay Object Identifier, là mã nhận diện duy nhất cho các đối tượng được quản lý, được xác định trong các tệp MIB.
OID được biểu diễn bằng các chuỗi số phân tách bằng dấu chấm
OID đóng vai trò quan trọng trong MIB, nơi mà các OID được tổ chức theo cấu trúc cây có thứ bậc, với các số nhận dạng biến riêng cho từng OID Cấu trúc này bao gồm tất cả các tính năng quản lý của các sản phẩm được phân loại Mỗi nhánh của cây có một số và một tên, trong khi mỗi điểm được xác định bằng con đường hoàn chỉnh từ ngọn cây đến điểm đó.
Ta sẽ cùng tìm hiểu sâu hơn về OID trong những phần sau.
Nguyên lý hoạt động của SNMP
SNMP hoạt động theo cấu trúc Manager – Agent trong một mô hình đồng bộ, sử dụng hai phương thức cơ bản là Poll và Alert Giao tiếp được khởi tạo bởi SNMP Manager và SNMP Agent gửi phản hồi Các lệnh và thông báo thường được truyền qua giao thức UDP, được gọi là đơn vị dữ liệu giao thức (PDU).
GET là một yêu cầu được tạo ra bởi SNMP Manager, nhằm gửi đến một Agent để truy xuất giá trị của một biến số cụ thể, được xác định bởi OID trong MIB.
RESPONSE: Agent sẽ gửi phản hồi cho SNMP Manager
GETNEXT: SNMP Manager sẽ gửi getnext đến Agent để lấy các giá trị của OID tiếp theo trong hệ thống phân cấp của MIB
GETBULK: SNMP Manager sẽ gửi getbulk cho Agent để có được các bảng dữ liệu lớn bằng cách thực hiện nhiều lệnh getbulk
SET: Được gửi bởi SNMP Manager cho Agent để từ đó đưa ra các cấu hình hoặc lệnh
TRAP là một cảnh báo không đồng bộ được gửi từ Agent đến trình quản lý SNMP, nhằm thông báo về một sự kiện quan trọng, chẳng hạn như lỗi hoặc sự cố đã xảy ra.
SNMP hoạt động theo cách thức cụ thể và trong các phần tiếp theo, chúng ta sẽ đi sâu vào từng phiên bản của SNMP để nắm rõ hơn về cơ chế hoạt động của nó.
MIB và OID
MIB (Cơ sở dữ liệu quản lý)
MIB (Management Information Base) là một tệp văn bản được định dạng trong trình quản lý SNMP, có chức năng thu thập và tổ chức thông tin theo dạng phân cấp Trình quản lý SNMP sử dụng dữ liệu từ MIB để dịch và giải thích các tin nhắn trước khi gửi đến người dùng cuối.
Tài nguyên trong MIB, hay còn gọi là các đối tượng được quản lý, là trung tâm dữ liệu bên trong thiết bị MIB lưu trữ tất cả thông tin về hiệu suất, giúp truy cập dễ dàng khi sử dụng các công cụ giám sát mạng.
3.2.2 Cấu trúc thông tin quản lí MIB
Cấu trúc thông tin quản lý SMI thiết lập một cơ cấu tổ chức cho thông tin quản lý, nhận diện các kiểu dữ liệu trong MIB và quy định cách mô tả cũng như đặt tên tài nguyên trong cơ sở dữ liệu MIB Bên cạnh đó, SMI định nghĩa các quy tắc đặt tên đối tượng và mã hóa các đối tượng trong hệ thống quản lý SMI được chia thành ba phần chính: định nghĩa module, định nghĩa đối tượng và định nghĩa thông báo.
SMI +Cung cấp kỹ thuật tiêu chuẩn để định nghĩa cấu trúc của MIB đặc biệt
+Cung cấp kỹ thuật tiêu chuẩn để định nghĩa các đối tượng đơn lẻ, bao gồm cú pháp và giá trị của mỗi đối tượng
+Cung cấp kỹ thuật tiêu chuẩn để mã hoá các giá trị đối tượng a, SMIv1
MIB (Management Information Base) là một cấu trúc dữ liệu định nghĩa các đối tượng được quản lý, nhằm quản lý các thiết bị không chỉ riêng TCP/IP RFC 1155 mô tả cấu trúc của tệp MIB, được gọi là SMI (Structure of Management Information) Sau này, cấu trúc MIB đã được mở rộng thành SMI phiên bản 2, trong khi phiên bản trong RFC 1155 được gọi là SMIv1.
Mỗi đối tượng bao gồm 3 phần : Name, Syntax và Encoding
Tên là định danh của đối tượng, có kiểu OBJECT IDENTIFIER OBJECT IDENTIFIER là chuỗi các số nguyên thể hiện các nút trong một cây, từ gốc đến ngọn.
Gốc (root node) trong MIB không không có tên Dưới root là 3 node con :
- ccitt(0) : do CCITT quản lý (Consultative Committee for International Telephone and Telegraph)
- iso(1) : do tổ chức ISO quản lý (International Organization for Standardization)
- joint-iso-ccitt(2) : do cả ISO và CCITT quản lý
Under the ISO node (1), the ISO organization has established a node for other organizations, labeled as org (3) Within org (3), there are several sub-nodes, one of which is specifically designated for the US Department of Defense, referred to as dod (6).
Bộ Quốc phòng Mỹ được xem là nơi khởi nguồn của mạng Internet, với một node duy nhất dành cho cộng đồng Internet hiện nay, đó là node internet Tất cả các thành phần thuộc về cộng đồng Internet đều nằm dưới iso.org.dod.internet, trong khi mọi đối tượng của các thiết bị TCP/IP đều bắt đầu với tiền tố 1.3.6.1, trong đó dấu chấm đầu tiên biểu thị rằng iso là nhánh con của root, và root không có tên.
Syntax describes the type of an object and is derived from ASN.1, although not all types are supported SMIv1 exclusively supports five primitive types from ASN.1, along with six defined types, which include INTEGER, OCTET-STRING, OBJECT-IDENTIFIER, NULL, and SEQUENCE Additionally, NetworkAddress represents an Internet address (IP).
+ IpAddress : kiểu địa chỉ internet 32-bit (ipv4), gồm 4 octet liên tục
+ Counter : kiểu số nguyên không âm 32-bit và tăng đều, khi số này tăng đến giới hạn thì phải quay lại từ 0 Giá trị tối đa là 2^32-1 (4294967295)
+ Gauge : kiểu số nguyên không âm 32-bit, có thể tăng hoặc giảm nhưng không tăng quá giá trịt ối đa 2^32-1
TimeTicks là kiểu số nguyên không âm, biểu thị khoảng thời gian đã trôi qua tính bằng phần trăm giây kể từ một thời điểm cụ thể Ví dụ, nếu hệ thống đã hoạt động được 1000 giây kể từ khi khởi động, giá trị sysUpTime sẽ là 1000.
+ Opaque : kiểu này cho phép truyền một giá trịcó kiểu tùy ý nhưng được đóng lại thành từng OCTET-STRING theo quy cách của ASN.1
Encoding Là luật mã hóa cơ bản tuân thủ theo ASN.1 gồm có một số kiểu cơ bản sau:
Kiểu dữ liệu OBJECT-TYPE
In SMIv1, the OBJECT-TYPE consists of fields such as SYNTAX, ACCESS, STATUS, and DESCRIPTION In contrast, SMIv2 expands on this by including additional fields: SYNTAX, UNITS, MAX-ACCESS, STATUS, DESCRIPTION, REFERENCE, INDEX, AUGMENTS, and DEFVAL.
Thông báo không theo yêu cầu được sử dụng để truyền tải thông tin quản lý mạng, như bản tin TrapPDU hoặc InformRequestPDU trong SNMPv2, tự động gửi khi có sự kiện xảy ra mà không cần yêu cầu Các thông báo này được định nghĩa trong MIB và có cấu trúc bao gồm các mệnh đề nhất định.
The OBJECT refers to an ordered list of items related to notifications For example, if there are notification messages for four interfaces of a device, the OBJECT must include the ifIndex of all four interfaces.
- STATUS : mang một trong 3 giá trị “current”, “obsolete” hoặc “depricated”
- DESCRIPTION : dòng text mô tả ý nghĩa của notification
- REFERENCE : mô tả các tài liệu có liên quan đến định nghĩa của notification, REFERENCE không bắt buộc phải có b, MIB-2
Cơ sở thông tin quản lý MIB là một loại cơ sở dữ liệu thiết yếu cho việc quản lý thiết bị trong mạng truyền thông, bao gồm các đối tượng quản lý được sắp xếp theo cấu trúc hình cây có thứ bậc MIB sử dụng nhận dạng đối tượng theo SMI để xác định các mục trong cơ sở dữ liệu Hiện tại, có hai phiên bản MIB được phát triển là MIB-I và MIB-II, trong đó MIB-II là sự mở rộng của MIB-I MIB-I, được công bố vào năm 1990 theo RFC 1156, phân tách đối tượng quản trị thành tám nhóm: System, Interfaces, Address Translation, IP, ICMP, TCP, UDP, và EGP Năm 1991, MIB-II được giới thiệu theo RFC 1213, bổ sung thêm một số đối tượng và nhóm, phân tách đối tượng quản trị thành 10 nhóm.
Các kiểu dữ liệu mới được định nghĩa trong mib-2 gồm :
+ Display String: kế thừa từ kiểu OCTET STRING nhưng chỉ bao gồm các ký tự in được (printable characters) và dài không quá 255 ký tự
+ Physical Address : giống kiểu OCTET STRING, được dùng để biểu diễn địa chỉ vật lý của thiết bị
MIB II (RFC1213) là một mô hình cây được thiết kế nhằm quản lý các nhóm giao thức trong mô hình TCP/IP và mạng Internet, trong đó nhánh Internet được phân chia thành nhiều phần khác nhau.
4 nhóm lớn: Thư mục, quản lý, thực nghiệm và vùng chỉ số cá nhân
- Nhóm thư mục (Directory): Hỗ trợ các thư mục trong OSI X.500;
- Nhóm quản lý (Management): Gồm các đối tượng của Internet;
- Nhóm thực nghiệm (Experimental): Sử dụng cho quá trình thực nghiệm trước khi chuyển sang nhóm quản lý;
- Nhóm riêng (Private): Gồm các đặc tả của các nhà cung cấp thiết bị và các vùng gia tăng giá trị
Việc đánh số theo thứ tự hình cây giúp truy cập thông tin trạng thái chính xác nhưng phức tạp do sự khác biệt trong trạng thái của cùng một đối tượng ở các thời điểm khác nhau Phương pháp chỉ dẫn theo bảng hỗ trợ cho các đối tượng có sự thay đổi, cho phép Agent bổ sung hoặc xóa các mục mới Để truy cập thông tin quản lý MIB, chương trình quản lý sử dụng các lệnh SNMP như GET và GET-NEXT để trích xuất dữ liệu Agent sẽ phản hồi các lệnh này bằng các cặp biến số Lệnh GET chỉ định tập hợp các biến số bị quản lý qua đặc điểm nhận dạng đường dẫn, trong khi GET-NEXT di chuyển con trỏ trên cây theo thứ tự từ nút cha tới nút con, từ trái qua phải Đặc điểm nhận dạng đường có thể được tạo ra bằng cách ghép đường mẹ với nhãn của nút, ví dụ sysDescr={system 1}.
OID (Định danh đối tượng)
Trong MIB, có nhiều đối tượng được quản lý, mỗi đối tượng được xác định bởi một OID (Object Identifier) duy nhất OID hoạt động như một địa chỉ, giúp phân biệt các thiết bị trong hệ thống phân cấp MIB Nó được sử dụng để chỉ ra các đặc điểm riêng biệt và điều hướng qua các biến trên thiết bị kết nối Giá trị của các OID có thể là văn bản, số hoặc bộ đếm Có hai loại đối tượng được quản lý chính trong hệ thống này.
- Vô hướng : Một đối tượng duy nhất như tên thiết bị được xác định bởi nhà cung cấp
- Bảng : Đối tượng có nhiều kết quả OID cho một OID
MIB tổ chức các OID theo cấu trúc cây phân cấp, với mỗi OID có một số nhận dạng biến riêng biệt Cấu trúc này bao gồm tất cả các tính năng quản lý của các sản phẩm được phân loại Mỗi nhánh trong cây được gán một số và tên, trong khi mỗi điểm được xác định bằng con đường hoàn chỉnh từ ngọn cây đến điểm đó.
Chúng thường được miêu tả như một cái cây Một OID được định dạng trong một chuỗi số như dưới đây: 1.3.6.1.4.868.2.4.1.2.1.1.1.3.3562.3
Mỗi con số trong SNMP đại diện cho một giá trị riêng biệt, cho phép hệ thống nhanh chóng tạo ra thông tin liên quan về dữ liệu nhận được.
Bảng dưới đây thể hiện cách các số OID khác nhau đại diện cho các giá trị như tên và mô tả của thiết bị mà chúng đang giao tiếp.
Hầu hết thời gian OID sẽ được cung cấp bởi nhà cung cấp mà bạn đã mua thiết bị của mình
Hình 9:Ví dụ về cây OID
Tại sao cần có MIB và OID
Một trong những thành phần quan trọng nhất của hệ thống SNMP là Định danh Đối tượng (OID) và Cơ sở Thông tin Quản lý (MIB) SNMP tương tác qua mạng bằng cách sử dụng các đối tượng này để quản lý và giám sát thiết bị.
Một đối tượng trong mạng có thể là bất kỳ thứ gì chứa thông tin về thành phần mạng hoặc thiết bị, ví dụ như OID đo lường tính khả dụng Thiết bị có thể ở trạng thái ngoại tuyến hoặc trực tuyến; tùy thuộc vào trạng thái này, thiết bị sẽ gửi giá trị tương ứng cho tác nhân SNMP Giá trị này sau đó được chuyển đến trạm quản lý để thực hiện các hành động tiếp theo.
Các OID được tổ chức một cách có trật tự và tuân theo một sơ đồ nhất định, tương tự như một cấu trúc phân cấp hay cây thư mục trong hệ thống tệp của bạn.
Mỗi cấp độ này của hệ thống phân cấp đều được đánh số, như chúng ta đã thấy trong bảng trên
Trình quản lý SNMP giúp bạn xem cây OID, cho phép bạn hiểu cấu trúc mạng trong môi trường của mình Mặc dù không thường xuyên cần thiết, việc này có thể mang lại kiến thức bổ ích khi bạn muốn kiểm tra cách máy chủ SNMP đánh giá bố cục mạng của bạn.
MIB có vai trò quan trọng trong việc kết nối giữa trạm quản lý và các phản hồi SNMP, mặc dù chúng có sự khác biệt Bạn có thể hình dung MIB như một lớp trung gian giúp truyền tải thông tin giữa hai bên.
SNMP sẽ không phát huy hiệu quả nếu dữ liệu không được phân tích cú pháp chính xác ở máy chủ quản lý, do đó MIB đóng vai trò quan trọng trong quy trình SNMP Thêm vào đó, tất cả các thiết bị SNMP đều tạo ra MIB-2, một tập hợp các đối tượng tiêu chuẩn hóa có thể được giám sát bởi trạm quản lý.
Trên thực tế, hầu hết các đối tượng hệ thống như sử dụng CPU và sử dụng bộ nhớ cũng được tìm thấy trong nhóm này
Các nhà sản xuất có khả năng lưu trữ thông tin tùy chỉnh trong MIB, bao gồm các dữ liệu quan trọng như nhiệt độ hệ thống và thống kê của bộ điều khiển quạt, chẳng hạn như tốc độ quạt Thông tin này rất cần thiết vì thường không có sẵn trong các nhóm MIB-2, buộc các nhà sản xuất phải tự phát triển giải pháp này.
Các tệp MIB tùy chỉnh cung cấp thông tin bổ sung cho giải pháp giám sát, cho phép truy vấn thiết bị và thu thập dữ liệu ở định dạng dễ đọc, từ đó hiển thị thông tin chính xác.
Do đó, các nhà sản xuất cần hiển thị thông tin đối tượng tùy chỉnh của họ dưới một phần khác của cây OID được tìm thấy trong MIB-2.
Các phiên bản của SNMP
SNMPv1
SNMPv1 (SNMP phiên bản 1) là phiên bản đầu tiên của giao thức SNMP Nó được định nghĩa trong RFC 1065 đến 1067 và 1155 đến 1157 là một chuẩn của IETF
SNMPv1 hỗ trợ kiến trúc bộ đếm 32bit
4.1.1 Cấu trúc bản tin SNMPv1
SNMP v1 hoạt động trên UDP (User Datagram Protocol), IP (Internet Protocol), CLNS (OSI Connectionless Network Service), DDP (AppleTalk Datagram-Delivery Protocol) và IPX (Novell Internet Packet Exchange)
Hình 10:Cấu trúc bản tin SNMPv1
Cấu trúc bản tin SNMPv1 gồm 2 phần chính là:
− Message header: Chứa 2 trường Version number và Community string
• Version number: Chỉ định phiên bản SNMP
• Community string: Cung cấp môi trường truy cập cho nhóm NMS trong cộng đồng được cho là trong cùng một miền quản trị
− PDU: Chứa lệnh cụ thể toán hạng liên quan đến các giao dịch Các trường PDU có độ dài thay đổi
• PDU types: Chỉ định loại PDU được truyền
Mã yêu cầu (Request ID) là một số được sử dụng để yêu cầu trả lời từ thiết bị SNMP Mã này được tạo ra bởi thiết bị gửi yêu cầu và sẽ được thực thể SNMP phản hồi, sau đó sao chép vào trường này trong GetResponse-PDU.
• Error status: Cho biết số lỗi và loại lỗi
Chỉ số lỗi: Khi trạng thái lỗi không bằng 0, trường này sẽ chứa một con trỏ xác định đối tượng gây ra lỗi Trong mọi yêu cầu, trường này luôn có giá trị bằng không.
Biến ràng buộc là một tập hợp các cặp tên-giá trị xác định trong MIB, xuất hiện trong PDU Đặc biệt, trong trường hợp của SetRequest-PDU hoặc GetResponse-PDU, chúng chứa các giá trị tương ứng của các cặp này.
4.1.2 Các kiểu dữ liệu và câu lệnh trong SNMPv1
SNMPv1 có 5 lệnh SNMP được sử dụng: GetRequest, GetNextRequest, SetRequest, GetResponse và Trap để điều khiển giữa SNMP Manager và Agent
Bản tin/ Phương thức Mô tả tác dụng
GetRequest được sử dụng giữa manager và agent để truy xuất một biến MIB đơn hoặc danh sách các biến MIB từ agent mục tiêu, với hai địa chỉ: địa chỉ của manager hoặc agent và địa chỉ của biến hoặc đối tượng Tương tự, GetNextRequest cũng hoạt động như GetRequest, nhưng nó phụ thuộc vào agent để xác định mục tiếp theo trong MIB Các biến lưu trữ trong thiết bị được coi là đối tượng quản lý, cho phép mở rộng và đọc các biến một cách tuần tự.
SetRequest Được gửi đi từ manager tới agent như
Get Request và GetNextRequest Nó tìm kiếm thông tin mở rộng trong bảng MIB và yêu cầu agent đặt giá trị cho
31 các đối tượng quản lí hoặc các đối tượng trong câu lệnh
GetResponse là lệnh từ agent gửi đến manager, cung cấp cơ chế phản hồi cho các lệnh như GetRequest, GetNextRequest và SetRequest Lệnh này chứa thông tin từ một số trưởng chức năng, cho phép thực hiện phản hồi đối với các lệnh đã được nhận trước đó.
Trap độc lập, không phụ thuộc vào yêu cầu từ quản lý hay đại lý Cung cấp thông tin liên quan đến các điều kiện đã được xác định trước và chuyển giao từ đại lý tới quản lý.
Bảng 1: Các kiểu dữ liệu và câu lệnh trong SNMPv1
SNMPv1, phiên bản đầu tiên của giao thức SNMP, không áp dụng biện pháp mã hóa hay xác thực nào, mà chỉ sử dụng Community string gửi dưới dạng văn bản rõ ràng Mặc dù điều này giúp SNMPv1 dễ sử dụng, nhưng cũng là điểm yếu lớn khi dữ liệu không được bảo vệ, dẫn đến nguy cơ mất mát và dễ dàng bị đánh cắp bởi hacker.
SNMPv2
SNMPv2, được phát triển từ SNMPv1 và ra mắt vào năm 1993, hiện được coi là chuẩn chuyển tiếp giữa SNMPv1 và SNMPv3 Giống như phiên bản trước, SNMPv2 cũng được định nghĩa trong SMI (Structure of Management Information) và mang lại nhiều cải tiến so với SNMPv1 Các tiêu chuẩn của SNMPv2 được quy định trong các tài liệu RFC 3416, RFC 3417, và RFC 3418.
SNMP v2 cung cấp khả năng liên điều hành giữa các quản lý, cùng với hai đơn vị dữ liệu giao thức mới, cho phép quản lý mạng phân tán hiệu quả trong một trạm và gửi báo cáo tới các trạm khác.
SNMP v2 sử dụng bộ đếm 64bit (hoặc 32 bit) để duy trì trạng thái của các liên kết và giao diện
4.2.1 Cấu trúc bản tin SNMP
Error Index Or Max - Reps
Hình 11:Cấu trúc dạng bản tin SNMP v2
− Trường phiên bản (Version) thể hiện phiên bản của giao thức SNMP v2
Trường Community là một chuỗi mật khẩu xác thực cho toàn bộ quá trình truy xuất và thay đổi dữ liệu SNMP PDU bao gồm các loại điều hành như get và set, cho phép người điều hành gửi nhiều bản tin đồng thời.
Trường đơn vị dữ liệu giao thức (PDU) bao gồm các thành phần quan trọng như kiểu đơn vị dữ liệu giao thức, nhận dạng yêu cầu (Request ID), trạng thái lỗi, chỉ số lỗi, cùng với các giá trị và đối tượng liên quan.
• PDU types: Chỉ định loại PDU được truyền
Mã yêu cầu (Request ID) là một số được sử dụng để yêu cầu trả lời từ thiết bị SNMP Số này được tạo ra bởi thiết bị gửi yêu cầu và được thực thể SNMP sao chép vào trường này trong GetResponse-PDU.
• Error status/Non-Repeaters(GetBulk): Cho biết số lỗi và loại lỗi/Lặp lại đối tượng ở đầu danh sách, thường bằng 0
Chỉ số lỗi/Max-repetitions (GetBulk): Khi trạng thái lỗi khác 0, trường này chứa con trỏ chỉ định đối tượng gây ra lỗi Trong trường hợp yêu cầu, giá trị này luôn bằng không và thể hiện số lượng item yêu cầu khi sử dụng lệnh.
Biến ràng buộc (Variable Bindings) là một tập hợp các cặp tên-giá trị được xác định trong MIB (Management Information Base) trong PDU (Protocol Data Unit) Đối với các PDU loại SetRequest hoặc GetResponse, biến ràng buộc này bao gồm các giá trị tương ứng của chúng.
4.2.2 Các kiểu dữ liệu trong PDU
4.2.3 Câu lệnh và giá trị trong trường PDU
CÂU LỆNH GIÁ TRỊ TRONG TRƯỜNG PDU
Bảng 2: Câu lệnh và giá trị trong trường PDU
4.2.4 Các Phương thức của SNMP
Bản tin/ Phương thức Mô tả tác dụng
GetRequest được sử dụng giữa manager và agent để truy cập các biến MIB đơn lẻ hoặc danh sách các biến từ agent đích, với hai địa chỉ: địa chỉ của manager hoặc agent và địa chỉ của biến hoặc đối tượng GetNextRequest tương tự như lệnh GetRequest, nhưng nó phụ thuộc vào agent để xác định mục tiếp theo trong MIB Các biến lưu trong thiết bị được coi là đối tượng quản lý, cho phép mở rộng và đọc tuần tự SetRequest được gửi từ manager đến agent để thực hiện việc thiết lập giá trị cho các biến.
Get Request và GetNextRequest Nó
34 tìm kiếm thông tin mở rộng trong bảng MIB và yêu cầu agent đặt giá trị cho các đối tượng quản lí hoặc các đối tượng trong câu lệnh
GetResponse là lệnh từ agent gửi đến manager, cung cấp cơ chế phản hồi cho các lệnh như GetRequest, GetNextRequest và SetRequest Thông tin trong lệnh này bao gồm một số trưởng chức năng nhằm đáp ứng các lệnh đã nhận trước đó.
Trap độc lập, không phụ thuộc vào yêu cầu từ manager hoặc agent Cung cấp thông tin liên quan đến các điều kiện đã được định nghĩa trước và gửi từ agent đến manager.
GetBulkRequest Tương tự như câu lệnh
GetNextRequest cho phép agent gửi lại manager dữ liệu liên quan đến nhiều đối tượng cùng lúc, thay vì từng đối tượng riêng lẻ Điều này giúp giảm bớt lưu lượng truyền dẫn và tối ưu hóa thông tin trong các bản tin đáp ứng về các điều kiện vi phạm.
InformRequest hỗ trợ các quản lý trong việc tổ chức theo mô hình phân cấp, tạo điều kiện cho việc trao đổi thông tin giữa các quản lý Hệ thống cho phép gửi cảnh báo và sự kiện nhằm phát hiện và khởi tạo lại các tuyến truyền bản tin Đồng thời, các trạm quản lý lân cận có khả năng thông tin liên lạc với nhau hiệu quả hơn.
Bảng 3: Các phương thức của SNMP
Cũng giống như SNMPv1, SNMPv2c không có sự cải tiến về tính năng bảo mật, vẫn dựa vào Community string mà không có mã hóa hay xác thực Trong bối cảnh bảo mật thông tin ngày càng trở nên quan trọng, SNMPv3 đã ra đời để khắc phục những điểm yếu này.
4.2.6 Sử dụng MibBrowser quản lý SNMPv2
− Sử dụng GNS3 cấu hình 3 router và 1 Cloud
− Cấu hình dại chỉ IP cho Router 1 (Router khác tương tự)
− Định tuyến OSPF cho R1 (R2,R3 tương tự)
− Cấu hình SNMPv2 cho Router 1
− Khởi chạy MIB Browser, nhập đại chỉ IP của R1, nhập password vừa cấu hình cho router R1
− Sử dụng WireShark để bắt bản tin
− Thông tin bản tin SNMP v2
SNMPv3
SNMPv3 được ra đời vào năm 2000, hiện đang là phiên bản mới nhất của SNMP
Thay đổi quan trọng nhất trong SNMPv3 là việc loại bỏ khái niệm Manager và Agent, mà thay vào đó, cả hai đều được gọi là thực thể SNMP (SNMP entities) Mỗi thực thể này bao gồm một công cụ và một hoặc nhiều ứng dụng SNMP.
SNMPv3 được định nghĩa trong:
RFC3411 Kiến trúc cho khung SNMP RFC3412 Xử lý và gửi tin
RFC3414 Mô hình bảo mật theo người dùng
RFC3415 Mô hình kiểm soát truy cập xem RFC3416 Hoạt động của giao thức SNMPv2 RFC3417 Biểu đồ dịch chuyển của SNMPv2
RFC3418 Cơ sở thông tin quả lý MIB của
RFC2576 Cùng tồn tại giữa các phiên abnr
SNMP RFC2786 Trao đôi khóa Diffie-Hellman
4.3.1 Cấu trúc bản tin NMPv3
Hình 12:Cấu trúc bản tin SNMPv3
Bản tin SNMPv3 được chia ra làm 4 phần chính: Version, Header data, Security Parameters và scopedPDU
− Version: mgsVersion là phiên bản của SNMP được sử dụng Giá trị 0 là thông báo SNMPv1, 1 là thông báo SNMPv2c, 2 là thông báo SNMPv2 và 3 là thông báo SNMPv3
− Header data: Mang thông tin cảu bản tin như ID, size, flag, security model
• mgsID: Trường này chứa mã nhận dạng tin nhắn SNMP Đây là
ID duy nhất được liên kết với tin nhắn
• msgMaxSize: Trường này cung cấp kích thước tối đa của thông báo mà thực thể SNMP yêu cầu có thể chấp nhận
Trường msgFlags xác định mức độ bảo mật của thư, với Bit 0 cho biết tính xác thực của thông báo, Bit 1 chỉ ra việc sử dụng quyền riêng tư, và Bit 2 cho biết liệu một PDU báo cáo có được mong đợi cho thông báo hay không, đặc biệt trong trường hợp thông báo bị loại bỏ hoặc không thể tạo phản hồi.
• msgSecurityModel : Trường này cho biết mô hình bảo mật được sử dụng để tạo thông báo Nó có giá trị là 3 khi USM được sử dụng
− Security Parameters: Chứa các thông tin liên quan đến bảo mật của bản tin
• msgEngineID : Trường này có SNMPEngineID của thực thể
SNMP có quyền kiểm soát các giao dịch thông qua việc tạo ra PDU từ công cụ SNMP Trong quá trình này, đồng đẳng từ xa, bao gồm tác nhân cho yêu cầu Nhận và người quản lý cho yêu cầu bẫy, đóng vai trò là thực thể SNMP có thẩm quyền.
Trường msgEngineBoots cho biết số lần khởi động của thực thể SNMP có thẩm quyền, và nó được sử dụng trong tin nhắn đã xác thực để xác nhận tính kịp thời của thông điệp.
Trường msgEngineTime cho biết thời gian từ khi thực thể SNMP có thẩm quyền được khởi động lại, và được sử dụng trong các thông báo đã xác thực để xác nhận tính kịp thời của thông báo.
Trường msgUser Name chứa thông tin về tác nhân chính đã khởi tạo yêu cầu, trong khi trường msgEngineID được sử dụng để xác định dữ liệu bảo mật liên quan đến thư từ trong cơ sở dữ liệu.
USM Dữ liệu bảo mật này được sử dụng để xác thực và xử lý tin nhắn
Trường msgSecurityParams chứa các tham số bảo mật phụ thuộc vào mô hình bảo mật, bao gồm thông số xác thực và quyền riêng tư cho USM Đối với thư AuthPriv, tham số xác thực tính toán thông báo cho thư thông qua giao thức xác thực áp dụng cho mục nhập USM, trong khi thông số quyền riêng tư được tạo muối và mã hóa thư bằng giao thức bảo mật tương ứng.
− scopedPDU: Chứa thông tin của PDU
• contextEngineID : Trong miền quản trị, contextEngineID xác định duy nhất một thực thể SNMP có thể nhận ra một phiên bản của ngữ cảnh với một contextName cụ thể
• contextName : Tên ngữ cảnh được sử dụng để đặt tên cho một ngữ cảnh Mỗi contextName phải là duy nhất trong một thực thể SNMP
• Data: Chưa dữ liệu PDU được mã hóa
4.3.2 Các trường và kiểu dữ liệu trong SNMPv3
SNMPv3 không thay đổi các phương thức và trường được sử dụng trong SNMPv2c, mà vẫn duy trì các phương thức như GetRequest, GetNextRequest, SetRequest, GetResponse và Trap.
Với sự phát triển không ngừng của công nghệ, bảo mật thông tin ngày càng trở nên quan trọng Giao thức SNMP đã có những cải tiến từ SNMPv1 sang SNMPv2c, nhưng phương pháp community string vẫn khiến thông tin của người dùng dễ bị đánh cắp Để khắc phục vấn đề này, SNMPv3 đã ra đời với ba mức bảo mật mà người dùng có thể tự cấu hình theo nhu cầu của mình.
Ba lớp bảo mật của SNMPv3 là:
Bảng 5: Các mức độ bảo mật trong SNMPv3
Mức độ thứ nhất trong SNMP là NoAuth, đây là trạng thái bảo mật kém hơn so với SNMPv1 và SNMPv2c, vì không có xác thực và mã hóa Mức độ này thường được sử dụng chủ yếu cho mục đích giám sát.
Mức độ thứ hai là Auth, nơi người dùng được xác thực nhưng không có mã hóa Trong trạng thái này, agent sẽ nhận diện được server đang yêu cầu thông tin Người dùng sẽ được bảo mật thông qua thông tin đăng nhập như tên người dùng và mật khẩu, thay vì chỉ dựa vào cộng đồng.
Mức độ bảo mật trong SNMPv2c được nâng cao với việc sử dụng chuỗi 42 ký tự, trong đó mật khẩu được mã hóa bằng thuật toán MD5 hoặc SHA trong HMAC, giúp kiểm soát hiệu quả hơn.
Cấp độ thứ ba, hay còn gọi là Priv, đảm bảo thông tin được xác thực và mã hóa, giúp bảo vệ dữ liệu một cách tối ưu Thông tin được xác thực bằng thuật toán băm MD5 hoặc SHA và mã hóa bằng DES-56, làm cho việc đánh cắp dữ liệu trở nên rất khó khăn Cấp độ này thường được sử dụng để tải xuống các thông tin mật.
4.3.4 Quản lý SNMPv3 với ManageEngine MIB Browser
- Khời động GNS3 xây dựng toppo mạng với 3 router c2691 và 1 cloud
- Cấu hình địa chỉ router bằng solarwind (Ví dụ với Router 1 các router khác tương tự)
- Cấu hình SNMPv3 cho Router 1
• snmp-server engineID local 123456789a: Cài đặt chuỗi engineID với 10 kí tự
• snmp-server group group1 v3 priv: Lệnh tạo nhóm trong SNMP, trong trường hợp này tên nhóm là “group1” phiên bản
“v3” và dung bảo mật “priv”
Lệnh "snmp-server user c2691 group1 v3 auth md5 123456789b priv des 12456789c" được sử dụng để tạo người dùng với bảo mật và xác thực Trong lệnh này, tên người dùng là "c2691", được đưa vào nhóm "group1", sử dụng phiên bản "v3" với xác thực kiểu "MD5" và mật khẩu là "123456789b".
“123456789b” và mã hóa DES có mật khẩu là “123456789c”
• snmp-server host 192.168.100.8 traps version 3 priv c2691: Cấu hình traps từ host 192.168.100.8
• snmp-server enable traps snmp: Enable
- Khởi chạy ManageEngine MIB Browser
- Chọn Menu Edit -> Setiing để mở cửa sổ MibBrowser Setting ->
- Điền thông tin đã cấu hình ở solarwind vào bảng
• Target Host : IP của cổng Router
• User Name: User đã cấu hình cho Router
• Security level: Mức độ bảo mật đã cấu hình cho Router
• Auth Protocol/Priv Protocol: Giao thức xác thực và mã hóa
• Auth/Priv Password: Mật khẩu đã cấu hình cho router trước đó Sau khi cấu hình xong chọn Apply - > OK
Sau khi ấn OK nếu hiện ra thông tin như hình tức là đã cấu hình thành công SNMPv3 trên ManageEngine MIB Browser
- Sử dụng WireShark để bắt bản tin
• Ta có thể thấy thông tin của bản tin đã được mã hóa
- Muốn xem thôn tin bản tin chọn Menu Edit->Preference -> Protocol -
>SNMP -> Edit user table Điền đầy đủ thông tin -> OK Giờ đây bạn có thể xem thông tin của bản tin
So sánh các phiên bản SNMP3
Phiên bản đàu tiên của
SNMP, được ra mắt lần đầu vào năm 1988, đã trải qua nhiều phiên bản phát triển Phiên bản thứ hai, SNMPv2, được giới thiệu vào năm 1993 với ba loại: v2p, v2u và v2c, trong đó SNMPv2c là phiên bản phổ biến nhất Phiên bản mới nhất của SNMP đã được giới thiệu vào đầu năm 2000, tiếp tục nâng cao khả năng quản lý mạng.
2 Sử dụng bộ nhớ 32bit Sử dụng bộ nhớ 64 bit hoặc
Sử dụng bộ nhớ 64 bit hoặc 32 bit
Không có bất kỳ thuật toán mã hóa nào được sử dụng
Không có bất kỳ thuật toán mã hóa nào được sử dụng
Nó có cơ chế mã hóa và xác thực dữ liệu tùy chọn theo 3 mức độ
Sử dụng Community string để xác thực Hầu hết SNMPv1 đều đi kèm
Community string mặc định được đặt công khai
SNMPv3 sử dụng thuật toán băm MD5 hoặc SHA để xác thực và DES-56 để mã hóa
GetResponse và Trap để điều khiển giữa SNMP
SNMPv2c bổ xung thêm 2 lệnh GetBulkRequest và InformRequest
6 Dễ dàng được để thiết lập cũng như cấu hình
Dễ dàng được để thiết lập cũng như cấu hình
Rất phức tạp để thiết lập và cấu hình
Bảng 6: So sánh các phiên bản SNMP
5 Ưu nhược điểm và vai trò của SNMP
Ưu điểm
- Ưu điểm chính của việc sử dụng SNMP là thiết kế đơn giản Do đó, dễ dàng triển khai nó trên mạng
- SNMP có thể phát triển nhanh và tốn ít chi phí
Mở rộng là một lợi thế nổi bật của SNMP, nhờ vào thiết kế đơn giản, giao thức này có thể dễ dàng được cập nhật để đáp ứng nhu cầu của người dùng trong tương lai.
- SNMP dựa trên giao thức truyền tải UDP, giao thức này yêu cầu ít tài nguyên hơn và kết nối đồng thời hơn với TCP
- Các thiết bị khác nhau có hoạt động khác nhau, nhưng hoạt động dựa trên giao thức SNMP là giống nhau
SNMP là một giao thức hoàn toàn mở, điều này mang lại lợi ích quan trọng nhất cho người sử dụng Sự mở của giao thức này đảm bảo rằng SNMP không thuộc sở hữu của bất kỳ nhà cung cấp nào, tạo điều kiện cho sự linh hoạt và khả năng tương tác giữa các thiết bị khác nhau.
Nhược điểm
- SNMP không tương thích với các giao thức khác Để giải quyết nhược điểm này, sẽ cần thiết bị chuyển đổi SNMP liên kết
- SNMP là không đồng bộ nên không có cách tự động nào để đảm bảo thiết bị vẫn trực tuyến
SNMPv3 sử dụng các thuật toán mã hóa tiên tiến, mang lại khả năng bảo mật tốt hơn so với SNMP V1 và V2, vốn dễ bị tấn công do không có tính năng bảo mật và không sử dụng thuật toán mã hóa Điều này khiến cho những kẻ tấn công có thể xâm nhập vào trình quản lý SNMP, từ đó có quyền truy cập vào toàn bộ mạng của bạn.
+ SNMP không thể nhận một lượng lớn dữ liệu từ các thiết bị Do đó, không thể sử dụng nó với bảng định tuyến của mình
Để sử dụng SNMP, cần có thiết bị hỗ trợ giao thức này Việc giám sát các thiết bị không tương thích sẽ không thể thực hiện được thông qua trình quản lý SNMP.
SNMP Do đó, các công cụ giám sát mạng đang sử dụng các giao thức khác nhau để giải quyết vấn đề khả năng hiển thị.
Vai trò của SNMP
SNMP, hay Simple Network Management Protocol, là một giao thức quan trọng trên Internet, được sử dụng để thu thập và tổ chức thông tin về các thiết bị trong mạng Giao thức này cho phép người quản trị thay đổi thông tin nhằm điều chỉnh trạng thái của các thiết bị như modem, router, switch, server, workstation và máy in.
SNMP được tổ chức một cách hiệu quả, cho phép theo dõi số lượng lớn thiết bị mạng trong các mạng hiện đại Giải pháp giám sát này hỗ trợ quản trị viên bằng cách cung cấp các phương pháp phù hợp để quản lý và tối ưu hóa hiệu suất mạng.
Công cụ giám sát đóng vai trò quan trọng trong việc giúp các quản trị viên hệ thống xác định chính xác những khu vực cần can thiệp khi sự cố xảy ra Thậm chí, nhờ vào các công cụ này, họ có thể nhận diện và khắc phục vấn đề trước khi nó xảy ra.
Báo cáo và thống kê rất nhiều dữ liệu trong cơ sở dữ liệu giám sát
Phân tích dữ liệu giúp hiển thị xu hướng cho từng mạng riêng lẻ, từ đó cho phép lập kế hoạch hiệu quả hơn Điều này mang lại độ tin cậy, tốc độ và hiệu quả cao trong quá trình quản lý và vận hành.
SNMP, một phần quan trọng trong bộ giao thức Internet, đóng vai trò thiết yếu trong quản trị mạng và sẽ tiếp tục được sử dụng trong nhiều năm tới.