You are on page 1of 76

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

Hoàng Quốc Hải

TRIỂN KHAI DỊCH VỤ


GIÁM SÁT THIẾT BỊ ĐẦU CUỐI

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công nghệ thông tin

HÀ NỘI - 2010
ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

Hoàng Quốc Hải

TRIỂN KHAI DỊCH VỤ


GIÁM SÁT THIẾT BỊ ĐẦU CUỐI

KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY

Ngành: Công nghệ thông tin

Cán bộ hƣớng dẫn: ThS. Nguyễn Nam Hải

HÀ NỘI - 2010
Lời cảm ơn

Sau 3 tháng làm khoá luận tốt nghiệp, đƣợc sự hƣớng dẫn, chỉ bảo tận tình của
thầy giáo Nguyễn Nam Hải cùng các thầy trong Trung Tâm Máy Tính và sự cố gắng
nỗ lực của bản thân, em đã hoàn thành khoá luận tốt nghiệp với đề tài “TRIỂN KHAI
DỊCH VỤ GIÁM SÁT THIẾT BỊ ĐẦU CUỐI”
Em xin chân thành cảm ơn Thầy và các thầy cô giáo khoa Công nghệ thông tin
trƣờng Đại Học Công Nghệ - Đại Học Quốc Gia Hà Nội đã đào tạo, truyền đạt cho em
những kiến thức và kinh nghiệm trong lĩnh vực Công nghệ thông tin nói riêng và
những kiến thức khác nói chung để em có đƣợc những kiến thức tổng hợp trƣớc khi ra
trƣờng.
Xin cảm ơn bạn bè đã giúp đỡ tài liệu và trao đổi kinh nghiệm để hoàn thành
khoá luận tốt nghiệp.

Chân thành cảm ơn!

Hà Nội, Tháng 5-2010

Ngƣời thực hiện

Hoàng Quốc Hải


TÓM TẮT

Với bất kỳ một hệ thống mạng nào cũng cần phải có giám sát và quản lý chặt
chẽ. Và với một hệ thống mạng với nhiều server và rất nhiều client, các thiết bị mạng:
printer, switch, router, modem… ngƣời quản trị mạng không thể giám sát và quản lý
bằng cách tới từng thiết bị để xem chúng có hoạt động hay không, có vấn đề gì trục
trặc với chúng. Ngoài ra, việc vi phạm bản quyền phần mềm ngày càng đƣợc quan
tâm, với một hệ thống, ngƣời dùng đƣợc tự do cài đặt sẽ dẫn tới không thể kiểm soát
đƣợc các ứng dụng có bản quyền hay không ở các máy trạm. Vậy phải cần có một giải
pháp nhằm quản lý và giám sát hệ thống từ xa.
Từ những nhu cầu trên, khóa luận này tập trung vào nghiên cứu và thiết lập hệ
thống giám sát các thiết bị đầu cuối (các máy tính ngƣời dùng cuối).Trọng tâm là giám
sát các ứng dụng cài đặt trên các client trong hệ thống; triển khai, cài đặt và xóa ứng
dụng đã cài đặt trên client, các thông tin về các thiết bị phần cứng trên client(BIOS,
RAM,CPU, Monitor..), và các thiết bị mạng kết nối trong hệ thống (router, switch,
printer…) dựa trên nền tàng hệ thống mã nguồn mở OCS Inventory NG. OCS
Inventory NG là hệ thống giám sát mạnh mẽ, đơn giản và tiêu tốn ít tài nguyên cũng
nhƣ băng thông mạng.Vì vậy, OCS Inventory NG ngày càng đƣợc rất nhiều quản trị
mạng chuyên nghiệp đánh giá cao và đƣợc sử dụng rộng dãi trên toàn cầu.
Mục Lục Trang
CHƢƠNG 1
GIỚI THIỆU CHUNG ............................................................................................ 1
1.1 Giới thiệu ..................................................................................................... 1
1.2 Mục đích của khóa luận ............................................................................... 1
1.3 Kết quả đạt đƣợc .......................................................................................... 2
CHƢƠNG 2
TỔNG QUAN VỀ HỆ THỐNG GIÁM SÁT OCS INVENTORY NG ................. 3
2.1 Chức năng của OCS Inventory NG ............................................................. 3
2.2 Đặc điểm ...................................................................................................... 6
2.3 Kiến trúc và tổ chức hoạt động .................................................................... 7
2.4 Các Hệ điều hành hỗ trợ OCS Inventory NG .............................................. 9
CHƢƠNG 3
TỔNG QUAN VỀ CẤU HÌNH HỆ THỐNG OCS INVENTORY NG ............... 11
3.1 Cài đặt OCS Inventory NG server ............................................................. 11
3.2 Cài đặt Comunication Server yêu cầu PERL modules .............................. 12
3.3 Cài đặt Administrator console yêu cầu PHP modules ............................... 13
3.4 Cài đặt manager server .............................................................................. 14
3.5 Cài đặt agent trên client computers............................................................. 24
3.5.1 Cài đặt Agent trên máy Windows client .............................................. 25
3.5.1.1 Nên chọn phiên bản Windows agent nào ? ........................................ 25
3.5.1.2 Xác định sử dụng service hay chế độ stand alone agent? ................. 27
3.5.1.3 Cài đặt Agent theo cách sử dụng Windows service. ......................... 28
3.5.2 Cài đặt agent trên client LINUX .......................................................... 30
3.6 Backup và restore cơ sở dữ liệu ................................................................. 32
3.6.1 Backup cơ sở dữ liệu ............................................................................ 32
3.6.2 Restore cơ sở dữ liệu. ........................................................................... 32
CHƢƠNG 4
CÁC DỊCH VỤ GIÁM SÁT VÀ TRIỂN KHAI ỨNG DỤNG TỪ XA .............. 33
4.1 Các dịch vụ giám sát ................................................................................... 33
4.1.1 Giám sát máy trạm ............................................................................... 33
4.1.2 Sử dụng tính năng IP Discover giám sát các thiết bị mạng ................. 33
4.2 Triển khai các gói phần mềm hoặc thực hiện các câu lệnh trên các máy
trạm. ........................................................................................................... 36
4.2.1 Tạo gói ................................................................................................. 40
4.2.2 Triển khai gói ..................................................................................... 42
CHƢƠNG 5
KẾT QUẢ ĐẠT ĐƢỢC SAU KHI NGHIÊN CỨU VÀ TRIỂN KHAI HỆ
THỐNG GIÁM SÁT OCS INVENTORY NG TRÊN HỆ THỐNG MẠNG
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ .................................................................... 55
5.1 Giới thiệu hệ thống mạng của trƣờng Đại Học Công Nghệ ...................... 55
5.2 Cài đặt và triển khai ................................................................................... 56
5.3 Kết quả giám sát ........................................................................................ 56
5.3.1 Giám sát các máy trạm .......................................................................... 56
5.3.2 Giám sát các thiết bị mạng .................................................................... 61
CHƢƠNG 6
NHẬN XÉT, ĐÁNH GIÁ VỀ HỆ THỐNG OCS INVENTORY NG ................. 62
6.1 Ƣu điểm ..................................................................................................... 62
6.1.1 Khả năng mở rộng ................................................................................. 62
6.1.2 Khả năng giám sát ................................................................................. 64
6.2 Nhƣợc điểm................................................................................................ 64
6.2.1 Khả năng giám sát: ................................................................................ 64
6.2.2 Độ an toàn ............................................................................................. 65
6.2.3 Giao diện sử dụng ................................................................................. 66
Tài liệu tham khảo: ............................................................................................... 67
Danh mục các hình và bảng Trang
Hình 2.1: Tổ chức hoạt động hệ thống giám sát OCS Inventory NG ............................... 7
Hình 2.2: Cấu trúc hoạt động của hệ thống giám sát OCS inventory NG ........................ 8
Hình 4.1: Sơ đồ cấu trúc triển khai gói phần mềm sử dụng OCS Inventory NG .............. 38
Hình 4.2: Lựa chọn Tạo gói .............................................................................................. 40
Hình 4.3: Cửa sổ tạo gói. .................................................................................................. 41
Hình 4.4: Tạo gói sử dụng lệnh Launch ........................................................................... 42
Hình 4.5: Phân mảnh gói .................................................................................................. 43
Hình 4.6: Tạo gói sử dụng lựa chọn Execute ................................................................... 44
Hình 4.7: Phân mảnh gói khi sử dụng lựa chọn Execute ................................................. 44
Hình 4.8: Sử dụng lựa chọn Execute để thực thi một lệnh tới máy trạm ......................... 45
Hình 4.9: Tạo gói sử dụng lựa chọn Store ........................................................................ 46
Hình 4.10: Phân mảnh gói khi lựa chọn Store................................................................... 47
Hình 4.11: Cửa sổ lựa chọn kích hoạt gói ........................................................................ 47
Hình 4.12: Danh sách các gói đã tạo ................................................................................ 48
Hình 4.13: Điền địa chỉ cho phép agent tải về các mảnh của gói và file infor. ............... 48
Hình 4.14: Tìm kiếm các máy chạy hệ điều hành Windows ............................................ 49
Hình 4.15: Lựa chọn triển khai gói .................................................................................. 49
Hình 4.16: Kích hoạt triển khai ......................................................................................... 49
Hình 4.17: Trạng thái triển khai gói. ................................................................................ 50
Hình 4.18: Tạo file chứng thực SSL ................................................................................. 53
Hình 5.1: Sơ đồ logic hệ thống mạng trƣờng Đại học Công Nghệ. ................................. 55
Hình 5.2: Sơ đồ hệ thống mạng triển khai OCS Inventory NG ....................................... 56
Hình 5.3: Các máy ở phòng Thực hành số 2 .................................................................... 57
Hình 5.4: Thông tin giám sát các máy trạm. .................................................................... 57
Hình 5.5: Thông tin chung về máy CLASS02-02 ............................................................ 58
Hình 5.6: Thông tin về các phần mềm cài đặt trên máy CLASS02-02 ............................ 58
Hình 5.7: Thông tin về BIOS ........................................................................................... 59
Hình 5.8: Thông tin về CPU ............................................................................................. 59
Hình 5.9: Thông tin về RAM ........................................................................................... 59
Hình 5.10: Thông tin về các thiết bị nhập ........................................................................ 59
Hình 5.11: Thông tin về ổ cứng ........................................................................................ 59
Hình 5.12: Các trình điểu khiển thiết bị ........................................................................... 59
Hình 5.13 Thông tin về card mạng ................................................................................... 60
Hình 5.14 Thông tin về màn hình ..................................................................................... 60
Hình 5.15 Thông tin về trạng thái quản lý. ....................................................................... 60
Hình 5.16: Các thông tin về Âm thanh, card màn hình và các cổng cắm ........................ 60
Hình 5.17 Thông tin các máy in ...................................................................................... 61
Hình 5.18 Một số thông tin về Access Point và một số thiết bị khác tại Trung Tâm
Máy Tính… ....................................................................................................................... 61

Bảng 1 Các thành phần máy ngƣời dùng cuối mà hệ thống có thể giám sát .................... 3
Bảng 2 Các trạng thái triển khai ........................................................................................ 50
Bảng ký hiệu, chữ viết tắt
Tên viết tắt Tên đầy đủ Ý nghĩa
Host Dùng để chỉ các thiết bị
mạng, các máy đầu cuối
đƣợc giám sát…(tất cả
các thiết bị tham gia vào
mạng đều đƣợc gọi
chung là host)
OCS Inventory NG Open Computer and Software Tên phần mềm sử dụng để
Next Genaration giám sát, thống kê các
thiết bị
Comunication Server Máy chủ giao tiếp nhận
các báo cáo của các máy
trạm.
plugin Là các ứng dụng tích hợp,
hỗ trợ cho hoạt động của
một phần mềm.
RC Release Candidate (các phần mềm) đƣa ra
dùng thử
Source code Mã nguồn
Web admin console Cửa sổ web quản trị
scripts language Ngôn ngữ kịch bản
SNMP Simple Network Management Giao thức quản lý mạng.
Protocol
CHƢƠNG 1

GIỚI THIỆU CHUNG

1.1 Giới thiệu

Trên thực tế, có nhiều hệ thống mạng xây dựng nhƣng chƣa đƣợc quan tâm đúng
mức trong việc giám sát hoạt động của chúng. Việc sử dụng không đúng cách của
ngƣời dùng cuối hoặc do các thành phần mạng bị lỗi khiến ngƣời quản trị mạng rất vất
vả đề phát hiện và kịp thời sửa chữa. Do đó, một hệ thống giám sát thiết bị đầu cuối
với một hệ thống mạng là rất cần thiết.
Hiện nay có rất nhiều hệ thống giám sát và quản lý đƣợc xây dựng để trợ giúp
ngƣời quản trị trong việc giám sát và quản lý hệ thống mạng của mình. Từ những phần
mềm thƣơng mại nhƣ HPopen view, solarwinds… tới những hệ thống mã nguồn mở
nhƣ: Nagios, zabbix, cati, OCS Inventory NG. Các hệ thống ít nhiều đều hƣớng đến
việc giám sát các thiết bị đầu cuối, nhƣng mỗi hệ thông có những tính năng nổi trội
khác nhau và phần lớn dựa trên giao thức SNMP. Nhƣng với OCS Inventory NG lại sử
dụng trên nền tảng TCP/IP để giám sát. Khóa luận này tập trung vào việc nghiên cứu
và triển khai một hệ thống giám sát dựa trên hệ thống mã nguôn mở OCS Inventory
NG.
Từ khi ra đời Open Computer and Software (OCS) Inventory Next Generation
(NG) (http://www.ocsinventory-ng.org/ ) đang tiếp tục phát triển và đƣợc cộng đồng
rất quan tâm, đóng góp các ý kiến và mã nguồn làm cho tính năng của OCS Inventory
NG ngày càng đa dạng và hoàn thiện. OCS Inventory NG có diễn đàn ùng để hỗ trợ,
trao đổi ý kiến (http://forums.ocsinventory-ng.org/) và các tài liệu hƣớng dẫn sử dụng
trên wiki(http://wiki.ocsinventory-ng.org/) giúp ngƣời dùng dễ dàng trong sử dụng.
Phiên bản đầu tiên 1.0 RC1 ra đời vào 28-12-2005, phiên bản hiện tại là 1.3.2 chính
thức vừa mới ra đời ngafy-05-2010.

1.2 Mục đích của khóa luận

Khóa luận nhằm tìm hiểu về hệ thống giám sát thiết bị đầu cuối và tập trung
nghiên cứu về khả năng của hệ thống OCS Inventory NG. Nó có những ƣu điểm gì

1
cho công việc quản trị mạng cũng nhƣ những hạn chế của nó? Cách thức nó hoạt động
nhƣ thế nào? và triển khai trên hệ thống mạng của trƣờng Đại Học Công Nghệ.

1.3 Kết quả đạt đƣợc

Sau một thời gian tìm hiểu và nghiên cứu, tôi đã nắm bắt đƣợc cách thức hoạt
động của hệ thống giám sát thiết bị đầu cuối nói chung và cách thức hoạt động cũng
nhƣ chức năng của hệ thống giám sát thiết bị đầu cuối OCS Inventory NG nói riêng.
Và đã triển khai thành công trên hệ thống mạng của trƣờng Đại Học Công Nghệ đồng
thời có những đánh giá về hệ thống giám sát này.

2
CHƢƠNG 2.

TỔNG QUAN VỀ HỆ THỐNG GIÁM SÁT OCS INVENTORY NG

2.1 Chức năng của OCS Inventory NG

 Là một ứng dụng đƣợc thiết kế trợ giúp ngƣời quản trị mạng hay ngƣời
quản trị hệ thống có thể nắm giữ các thông tin hệ thống, phần cứng
(hardware), các phần mềm (software) đã đƣợc cài đặt, các thiết bị ngoại vi
kết nối đến máy tính.
Bảng 1 Các thành phần máy ngƣời dùng cuối mà hệ thống có thể giám sát

Thông tin phần cứng có thể quản lý


Thông số hệ thống, nhà sản
xuất, Mẫu hệ thống, nhà sản
BIOS
xuất BIOS, phiên bản BIOS,
BIOS date.
Kiểu (Pentium with MXX,
Penitum II, Penitum III,
Bộ vi xử lý Pentium IV, Celeron, Athlon,
Duron...), Tốc độ xử lý, Số
lƣợng bộ xử lý.
Chú thích và mô tả, Dung
lƣợng theo MB, Mục đích (Bộ
nhớ hệ thống, bộ nhớ flash...),
Mảng khe cắm bộ nhớ
Kiểu bộ nhớ (SDRAM,
DDR...), Tốc độ theo MHz, Số
cổng.

Tổng cộng bộ nhớ vật lý theo MB

Tổng bộ nhớ phân trang Theo MB


và bộ nhớ ảo

3
Kiểu (bàn phím hay chuột),
nhà sản xuất, chú thích, Miêu
Thiết bị nhập
tả, giao diện sử dụng (PS/2,
USB...).
Kiểu (Nối tiếp hay song song),
Hệ thống các cổng cắm
Tên, Chú thích và miêu tả.
Tên, miêu tả, kiểu thiết
Hệ thống các khe cắm
kế(AGP1, PCI1, PCI2, ISA1...).
Nhà sản xuất, Tên, Kiểu
Hệ thống các trình điều
(Floppy, IDE, SCSI, USB,
khiển
PCMCIA, IEEE1394, Infrared).
Nhà sản xuất, mẫu, miêu tả,
kiểu (Floppy, Hard disk, CD-
Thiết bị lƣu trữ
Rom, Removable, Tape...),
Kích thƣớc tính theo MB
Nhãn ổ logic, kiểu
(removable, hard drive, cd-rom,
Ổ logic và các phân network, RAM...), File system
vùng (FAT, FAT32, NTFS...), tổng
tính theo MB, Không gian trống
tính theo MB.

Thiết bị âm thanh Nhà sản xuất,mẫu, miêu tả

Tên, Chipset, bộ nhớ tính theo


Video adapters
MB, độ phân dải màn hình
Nhà sản xuất, chú thích, miêu
Màn hình hiển thị
tả, mẫu sản phẩm.
Tên,kiểu, miêu tả,(internal,
Modem quay số
external...).

Thiết bị mạng Miêu tả, (Dialup, Ethernet,

4
Token Ring, ATM...), Tốc độ
(theo Mb/s hoặc Gb/s), MAC
Address, IP Address, IP
Network Mask, IP gateway,
DHCP server used.
Tên, IP, nhà sản xuất, trình
Máy in
điều khiển, cổng kết nối.
Tên(Linux, Windows
95/98/Me/NT Workstation/NT
Server/2000 Professional/2000
Server...), Phiên bản (4.0.1381
for NT4, 4.10.2222 for 98
Hệ điều hành SE...), Ghi chú (Operating
System Release for Windows
9X, Service Packs for
NT/2000/XP),Thông tin đăng
ký, Chủ đăn ký, Registered
product ID.
Lấy từ registry và hiển thị
trong "Add/Remove software"
Phầm mềm
control panel: Tên, nhà sản
xuất, Phiên bản.
Nếu muốn truy vấn một vài
Registry values
khóa của Windows.
Nhƣ đƣợc hiển thị trong Tab
Miêu tả máy tính Xác định các hộp thoại
Network Settings.

5
 OCS Inventory NG còn có khả năng phát hiện các thiết bị mạng có IP
nhƣ router, switch, máy in, Access Point…

 Package Deployment: đây là tính năng mà rất ít ứng dụng giám sát có, đó
là triển khai các gói ứng dụng tới các máy trạm. Từ một server quản lý
trung tâm, ngƣời quản trị có thể tải lên các gói để các client tải về cài đặt
thông qua giao thức HTTP/HTTPS

2.2 Đặc điểm

 OCS Inventory là một ứng dụng mã nguồn mở . Điều này có nghĩa là


có thể chỉnh sửa source code theo ý muốn. Tuy nhiên, nếu muốn cập nhật
source code để phân phối, thì phải tuân thủ sự quản lý giấy phép của GPL

 Sử dụng băng thông thấp: 5KB cho hệ thống windows

 Hiệu xuất cao : có thể kiểm soát đồng thời 1 000 000 máy tính với server
bi-Xeon 3 GHz và 4 GB RAM.

 Sử dụng kiến trúc 3 bậc với những chuẩn hiện tại: HTTP/HTTPS
protocol và định dạng dữ liệu XML.
 Dựa trên những sản phẩm nổi tiếng nhƣ Apache web server, MySQL
database server, PHP and PERL scripting languages.

 Hỗ trợ nhiều hệ điều hành: OCS Inventory hỗ trợ rất nhiều hệ điều hành:
Microsoft Windows, Linux, *BSD, Sun Solaris, IBM AIX, HP-UX,
MacOS X với giao diện web để quản lý rất thuận tiện.

 Hỗ trợ Plugins thông qua API( Application Programming Interface).

6
2.3 Kiến trúc và tổ chức hoạt động

Hình 2.1: Tổ chức hoạt động hệ thống giám sát OCS Inventory NG

 OCS Inventory NG đƣợc xây dựng theo mô hình Client-Server và sử dụng


một agent chạy trên các máy trạm, và một manager server là trung tâm lƣu
trữ thông tin quản lý

 Agents và manager server giao tiếp nhau thông qua giao thức
HTTP/HTTPS. Tất cả dữ liệu đƣợc định dạng XML nén Zlib để giảm lƣu
lƣợng thông tin trên mạng.

 OCS Inventory cung cấp một công cụ để triển khai agent cho các máy
chạy hệ điều hành windows thông qua các kịch bản đăng nhập hoặc
Active Directory GPO với server là máy Windows. Dƣới hệ điều hành
Linux, agent phải đƣợc cài đặt thủ công.

7
Management server chứa 4 thành phần chính :

Hình 2.2: Cấu trúc hoạt động của hệ thống giám sát OCS inventory NG

1. Database server: lƣu trữ thông tin quản lý.


2. Communication server: Xử lý thông tin liên lạc giữa các máy chủ
HTTP cơ sở dữ liệu và các agent.
3. Administration console: Cho phép ngƣời quản trị truy vấn cơ sở dữ
liệu server thông qua trình duyệt
4. Deployment server: Lƣu trữ các gói cấu hình triển khai ( yêu cầu
HTTPS)

Cả 4 thành phần có thể lƣu trữ trong một máy tính hoặc các máy khác nhau cho
phép cân bằng tải. Với hơn 10.000 máy thì dùng với 2 máy chủ là tốt nhất. Một cho
máy chủ lƣu trữ dữ liệu + máy chủ giao tiếp client, và máy còn lại cho sao lƣu dữ liệu
+ Máy chủ quán lý + Máy chủ triển khai ứng dụng.

Yêu cầu hệ thống:

 Máy chủ cơ sở dữ liệu phải sử dụng MySQL 4.1 hoặc cao hơn.
 Communication server cần Apache Web Server 1.3.X/2.X và đƣợc viết
bằng PERL nhƣ một module Apache. Do PERL scripts đƣợc biên dịch

8
ngay khi khởi động apache, không phải ở mỗi lần yêu cầu do đó hệ thống
sẽ vận hành tốt hơn. Comunication Server có thể yêu cầu các Module Perl
bổ xung, tùy theo phiên bản của hệ điều hành.

 Deployment server: Cần có một trình duyệt và SSL đang hoạt động

 Administration console: đƣợc viết bằng PHP v4.1 hoặc cao hơn và chạy
dƣới nền Apache 1.3.X/2.X ( có thể chạy dƣới nền web server khác ).
Administratoion console yêu cầu ZIP và GD đƣợc kích hoạt để có thể sử
dụng tính năng triển khai.

 Windows agent : đƣợc viết bằng C++( cần MS visual C++ 6 services pack
5 hoặc cao hơn để biên dịch ) và NSIS scripts để sử dụng logon script
trong việc triển khai dựa trên GPO.

 Linux agent: đƣợc viết bằng ngôn ngữ PERL và C và có thể thêm các
module perl để điều khiển XML và nén zib .

2.4 Các Hệ điều hành hỗ trợ OCS Inventory NG

OCS Inventory NG agent OCS Inventory NG Server


Windows 95 with DCOM95 Windows 2000
Windows 98, Windows 98 Second Edition Professional
Windows NT4 Workstation Windows 2000
Windows NT4 Server with IE 4 hoặc cao hơn Server/Advanced Server
Windows 2000 Professional Windows XP Professioal
Windows 2000 Server/Advanced Server Edition
Windows XP Home Edition Windows Server 2003
Windows XP Professional Edition Centos LINUX
Windows Server 2003 Debian LINUX
Windows Vista Fedora Core LINUX
Windows Server 2008 Gentoo LINUX
Windows Seven Knoppix LINUX
Centos Linux Mandriva LINUX
Debian Linux RedHat LINUX
Fedora Core Linux Slackware LINUX
Gentoo Linux SuSE Linux

9
Knoppix Linux Open BSD
Mandriva Linux NetBSD
RedHat Linux FreeBSD
Slackware Linux Solaris
SuSE Linux MacOS
Trustix Linux
Ubuntu Linux
OpenBSD
NetBSD
Solaris
IBM AIX
MacOS X

10
CHƢƠNG 3

TỔNG QUAN VỀ CẤU HÌNH HỆ THỐNG OCS INVENTORY NG

3.1 Cài đặt OCS Inventory NG server

 Để hệ thống hoạt động với những yêu cầu tiên quyết sau:
o MySQL database server đang chạy và lắng nghe cổng 3306 với
TCP/IP đang hoạt động.
o Apache web server đã đƣợc cài đặt và đang chạy cho phép giao tiếp
và quản lý.
o PHP và PERL đã đƣợc cài đặt và có thể sử dụng Apache web
server để quản lý và điều khiển.
o Perl và mod_perl đƣợc cài đặt và có thể đƣợc sử dụng Apache web
server liên lạc.

 Yêu cầu cấu hình của các thành phần tiên quyết:
o Apache phiên bản 1.3.33 hoặc cao hơn / Apache v 2.0.46 hoặc cao
hơn
 Mo_perl phiên bản 1.29 hoặc cao hơn.
 Mo_php phiên bản 4.3.2 hoặc cao hơn.
o PHP phiên bản 4.3.2 hoặc cao hơn với zib và GD đang hoạt động.
o PERL 5.6 hoặc cao hơn

 Perl moduel XML :: Simple phiên bản 2.12 hoặc cao hơn.
 Perl module Compress:: Zlib phiên bản 1.33 hoặc cao hơn.
 Perl module DBI phiên bản 1.40 hoặc cao hơn.
 Perl module DBI::Mysql phiên bản 2.9004 hoặc cao hơn.

 Perl module Apache::DBI phiên bản 0.93 hoặc cao hơn.

11
 Perl module Net::IP phiên bản 1.21 hoặc cao hơn.
 Perl module SOAP::Lite phiên bản 0.66 hoặc cao hơn (Không bắt
buộc).

 MySQL phiên bản 4.1.0 hoặc cao hơn với công cụ InnoDB hoạt động

 Tiện ích GNU

3.2 Cài đặt Comunication Server yêu cầu PERL modules

Web comunication server yêu cầu Apache web server và Perl 5 script language
và một vài module bổ xung của Perl 5 (theo yêu cầu trên). Nó hoạt động nhƣ một
module HTTP Apache sử lý các yêu cầu của OCS Inventory Agent vào một thƣ mục
ảo “/ocsinventory”.
Để cài đặt phải có quyền root.
Trên hệ thống Fedora/Redhat/CentOS có thể sử dụng công cụ “yum” để cài đặt
các modules nhƣ sau:

$ yum install perl-XML-Simple


$ yum install perl-Compress-Zlib
$ yum install perl-DBI
$ yum install perl-DBD-MySQL
$ yum install perl-Apache-DBI
$ yum install perl-Net-IP
$ yum install perl-SOAP-Lite

Trên hệ thống Debian linux có thể sử dụng “apt-get” để cài đặt các modules nhƣ
sau:

$ apt-get install libxml-simple-perl


$ apt-get install libcompress-zlib-perl
$ apt-get install libdbi-perl
$ apt-get install libdbd-mysql-perl
$ apt-get install libapache-dbi-perl
$ apt-get install libnet-ip-perl
$ apt-get install libsoap-lite-perl

12
Nếu các gói không có trong source package distribution có thể tải về từ
http://search.cpan.org và sử dụng GCC để build theo cách sau:

$ tar –xvzf package_name.tar.gz


$ cd package_name
$ perl Makefile.PL
$ make
$ make test
$ make install

3.3 Cài đặt Administrator console yêu cầu PHP modules

Web administrator console yêu cầu Apache web server, PHP 4 scripts language
và một vài modules bổ xung khác cho PHP ( theo yêu cầu trên).
Để cài đặt được phải có quyền root.
 Cài ZIP hỗ trợ PHP

Trên hệ thống Fedora/Redhat/CentOS có thể dùng lệnh “yum” để cài đặt.

$ yum install php-pecl-zip

Trên Debian có thể dùng “apt-get” để cài đặt:

$ apt-get install php-zip

Nếu không, cách tốt nhất để làm điều này là sử dụng các gói PHP PECL ZIP.
Phải có thƣ viện phát triển PHP (gói php-devel với RedHat hoặc Fedora Core, với
Linux Debian hay Ubuntu) để có lệnh "phpize".
Khi pear đƣợc cài đặt, sử dụng lệnh: $ pear install zip . Nếu pear chƣa đƣợc cài
đặt, có thể tải gói “zip-1.3.1.gz” từ http://pecl.php.net/package/zip.

Sau đó cài đặt ( yêu cầu gói php-devel trƣớc):


$ tar –xvzf zip-1.3.1.tgz
$ cd zip-1.3.1
$ phpize
$ ./configure
$ make
$ make install

13
 Cài GD để hỗ trợ PHP

Trên Fedora/Redhat/CentOS có thẻ dùng công cụ “yum” để cài đặt:

$ yum install php-gd

Trên Debian có thể dùng “apt-get” để cài:

$ apt-get install php-gd

3.4 Cài đặt manager server

Để cài đặt hãy đảm bảo rằng đang có quyền root


Tải “OCSNG_UNIX_SERVER-1.3.1.tar.gz” từ website của tổ chức:
http://www.ocsinventory-ng.org/
Giải nén và chuyển tới thƣ mục sau giải nén:
$ tar –xvzf OCSNG_UNIX_SERVER-1.3.1.tar.gz
$ cd OCSNG_UNIX_SERVER-1.3.1

Chạy file cài đặt “Setup.sh”. Trong quá trình cài đặt, giá trị của hành động mặc
định đặt trong [ ]. Ví dụ [y]n thì “yes” là giá trị mặc định đƣợc lựa chọn.

$ sh Setup.sh

Trong quá trình cài đặt một file “ocs_server_setup.log” sẽ đƣợc tạo ra trong cùng
thƣ mục. Nếu xuất hiện bất cứ lỗi nào, hãy kiểm tra thông tin file này để biết chi tiết.

14
chú ý: nếu là nâng cấp từ OCS Inventory NG 1.0 RC2 và trước đó phải gỡ bỏ tất cả các
file cấu hình của Apache cho Server comunication.

Gõ enter hoặc “y” để xác nhận, sau đó nhập địa chỉ của Mysql server, hầu hết là
localhost
Sau đó, thiết lập kiểm tra các tập tin nhị phân MySQL client phiên bản 4.1 hoặc
cao hơn. Nếu không, quá trình sẽ đƣợc nhắc nhở để tiếp tục hoặc hủy bỏ cài đặt.
Nếu tất cả thỏa mãn các yêu cầu, nhập cổng của Mysql server, mặc định là 3360

Nhập hoặc xác nhận đƣờng dẫn đến Apache daemon nhị phân, mặc định là "/ usr
/ sbin / httpd". Nó sẽ đƣợc sử dụng để tìm các file cấu hình Apache.

Chú ý: Nếu không sử dụng hệ thống Apache daemon, nhưng một số khác như XAMPP /
server LAMPP Apache, phải nhập đường dẫn đầy đủ cho daemon Apache, không phải là một
hệ thống.

15
Enter hoặc xác nhận đƣờng dẫn tệp tin cấu hình chính của Apache . Thƣờng là
“/etc/apache/conf/apache.conf” hoặc “/etc/httpd/conf/httpd.conf”.

Enter hoặc xác nhận Apache daemon đang chạy với tài khoản ngƣời dùng,
thƣờng là “apache” hoặc “www” (dƣới Debian / Ubuntu là "www-data").

Tiếp theo, quá trình cài đặt sẽ kiểm tra PERL interpreter binaries. Enter hoặc xác
nhận đƣờng dẫn tới PERL interpreter binaries.
Lưu ý: Nếu không sử dụng hệ thống thông dịch perl, nhưng một số khác như XAMPP /
thông dịch perl LAMPP, phải chỉ định đường dẫn đầy đủ (/ Opt / lampp / bin / perl thường
được sử dụng trong XAMPP / LAMPP).

16
Thông thƣờng, thông tin thiết lập cho Comunication Server và Administrator
console giờ đã đƣợc thu thập. Quá trình cài đặt sẽ nhắc nhở thiết lập Comunication
server trên máy tính này. Chọn “y” để xác nhận thiết lập Comunication server, “n” để
bỏ qua thiết lập Comunication Server.

Quá trình cài đặt sẽ cố gắng để tìm ra tiện ích. Nếu không, cài đặt sẽ ngừng
Enter hoặc xác nhận đƣờng dẫn tới thƣ mục cấu hình Apache. Thông thƣờng, thƣ
mục này là "/ etc / httpd / conf.d" hoặc "/ etc / apache / conf.d". Nếu không sử dụng
thƣ mục cấu hình, nhƣng có tất cả các cấu hình vào Apache tập tin cấu hình chính, hãy
nhập "n".

17
Quá trình cài đặt tiếp theo sẽ cố gắng để xác định phiên bản mod_perl Apache.
Nếu không thể xác định phiên bản mod_perl, nó sẽ yêu cầu nhập.
Chú ý: có thể kiểm tra phiên bản của mod _perl bằng cách sử dụng các truy vấn
tới cơ sở dữ liệu:
Với RedHat/Fedora, Mandriva…) sử dụng: rpm –q mod_perl.
Với Debian, Ubuntu…sử dụng lệnh: dpkg –l libapache*-mod-perl*
Tiếp theo, nó sẽ nhắc đăng nhập vào thƣ mục nơi sẽ lƣu trữ máy chủ truyền
thông gỡ lỗi / chỉnh các bản ghi. Xác nhận hoặc nhập đƣờng dẫn thƣ mục. Nếu nó
không tồn tại, thƣ mục này sẽ đƣợc tạo ra.

Tiếp theo, thiết lập sẽ kiểm tra các modules PERL cần thiết (Yêu cầu cấu hình.):
 XML::Simple phiên bản 2.12 hoặc cao hơn

18
 Compress::Zlib phiên bản 1.33 hoặc cao hơn
 DBI phiên bản 1.40 hoặc cao hơn
 DBD::mysql phiên bản 2.9004 hoặc cao hơn
 Apache::DBI phiên bản 0.93 hoặc cao hơn
 Net::IP phiên bản 1.21 hoặc cao hơn
 SOAP::Lite phiên bản 0.66 hoặc cao hơn

Chú ý: nếu thiếu bất kỳ module nào, quá trình cài đặt sẽ bị hủy bỏ!

Nếu có đủ các module cần thiết quá trình cài đặt sẽ thiết lập trên Comunication
server:
 Cấu hình Comunication Server PERL module.
 Xây dựng Comunication Server PERL module.
 Cài đặt Comunication Server PERL module vào trong các thƣ mục thƣ
viện PERL
 Tạo thƣ mục chứa thông tin log (/var/log/ocsinventory-NG mặc định).
 Cấu hình đăng nhập hàng ngày luân phiên cho Comunication Server( mặc
định file /etc/logrotate.d/ocsinventory-NG).
 Tạo file cấu hình Apache (ocsinventory.conf). Nếu hệ thống đang sử dụng
thƣ mục cấu hình Apache . file này sẽ đƣợc copy vào thƣ mục này. Nếu
không, quá trình sẽ đƣợc nhắc nhở để thêm nội dung của tập tin này vào
cuối Apache tập tin cấu hình chính.

19
Quá trình cài đặt Comunication Server đã hoàn tất. Quá trình sẽ đƣợc nhắc để
thiết lập giao diện điều khiển chính. Nhập "y" hoặc xác nhận để thiết lập giao diện
điều khiển chính lên, nhập vào "n" để bỏ qua cài đặt giao diện điều khiển

Tiếp theo, thiết lập sẽ kiểm tra các modules cần thiết PERL (Yêu cầu cấu hình.):

 XML::Simple phiên bản 2.12 hoặc cao hơn


 DBI phiên bản 1.40 hoặc cao hơn
 DBD::Mysql phiên bản 2.9004 hoặc cao hơn
 Net::IP phiên bản 1.21 hoặc cao hơn
Chú ý: nếu thiếu bất kỳ module nào,cài đặt sẽ hủy bỏ

Nếu mọi thứ đều thỏa mãn yêu cầu, cài đặt sẽ cài đặt giao diện điều khiển chính
vào thƣ mục con: “ocsreports ".

 Tạo cấu trúc thƣ mục: /ocsreports

 Tạo cấu trúc thƣ mục /download

 Copy file vào thƣ mục /ocsreports

 Sửa phân quyền file và thƣ mục cho phép Apache daemon có quyền đọc
và viết thƣ mục yêu cầu truy suât write trong các thƣ mục /ocsreports,
/ocsreports/ipd and /download, cf

 Cấu hình PERL script ipdiscover-util.pl để truy cập cơ sở dữ liệu và cài


đặt nó.

20
Cuối cùng phải restart dịch vụ của Apache : httpd để cài đặt có hiểu lực.

$ /etc/init.d/httpd restart

Cấu hình managerment server:

Mở trên web browers và nhập địa chỉ của máy


http://administration_console/ocsreports để kết nối tới Adminsitrator console.

Nếu cơ sở dữ liệu chƣa đƣợc cài đặt, điều này sẽ bắt đầu quá trình thiết lập OCS
Inventory. Nếu không, có thể chạy lại quá trình cấu hình bằng cách duyệt
http://ip_server/ocsreports/install.php (điều này đƣợc sử dụng khi nâng cấp máy chủ
OCS inventory).

21
Điền vào các thông tin để kết nối với máy chủ cơ sở dữ liệu MySQL với một
ngƣời sử dụng những ngƣời có khả năng tạo ra cơ sở dữ liệu, bảng biểu, các chỉ số, vv
(thƣờng là root):

 MySQL user name

 MySQL user password

 MySQL hostname
Quá trình cài đặt sẽ tạo ra cơ sở dữ liệu “ocsweb” và sẽ thêm vào Mysql user
ngƣời dùng “ocs” với password: “ocs” Đồng thời cũng gán các quyền “Select | Insert |
Update | Delete | Create | Drop | References | Index | Alter | Create temp | Lock” trên
cơ sở dữ liệu "ocsweb". User ocs này có quyền Administrator Server để kết nối tới cơ
sở dữ liệu. Nếu không muốn MySQL sử dụng mặc định ngƣời sử dụng "OCS" với mật
khẩu "OCS"có thể cập nhật trong tập tin "dbconfig.inc.php" các hằng số
"COMPTE_BASE” và "PSWD_BASE". Cập nhật cấu hình máy chủ Comunicaton,
đặc biệt là trong tập tin cấu hình apache để có hiệu lực.
Cuối cùng, có thể điền vào một văn bản mô tả các TAG (các khóa) là một đoạn
văn bản hiển thị lúc khởi động đầu tiên của agent để yêu cầu ngƣời dùng nhập vào giá
trị TAG (Nhóm ngƣời dùng, vùng địa lý của ngƣời dùng…). Đó là một dữ liệu chung
cho phép sắp xếp, phân loại các máy tính mới để tiện cho việc quản lý agent. Nếu
không muốn chức năng này, chỉ cần bỏ trống.

22
Cấu hình Managerment Server giờ đã hoàn thành.

Nhập vào địa chỉ http://IP_server/ocsreports và log in với tài khoản admin,
password: admin

23
Giao diện quản lý

3.5 Cài đặt agent trên client computers

Có 2 phƣơng pháp để giám sát máy ngƣời dùng cuối sử dụng OCS Inventory
Agent:
+ Nếu client computer không kết nối tới Comunication Server, inventory sẽ
lƣu trữ thông tin ở client đó dƣới dạng một file nén XML với phần mở
rộng “.ocs”. Ngƣời dùng có thể gửi file này thông qua Email, USB … tới
ngƣời quản trị. Sau đó có thể nhập file này vào cơ sở dữ liệu thông qua
Administrator Server.
+ Nếu client đang có kết nối HTTP tới Comunication Server, Agent sẽ yêu
cầu Comunication Server và gửi trực tiếp thông tin tới máy chủ.

24
3.5.1 Cài đặt Agent trên máy Windows client

OCS Inventory NG Agent cho windows có thể chạy nhƣ một windows services,
tự động khởi động cùng windows. Tuy nhiên, OCS Inventory NG agent cung cấp một
kiểu chạy độc lập và không nhƣ một windows services. Tức là có thể hoạt động thông
qua log on script, một Active Directory GPO, một scheduled task trong starup của
windows.
Tuy nhiên, việc sử dụng nhƣ một windows services đƣợc khuyến nghị, đặc biệt
trong mục đính triển khai ứng dụng tới client từ server.
Tải về và giải nén file OCSNG_WIN32_AGENT_4.6.01.zip. sẽ thu đƣợc 3 files:
OcsAgentSetup.exe : agent đƣợc cài đặt và chạy nhƣ một windows services.
OCS inventory khuyến nghị sử dụng gói này.
OcsAgent.exe: dùng để cài đặt độc lập trên máy không đƣợc kết nối tới server,
cho phép chạy inventory một cách thủ công với câu lệnh chuyển đổi /LOCAL ( nếu
không muốn sử dụng nhƣ một services).
OcsLogon.exe: gói khởi động của OCS Inventory NG dùng để triển khai ứng
dụng thông qua log on script hay Active Directory GPO trong domain. Nếu Agent
thực sự đƣợc cài đặt, nó sẽ chạy cùng agent. Cách khác, có thể tải về binaries của
agent từ Comunication Server, Setup và chạy nó.

3.5.1.1 Nên chọn phiên bản Windows agent nào ?

Trƣớc tiên, cần giải thích Agent và services hoạt động nhƣ thế nào?
 Window Agent hoạt động nhƣ thế nào?
Khi OCS Inventory NG Agent “OCSInventory.exe” chạy, nó sẽ liên hệ với
Comunication Server và yêu cầu việc cần làm. Server trả lời “nothing” ( không phải
thời gian inventory hay deploy package), vì thế agent stop.
Khi agent hoạt động, nó sẽ thu thập thông tin, đóng gói và gửi cho Comunication
Server.
Còn lại, server có thể yêu cầu agent :
 Gửi một inventory: Agent thu thập các thuộc tính của computer và gửi
chúng tới server thông qua giao thức HTTP. Server chỉ trả lời nếu lần cuối

25
cùng inventory cũ hơn khi so sánh với trƣờng “FREQUENCY”, đặc biệt
trong ngày
 Discover the network: Agent truy suất các thông tin của máy, quét các
mạng con của nó, và gửi các thông tin này tới máy chủ bằng giao thức
HTTP. Server chỉ trả lời khi client này đƣợc chọn lọc chạy IPDISCOVER
 Deploy a package: Agent liên lạc với Deployment Server thông qua giao
thức HTTP để lấy thông tin file. Tải từng mảnh gói về từ repository. Ghép
mảnh lại và chạy nó.
Tại mỗi thời điểm inventory hoàn thành, Agent sẽ ghi vào trong file cấu hình
“OCSInventory.dat” vào trong thƣ mục cấu hình của nó, nơi mà nó sẽ đặt tùy chọn cấu
hình tải về từ Comunication Server.
Khi chạy lần đầu tiên, OCS Inventory NG sẽ cảnh báo ngƣời dùng bởi một giá
trị TAG (Nhóm ngƣời dùng, vùng địa lý của ngƣời dùng…). Đó là một dữ liệu chung
cho phép sắp xếp, phân loại các máy tính mới để tiện cho việc quản lý agent. Dòng
thông báo này chính là thông báo đã nhập vào trong khi cấu hình management Server.

Sau đó nó sẽ inventory và gửi tới Comunication Server thông qua giao thức
HTTP.

 Windows service hoạt động nhƣ thế nào?

OCS Inventory NG Agent “OCSInventory.exe” sẽ đƣợc gọi và chạy bởi dịch vụ


có tên “OcsService.exe” theo chu kỳ “PROLOG_FREQ”. Nó sẽ đợi thời gian
“TTO_WAIT” để tiếp tục gửi thông tin. Giá trị “TTO_WAIT” là một giá trị ngẫu
nhiên giữa 0 và giá trị “PROLOG_FREQ”. Điều này sẽ làm cho các agent không đồng
thời gửi thông tin tới Comunication Server, giúp làm giảm tắc ngẽn mạng.
Khi dịch vụ chạy, nó sẽ sử dụng câu lệnh để chuyển đổi giá trị đặc biệt
“Miscellaneous” của file “service.ini” nhƣ sau:

26
[OCS_SERVICE]
NoProxy=1
Server=192.168.0.81
Pnum=80
Miscellaneous=/DEBUG /NP /server:192.168.0.81 /pnum:80
PROLOG_FREQ=10
OLD_PROLOG_FREQ=10
TTO_WAIT=1505

3.5.1.2 Xác định sử dụng service hay chế độ stand alone agent?

 Nếu muốn máy tính đƣợc giám sát mà không có ngƣời dùng
log on vào máy thì nên dùng Service agent.
 Nếu sử dụng tính năng deploy package. Nên sử dụng Service
agent, theo cách này, package sẽ đƣợc tải về dƣới dạng ẩn,
ngƣời dùng log on vào vẫn làm việc bình thƣờng.
 Nếu không muốn chạy nhƣ một service, không muốn xuất
hiện trong registry thì có thể sử dụng Stand alone. Tuy nhiên,
tính năng deploy package sẽ làm mất thời gian khi log on vào
client.

27
3.5.1.3 Cài đặt Agent theo cách sử dụng Windows service.

Chạy “OcsAgentSetup.exe” trên client computer và chọn “next”

Xác nhận giấy phép bằng cách lựa chọn “ I Agree”

Nhập vào server Address. Server Port ( cổng HTTP, mặc định là 80), lựa chọn
vào NO IE Proxy nếu máy không sử dụng Proxy.

28
3.5.1.4 Cài Stand alone Agent ( không dùng windows service).

Cách này phù hợp cho việc cài agent tới các máy không kết nối đƣợc tới
Comunication Server. Cài đặt có thể sử dụng với ngƣời dùng thông thƣờng ( không
yêu cầu là administrator).
Chạy file “OcsAgent.exe /local”.

29
3.5.2 Cài đặt agent trên client LINUX

 OCS Inventory Agent trên LINUX yêu cầu:

 dmidecode phiên bản 2.2 hoặc cao hơn


 PERL 5.6 hoặc cao hơn
 Perl module XML::Simple phiên bản 2.12 hoặc cao
hơn
 Perl module Compress::Zlib phiên bản 1.33 hoặc cao
hơn
 Perl module Net::IP phiên bản 1.21 hoặc cao hơn
 Perl module LWP::UserAgent phiên bản 5.800 hoặc
cao hơn
 Perl module Digest::MD5 phiên bản 2.33 hoặc cao hơn
 Perl Module Net::SSLeay phiên bản 1.25 hoặc cao hơn
 Make utility
 C/C++ compiler like GNU GCC

Để cài các gói này, trên Fedora/CentOS/Redhat có thể sử dụng “yum” để cài:

$ yum install perl-XML-Simple


$ yum install perl-Compress-Zlib
$ yum install perl-Net-IP
$ yum install perl-LWP
$ yum install perl-Digest-MD5
$ yum install perl-Net-SSLeay

Trên hệ thống Debian ( Ubuntu) có thể sử dụng “atp-get” để cài đặt:


$ apt-get install libxml-simple-perl
$ apt-get install libcompress-zlib-perl
$ apt-get install libnet-ip-perl
$ apt-get install libwww-perl
$ apt-get install libdigest-md5-perl
$ apt-get install libnet-ssleay-perl

Hoặc tải các gói về và cài đặt chúng hiện có tại http://packages.sw.be/

30
 Cài đặt OCS inventory LINUX agent
Tải về gói “OCSNG_LINUX_AGENT_1.01.tar.gz” từ website của OCS
Inventory
Giải nén:

$ tar –xvzf OCSNG_LINUX_AGENT_1.1.2.tar.gz

Và phải có quyền root thì mới có thể cài đặt.

$ cd OCSNG_LINUX_AGENT_1.1.2
$ perl Makefile.pl
$ make
$ make install

Quá trình sẽ hỏi bạn có muốn cấu hình agent hay không. Nhấp “y” hoặc enter.
Có 3 lựa chọn đƣa ra để lƣu cấu hình file:
0 -> /etc/ocsinventory
1 -> /usr/local/etc/ocsinventory
2 -> /etc/ocsinventory-agent

Nhập vào số 0,1, hoặc 2 để lựa chọn nơi lƣu cấu hình file. Tiếp theo quá trình cài
đặt sẽ tạo thƣ mục theo lựa chọn. Tiếp theo hãy nhập vào địa chỉ của OCS inventory
NG Server , tag,.. tất cả theo mặc định. Sau khi cài thành công sẽ OCS inventory
Agent sẽ thử gửi thông tin cho Comunication Server.

31
3.6 Backup và restore cơ sở dữ liệu

3.6.1 Backup cơ sở dữ liệu

Khi cài đặt OCS Inventory NG sẽ sinh ra một công cụ “mysqldump” trong thƣ
mục “/us/bin/mysqldump”. Công cụ này cho phép backup cơ sở dữ liệu “ocsweb” của
hệ thống OCS Inventory NG. Để backup cơ sở dữ liệu này ta có thể sử dụng lệnh :

$ mysqldump --add-drop-table --complete-insert --extended-inser --quote-names


--host=localhost --user=”root” --password=“password off root” ocsweb >
mysqldump_ocsweb.sql

Câu lệnh này sẽ lƣu trữ nội dung cơ sở dữ liệu “ocsweb” vào trong file
“mysqldump_ocsweb.sql”

3.6.2 Restore cơ sở dữ liệu.

Có thế sử dụng lệnh “mysql” để lấy lại cơ sở dữ liệu “ocsweb” tại một điểm đã
backup.

$ Mysql -u root -p ocsweb


$ Source “đƣờng dẫn tới file mysqldump_ocsweb.sql đã lƣu”
$ exit

32
CHƢƠNG 4

CÁC DỊCH VỤ GIÁM SÁT VÀ TRIỂN KHAI ỨNG DỤNG TỪ XA

4.1 Các dịch vụ giám sát

4.1.1 Giám sát máy trạm

Sau khi cài đặt agent trên các máy trạm, nếu đƣợc lựa chọn (/NOW) OCS
Inventory Agent ngay lập tức sẽ lấy và gửi thông tin của máy trạm đó cho
Comunication server, thông tin bao gồm: thông tin về BIOS, bộ nhớ, tốc độ xử lý của
CPU, số core của CPU, các trinh điều khiển, các thiết bị nhập( bàn phím, chuột), màn
hình, card mạng, các cổng, slote, card âm thanh, màn hình, thông tin ổ cứng, và thông
tin các phần mềm đã cài đặt trên máy đó. Tất cả các thông tin này đƣợc gửi tới
Comunication Server thông qua giao thức HTTP. Sau khi gửi thành công, agent sẽ cập
nhật lại các thông tin về “PROLOG_FREQ” (thời gian định kỳ gửi thông tin),
“TTO_WAIT” trong file “service.ini”, đồng thời tải về file “infor” chứa các nhiệm vụ
Comunication Server yêu cầu thực hiện nếu có qua giao thức HTTPS.

4.1.2 Sử dụng tính năng IP Discover phát hiện các thiết bị mạng

Tính năng Ip Discover cho phép OCS Inventory NG phát hiện ra các thiết bị
mạng đƣợc kết nối vào mạng OCS Inventory NG quản lý.
Comunication Server yêu cầu một số trong các máy đang chạy OCS Inventory
NG agent quét các địa chỉ MAC trong mạng con của máy agent mỗi lần chạy. Chúng
sẽ không quét tất cả toàn bộ mạng, chỉ các mạng nội bộ đƣợc định nghĩa bởi cặp
địa chỉ IP/Subnet mask.

4.1.2.1 Giới thiệu

Phần mềm thống kê rất hữu ích cho ngƣời quản trị. Nó cho phép “soi” các máy
tính hoạt động trong hệ thống. Ngày nay, với sử dụng TCP/IP có thể nói rằng việc
giám sát các thiết bị rất dễ dàng đặc biệt với OCS Inventory NG.

33
Nhƣng, với các thiết bị không gửi thông tin về thiết bị đó, vì nhiều lý do nhƣ:
quên, sự không hợp tác của ngƣời sử dụng. Chuyện gì với các thiết bị đang hoạt động
nhƣng không chạy inventory agent ( máy in, switches, routers, WiFi access points…)
hay với các máy tính không cần kết nối tới mạng quản lý
IPDISCOVER trả lời các vấn đề này. Ngay cả khi nó có thể làm việc độc lập thì
kết quả vẫn rất tốt cho cấu trúc OCS. Khi làm việc dựa trên một giao tiếp giữa tất cả
các host của hệ thống thông tin và máy chủ trung tâm, server có thể dễ dàng điều khiển
các client làm một vài các nhiệm vụ nhỏ, nhƣ lấy khóa registry, gửi thông tin kiểm kê
hay nhận các trả lời từ tất cả các thiết bị trên IP segment gửi đi.

4.1.2.2 Cách thức làm việc của IPDISCOVER

+ Cách nhận thông tin


Hệ thống OCS NG dựa trên sự giao tiếp giữa agent đƣợc cài đặt trên các máy
trạm và module Apache trên OCS NG server. Thông tin trao đổi đƣợc nén trong file
XML và cho phép cấu hình các nhiệm vụ agent sẽ làm.
Khi một máy trạm gửi một kết quả kiểm kê, server sẽ cố gắng xác minh nếu nó
cần một vài các máy trạm khác ( số lƣợng có thể thay đổi theo cấu hình) quét các host
khác trong mạng con của nó. Địa chỉ gateway IP đƣợc sử dụng nhƣ một bản đò cho cả
mạng doanh nghiệp.
Nếu cần thiết, máy chủ có thể đánh giá chất lƣợng và cân nhắc có hoạt động tính
năng Ipdiscover hay không trên máy trạm. Trong trƣờng hợp này, máy trạm sẽ gửi tới
hệ thống một thông tin kiểm kê một cách độc lập với cấu hình chung trong trƣờng
“FREQUENCY”.
+ Cơ chế “bầu chọn”
Một khi máy chủ đã xác định rằng có một nhu cầu cho các cổng đƣợc chọn, nó
đánh giá các tiêu chí sau:
 OS: Hệ điều hành phải là Windows XP(hoặc mới hơn : Vistar, Win 7)
hoặc Windows 2000 (hoặc mới hơn: 2003,2008 tất cả các phiên bản) hoặc
LINUX.
 QUALITY: tham số này có nghĩa là tỷ lệ trung bình kết nối máy chủ đến
máy chủ trong ngày. Nó đƣợc đánh giá động bở Comunication Server chỉ
khi có nhiều hơn số lƣợng đƣợc định nghĩa trong trƣờng “IPDISCOVER”

34
của các host đã đƣợc kiểm kê cho gateway. Nếu máy tính hiện hành gửi
kết quả kiểm kê có chất lƣợng tốt hơn so với một máy tính kích hoạt
IPDISCOVER cho cổng này, máy trạm này sẽ thay thế một trong những
máy trạm khác. Tùy chọn 'IPDISCOVER' phải lớn hơn “0” để kích hoạt
tính năng này!
 FIDELITY: Tổng các kết nối của các máy trạm tới server. Trƣờng này có
giá trị phải lớn hơn hoặc bằng 3, cho phép “QUALITY” tính toán từ dữ
liệu đại diện.
 NETMASK: sub network mask, Trƣờng này miêu tả giá trị lớn nhất của
lớp B ( bytes thứ 2 đầu tiên tới 255 => 255.255.X.X)
 LASTDATE: khi Comunication Server tính toán chất lƣợng, nếu nó tìm ra
một host chƣa từng gửi kết quả kiểm kê từ nhiều ngày đƣợc định nghĩa
bởi tùy chọn “IPDISCOVER_MAX_ALIVE”, nó sẽ thay thế host này bở
một host mới.
+ Agent làm việc nhƣ thế nào?
Khi một agent nhận nhiệm vụ phát hiện các thiết bị mạng trong mạng của nó,
trƣớc tiên nó sẽ xác định các giao diện mạng đƣợc sử dụng. Sau đó nó giải quyết vấn
đề thông qua gói tin trả lời ARP từ tất cả các IP trên mạng của mình( trỳ hoãn giữa 2
host đƣợc định nghĩa trong trƣờng “IPDISCOVER_LATENCY” của cấu hình
IPDiscover trên OCS Server). Tất cả thông tin trả lời của các thiết bị đƣợc nén thành
file XML và gửi về cho server.
+ Sự điều chỉnh trên server
Khi mới cài OCS NG, quá trình cài sẽ hỏi có chạy tính năng IpDiscover hay
không. Nó sẽ yêu cầu lấy tất cả các gateway và bầu chọn máy trạm nào sẽ làm chức
năng IPDiscover. Khi một máy trạm đƣợc bầu nếu nó thực sự đã gửi thông tin kiểm
kê, hệ thống sẽ đặt giá trị “FREQUENCY” bằng 0( luôn tạo ra một thông tin kiểm kê).
Và giá trị này có thể tăng lên, tùy theo cấu trúc hạ tầng của mạng. Có thể phân tích lỗi
tiềm năng của mạng (thông qua trực tiếp lệnh ipdiscover-utils.pl hoặc qua giao diện
quản lý web).

35
4.2 Triển khai các gói phần mềm hoặc thực hiện các câu lệnh trên
các máy trạm.

OCS Inventory NG bao gồm cả tính năng triển khai các gói phần mềm tới client
mà nó giám sát. Từ máy chủ quản lý, có thể tải lên các gói sau đó các client có thể tải
về thông qua giao thức HTTP/HTTPS và cài đặt chúng.
Tính năng này hoạt động nhƣ thế nào?
Một gói đƣợc triển khai sẽ có 4 thành phần:
 Độ ƣu tiên.
 Một hành động.
 Một file ZIP hoặc TAR.GZ bao gồm bao nhiêu tập tin và thƣ
mục (Tùy chọn).
 Một lệnh để khởi động(Tùy chọn).

Có 11 cấp độ ƣu tiên, từ mức 0-10. Cấp 0 là ƣu tiên cao nhất và mức 10 là thấp
nhất. Gói có cấp độ ƣu tiên 0 sẽ đƣợc triển khai trƣớc khi gói ƣu tiên 1. Gói có cấp độ
ƣu tiên 1 sẽ đƣợc triển khai trƣớc khi gói có cấp độ ƣu tiên 2 ...
Hành động đƣợc liên kết với tập tin để triển khai và lệnh để khởi động. Đây có
thể là một trong ba lệnh sau:
 Hành động Launch: để triển khai một file ZIP hoặc TAR.GZ và khởi
động có hoặc không có tham số, dựa trên tập tin thực thi trong file ZIP
hoặc TAR.GZ. File ZIP hoặc tập tin TAR.GZ, và lệnh liên quan sẽ đƣợc
đƣa vào thƣ mục tạm thời. Hành động này cho phép lấy kết quả của mã
lệnh phát động.
 Hành động Excecute: Dùng để triển khai một file ZIP hay TAR.GZ( tùy
chọn), và đẩy xuống cùng hoặc không cùng một file có khả năng thực thi
có hoặc không trong file ZIP hay TAR.GZ. Nếu file có khả năng thực thi
không đặt trong file ZIP hay TAR.GZ, nó phải là một phần của phần mềm
đã đƣợc cài đặt trong client. Điển hình, nó có thể là một câu lệnh chuẩn
của windows nhƣ Windows Installer, RPM, DPKG hay TAR.GZ trên
linux.

36
File ZIP hay TAR.GZ sẽ giải nén vào trong một thƣ mục tạm, kết hợp với
câu lệnh ( tên của file thực thi với đƣờng dẫn hay thông số nếu cần) sẽ
đƣợc khởi động trong một thƣ mục tạm.
Hành động này cho phép lấy kết quả mã lệnh của lệnh đã khở động. Tuy
nhiên, hành động này cho phép chạy một lệnh trên clients. Không cần
triển khai hay bất kỳ file nào. Ví dụ, có thể sử dụng nó để chạy cấu hình
hệ thống cụ thể nào đó nhƣ: thiết lập Proxy, turn on-off firewall, thiết lập
các policy....
 Hành động Store: để triển khai một file ZIP hay TAR.GZ hay bất kỳ nội
dung nào lƣu trữ trong một thƣ mục của máy trạm.
Không có câu lệnh nào đƣợc kết hợp với hành động này, chỉ có đƣờng dẫn
cụ thể nơi lƣu trữ xả nén các file.
Có thể thông qua cửa sổ quản trị để triển khai gói. Nó sẽ tự động đƣợc
miêu tả bởi:
 Một tham chiếu trong cơ sở dữ liệu, đƣợc sử dụng bởi
Comunication Server để yêu cầu agent tải gói.
 Một file chứa thông tin, tên là “infor”. Đó là một file XML
miêu tả gói và hành động agent sẽ thực hiện.
 Có hoặc không có các phân mảnh của file. File tải lên ( với 1
file) sẽ đƣợc chia ra thành nhiều phần nhỏ để các agent tải vể
từng phần một, và sau đó có thể dễ dàng ghép lại thành file
ban đầu, và dễ dàng tải lại các mảnh bị tải hỏng. Nếu quá trình
tải bị hỏng, những mảnh hỏng sẽ đƣợc tải tại thời điểm khác
thay vì tải lại tất cả gói. Có thể chỉnh kích thƣớc mảnh tùy
theo băng thông mạng. Nếu muốn chia thành các file có kích
thƣớc lớn ( hơn 8Mb) thì phải chỉnh cấu hình PHP trong file
“php.ini”.

Một khi gói đƣợc xây dựng, phải kích hoạt nó. Phải chỉ ra nơi có vị trí SSL đƣợc
kích hoạt máy chủ web (ví dụ nhƣ triển khai các máy chủ), nơi client có thể tải về tập
tin thông tin và các mảnh files.
Cuối cùng, phải lựa chọn máy sẽ triển khai gói ứng dụng.

37
Hình 4.1: Sơ đồ cấu trúc triển khai gói phần mềm sử dụng OCS Inventory NG

Khi agent gửi thông tin cho Comunication server, Comunication Server sẽ nói
cho agent nếu có một hoặc nhiều gói triển khai tới nó, với các thông tin về mức độ ƣu
tiên của từng gói, nơi mà agent có thể tìm thông tin các file. Agent bắt đầu tải về, khi
hoàn thành, nó chạy hành động gói, và gửi trả về mã kết quả thông tin tình trạng cho
Comunication Server.
Agent sẽ bắt đầu tải về theo một chu kỳ. Một chu kỳ gồm các vòng, đƣợc định
nghĩa bởi cấu hình trong “DOWNLOAD_PERIOD_LENGTH”. Mặc định, giá trị của
một chu kỳ là 10 vòng.
Tại mỗi vòng, nó tính toán "số vòng của gói module ƣu tiên". Nếu nó có bằng 0,
nó tải các mảnh của file. Sau mỗi đoạn, nó sẽ chờ đợi
"DOWNLOAD_FRAG_LATENCY" (cấu hình tùy chọn thiết lập để 10 giây theo mặc
định) trƣớc khi tải về các mảnh tiếp theo.
Khi tất cả các mảnh của gói đƣợc tải về, nó sẽ sử dụng gói câu lệnh và đợi
“DOWNLOAD_CYCLE_LATENCY” ( cấu hình tùy chọn mặc định là 60 giây) trƣớc
khi bắt đầu một vòng mới và gia tăng số thứ tự vòng.
Khi tất cả các vòng của chu kỳ đã hoàn thành, agent sẽ đợi
“DOWNLOAD_PERIOD_LATENCY” ( cấu hình tùy chọn, mặc định là 0 giây).

38
Nếu tất cả các gói đã đƣợc tải về và cài đặt thành công, nó dừng lại. Nếu không,
nó bắt đầu một giai đoạn mới của chu kỳ.
LƯU Ý: Ưu tiên cấp 0 là một mức độ đặc biệt. Tất cả các gói ưu tiên 0 sẽ được
tải về trước khi tất cả các gói ưu tiên cao hơn những gói khác vào đầu của mỗi chu kỳ.
Nếu tải không thành công, agent sẽ thử lại để tải về các gói không phải là ưu tiên 0,
mà không kiểm tra những gói khác. Vì vậy, nó hoàn toàn có thể ngừng triển khai. Sử
dụng level 0 một cách cẩn trọng!
Có thể sử dụng các thiết lập tùy biến sử dụng băng thông mạng. Bằng cách tăng
độ trễ tùy chọn sẽ làm tăng thời gian để tải về các mảnh và giảm tỷ lệ trung bình sử
dụng mạng bằng cách tăng chiều dài tùy chọn thời gian, điều này sẽ trì hoãn những
mảnh tải về bị hỏng, nhƣng cũng có thể bằng cách giảm độ dài thời gian để một giá trị
thấp hơn 10, cũng có thể dừng tải gói với mức ƣu tiên cao hơn giá trị này.

Yêu cầu:

Server triển khai gói lƣu trữ thông tin file phải hỗ trợ SSL, vì quá trình tải thông
tin gói là rất nhạy cảm. Thông tin file chứa đựng những miêu tả gói và các lệnh thực
thi. Vì vậy, nếu một ai đó gửi một gói tin giả mạo, yêu cầu tải về file infor, anh ta có
thể thực thi bất kỳ câu lệnh nào mà anh ta muốn tới các máy trong hệ thống giám sát.
Điều đó giải thích tại sao máy chủ triển khai cần sử dụng SSL để cho phép agent
chứng thực với server và đảm bảo là gói cần triển khai là từ máy chủ triển khai.
Agent phải có một “certificate” để chứng thực với máy chủ triển khai. Chứng chỉ
này phải đƣợc lƣu trữ dƣới tên “cacert.pem” trong thƣ mục cài đặt chứa OCS
Inventory Agent trong Windows, và thƣ mục “/etc/ocsinventory-client” trong agent
Linux.
Dƣới Windows có thể sử dụng gói OCS Inventory NG để tạo một agent installer
bao gồm cả chứng thực, hoặc có thể tạo một logon script theo mẫu sau rồi copy file
chứng thực vào trong thƣ mục của agent( Giả định agent đƣợc cài vào C:\Program
Files\OCS Inventory Agent và file chứng thực đang đƣợc chia sẻ với tên MYSHARE
trên server 192.168.0.81).
@echo
REM Check if CA file exists
if exist “C:\Program Files\OCS Inventory Agent\cacert.pem” goto CA_END
REM CA file does not exists, install it
Copy \\192.168.0.81\MYSHARE\cacert.pem “C:\Program Files\OCS Inventory
Agent\cacert.pem”
:CA_END

39
Nếu có sẵn một hạ tầng khóa công khai (PKI), phải tạo một server chứng thực có
giá trị cho server triển khai và copy file chứng thực vào thƣ mục cài đặt agent client
với tên file “cacert.pem”
Nếu không có một cơ sở hạ tầng khóa công khai, có thể sử dụng một giấy chứng
nhận tự ký cho các máy chủ triển khai, và copy file chứng thực vào thƣ mục cài đặt
agent client với tên “cacert.pem”

4.2.1 Tạo gói

Trƣớc tiên, muốn triển khai một ứng dụng phải tạo ứng dụng thành các gói.

Hình 4.2: Lựa chọn Tạo gói

Các gói này sẽ đƣợc lƣu trữ trong thƣ mục /usr/share/ocsinventory-
NG/download/”timestamp”. Trong đó “timestamp” là giá trị ngẫu nhiên khi tạo gói
sinh ra cho từng gói.

40
Hình 4.3: Cửa sổ tạo các gói.

1. Nhập vào tên của gói.


2. Lựa chọn hệ thống thực thi gói. Có thể lựa chọn giữa Windows và
Linux.
3. Lựa chọn giao thức tải gói. ở đây là HTTP.
4. Lựa chọn thứ tự ƣu tiên của gói. Có thể lựa chọn mức từ 0 tới 10. Gói có
độ giá trị thấp hơn sẽ có độ ƣu tiên cao hơn.
5. Có thể chọn để cảnh báo ngƣời dùng rằng một cái gì đó đƣợc đƣa ra trên
máy tính của mình. Set "warn User" danh sách thả xuống để "YES", điền
vào trong văn bản để hiển thị cho ngƣời dùng, bao lâu để hiển thị các
văn bản trƣớc khi thẩm tra tự động cài đặt gói (đặt 0 để chờ đợi vô thời
hạn) và nếu ngƣời dùng có thể hủy bỏ hoặc trì hoãn triển khai gói tại lần
gửi thông tin tiếp theo.
6. Có thể chỉ định nếu triển khai gói cần có một tƣơng tác ngƣời dùng bằng
cách thiết lập danh sách thả xuống " Installation completion need user
action: " để "YES", ví dụ, nếu thiết lập nhu cầu ngƣời dùng điền vào một
thông tin trên một hộp thoại để chấm dứt.

41
Cuối cùng, chọn hành động trong "Action". Đây là một số mẫu mô tả các
loại gói có thể xây dựng.

4.2.2 Triển khai gói

4.2.2.1 Triển khai gói thông qua lệnh launch:

Gói cần triển khai có thể có một hoặc nhiều file, với ít nhất một file có khả năng
thực thi cho việc triển khai cài đặt gói. Nén các file thành một file Zip với các gói gán
cho Windows agent và file TAR.GZ với các gói gán cho LINUX agent.
Lựa chọn Launch và kích vào nút Browse để lựa chọn các file ZIP hay TAR.GZ
Trong trƣờng “Command” , chỉ điền tên file thực thi không cần có đƣờng dẫn với
các thông số tùy chọn. Câu lệnh này sẽ đƣợc thực hiện khi client tải về gói và ghép lại
trong thƣ mục tạm.
Ví dụ, khi muốn triển khai một phiên bản mới OCS Inventory NG Agent cho
Windows, sử dụng cài đặt ẩn, chỉ định địa chỉ của Comunication Server
my_ocs_com_srv, vô hiệu hóa thiết lập IE proxy, và cho phép ghi lại log của cài đặt,
Vi vậy file ZIP sẽ bao gồm file “OcsAgentSetup.exe” và trƣờng file name chứa:
 OcsAgentSetup.exe /S /SERVER:my_ocs_com_srv /NP /DEBUG

Hình 4.4: Tạo gói sử dụng lệnh Launch

Click vào “Send” để tải gói lên tới cửa sổ quản trị.

42
Tiếp theo, phải xác định kích thƣớc của từng mảnh của gói theo đó agent sẽ tải
từng mảnh này về. Điều này cho phép tải lại trong trƣờng hợp một mảnh nào đó tải bị
hỏng, và chỉ những mảnh nào hỏng mới cần tải lại thay vì tải lại hết các mảnh của gói.
Vì thế hãy lựa chọn kích thƣớc của từng phần file tùy theo băng thông mạng.
Cửa sổ quản lý sẽ cho phép chia các gói thành các mảnh và lƣu chúng vào trong
folder tên là timestamp trong thƣ mục download của thƣ mục gốc máy chủ apache.
Đồng thời, quá trình chia gói cũng tạo ra file XML tên là “infor”, file này miêu tả về
gói và các hành động của agent sau khi tải thành công.

Hình 4.5: Phân mảnh gói

4.2.2.2 Triển khai gói thông qua lệnh “Execute”

Gói cần triển khai có thể có một hoặc nhiều file, với ít nhất một file có khả năng
thực thi cho việc triển khai cài đặt gói. Nén các file thành một file Zip với các gói gán
cho Windows agent và file TAR.GZ với các gói gán cho LINUX agent.
Lựa chọn Execute và kích vào nút Browse để lựa chọn các file ZIP hay TAR.GZ
Trong trƣờng “Command”, phải điền đƣờng dẫn tới file thực thi để khởi động với
các thàm số ( không cần đƣờng dẫn đầy đủ). Câu lệnh này sẽ đƣợc thực hiện trên máy
trạm sau khi gói đƣợc tải về thành công. Các biến môi trƣờng trong trƣờng
“Command” có thể nhƣ: %SystemDrive% %SystemRoot%, %windir%,
%ProgramFiles%, %CommonProgramFiles% …
Ví dụ, khi muốn triển khai một phần mềm sử dụng Windows Installer cài đặt ẩn.
Vì thế, file ZIP bao gồm file “software.msi” và trƣờng “Command” là:
 msiexec.exe /i software.msi /quiet

43
Hình 4.6: Tạo gói sử dụng lựa chọn Execute

Click “Send” để tải lên gói và tới cửa sổ quản trị.


Tiếp theo, phải xác định kích thƣớc của từng mảnh của gói cho phép agent tải về
từng phần nhỏ. Điều này cho phép agent tải lại nếu phần của gói tải bị lỗi.
Tiếp theo, phải xác định kích thƣớc của từng mảnh của gói theo đó agent sẽ tải
từng mảnh này về. Điều này cho phép tải lại trong trƣờng hợp một mảnh nào đó tải bị
hỏng, và chỉ những mảnh nào hỏng mới cần tải lại thay vì tải lại hết các mảnh của gói.
Vì thế hãy lựa chọn kích thƣớc của từng phần file tùy theo băng thông mạng.

Hình 4.7: Phân mảnh gói khi sử dụng lựa chọn Execute

44
Cửa sổ quản lý sẽ cho phép chia các gói thành các mảnh và lƣu chúng vào trong
folder tên là timestamp trong thƣ mục download của thƣ mục gốc máy chủ apache.
Đồng thời, quá trình chia gói cũng tạo ra file XML tên là infor, file này miêu tả về gói
và các hành động của agent sau khi tải thành công.

4.2.2.3 Sử dụng Execute để thực thi một câu lệnh.

Điều này cho phép thực thi một hay nhiều lệnh tới client.
Gói muốn triển khai chỉ với một câu lệnh.
Lựa chọn Execute và để trƣờng “File” trống.
Trong trƣờng “Command”, chỉ điền tên của lệnh, tùy chọn, và các tham số. Lệnh
này sẽ thực thi khi mà gói đƣợc tải về client.
Ví dụ, khi muốn đặt địa chỉ Proxy của máy windows client thì trƣờng
“Command” ở đây là:
 Proxycfg.exe /p 192.168.1.1

Hình 4.8: Sử dụng lựa chọn Execute để thực thi một lệnh tới máy trạm

Hoặc khi muốn xóa một chƣơng trình của máy trạm, có thể sử dụng câu lệnh:

Wmic product where name=“tên phần mềm” call uninstall /y

Click “Send” để tải lên gói và tới cửa sổ quản trị.


Cửa sổ quản lý sẽ cho phép chia các gói thành các mảnh và lƣu chúng vào trong
folder tên là timestamp trong thƣ mục download của thƣ mục gốc máy chủ apache.

45
Đồng thời, quá trình chia gói cũng tạo ra file XML tên là infor, file này miêu tả về gói
và các hành động của agent sau khi tải thành công.

4.2.2.4 Lƣu trữ gói thông qua lệnh “Store”

Gói cần triển khai có thể có một hoặc nhiều file, dùng để lƣu trữ một folder tới
các máy trạm. Nén các file thành một file Zip với các gói gán cho Windows agent và
file TAR.GZ với các gói gán cho LINUX agent.
Lựa chọn “Store” và kích vào nút Browse để lựa chọn các file ZIP hay TAR.GZ
Trong trƣờng “Path” chỉ phải điền đƣờng dẫn nơi mà agent sẽ lƣu trữ file đƣợc
giả nén từ gói sẽ đƣợc tải về.
Ví dụ, chúng ta triển khai và file đƣợc lƣu trữ trong thƣ mục “C:\My Folder”:

Hình 4.9: Tạo gói sử dụng lựa chọn Store

Click “Send” để tải lên gói và tới cửa sổ quản trị.


Phải xác định kích thƣớc của từng mảnh của gói cho phép agent tải về từng phần
nhỏ. Điều này cho phép agent tải lại nếu phần của gói tải bị lỗi.
Tiếp theo, phải xác định kích thƣớc của từng mảnh của gói theo đó agent sẽ tải
từng mảnh này về. Điều này cho phép tải lại trong trƣờng hợp một mảnh nào đó tải bị
hỏng, và chỉ những mảnh nào hỏng mới cần tải lại thay vì tải lại hết các mảnh của gói.
Vì thế hãy lựa chọn kích thƣớc của từng phần file tùy theo băng thông mạng.

46
Cửa sổ quản lý sẽ cho phép chia các gói thành các mảnh và lƣu chúng vào trong
folder tên là timestamp trong thƣ mục download của thƣ mục gốc máy chủ apache.
Đồng thời, quá trình chia gói cũng tạo ra file XML tên là infor, file này miêu tả về gói
và các hành động của agent sau khi tải thành công.

Hình 4.10: Phân mảnh gói khi lựa chọn Store

4.2.3 Kích hoạt gói

Khi gói đƣợc tạo phải chỉ cho agent nơi mà có thể tải về các gói.
Trƣớc tiên, agent sẽ tải về file chứa thông tin gói. Vì các file này rất quan trọng,
vì thế quá trình tải phải sử dụng HTTP thông qua SSL (HTTPS) để đảm bảo agent có
thể chứng thức với máy chủ triển khai. Tiếp theo, các mảnh của gói sẽ đƣợc miêu tả
trong file và sẽ tải về qua giao thức HTTP thông thƣờng.

Hình 4.11: Cửa sổ lựa chọn kích hoạt gói

Lựa chọn menu “Deployment” và lựa chọn “Active”. Sẽ thấy ở đây các gói đã
xây dựng.

47
Có thể click vào dấu thập đỏ để xóa gói đã xây dựng. Điều này đồng nghĩa với
xóa gói từ cơ sở dữ liệu và cũng xóa các thông tin về file và các mảnh của file từ thƣ
mục download. Vì thế, các gói đã xóa sẽ không thể hoạt động, và không còn hiệu lực
tới các máy trạm.

Hình 4.12: Danh sách các gói đã tạo

Click vào “Active” vào gói tƣơng ứng muốn thực thi.
Trong trƣờng “HTTPs url”, nhập URL để tải file thông tin gói.
Trong trƣờng “HTTP url” nhập URL để tải các mảnh của gói

Hình 4.13: Điền địa chỉ cho phép agent tải về các mảnh của gói và file infor.

Kích hoạt gói tới các máy trạm.

Có thể kích hoạt gói tới từng máy trạm. Bằng việc hiện thị các thuộc tính của
máy, lựa chọn “Customization” và thêm vào gói. Tuy nhiên, đây không là cách tốt
nhất cho việc triển khai một gói tới nhiều máy trạm.
Các tốt nhất là lựa chọn tìm kiếm sử dụng chức năng“Search with various
creteria” để tìm các máy muốn triển khai, và kích hoạt gói tới tất cả các máy một lúc.
Ví dụ, khi kích hoạt gói mà chúng ta tạo cho tất cả các máy chạy Windows XP

48
Trƣớc tiên, cần tìm kiếm máy hạy hệ điều hành Windows :

Hình 4.14: Tìm kiếm các máy chạy hệ điều hành Windows

Hình 4.15: Lựa chọn triển khai gói


Click vào Deploy để triển khai tới tất cả các máy vừa tìm kiếm đƣợc.

Hình 4.16: Kích hoạt triển khai

Click vào “Affect” của gói mà muốn lựa chọn triển khai tới các máy trạm.
Các agent client sẽ đƣợc Comunication Server thông báo chúng có gói cần đƣợc
triển khai. Vì thế, trong khi agent không liên lạc với Comunication Server, trên cửa sổ
quản trị sẽ ở trạng thái “WAITING NOTIFICATION”, Chỉ khi agent đã liên lạc với
Comunication server, trạng thái sẽ chuyển sang “NOTIFED”

49
4.2.3 Thống kê triển khai và xác nhận thành công

Các gói có thể đã đƣợc actived và unactived, trạng thái triển khai trong menu
“Activate”
Có thể hiển thị trạng thái triển khai bằng việc lựa chọn “Stats”cho từng gói.
Khi đƣa gói vào triển khai với ít nhất một máy trạm, sẽ có số liệu thống kê đồ
họa hiển thị trạng thái thông báo triển khai.

Hình 4.17: Trạng thái triển khai gói.

Bảng 2 Các trạng thái triển khai


Mã trạng thái Ý nghĩa
WAITING Server đang đợi máy agent liên lạc để thông báo
NOTIFICATION có một vài gói cần phải tải về.
NOTIFIED Agent đã đƣợc thông báo có một vài gói cần tải
về. Đang chờ kết quả mã.
SUCCESS [code] Agent đã thành công tải gói và thực hiện câu
lệnh hoặc dữ liệu đã đƣợc giải nén thành công.

Với lệnh “Launch”, trạng thái này có thể đã


hoàn thành thực hiện lệnh trả về mã.
ERR_ALREADY_SETUP Gói triển khai này thực sự đã cài trƣớc đó ở
client.

50
ERR_BAD_ID Agent không thể tải về gói vì không tìm đƣợc
ID của gói trên server triển khai.
ERR_BAD_DIGEST Gói tải về bị hỏng, do đó không thể thực hiện
lệnh.
ERR_UZIP Gói tải về không thể giải nén.
ERR_BUILD Agent không xây dựng lại gói đƣợc.
ERR_EXECUTE Agent không thể thực thi lệnh kêt hợp với gói
đó đƣợc.s
ERR_CLEAN Agent không thể xóa gói đã tải về.
ERR_TIMEOUT Agent không thể tải về trong thời gian
DOWNLOAD_TIMEOUT
ERR_ABORTED Ngƣời dùng đã hủy bỏ lệnh thực thi cùng gói(
Do trong quá tình build gói đã lựa chọn notify
và cho phép ngƣời dùng hủy bỏ cài đặt gói).
ERR_EXECUTE_PACK Lỗi trong quá trình thực thi gói.

+ “Validating Success”: Thống kê các máy tính đã thành công triển khai
gói.
+ “Unaffect not notified” Hủy bỏ triển khai các gói tới các client mà không
có liên lạc tới máy chủ triển khai. Gói sẽ không bị xóa, mà chỉ có các máy
trạm không đƣợc lệnh triển khai gói mới bị hủy bỏ quá trình triển khai.
+ “Validate all”: Xóa các thống kê triển khai, và hủy bỏ các quá trình triển
khai từ những máy chƣa liên lạc với máy chủ. Là sự kết hợp của “Validate
Success” +”Unaffect not notified”.
Chú ý: nên xác minh lại trạng thái triển khai gói để xóa và kết thúc quá trình triển
khai trong cơ sở dữ liệu. Nếu không, dữ liệu sẽ ngày càng tăng lên và làm giảm hoạt
động của hệ thống.
4.2.4 Sử dụng chứng thực SSL trong triển khai gói.

Hệ thống triển khai gói có quá nhiều quyền, vì thế nó yêu cầu SSL truy cập để
xác minh máy chủ trƣớc khi tải về gói. Vì vậy cần có chứng thực SSL để sử dụng với
máy chủ triển khai gói.
Chứng thực đƣợc định nghĩa trong
http://en.wikipedia.org/wiki/Public_key_certificate.

51
Có thể sử dụng một self-signed –certificate nhanh chóng và dễ dàng, nhƣng bị
hạn chế, hoặc sử dụng một công cụ đáng tin cậy, ví dụ nhƣ một PKI kết hợp với CA.
Apache web server có sẵn thƣ viện OpenSSL , và có thể tạo ra và quản lý giấy
chứng thực.

Sử dụng self-signed-ceritiface.

Chú ý: Phải chú ý tới ngày hết hạn của giấy chứng thực, giấy chứng thực của
máy chủ triển khai phải đƣợc cài đặt trên các agent client. Khi giấy chứng thực hết
hạn, phải tạo và cài lại trên các agent client.

Với OCS Iventory Server chạy trên LINUX:

Thông thƣờng, Apache hoặc gói mod_ssl có một mẫu chứng thực, đặc biệt là
giấy chứng nhận để kiểm tra.
Tuy nhiên, ở đây có một ví dụ một đoạn script để tạo ra một giấy chứng thực và
khóa:
#!/bin/sh
#
# First, generate apache server certificate request
#
# Generate 1024 bits RSA key, store private key in a
# no password protected PEM file server.key, using
# system default openssl configuration file.
#
echo
echo Generating Apache server private key...
echo
openssl genrsa -out server.key 1024
#
# Next, sign the apache server certificate with the apache
# server key
#
# Sign with PEM certificate server.crt, using PEM file
# server.key for server private key, using system default
# openssl configuration file.
#
# The produced certificate will be valid for 1825 days (about 5 years)
#
echo
echo Generating Apache server self signed certificate...
echo
openssl req -outform PEM -new -key server.key -x509 -days 1825 -out server.crt

52
Đoạn script này tạo ra một RSA private key trong file server.key và một giấy xác
thực X.509 tự ký trong file “server.crt”.
Trƣớc tiên, chạy đoạn script này bằng lệnh:
$ sh apache_generate_crt.sh

Đoạn script này sẽ tạo ra một khóa riêng, và nhắc nhở về các thông tin:
 Country code, usually required: Mã quốc gia (bắt buộc có)
 State or province name, usually required : Tên tỉnh, thành (bắt buộc)
 City, usually required : Thành phố (bắt buộc)
 Organisation or company name, usually required: Tên tổ chức, cơ quan (bắt
buộc).
 Organisational Unit name, usually optional: Tên đơn vị tổ chức ( Tùy chọn).
 Common name (this is the DNS name or IP address of your server), required
: Tên máy chủ ( DNS name, hoặc địa chỉ IP của máy server) (bắt buộc).
 An email address, usually optional: Địa chỉ Email ( tùy chọn).

Hình 4.18 Tạo file chứng thực SSL

Trong ví dụ này, đƣa ra giấy chứng thực tự ký cho server có IP: 192.168.0.81
Tiếp theo cần phải copy giấy chứng thực của server “server.crt” vào thƣ mục cài
đặt của agent client và đổi tên file này thành “cacert.pem” và cập nhật file cấu hình
Apache/mod_ssl để sử dụng các file chứng thực này.

53
Dƣới CentOS/ Fedora/Redhat LINUX file chứng thực đƣợc lƣu trữ trong thƣ
mục “/etc/httpd/conf/ssl.crt” và file khóa đƣợc lƣu trữ trong “/etc/httpd/conf/ssl.key” –
Nếu chƣa có, có thể tạo và nhớ phân quyền sở hữu cho các thƣ mục này.) .
Hãy nhớ khởi động lại dịch vụ apache để có hiệu lực

54
CHƢƠNG 5

KẾT QUẢ ĐẠT ĐƢỢC SAU KHI NGHIÊN CỨU VÀ TRIỂN KHAI
HỆ THỐNG GIÁM SÁT OCS INVENTORY NG TRÊN HỆ THỐNG
MẠNG TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

5.1 Giới thiệu hệ thống mạng của trƣờng Đại Học Công Nghệ

Trƣờng Đại học Công nghệ hiện có 19 khối/đơn vị bao gồm các phòng ban, các
khoa, các trung tâm, phòng thí nghiệm, phòng thực hành… Tất cả các đơn vị của
trƣờng đều đƣợc trang bị đều đƣợc trang bị các hệ thống máy tính phục vụ công tác
điều hành, quản lý, học tập, giảng dạy và nghiên cứu.

Hình 5.1: Sơ đồ logic


hệ thống mạng trƣờng Đại học Công Nghệ.

55
5.2 Cài đặt và triển khai

Hệ thống OCS Inventory NG đƣợc triển khai và giám sát các dịch vụ bắt đầu từ
ngày 27/04/2010 trên server chạy hệ điều hành CentOS có địa chỉ mạng nội bộ là
192.168.0.81 và địa chỉ truy cập là: http://192.168.0.81/ocsreports . Bƣớc đầu thử
nghiệm, hệ thống giám sát các máy ở Trung tâm máy tính và các máy trong phòng
Multimedia sau đó đƣợc triển khai trên phòng máy 2.

Hình 5.2: Sơ đồ hệ thống mạng triển khai OCS Inventory NG

5.3 Kết quả giám sát

5.3.1 Giám sát các máy trạm

Tổng số máy giám sát là 42 máy trong đó có 8 máy ở trung tâm máy tính (6 máy
chạy hệ điều hành Windows XP, 1 máy chạy Hệ điều hành Ubuntu và 1 máy chạy hệ
điều hành CentOS) và 34 máy ở phòng máy thực hành số 2 chạy hệ điều hành
Windows XP:

56
Hình 5.3 Các máy ở phòng Thực hành số 2

Hình 5.4: Thông tin giám sát các máy trạm.

Hệ thống có thể giám sát đƣợc hầu hết các bộ phận và các ứng dụng cài đặt trên
máy trạm. Sau đây là một số hình ảnh chi tiết về máy “class02-2” tại phòng máy thực
hành số 2:

57
Hình 5.5 Thông tin chung về máy CLASS02-02

Hình 5.6 Thông tin về các phần mềm cài đặt trên máy CLASS02-02

58
Hình 5.7 Thông tin về BIOS

Hình 5.8 Thông tin về CPU

Hình 5.9 Thông tin về RAM

Hình 5.10 Thông tin về các thiết bị nhập

Hình 5.11 Thông tin về ổ cứng

Hình 5.12 Các trình điểu khiển thiết bị

59
Hình 5.13 Thông tin về card mạng

Hình 5.14 Thông tin về màn hình

Hình 5.15 Thông tin về trạng thái quản lý.

Ở đây có thể thêm các gói để triển khai cho riêng máy này. Ngoài ra còn hiển thị
các gói đã triển khai và tình trạng triển khai.

Hình 5.16: Các thông tin về Âm thanh, card màn hình và các cổng cắm

60
5.3.2 Giám sát các thiết bị mạng

 Các máy in:

Hình 5.17 Thông tin các máy in

 Access Point và một số thiết bị khác:

Hình 5.18 Một số thông tin về Access Point phát hiện đƣợc tại Trung Tâm Máy
Tính.

61
CHƢƠNG 6.

NHẬN XÉT, ĐÁNH GIÁ VỀ HỆ THỐNG OCS INVENTORY NG

6.1 Ƣu điểm

6.1.1 Khả năng mở rộng

OCS Inventory NG là một hệ thống giám sát các thiết bị đầu cuối mạnh mẽ, là hệ
thống mã nguồn mở và miễn phí. Ngƣời quản trị có thể dễ dàng viết thêm các module
( các file php) để giám sát tùy theo nhu cầu của mình.
Ví dụ: có thể tạo một module có chức năng : cảnh báo không gian đĩa trống nếu
dung lƣợng đĩa trống còn dƣới 5% bằng cách tạo ra 2 file “ocsdiff_conf.php” và
“diskreport.php”có nội dung nhƣ sau. Để sử dụng, copy 2 file này vào thƣ mục
“/usr/share/ocsinventory-reports/ocsreports/”

File “ocsdiff_conf.php”:

<?php
# ocsdiff configuration file
#
# Database host
$dbhost = "localhost";
$dbname = "ocsweb";
$dbuser = "ocs";
$dbpass = "ocs";
$adminemail = "s06020114@vnu.edu.vn";
$diskthreshold = 5; #Gioi han canh bao
#cảnh báo sẽ gửi cho các Email sau:
$domains = array(
0 => array(
'name' => „a‟,
'email' => a@vnu.edu.vn,b@vnu.edu.vn"),
1 => array(
'name' => „c‟,
'email' => "c@vnu.edu.vn "),
2 => array(
'name' => „d‟,
'email' => "d@vnu.edu.vn "));
$diskdomains = array(
0 => array(
'name' => „a‟,

62
'email' => a@vnu.edu.vn ,b@vnu.edu.vn "),
1 => array(
'name' => „c‟,
'email' => "c@vnu.edu.vn "),
2 => array(
'name' => „d‟,
'email' => "d@vnu.edu.vn "));
?>

File “diskreport.php”

<?php
# Chuong trinh nay dua ra canh bao khong gian dia trong cho nguoi quan tri
#Lay thong tin file cau hinh
require_once("ocsdiff_conf.php");
# Khởi tạo các tiêu đề để các email sẽ đƣợc đọc nhƣ file Excel đính kèm
$today = date("Y-m-d G:i:s");
$headers = "From: s06020114@vnu.edu.vn\r\n";
$headers .= "Reply-To: s06020114@vnu.edu.vn \r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "Content-type: application/vnd.ms-excel\r\n";
$headers .= "Content-disposition: attachment; filename=$today.csv\r\n";
# Connect to database
$link = mysql_connect("$dbhost", "$dbuser", "$dbpass")
or die("Could not connect : " . mysql_error());
mysql_select_db("$dbname") or die("Could not select database");
# Tạo vòng lặp thông qua định nghĩa miền đĩa và chuẩn bị cho báo cáo
for($i = 0; $i < sizeof($diskdomains); $i++) {
$entry = $diskdomains[$i];
$name = $entry['name'];
$email = $entry['email'];
$subject = "Daily Disk Utilization Report for domain $name";
$msg = "Computer Name,Drive Letter,Type,Filesystem,Total,Free,Free %\n";
#Giờ đã có tên miền và liên lạc, tiếp theo lấy danh sách hiện tại các deviceIDs từ
miền này
$query = "select id, name, userid from hardware where workgroup='$name' and
osname like '%server%'";
$deviceresults = mysql_query($query) or die("Query failed : " . mysql_error());
while ($line = mysql_fetch_array($deviceresults, MYSQL_ASSOC)) {
$deviceid = $line['id'];
$computername = rtrim($line['name']);
# Disk checking section
$query = "select letter, type, filesystem, total, free
from drives
where hardware_id='$deviceid' and
type = 'Hard Drive'";
$diskresults = mysql_query($query) or die("Query failed : " .
mysql_error());

63
# All information is now collected, now generate output
while ($diskline = mysql_fetch_array($diskresults, MYSQL_ASSOC)) {
$driveletter = $diskline['letter'];
$drivetype = $diskline['type'];
$drivefs = $diskline['filesystem'];
$drivetotal = $diskline['total'];
$drivefree = $diskline['free'];
$freeperc = (($drivefree/$drivetotal) * 100);
if ($freeperc < $diskthreshold) {
$msg .=
"$computername,$driveletter,$drivetype,$drivefs,$drivetotal,$drivefree,$freeperc\n";
}
} # end of disk loop
} # end of devices in a domain loop
# send out the email for this domain
if ($msg == "") $msg = "No disk space issues found\n";
mail("$email", $subject, $msg, $headers);
} # end of domain loop
# Almost done, just need to free up result memory
mysql_free_result($deviceresults);
mysql_free_result($diskresults);
?>

6.1.2 Khả năng giám sát

OCS Inventory NG là một hệ thống giám sát dựa trên giao thức HTTP/HTTPS
mà không dựa trên giao thức SNMP nhƣ đa số các hệ thống giám sát khác. Các thông
tin đƣợc agent trực tiếp gửi qua giao thức HTTP cho nên có thể giám sát đƣợc các máy
không trong cùng mạng LAN, mà chỉ cần có kết nối tới OCS Inventory NG Server qua
cổng 80.
OCS Inventory NG là hệ thống giám sát các máy trạm ( các thông tin phần mềm,
các thiết bị phần cứng) rất mạnh.
Thích hợp cho rất nhiều hệ điều hành (Windows, LINUX, MacOS, AIX,...) và
các agent cũng hỗ trợ rất đa dạng(Windows, LINUX, MacOS..).

6.2 Nhƣợc điểm

6.2.1 Khả năng giám sát:

OCS Inventory NG rất mạnh trong giám sát các máy trạm nhƣng lại kém hiệu
quả trong giám sát các thiết bị mạng, do phải phụ thuộc vào chính các máy trạm đó (

64
tính năng IPDiscover hoạt động trên các máy trạm, các máy này sử dụng ARP truy vấn
lấy thông tin các thiết bị).
Tính năng còn nhiều hạn chế: giám sát thiết bị mobile, cảnh báo tới ngƣời quản trị,
tự động nén thông tin thành file XML hay CVS gửi cho ngƣời quản trị…, nên tích hợp
tính năng SNMP để giám sát các thiết bị mạng kết nối trực tiếp tới máy chủ.
Về tính năng giám sát phần mềm, chƣa lấy thông tin về serialnumber, productID
để tiện cho việc quản lý bản quyền phần mềm.
Cần có lƣu trữ theo ngày, tháng ( history) cho phép xem thông tin giám sát ở
ngày, tháng trƣớc để tiện cho việc quản lý.

6.2.2 Độ an toàn

Hệ thống OCS Inventory NG có nhiều lỗi tiềm ẩn có thể bị tin tặc sử dụng để tấn
công.
Theo nhƣ thống kê của Secunia ( http://secunia.com/ ) và CNET
(http://www.cnet.com) từ phiên bản trƣớc OCS Inventory NG chứa các hiểm họa tấn
công về SQL Injection:
- Trong file “download.php” ở phiên bản 1.x: giá trị đầu vào khi nhập “n”,
“o” hay “v” không đƣợc kiểm tra khi truy vấn vào SQL. Điều này có thể
đƣợc khai thác để thao tác truy vấn SQL bằng cách tiêm mã độc đoán
SQL.
- Trong file “group_show.php” ở phiên bản 1.x: giá trị đầu vào “systemid”
cũng không đƣợc kiểm tra khi truy vấn vào cơ sở dữ liệu. Điều này có thể
bị khai thác để thao tác truy vấn SQL bằng cách nhập các đoạn mã độc
SQL.
- Trong giao diện đăng nhập của phiên bản 1.x: Các giao diện của ứng dụng
web trả về thông báo lỗi khác nhau tuỳ thuộc vào việc một cố gắng đăng
nhập không thành công đƣợc thực hiện với một tên ngƣời dùng hợp lệ
hoặc không hợp lệ. Điều này có thể đƣợc khai thác để có khả năng xác
định tên ngƣời dùng hợp lệ qua nhiều cố gắng đăng nhập.
- Ở phiên bản mới nhất 1.3.x, trong file “header.php” giá trị nhập vào trong
trƣờng “login” không hề đƣợc kiểm tra khi truy vấn vào cơ sở dữ liệu.
Điều này có thể bị tin tặc nhập vào các đoạn mã SQL độc hại

65
 Giải pháp: chỉnh sửa đoạn code trong file “header.php” đảm
bảo giá trị “login” đƣợc kiểm tra trƣớc khi cho truy vấn vào cơ
sở dữ liệu.

6.2.3 Giao diện sử dụng

Giao diện rối, một số các biểu tƣợng và miêu tả không chính xác. Ví dụ: biểu
tƣợng “security” nhƣng ý nghĩa thực sự lại không phải là “an toàn” hay “bảo mật” mà
tính năng lại là lấy thông tin mạng, truy vấn ( “IP Query”)… Biểu tƣợng agent có ý
nghĩa rất giống với “thiết lập”.
Tuy nhiên, nhìn chung OCS Inventory là một hệ thống giám sát thiết bị đầu cuối
rất mạnh mẽ và tiện ích cho ngƣời quản trị. Có thể kết hợp với các phần mềm mã
nguồn mở khác nhƣ: Nagios, Cati thì hệ thống giám sát thiết bị đầu cuối của mạng sẽ
hoàn hảo hơn.

66
Tài liệu tham khảo:

[1] OCS Inventory NG team


OCS-Inventory-NG-Installation-and-Administration-Guide-19.pdf
http://ocsinventory.sourceforge.net
[2] http://secunia.com/
[3] http://seigafuse.com/2007/07/26/daily-diskspace-alerts-using-ocs-inventory-ng/
[4] http://wiki.ocsinventory-ng.org/index.php
[5] http://www.cnet.com/
[6] Essential SNMP, By Douglas Mauro, Kevin Schmidt
Publisher :O'Reilly; Pub Date : July 2001; ISBN : 0-596-00020-0;

67

You might also like