TÌM HIÊU NAGIOS VÀ ỨNG DỤNG VÀO VIỆC ĐẢM BẢO AN NINH MẠNG - Pdf 25

HỌC VIỆN KỸ THUẬT MẬT MÃ
KHOA AN TOÀN THÔNG TIN

BÁO CÁO BÀI TẬP LỚN
ĐỂ TÀI 1 :Tìm hiểu chương trình Nagios
và khả năng ứng dụng vào bảo đảm an ninh cho mạng máy tính.
Giáo viên hướng dẫn:
Nguyễn Thị Hồng Hà
Sinh viên thực hiện:
Bùi Đức Thiện
Lê Xuân Đoàn
Ngô Đức Nam
Hà Nội, tháng 03 năm 2015

MỤC LỤC

DANH MỤC HÌNH VẼ
Hình 1.1: Các đối tượng cần giám sát trên Nagios 4
Hình 1.2: Ví dụ mô tả sự cố 7
Hình 1.3: Kiểm tra trạng thái 8
Hình 2.1 Giao tiếp giữa Nagios và Window … 13
Hình 2.2: Thông tin các dịch vụ trên Sample Client ……18
Hình 2.3:Thông tin về Sample client …18
ình 3.3 : Các cảnh báo mà Nagios thông báo …20
Hình 3.2 : Các host mà Nagios đang giám sát …20
Hình 3.1 : Mô hình triển khai thực tế …21
LỜI NÓI ĐẦU
Trong thời đại công nghệ thông tin hiện nay việc sử dụng các ứng dụng để
quản lý mạng ngày càng trở nên cần thiết. Mọi cơ quan, doanh nghiệp ngày càng phát
triển phạm vi lớn mạnh với quy mô lớn và ngày phức tạp, do đó việc sử dụng các
phần mềm quản lý mạng sẽ hỗ trợ rất tốt cho việc quản lý mạng. Ngay trong đề tài

dõi một giá trị số như số lượng không gian đĩa và tải CPU, ta có thể định nghĩa
ngưỡng những giá trị để được cảnh báo khi cần thiết.
Một thuận tiện khác của Nagios là các báo cáo về trạng thái của các dịch
vụđang hoạt động. Báo cáo này cung cấp một cái nhìn tổng quan tốt về tình trạng
cơ sở hạ tầng. Nagios cũng cung cấp các báo cáo tương tự cho các nhóm máy chủ
vàcác nhóm dịch vụ, cảnh báo khi bất kỳ dịch vụ quan trọng hoặc cơ sở dữ liệu
server ngưng hoạt động. Báo cáo này cũng có thể giúp xác định độ ưu tiên của
các vấn đềnhư vấn đề nào cần được giải quyết trước.
Đối tượng giám sát của Nagios được chia thành hai loại: host và dịch
vụ.Host là các máy vật lý (máy chủ, bộ định tuyến, máy trạm, máy in và vv),
trong khi dịch vụ là những chức năng cụ thể, ví dụ, một máy chủ web (một quá
trình xử lý http) có thể được định nghĩa như là một dịch vụ được giám sát. Mỗi
dịch vụ có liên quan đến một máy chủ là dịch vụ đang chạy trên đó. Ngoài ra, cả
hai máy và dịchvụ có thể được nhóm lại thành các nhóm dịch cho phù hợp.
Hình 1.1: Các đối tượng cần giám sát trên Nagios
Nagios thực hiện tất cả các kiểm tra của mình bằng cách sử dụng
plugins.Đây là những thành phần bên ngoài mà Nagios qua đó lấy được thông tin
về nhữnggì cần được kiểm tra và cung cấp các cảnh báo cho người quản trị.
Plugins có trách nhiệm thực hiện các kiểm tra và phân tích kết quả. Các đầu ra từ
một kiểm tra đó là một trạng thái (OK, WARNING, CRITICAL, hoặc
UNKNOW) và các văn bản bổ sung cung cấp thông tin về các dịch vụ cụ thể. Văn
bản này chủ yếu dành cho cácquản trị viên hệ thống để có thể đọc một trạng thái
chi tiết của một dịch vụ.
Nagios không chỉ cung cấp một hệ thống cốt lõi để theo dõi, mà còn
cung cấp một tập các plugins tiêu chuẩn trong một gói riêng biệt (xem
để biết thêm chi tiết). Những plugin này cho phép kiểm
tra các dịch vụ đang chạy trên hệ thống. Ngoài ra nếu ta muốn thực thi một kiểm
tra đặc biệt, ta có thể tạo một plugin riêng cho mình.
1.2 Lợi ích của việc giám sát tài nguyên
Có nhiều lý do tại sao ta nên chắc chắn rằng tất cả các nguồn tài nguyên

có thể được truy cập từ một máy tính đơn lẻ. Điều này sẽ cho ta một bức tranh
hoàn chỉnh cơ sở hạ tầng CNTT.
1.3 Các chức năng chính của Nagios
Các chức năng của Nagios rất linh hoạt, nó có thể được cấu hình để theo
dõi cơ sở hạ tầng CNTT theo cách ta muốn. Nó cũng có một cơ chế để tự động
phản ứng với các vấn đề, và một hệ thống cảnh báo mạnh. Tất cả điều này được
dựa trênmột hệ thống định nghĩa các đối tượng rõ ràng:
Commands: Được định nghĩa về cách Nagios cần thực hiện các loại kiểmtra,
chúng là một lớp trừu tượng cho phép ta nhóm các hoạt động tương tự lại
vớinhau.
Time-periods: Là ngày và thời gian kéo dài mà trong đó một hoạt động nên hay
không nên được thực hiện, ví dụ: Thứ hai đến thứ sáu 9:00-17:00.
Contacts và Contact groups: là những người cần được cảnh báo, cùng với thông
tin về cách thức và thời gian họ cần được cảnh báo. Contacts có thể được nhóm
lại thành Contact groups.
Host: là những máy vật lý, cùng với thông tin về việc ai sẽ được liên lạc, làm thế
nào kiểm tra phải được thực hiện, và khi nào. Host có thể được nhóm lại thành
các Host group, mỗi host có thể là một thành viên của nhiều Host group.
Services: là các chức năng khác nhau hoặc các tài nguyên cần được giám
sát,cùng với thông tin về những người cần được liên lạc, làm thế nào kiểm tra
phải được thực hiện, và khi nào. Service có thể được nhóm lại thành các service
group,mỗi service có thể là một thành viên của nhiều service group.
Host và service escalation: định nghĩa khoảng thời gian được chỉ ra mà sau đó
người phụ trách nên được cảnh báo của các sự kiện nào đó - ví dụ một máy chủ
quan trọng là ngưng hoạt hơn 4 giờ nên cảnh báo cho quản trị viên để họ bắt đầu
theo dõi các vấn đề.
Một tiện ích quan trọng ta sẽ đạt được bằng cách sử dụng Nagios là một hệ
thống phụ thuộc. Đối với các quản trị viên, rõ ràng là nếu router bị hỏng, tất cả
các máy truy cập thông qua nó sẽ thất bại. Nagios cho phép ta định nghĩa phụ
thuộc giữa các máy để hình thành cấu trúc liên kết mạng lưới thực tế. Ví dụ, nếu

thường,khởi động lại như vậy được thực hiện vào ban đêm để giảm số lượng
người dùng bị ảnh hưởng, đây là khoảng thời gian chấp nhận được. Tuy nhiên,
một vấn đề có thể nảy sinh khi Nagios cố gắng kết nối tới máy chủ và thông báo
rằng nó thực sự ngưng hoạt động nếu chỉ dựa vào một kết quả duy nhất.
Để xử lý tình huống khi một dịch vụ ngưng hoạt động trong một thời gian rất
ngắn, hoặc các kiểm tra tạm thời không thành công, người ta đưa ra trạng thái tạm
thời. Khi trạng thái của một kiểm tra là UNKNOW, hoặc nó là khác nhau các
trạngthái trước đó, Nagios sẽ tiến hành kiểm tra lại các máy chủ, dịch vụ nhiều
lần đểđảm bảo rằng thay đổi là cố định trong một khoảng thời gian dài. Số lần
kiểm trađược cấu hình trong phần định nghĩa các dịch vụ. Nagios giả định rằng
các kết quảmới là một trạng tạm thời. Sau khi tiến hành kiểm tra nhiều lần mà
trạng thái khôngđổi, thì nó được coi là một trạng thái cố định.
Mỗi Host và Service được định nghĩa số thử kiểm tra sẽ được thực hiện trước
khi nó có thể được giả định rằng thay đổi là vĩnh viễn. Điều này cho phép linh
hoạt trong việc kiểm tra các sự cố. Thiết lập số lượng kiểm tra một sẽ gây ra các
thay đổi được coi là khó khăn ngay lập tức. Sau đây là một minh họa cho trạng
thái tạm thờivà cố định, giả sử số lần kiểm tra là 3 ta sẽ có:
Hình 1.3: Kiểm tra trạng thái
Tính năng này cho phép bỏ qua sự cố ngưng hoạt động trong thời gian ngắn của
một dịch vụ. Nó cũng rất hữu ích để thực hiện các kiểm tra định kỳ ngay cả khi
mọi thứ hoạt động tốt.
CHƯƠNG 2: CÀI ĐẶT NAGIOS VÀ ỨNG DỤNG VÀO GIÁM SÁT
MẠNG
2.1 Cài đặt
 Cài CentOs : Tải về file cài đặt của hệ điều hành CentOs, tiến hành cài
đặt (Do khuôn khổ bài báo cáo có hạn nên nhóm xin mặc định là Hệ điều
hành cent os đã được cài sẵn);
 Cài đặt Nagios:
Yêu cầu
Để cài đặt phần mềm trước tiên ta phải có quyền truy cập tài

cd ~/downloads
tar xzf nagios-3.2.3.tar.gz
cd nagios-3.2.3
Chạy tập tin kịch bản cấu hình của nagios bằng tên nhóm người dùng
nagcmd đã được tạo ở phần trên
./configure with-command-group=nagcmd
Biên dịch mã nguồn của nagios
make all
Cài đặt chương trình, tập lệnh init, tập tin cấu hình mẫu và thiết lập
quyền cho cácthư mục cần thiết.
make install
make install-init
make install-config
make install-commandmode
Tùy chỉnh cấu hình
Những tập tin cấu hình của nagios nằm tại thư mục
/usr/local/Nagios/etc
.Chỉnh sửa tập tin contacts.cfg tại
/usr/local/Nagios/etc/objects/contacts.cfg
để thayđổi thông tin địa chỉ email cần dùng cho việc nhận các cảnh báo.
vi /usr/local/nagios/etc/objects/contacts.cfg
Cấu hình giao diện Web
Cài đặt tập tin cấu hình web Nagios trong thư mục conf.d của Apache.
make install-webconf
Tạo tài khoản nagiosadmin để đăng nhập vào giao diện web của Nagios.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
Khởi động lại Apache để các cài đặt mới có hiệu lực.
service httpd restart
Biên dịch và cài đặt các Plugins của Nagios
Giải nén mã nguồn của Nagios Plugins

Bây giờ ta có thể đăng nhập vào giao diện web của Nagios với tài khoản
nagiosadmin và mật khẩu đã được thiết lập lúc đầu tại địa chỉ:
http://localhost/nagios/
Tới đây là đã thành công trong việc cài đặt phần mềm Nagios
2.2 Cấu hình Nagios giám sát đảm bảo an ninh mạng
2.2.1 Cấu hình để giám sát hệ thống chạy hệ điều hành Windows
Giới thiệu
Chúng ta sẽ tiến hành cấu hình Nagios để giám sát các thông tin cơ bản của hệ
thống Windows là một máy Client mẫu (Sample Client):
Memory sử dụng
Tải CPU
Dung lượng ổ đĩa sử dụng
Trạng thái các dịnh vụ
Các tiến trình đang chạy
Khái quát cách hoạt động của Nagios với Windows
Hình 2.1 Giao tiếp giữa Nagios và Window
Giám sát các dịch vụ hay các thuộc tính của một hệ thống Windows yêu
cầuta phải cài một Agent trên đó. Agent này giống như là một trung gian giữa
cácPlugin của Nagios được dùng để giám sát các dịch vụ và thuộc tính của
Windows. Nếu Agent không được cài đặt trên hệ thống Windows thì ta không thể
giám sát được.
Ở đây ta sử dụng phần mềm NSClient++ để giám sát máy Windows và
sửdụng plugin check_nt để giao tiếp với NSClient++ (check_nt được cài đặt trên
máychủ Nagios như ở phần trên).
Ngoài NSClient++ ta có thể sử dụng NC_Net có chức năng tương tự
NSClient++
Các bước tiến hành
Có một vài quá trình cần thực hiện để tiến hành giám sát một máy
Windowsđó là:Kiểm tra các yêu cầu.Cài đặt agent trên máy Windows.Tạo một
host và một định nghĩa service để giám sát máy Windows.Khởi động lại tiến trình

Đến đây ta có thể thêm máy Windows vào tập tin cấu hình của Nagios để bắt đầu
giám sát.
Cấu hình Nagios
Bây giờ ta sẽ định nghĩa các object definitions trong tập tin cấu hình để giámsát
một máy Windows mới
Mở tập tin windows.cfg
vi /usr/local/nagios/etc/objects/windows.cfg
Thêm một định nghĩa mới cho máy Windows để tiến hành giám sát. Thay đổi
cácthông tin như host_name, alias, address thích hợp:
define host{
use windows-server
host_name Sample Client
alias My Windows Server
address 10.0.4.11 }
Bây giờ ta sẽ định nghĩa các dịch vụ cần giám sát trên máy Windows.
define service{
use generic-service
host_name Sample Client
service_description Uptimecheck_commandcheck_nt!UPTIME
}
Giám sát tải của CPU và cấu hình để Nagios bật cảnh báo là WARNING nếu tải
lớn hơn 80% trong 5 phút và CRITICAL nếu tải lớn hơn 90% trong 5 phút.
define service{
usegeneric-service
host_name Sample Client s
ervice_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90 }
Định nghĩa dịch vụ giám sát dung lượng sử dụng của bộ nhớ. WARNING nếu sử
dụng trên 80% và CRITICAL nếu sử dụng trên 90%.
define service{

Nếu có cấu hình mật khẩu trong NSClient++ ở Windows, cần sửa đổi lệnh
check_nt để cho phép mật khẩu. Mở tập tin commands.cfg để chỉnh sửa.
vi /usr/local/nagios/etc/objects/commands.cfg
Thay đổi định nghĩa của lệnh check_nt để cho phép mật khẩu với tùy chọn –s
<mật khẩu>
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489
-s PASSWORD -v $ARG1$ $ARG2$
}
Lưu lại tập tin commands.cfg
Khởi động lại dịch vụ Nagios
Kiểm tra xem các thông tin cấu hình có lỗi gì không với lệnh
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nếu quá trình kiểm tra thông báo có lỗi, tiến hành sửa lỗi tại tập tin được thông
báo rồi khởi động lại dịch vụ nagios để cập nhật thay đổi
service nagios restart
Kết quả giám sát trên Sample Client:
Thông tin các dịch vụ đã cấu hình để kiểm tra trên Sample Client: dung
lượng ổ C, tải CPU, Explore, dung lượng memory sử dụng, phiên bản của
NSClient++, các tiến trình đang chạy trên máy, thời gian bật máy.
Hình 2.2: Thông tin các dịch vụ trên Sample Client
Theo hình 2.2 ta có thể thấy thông tin về Sample Client: IP Address, trạng thái
host, trạng thái thông tin, host có chập chờn hay không, thời gian cập nhật cuối
cùng…
Hình 2.3: Thông tin về Sample client
2.3 Một số ứng dụng khác trong việc giám sát mạng
 Giám sát Router và Switch
 Giám sát các dịch vụ
 Giám sát các gói dữ liệu bị mất và RTA

Đăng nhập vào giao diện Web của Nagios trên server theo địa chỉ
104.155.220.78/nagios
Sử dụng tài khoản : nagiosadmin và mật khẩu tomtom99 để đăng nhập
Hình 3.2 : Các host mà Nagios đang giám sát
Hình 3.3 : Các cảnh báo mà Nagios thông báo

KẾT LUẬN
Có nhiều lợi ích khi sử dụng hệ thống giám sát. Nó đảm bảo rằng các dịch vụ
đang làm việc một cách chính xác. Nó giúp phát hiện các vấn đề trước và đảm
bảo rằng những người thích hợp sẽ được cảnh báo khi có sự cồ xảy ra. Đảm bảo
rằng tất cả các dịch vụ hoạt động tốt là điều cần thiết. Trong trường hợp xảy các
vấn đề, hệ thống sẽ giúp đỡ trong việc đưa ra một bức tranh rõ ràng về những gì
đang làm việc,và những gì không.
Nagios là một ứng dụng rất mạnh cho việc giám sát tài nguyên. Nó phù hợp
với cả các hệ thống lớn và nhỏ. Nó có thể giúp tổ chức duy trì chất lượng dịch vụ
cao hơn. Nagios cũng giúp trong việc xác định nguyên nhân gốc rễ của vấn đề.
Nó bao gồm cơ chế rất linh hoạt để theo dõi và thông báo về cơ sở hạ tầng.
Nagios là một công cụ cực kỳ mạnh mẽ như nó có thể được cấu hình theo bất
kỳ cách nào ta muốn. Hơn nữa nó cũng có thể được mở rộng để nếu có nhu cầu.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status