Download as pdf or txt
Download as pdf or txt
You are on page 1of 74

TRƯỜNG ĐẠI HỌC KINH TẾ QUỐC DÂN

VIỆN CÔNG NGHỆ THÔNG TIN & KINH TẾ SỐ

CHƯƠNG I
TỔNG QUAN VỀ QUẢN TRỊ MẠNG
MỤC TIÊU

Sau khi học xong chương này, sinh viên có thể:


 Trình bày được các kiến thức cơ bản nhất về quản trị
mạng: quản trị lỗi, cấu hình, tài khoản, hiệu suất và an
ninh mạng
 Trình bày được các thành phần và mô hình một hệ
thống quản trị mạng
 Giải thích được các thủ tục hoạt động và các cơ chế
bảo mật của giao thức quản trị mạng đơn giản SNMP

2
NỘI DUNG
 1.1. Giới thiệu chung
 1.2. Các tác vụ quản trị mạng
 1.2.1. Quản trị lỗi
 1.2.2. Quản trị cấu hình (tài nguyên mạng)
 1.2.3. Quản trị kế toán
 1.2.4. Quản trị hiệu suất mạng
 1.2.5. Quản trị an ninh mạng
 1.3. Hệ thống quản trị mạng
 1.3.1. Các thành phần
 1.3.2. Mô hình
 1.4. Giao thức quản trị mạng đơn giản SNMP
 1.4.1. Poll và Alert
 1.4.2. Giao thức SNMP
 1.4.3. Bảo mật trong SNMP
3
1.1. GIỚI THIỆU CHUNG

 Quản trị mạng là việc sử dụng các công cụ, các ứng
dụng và thiết bị khác nhau để giúp giám sát và duy trì
hoạt động mạng.
 Sau giai đoạn thiết kế và triển khai mạng ban đầu nhiệm
vụ quản trị mạng tập trung chủ yếu vào việc đảm bảo
vận hành mạng ổn định hàng ngày và chuẩn bị cho
hoạch định phát triển mạng tiếp theo.
1.1. GIỚI THIỆU CHUNG

 Khi độ phức tạp của mạng tăng lên (có các kết nối
LAN/WAN và với các mạng từ xa, sử dụng pha tạp
nhiều loại giao thức khác nhau) → Cần một cơ chế
quản trị vận hành mạng để phát hiện và xử lý sự cố kịp
thời, đảm bảo an ninh mạng cũng như thực hiện việc
nâng cấp, mở rộng mạng về sau.
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

 5 lĩnh vực chức năng của công tác quản trị mạng (Computer
Network Management)
 Mô hình quản trị mạng do ISO (International Standard
Organization) đề xuất bao gồm 5 lĩnh vực chức năng:
 Fault Management
 Configuration Management
 Accounting Management
 Performance Management
 Security Management
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

Quản trị hiệu năng


Performance
2 Management

Quản trị cấu hình


Configuration 1 3 Quản trị
Management kế toán
Các tác vụ Accounting
Quản trị Management
mạng

Quản trị an 5 4
ninh mạng Quản trị lỗi
Fault Management
Security Management
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

 Configuration Management (Quản lý cấu hình):


 Nhiệm vụ của quản trị cấu hình: thực hiện việc theo
dõi và thu thập thông tin cấu hình hệ thống của mạng,
của phần cứng và cả phần mềm.
 Thông tin thu thập được thường được lưu trữ vào cơ
sở dữ liệu để dễ dàng truy cập và phân tích.
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG
 Fault Management (Quản lý lỗi):
 Theo ISO, đây là một lĩnh vực phức tạp nhất của công tác quản trị
mạng, nó phải được triển khai ở tất cả các lĩnh vực chức năng của
công tác này, bởi vì, lỗi có thể xảy ra ở thời gian chết và tác động tiêu
cực, một cách tức thì đến hoạt động của toàn hệ thống.
 Nhiệm vụ của quản lý lỗi là phát hiện lỗi, ghi nhận lỗi, thông báo lỗi
và đặc biệt là có thể tự động khắc phục một số vấn đề về mạng để
đảm bảo sao cho mạng có thể duy trì hiệu quả hoạt động ở mức có
thể chấp nhận được.
 Quy trình xử lý lỗi bao gồm các giai đoạn:
 1) Xác định “triệu chứng” và cô lập vấn đề căn nguyên của lỗi;
 2) Khắc phục lỗi và kiểm tra sự hoạt động trở lại bình thường của hệ thống;
 3) Ghi lại vấn đề/lỗi được phát hiện và giải pháp khắc phục chúng (chuẩn bị cho
việc khắc phục lỗi lần sau.
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

 Performance Management (Quản lý hiệu năng):


 Lĩnh vực này quản lý/đo lường các khía cạnh khác nhau
của hiệu năng mạng: Băng thông mạng, thời gian hồi đáp
người dùng, … Mục tiêu là duy trì hiệu năng của mạng ở
mức có thể truy cập được.
 Quy trình quản lý hiệu năng bao gồm các giai đoạn:
 1) Thu thập dữ liệu hiệu năng;
 2) Phân tích dữ liệu;
 3) Thiết lập các ngưỡng hiệu năng cho giá trị của các thông số
quan trọng.
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

 Security Management (Quản lý an ninh):


 Mục tiêu của lĩnh vực này là điều khiển truy cập đến tài
nguyên mạng theo đặc quyền của người dùng, nhằm bảo
vệ các tài nguyên nhạy cảm, ngăn chặn sự truy cập bất
hợp lệ của người sử dụng không được phép.
 Quy trình quản lý bảo mật liên quan đến:
 1) Định danh các tài nguyên (tài nguyên mạng) nhạy cảm;
 2) Xác định mối liên quan giữa tài nguyên nhạy cảm và nhóm user
được quyền truy cập/không được quyền truy cập tài nguyên đó;
 3) Theo dõi việc truy cập đến tài nguyên nhạy cảm của user.
1.2. CÁC TÁC VỤ QUẢN TRỊ MẠNG

 Accouting Management (Quản lý kiểm toán):


 Lĩnh vực chức năng này quan tâm đến việc chuẩn bị số
liệu để báo cáo về việc sử dụng mạng và cấp phát tài
nguyên của toàn hệ thống.
 Quy trình quản lý kiểm toán bao gồm:
 1) Đo lường việc sử dụng của tất cả các tài nguyên mạng quan
trọng;
 2) Phân tích các mẫu sử dụng hiện tại;
 3) Thiết lập hạn ngạch sử dụng tài nguyên mạng cho các nhóm
user khác nhau.
 Mục tiêu của quản lý kiểm toán là tài nguyên của hệ thống
được khai thác, được sử dụng một cách hiệu quả nhất.
1.3. HỆ THỐNG QUẢN TRỊ MẠNG

 Mô hình nền tảng của quản trị mạng:

Thực thể Thực thể


quản trị được quản trị

 Thực thể quản trị: đặc trưng bởi hệ thống quản trị,
nền tảng quản trị và/hoặc ứng dụng quản lý.
 Thực thể bị quản trị: đặc trưng bởi các tài nguyên bị
quản lý.
KIẾN TRÚC CỦA HỆ QUẢN TRỊ MẠNG
KIẾN TRÚC CỦA HỆ QUẢN TRỊ MẠNG
 Network Management Topology
1.4. GIAO THỨC QUẢN TRỊ MẠNG ĐƠN GIẢN (SNMP)

 Poll và Alert
 Giao thức SNMP
 Bảo mật trong SNMP
POLL VÀ ALERT

 Là 2 phương thức cơ bản của các kỹ thuật giám


sát hệ thống (Còn gọi là Poll và Trap, hoặc Get
và Trap)
 Nhiều phần mềm và giao thức được xây dựng
dựa trên 2 phương thức này (ví dụ: SNMP)
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
PHƯƠNG THỨC 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
PHƯƠNG THỨC ALERT

 Device chỉ gửi những thông báo mang tính sự kiện


chứ không gửi những thông tin thường xuyên thay
đổi, nó cũng sẽ không gửi Alert nếu chẳng có sự
kiện gì xảy ra.
 VD khi một port down/up thì Device sẽ gửi cảnh báo, còn
tổng số byte truyền qua port đó sẽ không được Device gửi
đi vì đó là thông tin thường xuyên thay đổi.
 Muốn lấy những thông tin thường xuyên thay đổi thì
Manager phải chủ động đi hỏi Device, tức là phải
thực hiện phương thức Poll
SO SÁNH PHƯƠNG THỨC POLL VÀ ALERT

Poll Alert
Có thể chủ động lấy những thông tin cần thiết từ Tất cả những event xảy ra đều được gửi về
các đối tượng mình quan tâm, không cần lấy những Manager. Manager phải có cơ chế lọc những
thông tin không cần thiết từ những nguồn không event cần thiết, hoặc Device phải thiết lập
quan tâm được cơ chế chỉ gửi những event cần thiết

Có thể lập bảng trạng thái tất cả các thông tin của Nếu không có event gì xảy ra thì Manager
Device sau khi poll qua một lượt các thông tin đó. không biết được trạng thái của Device. VD
VD Device có một port down và Manager được Device có một port down và Manager được
khởi động sau đó, thì Manager sẽ biết được port khởi động sau đó, thì Manager sẽ không thể
đang down sau khi poll qua một lượt tất cả các port biết được port đang down

Trong trường hợp đường truyền giữa Manager và Khi đường truyền gián đoạn và Device có
Device xảy ra gián đoạn và Device có sự thay đổi, sự thay đổi thì nó vẫn gửi Alert cho
thì Manager sẽ không thể cập nhật. Tuy nhiên khi Manager, nhưng Alert này sẽ không thể đến
đường truyền thông suốt trở lại thì Manager sẽ cập được Manager. Sau đó mặc dù đường truyền
nhật được thông tin mới nhất do nó luôn luôn poll có thông suốt trở lại thì Manager vẫn không
định kỳ thể biết được những gì đã xảy ra
SO SÁNH PHƯƠNG THỨC POLL VÀ ALERT

Poll Alert
Chỉ cần cài đặt tại Manager để trỏ đến tất cả các Phải cài đặt tại từng Device để trỏ đến
Device. Có thể dễ dàng thay đổi một Manager khác Manager. Khi thay đổi Manager thì phải cài
đặt lại trên tất cả Device để trỏ về Manager
mới

Nếu tần suất poll thấp, thời gian chờ giữa 2 chu kỳ Ngay khi có sự kiện xảy ra thì Device sẽ
poll (polling interval) dài sẽ làm Manager chậm cập gửi Alert đến Manager, do đó Manager
nhật các thay đổi của Device. Nghĩa là nếu thông tin luôn luôn có thông tin mới nhất tức thời
Device đã thay đổi nhưng vẫn chưa đến lượt poll kế
tiếp thì Manager vẫn giữ những thông tin cũ.

Có thể bỏ sót các sự kiện : khi Device có thay đổi, Manager sẽ được thông báo mỗi khi có sự
sau đó thay đổi trở lại như ban đầu trước khi đến kiện xảy ra ở Device, do đó Manager
lượt poll kế tiếp thì Manager sẽ không phát hiện không bỏ sót bất kỳ sự kiện nào.
được
POLL HAY ALERT ?

 Hai phương thức Poll và Alert có ưu điểm và nhược điểm ngược


nhau, do đó nhiều trường hợp có thể sử dụng kết hợp cả hai để đạt
được hiệu quả tốt nhất.
 Các ví dụ ứng dụng Poll & Alert:
 Giao thức Syslog: mỗi khi có sự kiện xảy ra thì thiết bị sẽ gửi bản tin
syslog đến Syslog Server.
 Phần mềm NetworkView, giám sát tình trạng các server bằng cách ping
liên tục.
 Giao thức STP, phát hiện loop trong mạng bằng cách gửi nhận các gói
BPDU và gửi bản tin Topology change mỗi khi phát hiện thay đổi.
 Trong quản lý người ta luôn thực hiện song song chế độ kiểm tra và báo
cáo, thường xuyên kiểm tra để phát hiện vấn đề và báo cáo ngay khi xảy
ra vấn đề
GIAO THỨC SNMP

 SNMP (Simple Network Management Protocol):


giao thức quản trị mạng đơn giản.
 SNMP cho phép giám sát và truyền đạt các
thông tin trạng thái từ các tác nhân SNMP
(SNMP agent) cho các trạm quản trị mạng
(network management station, NMS).
SNMP

 3 phiên bản
 SNMP v1: 1990
 SNMP v2: 1996
 SNMP v3: 2003
 Sử dụng giao thức vận chuyển UDP:
 Port 161: polling
 Port 162: trapping
GIAO THỨC SNMP

 Một số khả năng của phần mềm SNMP:


 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
GIAO THỨC SNMP

 SNMP dùng để quản lý mạng: 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: máy tính, switch, router, firewall, adsl gateway,
một số phần mềm cho phép quản trị bằng SNMP…
 Vd máy giặt có thể nối mạng IP và nó hỗ trợ SNMP thì có thể
quản lý nó từ xa bằng SNMP.
 SNMP là giao thức đơn giản: nó được thiết kế đơn giản trong
cấu trúc bản tin và thủ tục hoạt động; đơn giản trong bảo mật
(trừ SNMP v3).
 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
GIAO THỨC SNMP

 Để thực hiện các dịch vụ quản trị, SNMP sử


dụng một kiến trúc phân tán gồm các hệ quản
trị (management system) và các tác nhân
(agent).
 Một máy chủ được đặt trung tâm, chạy phần
mềm quản trị mạng, được gọi là NMS. Các nốt
mạng được quản trị gọi là các tác nhân SNMP.
CÁC THÀNH PHẦN TRONG SNMP

 Kiến trúc của SNMP gồm 2 thành phần:


 Các trạm quản lý mạng (network management station):
 Thường là một máy tính chạy phần mềm quản lý SNMP
(SNMP management application)
 Dùng để giám sát và điều khiển tập trung các network
element
 Các thành tố mạng (network element)
 Là các thiết bị, máy tính, hoặc phần mềm tương thích SNMP
 Được quản lý bởi network management station.
CÁC THÀNH PHẦN TRONG SNMP

 Một management station có thể quản lý nhiều element


 Một element cũng có thể được quản lý bởi nhiều
management station.
HAI CHẾ ĐỘ HOẠT ĐỘNG CỦA SNMP

 Polling:
 Management System gửi yêu cầu truy xuất thông tin đến
managed System (port 161)
 Trapping:
 Managed System chủ động gửi thông tin cảnh báo cho
management system (port 162)
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 SNMP Agent
 là một tiến trình (process) chạy trên network element
 Cung cấp thông tin của element cho station → station
có thể quản lý được element
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Object ID
 Một thiết bị hỗ trợ SNMP có thể cung cấp nhiều thông
tin khác nhau, mỗi thông tin đó gọi là một object.
 Mỗi object có một tên gọi và một mã số để nhận dạng
object đó, mã số gọi là Object ID (OID)
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Ví dụ :
 Máy tính có thể cung cấp các thông tin:
 tổng số ổ cứng
 tổng số port nối mạng
 tổng số byte đã truyền/nhận
 tên máy tính
 tên các process đang chạy…
 Router có thể cung cấp các thông tin :
 tổng số card
 tổng số port
 tổng số byte đã truyền/nhận
 tên router
 tình trạng các port của router…
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Ví dụ Object ID:
 Tên thiết bị được gọi là sysName, OID là 1.3.6.1.2.1.1.5.
 Tổng số port giao tiếp (interface) được gọi là ifNumber, OID là
1.3.6.1.2.1.2.1.
 Địa chỉ Mac Address của một port được gọi là ifPhysAddress,
OID là 1.3.6.1.2.1.2.2.1.6.
 Số byte đã nhận trên một port được gọi là ifInOctets, OID là
1.3.6.1.2.1.2.2.1.10.
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 “scalar instance index” (cũng có thể gọi là “sub-id”):


 là 1 chỉ số gọi là đặt ngay sau OID. Ví dụ :
 Tên thiết bị được gọi là sysName, OID là 1.3.6.1.2.1.1.5; nếu thiết bị có
2 tên thì chúng sẽ được gọi là sysName.0 & sysName.1 và có OID lần
lượt là 1.3.6.1.2.1.1.5.0 & 1.3.6.1.2.1.1.5.1.
 Địa chỉ Mac address được gọi là ifPhysAddress, OID là
1.3.6.1.2.1.2.2.1.6; nếu thiết bị có 2 mac address thì chúng sẽ được gọi
là ifPhysAddress.0 & ifPhysAddress.1 và có OID lần lượt là
1.3.6.1.2.1.2.2.1.6.0 & 1.3.6.1.2.1.2.2.1.6.1.
 Tổng số port được gọi là ifNumber, giá trị này chỉ có 1 (duy nhất) nên
OID của nó không có phân cấp con và vẫn là 1.3.6.1.2.1.2.1.
 Sub-id không nhất thiết phải liên tục hay bắt đầu từ 0.
 VD một thiết bị có 2 mac address thì có thể chúng được gọi là
ifPhysAddress.23 và ifPhysAddress.125645.
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 OID của các object phổ biến có thể được chuẩn hóa
 OID của các object do ta tạo ra thì ta phải tự mô tả chúng.
 Để lấy một thông tin có OID đã chuẩn hóa thì SNMP application
phải gửi một bản tin SNMP có chứa OID của object đó cho SNMP
agent, SNMP agent khi nhận được thì nó phải trả lời bằng thông tin
ứng với OID đó.
 VD : Muốn lấy tên của một PC chạy Windows, tên của một PC chạy
Linux hoặc tên của một router thì SNMP application chỉ cần gửi bản tin
có chứa OID là 1.3.6.1.2.1.1.5.0. Khi SNMP agent chạy trên PC
Windows, PC Linux hay router nhận được bản tin có chứa OID
1.3.6.1.2.1.1.5.0, agent lập tức hiểu rằng đây là bản tin hỏi sysName.0,
và agent sẽ trả lời bằng tên của hệ thống. Nếu SNMP agent nhận được
một OID mà nó không hiểu (không hỗ trợ) thì nó sẽ không trả lời.
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 VD: Minh họa quá trình lấy sysName.0


MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Object access
 Mỗi object có quyền truy cập là READ_ONLY hoặc
READ_WRITE.
 Mọi object đều có thể đọc được nhưng chỉ những object có
quyền READ_WRITE mới có thể thay đổi được giá trị.
 Ví dụ:
 Tên của một thiết bị (sysName) là READ_WRITE → có thể
thay đổi tên của thiết bị thông qua giao thức SNMP.
 Tổng số port của thiết bị (ifNumber) là READ_ONLY → không
thể thay đổi số port của nó.
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 MIB (Management Information Base): cơ sở thông tin quản trị


 là một đối tượng chứa của các đối tượng, mỗi đối tượng biểu
diễn một chủng loại thông tin. MIB chứa các thông tin mà một hệ
quản trị đòi hỏi. Ví dụ:
 Một đối tượng MIB biểu diễn số các phiên hiện hoạt của một
tác nhân
 Một đối tượng MIB biểu diễn số lượng MB đĩa cứng còn trống.
→ MIB là một cấu trúc dữ liệu gồm các đối tượng được quản lý
(managed object)
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Management Information Base


 Dùng cho việc quản lý các thiết bị chạy trên nền TCP/IP.
 MIB là kiến trúc chung mà các giao thức quản lý trên TCP/IP nên
tuân theo, trong đó có SNMP.
 MIB được thể hiện thành 1 file (MIB file), và có thể biểu diễn thành 1
cây (MIB tree).
 MIB có thể được chuẩn hóa hoặc tự tạo.
 Một MIB định nghĩa các thuộc tính sau cho mỗi đối tượng:
 Tên và mã số
 Kiểu dữ liệu
 Chú giải đối tượng
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Management Information Base

Một node trong cây là


một object, có thể
được gọi bằng tên
hoặc id.

Để SNMP manager
có thể giám sát được
SNMP agent thì cả
hai phải hỗ trợ cùng
một MIB
MỘT SỐ THUẬT NGỮ KHÁC CỦA SNMP

 Management Information Base


 Ví dụ: Node iso.org.dod.internet.mgmt.mib-2.system có OID là
1.3.6.1.2.1.1, chứa tất cả các object liên quan đến thông tin của một hệ
thống như tên của thiết bị (iso.org.dod.internet.mgmt.mib-
2.system.sysName hay 1.3.6.1.2.1.1.5).
 Các OID của các hãng tự thiết kế nằm dưới
iso.org.dod.internet.private.enterprise. Ví dụ : Cisco nằm dưới
iso.org.dod.internet.private.enterprise.cisco hay 1.3.6.1.4.1.9, Microsoft
nằm dưới iso.org.dod.internet.private.enterprise.microsoft hay
1.3.6.1.4.1.311.
 Số 9 (Cisco) hay 311 (Microsoft) là số dành riêng cho các công ty do
IANA cấp. Nếu Cisco hay Microsoft chế tạo ra một thiết bị nào đó, thì
thiết bị này có thể hỗ trợ các MIB chuẩn đã được định nghĩa sẵn (như
mib-2) hay hỗ trợ MIB được thiết kế riêng. Các MIB được công ty nào
thiết kế riêng thì phải nằm bên dưới OID của công ty đó.
ĐÓNG GÓI SNMP MESSAGE

SNMP message được gói trong UDP-IP-Link header


CẤU TRÚC SNMP MESSAGE

Dùng chung cho các message: GetRequest,


GetNextRequest, SetRequest và Response.

SNMP message = Version + Community string + SNMP PDU


PDU TYPE

PDU type PDU


0 GetRequest
1 GetNextRequest
2 Response
3 SetRequest
4 Trap (obsolete)
5 GetBulkRequest
6 InformRequest
7 Trap (SNMPv2)
8 Report
REQUEST ID

 Một số nguyên, dùng để nhận dạng request


PDU, nhằm mục đích liên kết giữa Request và
Response tương ứng.
 Agent có thể nhận cùng lúc nhiều request, mỗi
request có một ID khác nhau. Bản tin trả lời
(response) của agent sẽ chứa request ID trùng với ID
trong bản tin request.
ERROR STATUS & ERROR INDEX
 Error status: số nguyên xác định trạng thái lỗi.
Giá trị Tên lỗi Ý nghĩa
0 noError Không có lỗi
1 tooBig Kích thước thông tin trả lời vượt quá kích thước PDU
2 noSuchName Đối tượng không tồn tại
3 badValue Giá trị không phù hợp
4 readOnly Không được phép ghi
5 genErr Lỗi không xác định

◼ Error index: số nguyên xác định đối tượng (OID) gây lỗi
VARIABLE BINDINGS

 Chứa danh sách OID và giá trị tương ứng


 Mỗi SNMP PDU có thể chứa nhiều variable binding
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.
 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 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.
CÁC PHƯƠNG THỨC CỦA SNMP
Bản tin/phương Mô tả tác dụng
thức
GetRequest Manager gửi GetRequest cho agent để yêu cầu agent cung
cấp thông tin nào đó dựa vào ObjectID (trong GetRequest
có chứa OID)
GetNextRequest Manager gửi GetNextRequest có chứa một ObjectID cho
agent để yêu cầu cung cấp thông tin nằm kế tiếp ObjectID
đó trong MIB.
SetRequest Manager gửi SetRequest cho agent để đặt giá trị cho đối
tượng của agent dựa vào ObjectID.
GetResponse Agent gửi GetResponse cho Manager để trả lời khi nhận
được GetRequest/GetNextRequest

Trap Agent tự động gửi Trap cho Manager khi có một sự kiện
xảy ra đối với một object nào đó trong agent
CÁC PHƯƠNG THỨC CỦA SNMP

 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 → dùng
một GetRequest có thể lấy về cùng lúc nhiều thông tin.
 Cấu trúc PDU:
PDU type Request ID ErrorStatus ErrorIndex OID 1 OID 2 OID n
0 x 0 0 Null Null Null
CÁC PHƯƠNG THỨC CỦA SNMP

 GetRequest:
 Câu lệnh net-snmp:
snmpget –v 2c –c public localhost system.sysContact.0
 Kết quả bắt gói (bỏ IP header)
User Datagram Protocol:
Src Port: 34066 (34066)
Dst Port: snmp (161)
Length: 51
Simple Network Management Protocol Version: 1 (0)
Community: public
PDU type: GET (0)
Request Id: 0x20a71b4c
Error Status: NO ERROR (0) Error Index: 0
Object identifier 1: 1.3.6.1.2.1.1.4.0 (SNMPv2-
MIB::sysContact.0)
Value: NULL
CÁC PHƯƠNG THỨC CỦA SNMP

 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?
 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 → 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.
 Cấu trúc PDU:

PDU type Request ID ErrorStatus ErrorIndex OID 1 OID 2 OID n


1 x 0 0 Null Null Null
CÁC PHƯƠNG THỨC CỦA SNMP

 GetNextRequest:
 Câu lệnh net-snmp:
snmpgetnext -v 2c -c public localhost system.sysContact.0
 Kết quả bắt gói (bỏ IP header)

User Datagram Protocol:


Src Port: 34069 (34069),
Dst Port: snmp (161)
Length: 51
Simple Network Management Protocol Version: 1 (0) Community:
public
PDU type: GET-NEXT (1)
Request Id: 0x00ec480a
Error Status: NO ERROR (0) Error Index: 0
Object identifier 1: 1.3.6.1.2.1.1.1.0 (SNMPv2-MIB::sysDescr.0)
Value: NULL
CÁC PHƯƠNG THỨC CỦA SNMP

 GetNextRequest:

Thứ tự truy xuất của


thao tác getnext
CÁC PHƯƠNG THỨC CỦA SNMP

 GetNextRequest:

1 2 3 4

1 4 1 6 1 3

10 11 14 15 16 17 18 19

Thứ tự duyệt cây (lexicographic order):


1 → 1.1 → 1.1.10 → 1.1.11 → 1.4 → 1.4.14 → 1.4.15 → 2 → 2.1 →
2.1.16 → 2.1.17 → 2.6 → 2.6.18 → 2.6.19 → 3 → 3.1 → 3.3 → 4
CÁC PHƯƠNG THỨC CỦA SNMP

 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ụ:
 Đặ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.
 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à 2.
 ifAdminStatus có thể mang 3 giá trị là UP (1), DOWN (2) và
TESTING (3).
CÁC PHƯƠNG THỨC CỦA SNMP

 SetRequest:
 Chỉ những object có quyền READ_WRITE mới có thể thay đổi
được giá trị.
 Cấu trúc PDU:

PDU type Request ID ErrorStatus ErrorIndex OID 1 OID 2 OID n


2 x 0 0 Value 1 Value 2 Value n
CÁC PHƯƠNG THỨC CỦA SNMP

 SetRequest:
 Câu lệnh SNMP:
snmpset -v 2c -c private localhost system.sysContact.0 s “BMCNTT”

 Kết quả bắt gói (bỏ IP header)

User Datagram Protocol:


Src Port: 34102 (34102)
Dst Port: snmp (161)
Length: 55
Simple Network Management Protocol Version: 2C (1) Community:
private
PDU type: SET (3)
Request Id: 0x34df1dbe
Error Status: NO ERROR (0) Error Index: 0
Object identifier 1: 1.3.6.1.2.1.1.5.0 (SNMPv2-MIB::sysName.0)
Value: STRING: BMCNTT
CÁC PHƯƠNG THỨC CỦA SNMP

 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 đó.
CÁC PHƯƠNG THỨC CỦA SNMP

 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.
CÁC PHƯƠNG THỨC CỦA SNMP

 Trap:
 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)
 trap đặc thù (specific trap).
CÁC PHƯƠNG THỨC CỦA SNMP

 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
CÁC PHƯƠNG THỨC CỦA SNMP

 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.
CÁC PHƯƠNG THỨC CỦA SNMP

 Trap
❑ Ý nghĩa của các bản tin generic-trap…:
 authenticationFailure: thông báo rằng thiết bị gửi bản tin này đã
nhận được một 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” (Exterior Gateway Protocol ) 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.
CÁC PHƯƠNG THỨC CỦA SNMP

 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à 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 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ỳ, chỉ có thể đọc và hiểu các
generic trap khi chúng xảy ra; nhưng 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ố.
CÁC PHƯƠNG THỨC CỦA SNMP

 Minh họa các phương thức của SNMPv1

Phương thức Get/Set/Response thì SNMP Agent lắng nghe ở port UDP 161.
Phương thức trap thì SNMP Trap Receiver lắng nghe ở port UDP 162.
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ể đượ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
 SNMP access control list
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
 Trap-Community.
COMMUNITY STRING

 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.
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
SNMP ACCESS CONTROL LIST

 Khi manager gửi không đúng community string 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 cho phép thiết lập SNMP ACL.
CÁC THUẬT NGỮ, TỪ VIẾT TẮT

ACL Access Control List Danh sách điều khiển truy cập

MIB Management Information Base Cơ sở thông tin quản trị

NMS Network Management System Hệ thống quản trị mạng

OID Object ID Định danh đối tượng

PDU Protocol Data Unit Đơn vị dữ liệu giao thức

Simple Network Management


SNMP Giao thức quản trị mạng đơn giản
Protocol

74

You might also like