Tải bản đầy đủ (.docx) (79 trang)

Nghiên cứu tính năng bảo mật trong SNMP version 2 và xây dựng chương trình mô phỏng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.66 MB, 79 trang )

MỤC LỤC

DANH MỤC HÌNH VẼ

CẢM ƠN
Với những kiến thức đã học, kết hợp việc tham khảo tài liệu và sự hướng
dẫn của thầy giáo hướng dẫn em đã cố gắng đưa ra bản báo cáo đề tài tốt nghiệp
nghiệp có kiến thức tổng hợp xung quanh đề tài “Nghiên cứu tính năng bảo mật
trong SNMP version 2 và xây dựng chương trình mô phỏng”. Hi vọng khi đọc
bản báo cáo này tất cả các thầy cô và các bạn sinh viên có cái nhìn tổng quát và
chuyên sâu về tính năng bảo mật trong SNMP version 2, về giao thức quản trị
mạng SNMP cũng như ứng dụng trong quản trị mạng.
Sản phẩm của đợt làm đề tài tốt nghiệp của em là Xây dựng chương trình
mô phỏng về tính năng bảo mật của SNMP version 2. Em mong rằng kết hợp
việc đọc bản báo cáo này và xem sản phẩm thầy cô và các bạn sinh viên có thể sư
dụng dễ dàng các chức năng của phần mềm.
Trong quá trình làm đề tài em đã sư dụng và nắm vững hơn những kiến
thức đã học và học được thêm những kiến thức bổ ích mới mẻ. Không những vậy
mà em còn học tập được tinh thần làm việc có trách nhiệm và khả năng làm việc
độc lập.

1


Cuối cùng em xin chân thành cảm ơn tới tất cả các thầy cô và đặc biệt gưi
lời cám ơn chân thành tới thầy Ths.Nguyễn Anh Chuyên đã hướng dẫn tận tình
em trong đợt làm đề tài tốt nghiệp này .
Em xin chân thành cảm ơn!

LỜI MỞ ĐẦU
Tuy hình thành ở Việt Nam chưa lâu nhưng quản trị mạng nhanh chóng trở


thành một nghề “nóng” trong danh sách những công việc có độ hút lớn với giới
trẻ năng động. Thành thạo việc thiết kế các hệ thống an toàn mạng , quản lý cấu
hình tài nguyên, quản trị người dùng và dịch vụ mạng, nâng cao tính bảo mật ,
nắm vững các kĩ thuật xâm nhập cũng như những biện pháp phòng chống tấn
công hiệu quả đó cũng là công việc cơ bản của quản trị mạng ….
Do sự phát triển mạnh mẽ của công nghệ và dịch vụ truyền thông. Bùng
nổ của Internet, truy nhập thông tin toàn cầu và hình thức và dịch vụ đa dạng: dữ
liệu, thoại, video, vô tuyến và hữu tuyến dẫn tới sự cần thiết cho việc Quản trị
mạng.
Một doanh nghiệp ứng dụng công nghệ thông tin có quy mô lớn như ngân
hàng, bảo hiểm , hàng không , thương mại điện tư đều cần quản trị mạng , có thể
cần tới một phòng quản trị mạng có vài chục , thậm chí hàng trăm nhân viên phụ
trách hệ thống mạng.
Trong thời gian học tập tại trường em đã được học nhiều môn học dưới sự
chỉ bảo hướng dẫn của các thầy cô giáo Đại Học Công Nghệ Thông Tin Và
Truyền Thông với sự nỗ lực cố gắng của bản thân luôn cố gắng học hỏi trong nhà

2


trường và trong thực tế. Em chọn đề tài tốt nghiệp về Nghiên tính năng bảo mật
trong SNMP version 2 và xây dựng chương trình mô phỏng.
Do kiến thức còn hạn chế nên bài báo cáo không tránh khỏi những thiếu
xót. Em mong nhận được sự góp ý của thầy cô và các bạn.
Em xin chân thành cảm ơn!

3


THUẬT NGỮ VÀ VIẾT TẮT

ACL

Access Control List

Danh sách điều khiển truy cập

AT
ASN.1
BER
SNMP

Address Translation
Abstract Syntax Notation One
Basic Encoding Rules
Simple Network Management
Protocol
Management Information Base
Metropolitan Area Network
Request for Comments
Local Area Network
Open Systems Interconnection
Reference Model
Object IDentifier
Structure Management
Information
Internet Control Message
Protocol
External Gateway Protocol
Transmission Control Protocol
User Datagram Protocol

Internet Protocol
Internet Engineering Task Force

Dịch địa chỉ
Kí hiệu cú pháp trừu tượng
Quy tắc mã hóa cơ bản
Giao thức quản lý mạng đơn giản

MIB
MAN
RFC
LAN
OSI
OID
SMI
ICMP
EGP
Tcp
Udp
ip
IETF
RFC
VACM
VPN

Request for Comments
View-base Access Control
Model
Vitual Private Network


PDU

Protocol Data Unit

Cơ sở thông tin quản trị
Mạng khu vực đô thị
Đề nghị duyệt thảo và bình luận
Mạng máy tính cục bộ
Mô hình tham chiếu kết nối các hệ
thống mở
Định danh đối tượng
Cấu trúc thông tin quản trị
Giao thức kiểm soát thông báo
Internet
Giao thức cổng ngoài
Giao thức điều khiển truyền vận
Giao thức điều khiển người dùng
Giao thức mạng
Lực lượng chuyên trách kỹ thuật
kết nối mạng
Đề nghị duyệt thảo và bình luận
Mô hình điều khiển truy cập trên
cơ sở thẩm tra
Mạng riêng ảo
Đơn vị dữ liệu giao thức

4


CHƯƠNG I: TỔNG QUAN VỀ MẠNG MÁY TÍNH VÀ QUẢN TRỊ

MẠNG VỚI GIAO THỨC SNMP.
1.1 Tổng quan về mạng máy tính.
1.1.1 Mô hình OSI .

Hình 1.1: Mô hình OSI.
 Chức năng từng tầng.

Tầng 1(Vật lý): Cung cấp phương tiện truyền tin ,khởi động ,duy trì ,hủy bỏ
liên kết vật lý cho phép truyền các dòng dữ liệu ở dạng bit .
Tầng 2(Liên kết dữ liệu): Thiết lập - duy trì – hủy bỏ liên kết dữ liệu ,kiểm
soát luồng dữ liệu điểm –điểm, khắc phục sai sót truyền tin .
Tầng 3 (Mạng): Chọn đường đi trong mạng, chống tắc nghẽn trong mạng ,
kiểm soát luồng dữ liệu ở hai nút đầu cùng mạng ,cắt/hợp dữ liệu .
Tầng 4 (Giao vận): Kiểm soát luồng dữ liệu ở hai đầu cùng (End To End)
đảm bảo chất lượng dịch vụ truyền tin, ghép kênh/phân kênh.
Tầng 5 (Phiên): Liên kết giữa hai thực thể có nhu cầu trao đổi số liệu .Xác
định thông số điều khiển trao đổi số liệu .Đồng bộ phiên truyền thông.
Tầng 6 (Trình diễn ): Giới thiệu cấu trúc dữ liệu ,loại mã sư dụng , khóa
dịch vụ nén tin .
Tầng 7 (Ứng dụng): Các chương trình ứng dụng (SMTP,FPT,Telnet,…) cần
lưu ý đến giao diện người sư dụng và hệ thống cho thuận tiện .

5


1.1.2 Các công nghệ mạng máy tính.
1.1.2.1 Topo mạng.
Topology của mạng là cấu trúc hình học không gian mà thực chất là cách
bố trí phần tư của mạng cũng như cách nối giữa chúng với nhau. Thông thường
mạng có 3 dạng cấu trúc là: Mạng dạng hình sao (Star Topology), mạng dạng

vòng (Ring Topology) và mạng dạng tuyến (Linear Bus Topology). Ngoài 3 dạng
cấu hình kể trên còn có một số dạng khác biến tướng từ 3 dạng này như mạng
phân cấp, mạng full mesh, mạng partial mesh…
a. Mạng hình sao.

Mạng dạng hình sao bao gồm một trung tâm và các nút thông tin. Các nút
thông tin là các trạm đầu cuối, các máy tính và các thiết bị khác của mạng. Trung
tâm của mạng điều phối mọi hoạt động trong mạng với các chức nǎng cơ bản là:
-Xác định cặp địa chỉ gưi và nhận được phép chiếm tuyến thông tin và liên
lạc với nhau.
-Cho phép theo dõi và sư lý sai trong quá trình trao đổi thông tin.
-Thông báo các trạng thái của mạng...
Các ưu điểm của topo mạng hình sao:
-Hoạt động theo nguyên lý nối song song nên nếu có một thiết bị nào đó ở
một nút thông tin bị hỏng thì mạng vẫn hoạt động bình thường.
- Cấu trúc mạng đơn giản và các thuật toán điều khiển ổn định.
- Mạng có thể mở rộng hoặc thu hẹp tuỳ theo yêu cầu của người sư dụng.
Nhược điểm:
- Khả nǎng mở rộng mạng hoàn toàn phụ thuộc vào khả nǎng của trung
tâm. Khi trung tâm có sự cố thì toàn mạng ngừng hoạt động.
- Mạng yêu cầu nối độc lập riêng rẽ từng thiết bị ở các nút thông tin đến
trung tâm. Khoảng cách từ máy đến trung tâm rất hạn chế (100 m).
Nhìn chung, mạng dạng hình sao cho phép nối các máy tính vào một bộ tập
trung (HUB hay Switch) bằng cáp xoắn, giải pháp này cho phép nối trực tiếp
máy tính với HUB/Switch không cần thông qua trục BUS, tránh được các yếu tố

6


gây ngưng trệ mạng. Gần đây, cùng với sự phát triển switching hub, mô hình này

ngày càng trở nên phổ biến và chiếm đa số các mạng mới lắp.
b. Mạng hình tuyến (Bus Topology)

Theo cách bố trí hành lang các đường như hình vẽ thì máy chủ (host) cũng
như tất cả các máy tính khác (workstation) hoặc các nút (node) đều được nối về
với nhau trên một trục đường dây cáp chính để chuyển tải tín hiệu.
Tất cả các nút đều sư dụng chung đường dây cáp chính này. Phía hai đầu
dây cáp được bịt bởi một thiết bị gọi là terminator. Các tín hiệu và gói dữ liệu
(packet) khi di chuyển lên hoặc xuống trong dây cáp đều mang theo điạ chỉ của
nơi đến.
Ưu điểm của topomạng bus:
-

Dùng dây cáp ít, dễ lắp đạt
Không giới hạn độ dài cáp

Nhược điểm:
- Sẽ gây ra nghẽn mạng khi chuyển lưu lượng dữ liệu lớn
- Khi một trạm trên đường truyền bị hỏng thì các trạm khác cũng phải
ngừng hoạt động
c. Mạng dạng vòng (Ring Topology) .
Mạng dạng này, bố trí theo dạng xoay vòng, đường dây cáp được thiết kế
làm thành một vòng khép kín, tín hiệu chạy quanh theo một chiều nào đó. Các
nút truyền tín hiệu cho nhau mỗi thời điểm chỉ được một nút mà thôi. Dữ liệu
truyền đi phải có kèm theo địa chỉ cụ thể của mỗi trạm tiếp nhận.
Ưu điểm của topo mạng Ring:
-

Mạng dạng vòng có thuận lợi là có thể nới rộng ra xa, tổng đường dây cần
thiết ít hơn so với hai kiểu trên.


Nhược điểm:
-

Đường dây phải khép kín, nếu bị ngắt ở một nơi nào đó thì toàn bộ hệ thống
cũng bị ngừng.
d. Mạng dạng kết hợp
 Kết hợp hình sao và tuyến (Star/Bus Topology).

7


Cấu hình mạng dạng này có bộ phận tách tín hiệu (spitter) giữ vai trò thiết
bị trung tâm, hệ thống dây cáp mạng có thể chọn hoặc Ring Topology hoặc
Linear Bus Topology.
Ưu điểm của cấu hình này là mạng có thể gồm nhiều nhóm làm việc ở cách xa
nhau, ARCNET là mạng dạng kết hợpStar/Bus Topology. Cấu hình dạng này đưa
lại sự uyển chuyển trong việc bố trí đường dây tương thích dễ dàng đối với bất
cứ toà nhà nào.
 Kết hợp hình sao và vòng (Star/Ring Topology).

Cấu hình dạng kết hợp Star/Ring Topology, có một "thẻ bài" liên lạc
(Token) được chuyển vòng quanh một cái HUB trung tâm. Mỗi trạm làm việc
(workstation) được nối với HUB - là cầu nối giữa các trạm làm việc và để tǎng
khoảng cách cần thiết.
1.1.2.2 LAN.
Mạng cục bộ (LAN-Local Area Network) là hệ thống truyền thông tốc độ
cao được thiết kế để nối các máy tính và các thiết bị xư lý dữ liệu khác cùng hoạt
động với nhau trong một khu vực địa lý nhỏ như ở một tầng của tòa nhà ,hoặc
trong một tòa nhà… Một số mạng LAN có thể kết nối lại với nhau trong một khu

vực làm việc.
Các mạng LAN trở nên thông dụng vì nó cho phép người sư dụng dùng
chung những tài nguyên quan trọng như máy in mầu, ổ đĩa CD-ROM, các sản
phầm mềm ứng dụng chung những tài nguyên quan trọng như máy in mầu, ổ đĩa
CD-ROM ,các phầm mền ứng dụng và những thông tin cần thiết khác .Trước khi
phát triển công nghệ LAN các máy tính là độc lập với nhau, bị hạn chế bởi số
lượng các chương trình tiền ích, sau khi kết nối mạng rõ ràng hiệu quả của chúng
tăng lên gấp bội. Để tận dụng hết những ưu điểm của mạng LAN người ta đã kết
nôi các LAN riêng biệt vào mạng chính yếu diện rộng.

1.1.2.3 WAN.

8


WAN (Wide Area Network)– Mạng diện rộng, kết nối máy tính trong nội
bộ quốc gia hay giữa các quốc gia trong cùng một châu lục. Thông thường kết
nối này thường được thực hiện thông qua mạng viễn thông.
1.1.2.4 VPN.
Mạng riêng ảo hay VPN (viết tắt cho Vitual Private Network) là một
mạng dành riêng để kết nối các máy tính của các công ty, tập đoàn hay các tổ
chức với nhau thông qua mạng Internet công cộng.
1.1.2.5 MAN.
MAN (Metropolitan Area Network) kết nôi các máy tính trong phạm vi một
thành phố. Kết nối này được thực hiện thông qua các môi trường truyền thông
tốc độ cao (50-100Mbit/s).
1.2 Tổng quan về quản trị mạng và giao thức SNMP.
1.2.1 Khái niệm về quản trị mạng.
Do sự phát triển mạnh mẽ của công nghệ và dịch vụ truyền thông:
+ Bùng nổ của Internet, truy nhập thông tin toàn cầu.

+ Hình thức và dịch vụ đa dạng: dữ liệu, thoại, video, vô tuyến và hữu
tuyến dẫn tới sự cần thiết cho việc Quản trị mạng.
- Quản trị mạng: Được định nghĩa là công việc quản lý mạng lưới gồm:
+ Cũng cấp các dịch vụ hỗ trợ.
+ Đảm bảo mạng lưới hoạt động hiểu quả.
+ Đảm bảo chất lượng mạng lưới cung cấp đúng như tiêu chuẩn đặt ra .
+ Quản trị hệ thống là công việc cung cấp các dịch vụ hỗ trợ đảm bảo sự
tin cậy nâng cao hiệu quả hoạt động của hệ thống đảm bảo chất lượng dịch vụ
cung cấp trên hệ thống.
Như vậy: Quản trị mạng được hiểu khái quát là tập hợp công tác quản trị mạng
lưới và quản trị hệ thống.
1.2.2 Công việc quản trị mạng.
Công việc của quản trị mạng hiện nay:
+ Quản trị cấu hình tài nguyên mạng tức là quản lý kiểm soát cấu hình quản
lý các các tài nguyên cấp phát cho các đối tượng sư dụng khác nhau.

9


+ Quản trị người dùng và dịch vụ mạng, công tác quản lý người sư dụng
trên hệ thống đảm bảo dịch vụ cung cấp có độ tin cậy cao chất lượng đảm bảo
theo các tiêu chí đề ra.
+Quản trị hiệu năng và hoạt động mạng là công tác quản lý và giám sát hoạt
động mạng đảm bảo các thiết bị, hệ thống và dịch vụ trên mạng hoạt động ổn
định, hiệu quả.
+Quản trị an ninh và an toàn mạng bao gồm công tác quản lý và giám sát
mạng lưới các hệ thống đảm bảo phòng tránh các truy nhập trái phép có tính phá
hoại các hệ thống dịch vụ hoặc với mục tiêu đánh cắp thông tin.
1.2.3 Giới thiệu về giao thức SNMP.
Về bản chất SNMP là một tập các thao tác cho phép người quản trị hệ

thống có thể thay đổi trạng thái của các thiết bị (có hỗ trợ SNMP). Ví dụ, ta có
thể sư dụng SNMP để tắt một interface nào đó trên router của mình, theo dõi hoạt
động của card Ethernet, hoặc kiểm soát nhiệt độ trên switch và cảnh báo khi
nhiệt độ quá cao.
 SNMP là giao thức quản lý mạng đơn giản

SNMP (Simple Network Management Protocol) là “giao thức quản lý mạng đơn
giản”. 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ý(có thể theo dõi, lấy thông tin, được thông
báo, tác động để hệ thống hoạt động như ý muốn). VD 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.

10


+ 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.
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.
 Ư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í .
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.
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. VD 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.
 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à

11


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.
1.3 Các khái niệm nền tảng của SNMP.
1.3.1 Các thành phần trong SNMP
Mô hình tổ chức của SNMP bao gồm 3 thành phần : các trạm quản lý
mạng (network management station), các thành tố mạng (network element) và
giao thức quản trị mạng SNMP.

Hình 1.2: Các thành phần trong SNMP.
 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. Một trạm quản trị ít nhất có:
- Một bộ các ứng dụng quản trị để phân tích dữ liệu, khôi phục sự cố…
- Một giao diện để người quản trị mạng có thể giám sát và điều khiển
mạng.
- Khả năng thể hiện các yêu cầu của người quản trị mạng trong việc kiểm
soát thực tế và điều khiển các phần tư từ xa trong mạng.
- Một cơ sở dữ liệu của thông tin lấy từ các MIB của tất cả các thành phần
được quản trị trong 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 và được quản lý bởi network management station. Như vậy element bao
gồm device, host và application. 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.

12



Hình 1.3: (a) Một Manager-một Agent ,(b) Nhiều Managers-một Agent .


SNMP agent: SNMP agent là một tiến trình (process) chạy trên network

element, có nhiệm vụ cung cấp thông tin của element cho station, nhờ đó station
có thể quản lý được element. Nói cách khác, Application chạy trên station và
agent chạy trên element là 2 tiến trình SNMP trực tiếp liên hệ với nhau.
 Giao thức SNMP: dùng để liên kết trạm quản trị và các Agent. Giao thức bao

gồm 3 toán tư Get ( cho phép trạm quản trị thu nhận giá trị của các đối tượng tại
Agent), Set ( cho phép trạm quản trị thiết lập giá trị của các đối tượng tại Agent),
Trap ( cho phép 1 Agent thông báo cho trạm quản trị các sự kiện).
Các ví dụ minh họa sau đây sẽ làm rõ hơn các khái niệm này :

Hình 1.4: Liên kết trạm quản trị và các Agent .
+ Để dùng một máy chủ (= station) quản lý các máy con (= element) chạy
HĐH Windows thông qua SNMP thì bạn phải : cài đặt một phần mềm quản lý
SNMP (= application) trên máy chủ, bật SNMP service (= agent) trên máy con.
+ Để dùng một máy chủ (= station) giám sát lưu lượng của một router (=
element) thì bạn phải : cài phần mềm quản lý SNMP (= application) trên máy
chủ, bật tính năng SNMP (= agent) trên router.

13


1.3.2 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. 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ỗ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 object có thể có nhiều giá trị cùng loại. Chẳng hạn một
thiết bị có thể có nhiều tên, có nhiều Mac address. Một object chỉ có một OID, vì
vậy để chỉ ra các giá trị khác nhau của cùng một object thì ta dùng thêm một
phân cấp nữa: sub-id .
Các object có thể có nhiều giá trị hoặc 1 giá trị thì luôn luôn được viết dưới
dạng có phân cấp con sub-id. Ví dụ một thiết bị dù chỉ có 1 tên thì nó vẫn phải
viết là sysName.0 hay 1.3.6.1.2.1.1.5.0.
Đối với các object có nhiều giá trị thì các chỉ số của phân cấp con không
nhất thiết phải liên tục hay bắt đầu từ 0. Ví dụ một thiết bị có 2 mac address thì
có thể chúng được gọi là ifPhysAddress.23 và ifPhysAddress.125645.
OID của các object phổ biến có thể được chuẩn hóa, hoặc tự định nghĩa. Để
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 đó.
Một trong các ưu điểm của SNMP là nó được thiết kế để chạy độc lập với
các thiết bị khác nhau. Chính nhờ việc chuẩn hóa OID mà ta có thể dùng một
SNMP application để lấy thông tin các loại device của các hãng khác nhau.
1.3.3 Object access .
Mỗi object có quyền truy cập là READ_ONLY (chỉ đọc) hoặc
READ_WRITE (chỉ ghi). Mọi object đều có thể đọc được nhưng chỉ những
object có quyền READ_WRITE (đọc _ghi) mới có thể thay đổi được giá trị.

14


VD : Tên của một thiết bị (sysName) là READ_WRITE, ta 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, dĩ nhiên ta không thể thay đổi số port của nó.
1.3.4 SMI và MIB .
MIB (cơ sở thông tin quản lý) là một cấu trúc dữ liệu gồm các đối tượng
được quản lý (managed object), được dùng cho việc quản lý các thiết bị chạy trên
nền TCP/IP. Cấu trúc mô tả MIB gọi là SMI ( Structure Management
Information). SMI nhận dạng các kiểu dữ liệu trong MIB và chỉ rõ các tài nguyên
trong MIB được miêu tả và đặt tên như thế nào. SMI duy trì tính đơn giản và khả
năng mở rộng trong MIB. SMI không cung cấp cách tạo ra các cấu trúc dữ liệu
phức tạp. Các MIB sẽ chứa các loại dữ liệu do nhà cung cấp tạo ra.
Trước khi đi vào cấu trúc của mib, ta sơ lược qua một chuẩn gọi là ASN.1:
+ ASN.1 (Abstract Syntax Notation One) là chuẩn mô tả các luật mã hóa
dữ liệu (encoding rules) cho các hệ thống truyền thông số. Một trong 3 hệ thống
luật mã hóa trong ASN.1 là BER (Basic Encoding Rules). BER được SNMP
dùng làm phương pháp mã hóa dữ liệu. Vì vậy trong các RFC liên quan đến
SNMP có dòng ghi chú “use of the basic encoding rules of ASN.1”.
+ BER mô tả nhiều kiểu dữ liệu như : BOOLEAN, INTEGER,
ENUMERATED, OCTET STRING, CHOICE, OBJECT IDENTIFIER, NULL,
SEQUENCE,….
1.3.4.1 SMIv1
Để cung cấp các phương pháp tiêu chuẩn biểu diễn thông tin quản trị, SMI
cần làm các việc:
+ Cung cấp tiêu chuẩn kỹ thuật để định nghĩa cấu trúc MIB đặc biệt.
+ Cung cấp tiêu chuẩn kỹ thuật để định nghĩa các đối tượng đơn lẻ, bao
gồm cú pháp và giá trị mỗi đối tượng.
+Cung cấp tiêu chuẩn kỹ thuật để mã hoá các giá trị đối tượng.
Các đối tượng được quản lý bao gồm 3 thuộc tính cơ bản sau:
a. Name

15



Name là định danh của object, có kiểu OBJECT IDENTIFIER. OBJECT
IDENTIFIER là một chuỗi thứ tự các số nguyên biểu diễn các nút (node) của một
cây từ gốc đến ngọn.
Gốc (root node) trong mib 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ý.
Dưới node iso(1), tổ chức ISO thiết kế 1 node dành cho các tổ chức khác
là org(3). Dưới org(3) có nhiều node con, một node được dành riêng cho US
Department of Defense, dod(6).
Tất cả mọi thứ thuộc về cộng đồng Internet đều nằm dưới
.iso.org.dod.internet, mọi object của các thiết bị TCP/IP đều bắt đầu với prefix .
1.3.6.1 (dấu chấm đầu tiên biểu diễn rằng .iso là cây con của root, và root thì
không có tên). RFC1155 định nghĩa các cây con như sau :

Hình 1.5: Định nghĩa các cây con trong RFC1155.
+ directory : dành riêng cho tương lai nếu dịch vụ OSI Directory được sư
dụng trên internet.
+ mgmt (management) : tất cả các mib chuẩn chính thức của internet đều
nằm dưới mgmt. Mỗi khi một RFC mới về mib ra đời thì tổ chức IANA
(Internet Assigned Numbers Authority) sẽ cấp cho mib đó một object-identifier
nằm dưới mgmt.
+ experimental : dùng cho các object đang trong quá trình thư nghiệm,
được IANA cấp phát.

16



+ private : dùng cho các object do người dùng tự định nghĩa, tuy nhiên các
chỉ số cũng do IANA cấp. Tất cả các đơn vị cung cấp hệ thống mạng có thể đăng
ký object-identifier cho sản phẩm của họ, chúng được cấp phát dưới node
private.enterprises.

Hình 1.6: SMIv1(RFC1155)
b. Syntax
Syntax mô tả kiểu của object là gì. Syntax được lấy từ chuẩn ASN.1
nhưng không phải tất cả các kiểu đều được hỗ trợ. SMIv1 chỉ hỗ trợ 5 kiểu
nguyên thủy (primitive types) lấy từ ASN.1 và 6 kiểu định nghĩa thêm (defined
types). Primitive types : INTEGER, OCTET-STRING, OBJECT-IDENTIFIER,
NULL, SEQUENCE.
Defined types :
+ NetworkAddress : kiểu địa chỉ internet (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à -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 -1.

17


+ TimeTicks : kiểu số nguyên không âm, chỉ khoảng thời gian trôi qua kể
từ một thời điểm nào đó, tính bằng phần trăm giây. VD từ khi hệ thống khởi
động đến hiện tại là 1000 giây thì giá trị sysUpTime=100000.
+ 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.

c. Encoding
Đối tượng quản lý được mã hóa thành một chuỗi octet sư dụng luật mã
hóa cơ sở BER (Basic Encoding Rules). BER định nghĩa các các đối tượng được
mã hóa và giải mã để chúng có thể truyền đi thông qua môi trường Ethernet.
Cấu trúc kiểu OBJECT-TYPE
RFC1155 quy định cấu trúc của một record “định nghĩa đối tượng quản
lý” (A Managed Object Definition), kiểu dữ liệu này ọi là OBJECT-TYPE. Một
“Managed Object Definition” có kiểu OBJECT-TYPE bao gồm các trường :
+ SYNTAX : kiểu của object, là một trong các primitive types hoặc
defined types ở trên.
+ ACCESS : mức truy nhập của object, mang một trong các giá trị readonly, read-write, write-only, not-accessible.
+ STATUS : mang một trong các giá trị mandatory (bắt buộc phải hỗ trợ),
optional (có thể hỗ trợ hoặc không), obsolete (đã bị thay thế). Một agent nếu hỗ
trợ một chuẩn mib nào đó thì bắt buộc phải hỗ trợ tất cả các object có
status=mandatory, còn status=optional thì có thể hỗ trợ hoặc không.
+ DESCRIPTION : dòng giải thích cho ý nghĩa của object.
SMIv1 định nghĩa một vài data type được sư dụng để quản lý mạng và các
thiết bị mạng.

Bảng 1.1: Datatype trong SMIv1.
Datatype
INTEGER

Mô tả
Một số 32 bít ,được dung cho trạng thái của một đối tượng
hoặc cho việc định danh các đối tượng. Ví dụ trạng thái của
một router có thể là up hoặc down, hoặc testing thì tương
ứng với các giá trị 1 là up, 2 là down và 3 là testing .Giá trị 0
18



không được sư dụng trong trường hợp này. (RFC1155)
OCTET STRING Chuỗi văn bản, nhưng đôi khi cũng được sư dụng để đại diện
cho các địa chỉ vật lý .
NULL
Không hỗ trợ trong SNMP
OBJECT
Xác định đối tượng quản lý theo cấu trúc cây . Ví dụ
IDENTIFIER
1.3.6.1.4.1.9 mô tả thiết bị của Cisco .
SEQUENCE
Danh sách các đối tượng ASN.1(có thể rỗng ).
SEQUENCE OF Định nghĩa đối tượng quản lý tạo thành từ kiểu ASN.1
Sequence .
IpAddress
Địa chỉ Ipv4 32bit .
NetworkAddress Tương tự như các loại IpAddress , Nhưng có thể đại diện cho
các địa chỉ mạng khác nhau .
Counter
Là số nguyên không âm chỉ được tăng không giảm , giá trị
lớp nhất -1(4.294.967.295) .Khi counter đạt giá trị lớn nhất
nó quay lại tăng từ 0 .
Gauge
Là một số nguyên không âm có thể tăng hoặc giảm , giá trị
lớn nhất là -1 .Khi đạt giá trị lớn nhất nó dừng lại và khởi tạo
lại .
TimeTicks
Là một số nguyên không âm có giá trị từ 0 đến
-1(4.294.967.295). Dùng để đếm số phần trăm của giây , thời
gian hoạt động trên thiết bị được đo bằng kiểu dữ liệu này .

Opaque
Kiểu này hỗ trợ khả năng chuyển dữ liệu tùy ý .Dữ liệu được
mã hóa thành một chuỗi OCTET .
1.3.4.2 SMIv2
SMIv2 (Structure of Management Information version 2) được trình bày
trong RFC2578, bao gồm nhiều thay đổi trong cấu trúc mib file. Phần này trình
bày những thay đổi chủ yếu nhất.
Các kiểu dữ liệu mới hoặc thay đổi so với SMIv1
+ INTEGER32 : số nguyên nằm trong khoảng - and -1 (-2147483648 to
2147483647 decimal).
+ OCTET STRING : kiểu chuỗi ký tự, độ dài tối đa 65535.
+ OBJECT IDENTIFIER : định danh của object, không quá 128 phần tư
(sub-identifier), mỗi phần tư là số nguyên không quá -1.
+ COUNTER32 : kiểu số nguyên không âm tăng dần, tối đa là -1, khi
vượt giá trị tối đa thì quay lại từ 0. Counter32 không bắt buộc giá trị bắt đầu phải
là 0.

19


+ GAUGE32 : kiểu số nguyên không âm tăng hoặc giảm, giới hạn trong
khoảng 0 ~ -1, nó không thể vượt ra giới hạn này.
+ COUNTER64 : kiểm số nguyên không âm tăng dần, tối đa là -1
(18446744073709551615).
+ UNSIGNED32 : kiểu số nguyên từ 0 ~-1.
1.3.4.3 MIB
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.
Hình sau minh họa MIB tree:


Hình 1.7: MIB tree.
Một node trong cây là một object, có thể được gọi bằng tên hoặc id .Các
objectID trong MIB được sắp xếp thứ tự nhưng không phải là liên tục, khi biết
một OID thì không chắc chắn có thể xác định được OID tiếp theo trong MIB. VD
trong chuẩn mib-2 thì object ifSpecific và object atIfIndex nằm kề nhau nhưng
OID lần lượt là 1.3.6.1.2.1.2.2.1.22 và 1.3.6.1.2.1.3.1.1.1
Muốn hiểu được một OID nào đó thì cần có file MIB mô tả OID đó. Một
MIB file không nhất thiết phải chứa toàn bộ cây ở trên mà có thể chỉ chứa mô tả

20


cho một nhánh con. Bất cứ nhánh con nào và tất cả lá của nó đều có thể gọi là
một mib.
Một manager có thể quản lý được một device chỉ khi ứng dụng SNMP
manager và ứng dụng SNMP agent cùng hỗ trợ một MIB. Các ứng dụng này
cũng có thể hỗ trợ cùng lúc nhiều MIB.
MIB-2
Mib-2 là một trong những mib được hỗ trợ rộng rãi nhất. Nếu một thiết
bị được tuyên bố là có hỗ trợ SNMP thì hãng sản xuất phải chỉ ra nó hỗ trợ các
RFC nào, và thường là RFC1213.

Vị trí của MIB-2 trong mib như sau :

Hình 1.8: MIB-2 trong MIB .
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ị.

21


1.4 Các phương thức và cấu trúc bản tin SNMP .
1.4.1 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.2: Các phương thức hoạt động của SNMPv1.
Bản tin / phương thức
GetRequest
GetNextRequest
SetRequest
GetResponse
Trap

Mô tả tác dụng
Manager gưi GetRequest cho agent để yêu cần cung
cấp thông tin nào đó dựa vào ObjectID().
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.
Manager gưi SetRequest cho agent để đặt giá trị cho
đối tượng của agent dựa vào ObjectID.
Agent gưi GetResponse cho Manager để trả lời khi
nhận được GetRequest/GetNextRequest.
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.


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 .
1.4.1.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.4.1.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.

22


1.4.1.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à .
Chỉ những object có quyền READ_WRITE mới có thể thay đổi được giá trị.

1.4.1.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 đó.
1. 4.1.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

23


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 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”
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

24


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ủacác trap sender bất kỳ, ta có thể đọc và hiểu các

generic trap khi chúng xảy ra; nhưng ta 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.9: Các phương thức của SNMPv1.
Đố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.4.2 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.

Hình 1.10: Cấu trúc một bản tin SNMP .
+ Version : v1 = 0, v2c = 1, v2u = 2, v3 = 3.

25


×