Để có thể thực hiện việc giám sát một cách hiệu quả, ISO InternationalOrganization for Standardization đã thiết kế một mô hình được gọi là FCAPS [3]nhằm định hướng rõ những việc mà hệ th
Trang 2NGUYỄN THỊ HÀ LY
NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT TẬP TRUNG VÀ ỨNG DỤNG
QUẢN LÝ HỆ THỐNG MẠNG TRƯỜNG ĐẠI HỌC HÀ NỘI
CHUYÊN NGÀNH : KHOA HỌC MÁY TÍNH
Trang 3LỜI CAM ĐOAN
Tôi cam đoan đề tài: “Nghiên cứu giải pháp giám sát tập trung và ứng dụng quản lý hệ thống mạng Trường Đại học Hà Nội” là công trình nghiên cứu của riêng tôi dưới sự hướng dẫn của PGS.TS Trần Quang Anh.
Các kết quả, phân tích, kết luận trong luận văn thạc sỹ này (ngoài phần đượctrích dẫn) đều là kết quả làm việc của tác giả, các số liệu nêu trong luận văn là trungthực và chưa từng được công bố trong bất kỳ công trình nào khác
Nếu sai tôi xin hoàn toàn chịu trách nhiệm
Hà Nội, ngày 12 tháng 2 năm 2019
Tác giả
Nguyễn Thị Hà Ly
Trang 4LỜI CẢM ƠN
Lời đầu tiên cho em xin gửi lời cảm ơn chân thành đến các thầy, cô giáothuộc Khoa CNTT, Khoa QT&ĐT sau đại học thuộc Học viện Công nghệ Bưuchính viễn thông đã tận tình giảng dạy, truyền đạt các nội dung kiến thức, kinhnghiệm quý báu trong suốt quá trình em theo học tại Học viện Với những bài họcquý giá, sự kèm cặp, chỉ bảo và truyền thụ tâm huyết của các thầy, cô đã giúp cánhân em hoàn thiện hơn nữa hệ thống kiến thức chuyên ngành, phục vụ tốt hơn yêucầu công tác của đơn vị đồng thời nâng cao hơn vốn tri thức của bản thân
Đặc biệt, em xin gửi lời cảm ơn chân thành tới thầy hướng dẫn khoa học
PGS.TS Trần Quang Anh, đã tâm huyết, tận tình chỉ bảo, hướng dẫn, cung cấp tài
liệu và các nội dung kiến thức quý báu, đồng thời có sự định hướng đúng đắn giúp
em hoàn thành được luận văn này
Đồng thời em cũng xin chân thành cảm ơn tập thể lớp Cao học Khoa họcmáy tính đã đồng hành, khích lệ và chia sẻ trong suốt quá trình học tập
Trong quá trình thực hiện luận văn, mặc dù bản thân đã cố gắng, chủ độngtrong việc sưu tầm tài liệu, củng cố kiến thức… tuy nhiên chắc chắn luận văn vẫncòn nhiều thiếu sót Em rất mong nhận được sự chỉ dạy, đóng góp tận tình của cácthầy, cô để luận văn của em được hoàn thiện hơn nữa và có tính ứng dụng cao hơntrong thực tiễn
Xin trân trọng cảm ơn!
Hà Nội, ngày 12 tháng 2 năm 2019
Học viên
Nguyễn Thị Hà Ly
Trang 5MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT v
DANH MỤC CÁC HÌNH vi
MỞ ĐẦU 1
Chương I TỔNG QUAN VỀ GIÁM SÁT TẬP TRUNG VÀ CÁC YÊU CẦU GIÁM SÁT HỆ THỐNG MẠNG 4
1.1 Các yêu cầu giám sát hệ thống mạng 4
1.1.1 Giới thiệu chung 4
1.1.2 Các yêu cầu chung khi giám sát hệ thống mạng 10
1.2 Tổng quan về giám sát tập trung 11
1.3 Ứng dụng của giám sát tập trung 13
1.4 Các yêu cầu chung cho giám sát tập trung 13
1.5 Tình hình triển khai hệ thống giám sát mạng tại Việt Nam và các vấn đề liên quan đến giám sát hệ thống mạng trong thực tế 14
1.6 Kết luận chương 1 15
Chương II NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT TẬP TRUNG 16
2.1 Các giải pháp giám sát 16
2.1.1 Giải pháp giám sát hiệu năng hoạt động của máy chủ 16
2.1.2 Giải pháp giám sát lưu lượng và băng thông đường truyền 18
2.1.3 Giải pháp giám sát người dùng 18
2.1.4 Giải pháp giám sát dịch vụ 19
2.1.5 Giải pháp giám sát Database 20
2.1.6 Giải pháp giám sát hệ điều hành 21
2.1.7 Giải pháp giám sát an ninh hệ thống mạng 22
2.2 Giới thiệu một số công cụ giám sát: 23
2.2.1 Splunk 23
Trang 62.2.2 Zabbix 24
2.2.3 Nagios 24
2.2.4 HP ArcSight Logger 25
2.2.5 PRTG Network Monitor 25
2.2.6 ELK stack 26
2.3 Kết luận chương 2 34
Chương III XÂY DỰNG HỆ THỐNG GIÁM SÁT TẬP TRUNG CHO HỆ THỐNG MẠNG CỦA ĐẠI HỌC HÀ NỘI 35
3.1 Khảo sát mạng nội bộ Đại Học Hà Nội (sau khi đã xin phép nhà trường và được sự đồng ý từ ban giám hiệu) 35
3.1.1 Mô hình kiến trúc, các chức năng và trang thiết bị mạng hiện có của hệ thống mạng trường Đại học Hà Nội 35
3.1.2 Yêu cầu sử dụng 36
3.2 Đề xuất giải pháp giám sát tập trung cho mạng nội bộ tại trường đại học Hà Nội 37 3.2.1 Giám sát hiệu năng phần cứng máy chủ 38
3.2.2 Giám sát lưu lượng băng thông, đường truyền 38
3.2.3 Giám sát người dùng 38
3.2.4 Giám sát dịch vụ 38
3.2.5 Giám sát Database 38
3.2.6 Giám sát Hệ điều hành 38
3.2.7 Giám sát an ninh 38
3.3 Thử nghiệm và đánh giá một số giải pháp bảo mật đề xuất 38
3.3.1 Nội dung thử nghiệm 38
3.3.2 Kết quả thử nghiệm và đánh giá 40
3.4 Kết luận chương 3 48
KẾT LUẬN 49
TÀI LIỆU THAM KHẢO 50
PHỤ LỤC 51
Trang 7DANH MỤC CÁC THUẬT NGỮ, CHỮ VIẾT TẮT
FTP File Transfer Protocol Giao thức truyền tải file
tốc độ cao
HTTP HyperText Transfer Protocol Giao thức truyền tải siêu
văn bản
HTTPS HyperText Transfer Protocol Giao thức truyền tải siêu
ICSA International Computer Security Hiệp hội an ninh máy tính
SNMP Simple Network Management Giao thức hỗ trợ quản lý
TCP Transmission Control Protocol Giao thức truyền thông tin
trên InternetUDP User Datagram Protocol Giao thức truyền thông tin
nhanh trên Internet
Trang 8DANH MỤC CÁC HÌNH
Hình 1.1 Cơ chế hoạt động của hệ thống giám sát 7
Hình 1.2 Vòng đời của chung của Log (Nguồn: Internet) 8
Hình 1.3 Mô hình Log local 9
Hình 1.4 Mô hình Log tập trung 10
Hình 1.5 Mô hình giám sát tập trung [13] 13
Hình 2.2 Các thành phần trong ELK stack [8] 27
Hình 2.3 Cấu trúc của ELK [8] 28
Hình 2.4 Công cụ Elasticsearch [8] 29
Hình 2.5 Công cụ Logstash và nguyên lý hoạt động [8] 30
Hình 2.6 Công cụ Kibana [8] 32
Hình 2.7 Beats và nguyên lý hoạt động [8] 33
Hình 2.8 Beats Family [8] 34
Hình 3.1: Mô hình hoạt động của hệ thống mạng hiện tại trường Đại học Hà Nội 35
Hình 3.2: Giám sát hiệu năng phần cứng 41
Hình 3.3: Mail gửi về khi có Host vượt quá ngưỡng CPU 70% 41
Hình 3.4: Danh sách các máy tạo nhiều traffic nhất 42
Hình 3.5: Danh sách các máy nhận nhiều traffic nhất 43
Hình 3.6: Giám sát lượng người dùng lỗi đăng nhập và khóa tài khoản khi sử dụng dịch vụ Active Directory 43
Hình 3.7: Giám sát dịnh vụ web apache 44
Hình 3.8: Giám sát tình trạng hoạt động của các dịch vụ trên Windows 45
Hình 3.9: Giám sát các hàng động truy vấn (MySQL) 45
Hình 3.10: Giám sát số lượng kết nối tới Database (MySQL) 46
Hình 3.11: Giám sát log hệ điều hành Windows 47
Hình 3.12: Giám sát log Windows Defender Antivirus 47
Hình 3.13: Giám sát log hệ điều hành Linux (/var/log/ .) 47
Hình 3.15: Giám sát log được đẩy về từ Fortinet (Traffic log) 48
Trang 9MỞ ĐẦU
Giám sát hệ thống mạng luôn là một vấn đề vô cùng quan trọng đối với bất kỳ
hệ thống mạng nào trên thế giới Việc cập nhật được tình trạng của từng thành phần bêntrong hệ thống giúp ta chủ động hơn để ứng phó với bất kì vấn đề nào có thể nảy sinhtrong quá trình hệ thống hoạt động Nếu không có sự giám sát, các hệ thống của cơquan tổ chức sẽ luôn thụ động trước những sự cố xảy ra hay đặc biệt hơn là những canthiệp trái phép từ bên ngoài, gây ra những tổn thất không thể nào đo đếm được
Ngày nay, các hệ thống mạng thường có những biện pháp bảo vệ an ninh mạngnhư firewall, phần mềm diệt virus, nhưng các giải pháp đó chỉ có tác dụng ở vòng đaingoài của hệ thống mạng, nó vô hiệu với các cuộc tấn công backdoor Hay dù cho IDS/IPS – hệ thống phát hiện và phòng chống xâm nhập thì cũng không thể phát hiện những
sự cố phát sinh từ bên trong như nghẽn băng thông, sập máy chủ, sập Router, Điều đócàng chỉ rõ rằng một hệ thống mạng bất kỳ luôn cần một hệ thống giám sát bao quátđược các vấn đề, cung cấp thông tin định kỳ của hệ thống, giúp người quản trị mạngluôn sẵn sàng phát hiện các sự cố nhằm khắc phục chúng nhanh nhất và kịp thời nhất,giảm thiểu chi phí và quy mô sự cố xuống thấp nhất có thể
Để có thể thực hiện việc giám sát một cách hiệu quả, ISO (InternationalOrganization for Standardization) đã thiết kế một mô hình được gọi là FCAPS [3]nhằm định hướng rõ những việc mà hệ thống quản lý cần phải thực hiện:
- Quản lý cấu hình
- Quản lý tài khoản
- Quản lý hiệu năng
- Quản lý bảo mật
Và bằng các giải pháp giám sát hệ thống mạng thích hợp, hệ thống quản lý sẽthu thập được thông tin, dữ liệu và các báo cáo định kì từ các thiết bị được phầnmềm theo dõi, trên cơ sở đó để quản lý toàn bộ hệ thống
Trang 10Từ nhu cầu về giám sát hệ thống mạng của các tổ chức, doanh nghiệp và cơquan, học viên xin chọn đề tài nghiên cứu “NGHIÊN CỨU GIẢI PHÁP GIÁMSÁT TẬP TRUNG VÀ ỨNG DỤNG QUẢN LÝ HỆ THỐNG MẠNG TRƯỜNGĐẠI HỌC HÀ NỘI”.
2 Tổng quan vấn đề nghiên cứu
Giám sát hệ thống mạng là việc sử dụng một hệ thống để liên tục theo dõimột thành phần trong mạng máy tính, xem xét tình trạng hoạt động của thành phần
đó bên trong mạng, báo lại cho quản trị viên khi thành phần đang được giám sátphát sinh vấn đề, sự cố để từ đó đề xuất phương án giải quyết
Thông thường một mạng máy tính tối thiểu cần có máy chủ (server), đườngtruyền, các thiết bị kết nối (Repeater, Hub, Switch, Bridge, ), máy tính người dùng(client), card mạng (Network Interface Card – NIC) để kết nối các máy tính lại vớinhau
Một hệ thống giám sát gồm có nhiều thành phần: Máy trinh sát (Sensor),Máy thu thập (Collector), Cơ sở dữ liệu trung tâm và Công cụ phân tích (Analysistool) Mỗi một thành phần bao gồm các chức năng riêng, cùng các phương pháp thuthập, phân tích và liệt kê nhằm đảm bảo đánh giá và phản hồi sự kiện xảy ra trong
và báo lại cho quản trị viên nhằm có các hành động thích hợp để ứng phó
Tóm lại, chúng ta cần phải có một giải pháp giám sát tập trung để thu thậplượng log lớn và giải quyết bài toán giám sát, từ đấy có thể quản lý hệ thống mộtcách hiệu quả
Trang 113 Mục tiêu nghiên cứu của đề tài
Mục tiêu nghiên cứu của luận văn là khảo sát các yêu cầu và giải pháp giámsát tập trung, để đưa ra giải pháp giám sát tập trung cho hệ thống mạng tại trườngĐại Học Hà Nội có khả năng triển khai áp dụng trong thực tế
4 Đối tượng và phạm vi nghiên cứu của đề tài
Đối tượng nghiên cứu của luận văn là giám sát tập trung và các vấn đề liênquan tới giám sát tập trung
Phạm vi nghiên cứu của luận văn là các giải pháp giám sát tập trung và ứngdụng cho mạng nội bộ trường đại học Hà Nội…
5 Phương pháp nghiên cứu của đề tài.
- Về mặt lý thuyết: Thu thập, khảo sát, phân tích các tài liệu liên quan đến
giám sát tập trung
- Về mặt thực nghiệm: Khảo sát hệ thống mạng Trường Đại học Hà Nội và
ứng dụng giải pháp giám sát tập trung phù hợp với nhu cầu của nhà trường
Luận văn được trình bày trong 3 chương:
Chương 1: TỔNG QUAN VỀ GIÁM SÁT TẬP TRUNG VÀ CÁC YÊU CẦU GIÁM SÁT HỆ THỐNG MẠNG
Nội dung chương 1 của luận văn sẽ khảo sát tổng quan về giám sát tập trung
và các yêu cầu giám sát hệ thống mạng
Chương 2: NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT TẬP TRUNG
Chương 2 của luận văn tập trung nghiên cứu các giải pháp giám sát, từ đó sẽđưa ra giải pháp giám sát tập trung
Chương 3: XÂY DỰNG HỆ THỐNG GIÁM SÁT TẬP TRUNG CHO
HỆ THỐNG MẠNG CỦA ĐẠI HỌC HÀ NỘI
Chương này nghiên cứu về hệ thống mạng trường Đại Học Hà Nội và đềxuất ứng dụng giải pháp giám sát tập trung thông qua nghiên cứu từ chương 2 cho
hệ thống mạng nội bộ của trường Đại Học Hà Nội
Trang 12Chương I TỔNG QUAN VỀ GIÁM SÁT TẬP TRUNG VÀ CÁC YÊU CẦU GIÁM SÁT HỆ THỐNG MẠNG
Chương 1 của luận văn đưa ra những yêu cầu, khái niệm cơ bản về giám sát
hệ thống mạng và tổng quan về giám sát tập trung, cách ứng dụng cũng như các yêu cầu chung khi triển khai một hệ thống giám sát tập trung Luận văn cũng sẽ đề cập đến tình hình giám sát hệ thống mạng tại Việt Nam và các vấn đề liên quan.
1.1 Các yêu cầu giám sát hệ thống mạng
1.1.1 Giới thiệu chung
Giám sát hệ thống mạng là việc sử dụng một hệ thống để liên tục theo dõimột thành phần trong mạng máy tính, xem xét tình trạng hoạt động của thành phần
đó bên trong mạng, thông báo lại cho quản trị viên khi thành phần đang được giámsát phát sinh vấn đề Có rất nhiều các thành phần cần được giám sát khi hệ thốnghoạt động như: Người dùng, Hạ tầng, Dịch vụ, Giám sát hệ thống mạng là cầnthiết vì nó sẽ giúp quản trị viên nhanh chóng biết được những sự cố đang xảy ra trênthành phần đang được giám sát, từ đó đề ra phương án giải quyết
Thông thường một mạng máy tính tối thiểu cần có máy chủ (Server), đườngtruyền, các thiết bị kết nối (Repeater, Hub, Switch, Bridge, ), máy tính người dùng(Client), card mạng (Network Interface Card – NIC) để kết nối các máy tính lại vớinhau Do hệ thống mạng có rất nhiều các thiết bị kết nối nên công tác giám sát càngđóng vai trò quan trọng để có thể duy trì hệ thống mạng hoạt động một cách ổnđịnh, trơn tru và hiệu quả
Một hệ thống giám sát gồm có nhiều thành phần: Máy trinh sát (Sensor),Máy thu thập (Collector), Cơ sở dữ liệu trung tâm và Công cụ phân tích (Analysistool) Mỗi một thành phần bao gồm các chức năng riêng, cùng các phương pháp thuthập, phân tích và liệt kê nhằm đảm bảo đánh giá và phản hồi sự kiện xảy ra trong
hệ thống mạng một cách nhanh chóng và chính xác nhất:
- Máy trinh sát (Sensor): là những máy trạm làm nhiệm vụ trinh sát Thành phầnnày sẽ tiếp cận, tương tác với các hệ thống và dịch vụ cần giám sát để nhận biết trạng tháicủa những dịch vụ đó Trong quá trình triển khai hệ thống, thành phần này
Trang 13sẽ được phân tán nằm rải rác nhiều nơi trên mạng để thu thập thông tin từ những nguồn khác nhau như: Tường lửa, Bộ định tuyến, File nhật ký…
- Máy thu thập (Collector): Một điều đáng chú ý trong hệ thống giám sát mạng
là các hệ thống, các dịch vụ cần giám sát có thể khác nhau Điều này đồng nghĩa với việcthông tin thu được cũng có nhiều dạng khác nhau Để có được thông tin một cách
đồng nhất nhằm mục đích xử lý và thống kê, cần có một thành phần làm nhiệm vụchuẩn hóa thông tin Máy thu thập sẽ đọc những thông tin thu được từ các máy trinhsát và chuẩn hóa thông tin dựa trên những quy tắc chuẩn hóa biết trước Thông tinđầu ra sẽ có định dạng giống nhau và được lưu vào cơ sở dữ liệu trung tâm
- Cơ sở dữ liệu trung tâm: là nơi lưu trữ dữ liệu của toàn bộ hệ thống giámsát Các dữ liệu ở đây đã được chuẩn hóa nên có thể sử dụng để tính toán các số liệuthống kê trên toàn hệ thống
- Công cụ phân tích (Analysis tool): Thành phần này sẽ đọc các dữ liệu từ cơ
sở dữ liệu trung tâm và tính toán để tạo ra bản báo cáo số liệu thống kê trên toàn hệthống
Về cơ chế hoạt động, mỗi máy trinh sát sẽ có một danh sách những đối tượng
mà máy trinh sát đó cần giám sát Những đối tượng này có thể là file nhật ký hoạt độngtrên một máy tính, có thể là một dịch vụ trên hệ thống khác, cũng có thể là thành phầnbáo cáo trạng thái của Tường lửa/Bộ định tuyến… Dựa vào bản danh sách này, Máytrinh sát sẽ gửi truy vấn đến đối tượng để truy vấn thông tin Thông tin thu thập được sẽgửi đến Máy thu thập để chuẩn hóa trước khi lưu trữ vào cơ sở dữ liệu trung tâm Tùytheo thiết kế của hệ thống, nếu những thông tin mà Máy trinh sát thu thập được có địnhdạng giống nhau thì sẽ không cần đến thành phần Máy thu thập
Trong một số trường hợp khác, các Máy trinh sát cũng có thể kiêm luôn vai tròcủa Máy thu thập thực hiện việc chuẩn hóa dữ liệu trước khi lưu trữ Tại cơ sở dữ liệutrung tâm, mọi dữ liệu thu dược đã có định dạng rõ ràng Bộ phân tích sẽ đọc thông tintại đây để tính toán và đưa ra những số liệu thống kê tạo thành một bản báo cáo hoànchỉnh Báo cáo này sẽ được gửi tới người quản trị Trong một số hệ thống giám sát, đểnâng cao mức độ tự động hóa, Bộ phân tích có thể có thêm chức năng
Trang 14phát hiện dấu hiệu xác định trước để phát ra cảnh báo Ví dụ, sau khi lấy thông tin
từ file nhật ký ghi nhận lại những lần đăng nhập không thành công vào hệ thống,nếu phát hiện thấy có 3 lần đăng nhập không thành công liên tiếp trong vòng 5 phútthì Bộ phân tích phát ra cảnh báo tới người quản trị Cảnh báo này có thể là thư điện
tử, tin nhắn SMS gửi tới điện thoại di động…
Việc thu thập dữ liệu ở đây chính là việc lấy các thông tin liên quan đến tìnhtrạng hoạt động của các thiết bị trong hệ thống mạng Tuy nhiên, trong những hệthống mạng lớn thì các dịch vụ hay các thiết bị không đặt tại trên máy, một địa điểm
mà nằm trên các máy chủ, các hệ thống con riêng biệt nhau Các thành phần hệthống cũng hoạt động trên những nền tảng hoàn toàn khác nhau Có 2 phương pháp
để thu thập dữ liệu:
- Phương pháp đẩy: Các sự kiện từ các thiết bị, Các máy trạm, Server sẽđược tự động chuyển về các Collector theo thời gian thực hoặc sau mỗi khoảng thời gianphụ thuộc vào việc cấu hình trên các thiết bị tương ứng Các Collector của Log Server sẽthực hiện việc nghe và nhận các sự kiện khi chúng xảy ra
- Phương pháp kéo: Các Collector thu tập các sự kiện được phát sinh và lưutrữ trên chính các thiết bị và sẽ được lấy về bởi các bộ Collector
Khi đã thu thập được những thông tin về hệ thống thì công việc tiếp theo làphân tích thông tin, cụ thể là việc thực hiện chỉ mục hóa dữ liệu, phát hiện nhữngđiều bất thường, những mối đe dọa của hệ thống Dựa trên những thông tin về lưulượng truy cập, trạng thái truy cập, định dạng request…
Tiếp theo là phát hiện và phản ứng Phát hiện và phản ứng là hai thành phầnquan trọng trong các yếu tố của tiến trình Sau khi phân tích các thông tin và pháthiện các sự cố liên quan đến phần cứng, phần mềm hay các cuộc tấn công bên ngoài, ta sẽ cần phải nhanh chóng đưa ta giải pháp xử lý sự cố một cách nhanh và hiệuquả nhất
Sau khi đã thực hiện việc phân tích dữ liệu từ các thông tin thu thập được việctiếp theo là thực hiện việc đánh giá, đưa thông tin cảnh báo tới người quản trị và thực
Trang 15hiện những công tác nhằm chống lại những mỗi đe dọa, khắc phục các sự cố có thểsảy ra.
Cảnh báo có thể thông qua email, SMS, hoặc thực thi các mã script nhằm hạnchế hậu quả của sự cố Khi xảy ra sự cố, hệ thống sẽ tự động gửi email, sms chongười quản trị và cũng có thể chạy script để thêm một địa chỉ IP có biểu hiện tấncông và danh sách đen của Firewall Việc này đòi hỏi người lập trình phải có hiểubiết sâu và kinh nghiệm về hệ thống
Hình 1.1 Cơ chế hoạt động của hệ thống giám sát
Giới thiệu về log
Log ghi lại liên tục các thông báo về hoạt động của cả hệ thống hoặc của cácdịch vụ được triển khai trên hệ thống và file tương ứng Log file thường là các filevăn bản thông thường dưới dạng “clear text”, có thể dễ dàng đọc được bằng cáctrình soạn thảo văn bản (vi, vim, nano ) hoặc các trình xem văn bản thông thường(cat, tailf, head ) là có thể xem được file log Các file log có thể cung cấp các thôngtin cần biết, để giải quyết các vấn đề với các ứng dụng, tiến trình được ghi vào log
Tóm lại:
Log = Thời điểm + Dữ liệu
Log ghi lại những hoạt động của hệ thống
Trang 16Hình 1.2 Vòng đời của chung của Log (Nguồn: Internet)
Một vòng đời của Log bao gồm 5 bước chính được minh họa trong hình 1.2
cụ thể là:
- Đầu tiên log sẽ được ghi lại tại chính máy local sau đó nó sẽ được vận chuyển sang máy chủ quản lý log
- Người quản trị mạng sẽ từ những bản ghi đó mà tiến hành phân tích, từ đó
có thể giám sát được hoạt động của các máy client
- Qua bước phân tích này mà người quản trị có thể phát hiện các hoạt động, hành vi xâm nhập không được phép
- Sau khi phân tích, dữ liệu log sẽ được lưu trữ để sử dụng lại nếu cần
- Bước cuối cùng là xóa, thường những tập tin log không cần thiết có thể được xóa bởi người quản trị nhằm giảm bớt lượng thông tin log không cần thiết
Phân tích các log hoặc các chuỗi thống kê là một nghệ thuật của việc trích dẫnđầy đủ ý nghĩa thông tin và đưa ra kết luận về một trạng thái an toàn từ các bản ghithống kê những sự việc được sản sinh từ các thiết bị Phân tích log không phải là 1khoa học, nhưng ngày nay, việc tin tưởng vào kỹ năng phân tích độc lập và trựcquan cũng như tính chất may mắn trong việc phân tích log chất lượng cũng là mộtkhái niệm khoa học
Định nghĩa việc phân tích log có thể nghe rất khô khan, nhưng quan trọng là rút
ra một “Kết luận có ý nghĩa” Nhìn một cách đơn giản vào các file log không phải
Trang 17là phân tích, bởi vì hiếm có những cái gì ngoài những sự nhàm chán và dường nhưchẳng liên quan gì đến nhau Trong trường hợp một thiết bị 1 người sử dụng với rất
ít các hoạt động, tất cả những bản ghi log mà chưa được nhìn trước là rất ít nghingờ, nhưng trong thực tế lại không dễ dàng như vậy
Công dụng của Log
- Phân tích nguyên nhân khi có sự cố xảy ra
- Giúp cho việc khắc phục sự cố nhanh hơn khi hệ thống gặp vấn đề
- Giúp cho việc phát hiện, dự đoán một vấn đề có thể xảy ra đối với hệ thống.Khi xử lý log, thường quản trị viên có thể sử dụng 1 trong 2 phương pháp, đó
là: xử lý log trên local và xử lý log tập trung
Log trên Local:
- Chỉ lưu lại bản thân Server
- Dùng command find, tail… để xem log
Hình 1.3 Mô hình Log local
Log tập trung:
Log tâp trung là quá trình tập trung, thu thập, phân tích các log cần thiết từnhiều nguồn khác nhau về một nơi an toàn để thuận lợi cho việc phân tích, theo dõi
hệ thống
Lợi ích của log tập trung:
- Giúp quản trị viên có cái nhìn chi tiết về hệ thống -> có định hướng tốt hơn
về hướng giải quyết
- Mọi hoạt động của hệ thống được ghi lại và lưu trữ ở một nơi an toàn (logserver) -> đảm bảo tính toàn vẹn phục vụ cho quá trình phân tích điều tra các cuộc tấn công vào hệ thống
Trang 18- Log tập trung kết hợp với các ứng dụng thu thập và phân tích log khác nữa giúp cho việc phân tích log trở nên thuận lợi hơn -> giảm thiểu nguồn nhân lực.
- Log máy local đẩy về máy Log Server
- Mỗi ứng dụng có giao thức đẩy Log khác nhau
Hình 1.4 Mô hình Log tập trung
1.1.2 Các yêu cầu chung khi giám sát hệ thống mạng
Về yêu cầu khi giám sát hệ thống mạng, ISO (International Organization forStandardization) đã thiết kế một mô hình được gọi là FCAPS nhằm định hướng rõnhững việc mà hệ thống giám sát cần phải quản lý FCAPS là một mô hình quản lýmạng viễn thông và cũng là kiến trúc quản lý mạng FCAPS sẽ phân nhóm các đốitượng quản lý mạng vào 5 mức (hay mô đun): Fault-management (F), Configurationlevel (C), Accounting level (A), Performance level (P) và Security level (S)
Fault management (Quản lý lỗi) : Các vấn đề mạng được phát hiện và sửa
chữa Các vấn đề tiềm tàng được xác định và có biện pháp để ngăn chặn chúng xảy
ra hoặc tái diễn Với mô đun Fault management, mạng lưới sẽ hoạt động và thờigian chết được giảm tối thiểu
Configuration management (Quản lý cấu hình): Mô đun này sẽ thực hiện
giám sát và kiểm soát hoạt động của mạng lưới Điều phối các thay đổi về phần cứng
và chương trình, bao gồm cả việc bổ sung thiết bị mới và chương trình mới, sửa đổi
Trang 19các hệ thống hiện có, và xóa bỏ các hệ thống chương trình lỗi thời Ở mức độ C này, thìtài nguyên của các thiết bị và chương trình được lưu giữ và cập nhật thường xuyên.
Accounting management (Quản lý tài khoản): cũng có thể gọi mô đun này
là allocation level, được sử dụng để phân phối các tài nguyên một cách tối ưu vàcông bằng giữa các người dùng mạng Điều này giúp sử dụng hiệu quả nhất các hệthống sẵn có, giảm thiểu chi phí vận hành
Performance management (Quản lý hiệu năng): liên quan đến việc quản
lý toàn bộ hiệu năng của toàn mạng Thông lượng tối đa, tắc nghẽn mạng và các vấn
đề tiềm tàng cần được xác định Một phần quan trọng khi quản lý hiệu năng là cầnmang lại hiệu suất tổng thể lớn nhất
Security management (Quản lý bảo mật): xử lý và đảm bảo an ninh mạng
lưới bởi tin tặc, những người dùng trái phép, hoặc các thiết bị phá hoại Tính bảomật thông tin người dùng cần được duy trì được đảm bảo Hệ thống an ninh cũngcho phép quản trị viện kiểm soát từng cá nhân có thể (và không thể) được làmnhững gì với hệ thống
1.2 Tổng quan về giám sát tập trung
Khi giám sát hệ thống mạng, máy chủ giám sát cần phải giám sát rất nhiềucác thành phần để đáp ứng yêu cầu từ hệ thống đặt ra, các thành phần đó là:
- Người dùng: Họ là những người thường xuyên sử dụng hệ thống mạng Sốlượng người dùng có thể từ hàng trăm lên đến hàng nghìn người Đây là thành phần cóthể ảnh hưởng trực tiếp đến các tài nguyên và sử dụng các dịch vụ bên trong hệ
thống
- Hạ tầng: Để tạo nên một hệ thống mạng, hạ tầng là một thành phần khôngthể thiếu, Không có hạ tầng, không thể có hệ thống mạng Hạ tầng có rất nhiều vấn
đề cần chú ý như phần cứng thiết bị, băng thông đường truyền,…
- Dịch vụ: Hệ thống được xây dựng để cung cấp các dịch vụ cho người dùng
sử dụng Tình trạng những dịch vụ chạy trên hệ thống có thể gây ảnh hưởng rất lớn
đến các mặt kinh tế hay chính trị đối với các công ty, tổ chức đang vận hành hệ thống mạng
Trang 20- An ninh: An ninh mạng được xây dựng nhằm chống lại các cuộc tấn công
từ bên ngoài mạng hay các vấn đề an ninh xảy ra bên trong hệ thống Không đảmbảo được an ninh mạng, hệ thống sẽ dễ dàng bị tấn công, hỏng hóc và gây ra nhữnghậu quả nghiêm trọng
Những thành phần được liệt kê phía trên đều rất quan trọng và cần thiết,nhưng không phải hệ thống giám sát nào cũng có thể giám sát được tất cả chúng, đó
là lúc giám sát tập trung ra đời Giám sát tập trung chính là giám sát hệ thống mạng,nhưng giám sát tập trung sẽ giám sát tất cả các thành phần mà giám sát hệ thốngmạng cần phải giám sát
Giám sát tập trung cũng có các thành phần tương tự như các hệ thống giámsát bình thường khác: Máy trinh sát (Sensor), Máy thu thập (Collector), Cơ sở dữliệu trung tâm và Công cụ phân tích (Analysis tool) và cách thức hoạt động là hoàntoàn giống nhau Tuy nhiên, các thành phần của giám sát tập trung đều cần phảimạnh hơn rất nhiều so với giám sát từng thành phần chuyên biệt
- Máy trinh sát (Sensor): Máy trinh sát của giám sát tập trung cần đọc đượcnhiều loại thông tin hơn Do số lượng các thành phần cần thu thập thông tin càng
đông, sự đa dạng trong những thông tin thu thập được cũng càng lớn
- Máy thu thập (Collector): Do thông tin thu thập được từ máy trinh sát đadạng hơn nên khi máy thu thập nhận được thông tin từ máy trinh sát, bộ phận chuẩnhóa thông tin cần phải “hiểu biết” nhiều hơn để có thể xử lý tốt, tạo chuẩn đầu ravới các thông tin mang định dạng giống nhau để gửi tới cơ sở dữ liệu trung tâm
- Cơ sở dữ liệu trung tâm: Lượng thông tin đổ về sẽ lớn hơn rất nhiều so vớigiám sát thông thường nên cơ sở dữ liệu trung tâm cần có dung lượng chứa đủ lớn, phù hợp mới có thể hoạt động ổn định
- Công cụ phân tích (Analysis tool): Với một lượng dữ liệu lớn, công cụ phântích phải đủ nhanh, chính xác để phân tích hiệu quả những thông tin đã thu thập được
Trang 21Hình 1.5 Mô hình giám sát tập trung [13]
1.3 Ứng dụng của giám sát tập trung
Giám sát tập trung được ứng dụng trong việc giám sát tất cả các vấn đề xuấthiện bên trong hệ thống mạng, giải quyết tất cả các yêu cầu có thể nảy sinh trong vấn
đề giám sát Giám sát tập trung giúp máy chủ giám sát giải quyết những bài toán sau:
- Giám sát hiệu năng hoạt động của máy chủ
- Giám sát lưu lượng, băng thông của đường truyền
Sử dụng giám sát tập trung, quản trị viên hoàn toàn có thể giám sát mọi vấn
đề trên toàn bộ hệ thống mạng, nhanh chóng xác định, phát hiện sự cố và khắc phục
xử lý
1.4 Các yêu cầu chung cho giám sát tập trung
Do khối lượng dữ liệu được trao đổi giữa các thành phần trong giám sát tậptrung là vô cùng lớn, vậy nên ngoài vấn đề về việc quản trị viên cần bao quát được
hệ thống, đủ khả năng vận hành và sử dụng hệ thống giám sát tập trung, thì hạ tầng
Trang 22triển khai giám sát tập trung cần phải đủ mạnh và đáp ứng được các yêu cầu khi hệ thống giám sát tập trung hoạt động:
- Yêu cầu về thiết bị: Cần có cấu hình phù hợp để vận hành và xây dựng hệthống giám sát tập trung Đối với Core Switch phải có tốc độ xử lý cao, hỗ trợ cổng
có băng thông lớn Một số dòng đáp ứng nhu cầu như: Switch Cisco 3750, 3850, Port 1Gbps Server phân tích thông tin cần quan tâm đến cấu hình của CPU,Memory, Storage tùy theo nhu cầu bài toán đặt ra Về CPU thì nên chọn CPU cónhiều lõi (từ 2-8 lõi) với tốc độ trung bình từ 3.6GHz đến 3.9GHz (nên chọn số lõi
ưu tiên hơn tốc độ xử lý để gia tăng khả năng xử lý) Memory tùy theo nhu cầu, nên
từ 16-64GB Riêng Disk thì ta phải xem xét lượng dữ liệu thu thập sẽ đổ về server.Chẳng hạn trong 1 ngày trung bình khoảng 1GB dữ liệu đổ về và ta cần lưu trữ dữliệu thu thập được trong ít nhất 30 ngày (trên 30 ngày tự động xóa) thì ít nhất ổ cứngphải có dung lượng 50GB trở lên (gồm dung lượng hệ điều hành, dữ liệu thu thậpđược và một khoảng dung lượng phát sinh nếu có) [11]
- Yêu cầu về băng thông đường truyền: Lượng thông tin cần truyền qua lại giữacác thiết bị trong hệ thống giám sát tập trung là vô cùng nhiều nên băng thông đường truyềnphải đủ lớn để các luồng dữ liệu di chuyển trong hệ thống không bị tắc nghẽn Tùy theo tìnhhình thực tế, cần sử dụng những dây có băng thông lớn từ 1
Gbps đến 10 Gbps Lưu ý khi sử dụng cáp truyền thì băng thông cần phải đồng bộvới cổng trên các thiết bị Switch và Router
1.5 Tình hình triển khai hệ thống giám sát mạng tại Việt Nam và các vấn đề liên quan đến giám sát hệ thống mạng trong thực tế.
Ngày nay ở Việt Nam, các tổ chức, doanh nghiệp đều xây dựng, vận hành một
hệ thống mạng của riêng mình Hệ thống mạng giúp gia tăng khả năng làm việc giữacác nhân viên, ban ngành với nhau, gia tăng hiệu suất và giúp công ty, tổ chức hoạtđộng một cách hiệu quả Tuy nhiên, khi vận hành hệ thống mạng, có rất nhiều vấn đề
có thể phát sinh làm ảnh hưởng đến khả năng hoạt động của hệ thống Những vấn đề đóđến từ nhiều nguyên nhân khác nhau, có thể là hỏng hóc máy móc thiết bị hay lỗi dongười dùng tạo ra Hệ thống càng lớn, các hoạt động diễn ra bên trong hệ thống
Trang 23càng nhiều, thì các vấn đề nảy sinh cũng càng tăng theo Do đó, hệ thống mạng luôncần có một hệ thống giám sát bao quát toàn bộ các vấn đề, có thể túc trực, quản lý,
dễ dàng phát hiện các sự cố xảy ra bên trong hệ thống, thông qua đó quản trị viên sẽđưa ra các biện pháp ứng phó
Từ tình hình trên, việc xây dựng hệ thống giám sát tập trung để quản lý hệthống mạng đang ngày cảng trở nên cấp thiết hơn bao giờ hết
1.6 Kết luận chương 1
Trong chương 1, luận văn đã nghiên cứu tổng quan về giám sát tập trung vàcác yêu cầu giám sát hệ thống mạng, cũng như các vấn đề liên quan đến xây dựng
hệ thống giám sát trong thực tế
Trên cơ sở các nội dung đã trình bày trong chương 1, các bài toán giám sát
mà hệ thống giám sát tập trung có thể giải quyết sẽ được đề ra và nghiên cứu trongchương 2 của luận văn
Trang 24Chương II NGHIÊN CỨU GIẢI PHÁP GIÁM SÁT
2.1.1 Giải pháp giám sát hiệu năng hoạt động của máy chủ
Một trong những giải pháp giám sát hệ thống mạng chính là giám sát hiệu nănghoạt động của máy chủ Giám sát hiệu năng của máy chủ là giám sát lượng tài nguyênđang được sử dụng bên trong máy chủ, từ đó phát hiện các sự cố liên quan đến hiệunăng hoạt động và đề ra các phương án giải quyết Nói đến các tài nguyên phần cứngcủa máy chủ, cần phải xét tới những thành phần như CPU, RAM và Ổ cứng
CPU viết tắt của Central Processing Unit hay còn gọi là bộ xử lý trung tâm.CPU là một yếu tố quan trọng đối với máy chủ, vì đa phần các hoạt động tính toán củamáy chủ đều sẽ được CPU đảm đương và xử lý Sử dụng công cụ giám sát, CPU củamáy chủ sẽ được biểu diễn dưới dạng % sử dụng Ở trạng thái bình thường, CPU sẽhoạt động ở mức dưới 80% Vậy nên khi cấu hình cảnh báo, quản trị viên cần đặt mứcngưỡng cảnh báo khi CPU vượt qua trị giá 80% và ngưỡng nguy hiểm khi CPU chạmđến mức 100% Nếu CPU chạm ngưỡng 100%, máy chủ sẽ gặp tình trạng treo, các dịch
vụ đang chạy sẽ bị đình trệ, gây ảnh hưởng rất lớn đến toàn bộ hệ thống mạng Lúc nàyquản trị viên cần xem xét tình trạng của máy chủ, xác định tình trạng của phần cứng vàphần mềm, từ đó xử lý sự cố Ngoài ra, để giám sát CPU một cách hiệu quả, quản trịviên cần biết đến một thông số mang tên System load System load là một con số thểhiện tỉ lệ giữa số lượng CPU với các tiến trình cần xử lý tính toán và cần đọc/ghi trên ổcứng Đây là chỉ số chỉ xuất hiện khi giám sát máy chủ hay các thiết bị có hệ điều hànhtầm cao (Windows, Linux) Sử dụng chỉ số này, quản trị viên sẽ có một cái nhìn nhanh
về tình trạng tương quan giữa CPU với lượng dữ liệu cần xử lý, từ đó có các giải phápthích hợp giúp CPU hoạt động một cách hiệu quả nhất
Trang 25RAM viết tắt của Random Access Memory hay còn lại là bộ nhớ truy cậpngẫu nhiên RAM được sử dụng để chứa dữ liệu của các chương trình đang được sửdụng Khi một các chương trình trên máy chủ được khởi chạy, thông tin của nó sẽđược tạo ra và lưu trữ trên bộ nhớ RAM để cho các thành phần khác như CPU,GPU, lấy thông tin và xử lý Bộ nhớ RAM càng lớn đồng nghĩa với việc nó có thểchứa 1 lúc dữ liệu của nhiều chương trình đang chạy song song, do đó khả năng đanhiệm cũng càng trơn tru và mượt mà Sử dụng công cụ giám sát, RAM của máychủ cũng sẽ được biểu diễn dưới dạng % sử dụng Tùy vào số lượng ứng dụng đanghoạt động mà % sử dụng sẽ biểu diễn tương ứng Để máy chủ có thể hoạt động ổnđịnh, RAM ít nhất nên có dung lượng trống tầm 1GB Lấy dung lượng RAM củathiết bị trừ đi 1GB, chia lại cho dung lượng thanh RAM rồi nhân theo %, quản trịviên có thể tính ra mức ngưỡng thích hợp để đặt cảnh báo Chẳng hạn máy chủ códung lượng RAM là 8GB, hoàn toàn có thể tính ra được ngưỡng cảnh báo cần đặt là87.5% (tương ứng với 7/8) Ngưỡng nguy hiểm cần đặt là 100% Khi RAM máychủ đạt ngưỡng này, các dịch vụ chạy trên máy chủ có thể sẽ bị treo, không thể hoạtđộng, Từ các thông số thu thập, quản trị viên cần quyết định sẽ giảm thiểu các tiếntrình không sử dụng trên máy chủ để giải phóng bộ nhớ RAM hoặc nâng cấp dunglượng RAM của máy chủ.
Ổ cứng là thiết bị dùng để lưu trữ dữ liệu Khi sử dụng công cụ giám sát, máychủ giám sát có thể hoàn toàn theo dõi dung lượng ổ cứng đã sử dụng là bao nhiêu GB, cònlại bao nhiêu GB, phần đã sử dụng chiếm bao nhiêu phần trăm tổng dung lượng Với nhữngmáy chủ cài đặt các dịch vụ có tốc độ gia tăng dữ liệu lưu trữ nhanh như Mail, FTP thì khi ổcứng đầy, các dịch vụ này sẽ không thể hoạt động được nên
quản trị viên cần đặc biệt lưu ý vấn đề này Về mức ngưỡng cảnh báo, có thể đặt từ70-80% tùy trường hợp Với mức ngưỡng nguy hiểm, khác với CPU và RAM, nênđặt ngưỡng từ 90-95% để quản trị viên có thời gian xử lý vấn đề như giải phóng ổcứng hay nâng cấp dung lượng trước khi các ứng dụng đang chạy trên máy chủ bịảnh hưởng
Trang 262.1.2 Giải pháp giám sát lưu lượng và băng thông đường truyền
Giám sát lưu lượng và băng thông đường truyền là một giải pháp cho phépngười quản trị có thể kiểm soát được lưu lượng dữ liệu đang được sử dụng trênđường truyền, phát hiện ra những node chiếm nhiều băng thông đường truyền gây
ra tắc nghẽn mạng, từ đó đề ra phương pháp giải quyết vấn đề
Băng thông đường truyền (Data transfer rate - DTR) - tên quốc tế làbandwidth, là số lượng dữ liệu có thể được chuyển từ nơi này tới nơi khác trong mộtthời điểm nhất định, thông thường đơn vị đo sẽ là Mbps hay là Gbps Chi tiết hơnthì khái niệm Bandwidth (the width of a band of electromagnetic frequencies) (độrộng của một dải tần số điện từ), đại diện cho tốc độ truyền dữ liệu của một đườngtruyền, hay chuyên môn hơn, là độ rộng (width) của một dải tần số mà các tín hiệuđiện tử chiếm giữ trên một phương tiện truyền dẫn Vì vậy phương tiện truyền dẫn
có băng thông càng lớn, khả năng truyền dữ liệu càng cao Hiện nay các phươngtiện truyền dẫn có thể có băng thông từ 10Mbps lên đến 10Gbps, phù hợp với tất cảnhu cầu của từng hệ thống từ nhỏ đến lớn
Khi giám sát lưu lượng trong hệ thống mạng, quản trị viên cần phải giám sátlưu lượng vào ra của các máy chủ Khi cài đặt công cụ giám sát, công cụ sẽ thu thậpcác thông tin liên quan đến số lượng các gói tin (traffic) mà máy chủ đã gửi đi vànhận được Từ những thông tin trên, quản trị viên có thể tính toán và đặt mứcngưỡng Với ngưỡng cảnh báo (khoảng 70-80%) và nguy hiểm (100%), hệ thốnggiám sát hoàn toàn có thể giám sát và điều chỉnh lưu lượng của các Server một cáchphù hợp, can thiệp kịp thời khi lưu lượng truyền lớn gây tràn băng thông, làm tắcnghẽn, tê liệt toàn bộ hệ thống
Ngoài ra nếu tình trạng tràn băng thông gây tắc nghẽn thường xuyên xảy ra,quản trị viên nên suy nghĩ tới việc nâng cấp băng thông cho các phương tiện truyềndẫn (Switch, Router, đường truyền)
2.1.3 Giải pháp giám sát người dùng
Giải pháp giám sát người dùng là giám sát những hoạt động được thực hiện tại các thiết bị đầu cuối bên phía người dùng Người dùng là thành phần có rất nhiều
Trang 27các hoạt động có thể ảnh hưởng tới hệ thống Vì vậy để có thể giám sát một cáchbao quát, sau khi cài đặt công cụ giám sát, quản trị viên cần quản trị những thông sốsau: số lần đăng nhập, thời gian sử dụng dịch vụ và các hoạt động truy cập dịch vụ.
Đầu tiên là về số lần đăng nhập của người dùng vào một dịch vụ cụ thể Sau khithu thập được thông tin, quản trị viên cần phải đặt mức ngưỡng để cảnh báo Chẳng hạnngười dùng đăng nhập sai quá 3 lần trong vòng 1 phút, cần phải xem xét các trườnghợp như có người truy cập tài khoản trái phép thông qua dò mật khẩu hay là ngườidùng quên mật khẩu Từ đó xây dựng nên các phương pháp xử lý cụ thể
Thời gian sử dụng dịch vụ là lượng thời gian mà người dùng truy cập, sửdụng một dịch vụ cụ thể Sử dụng thông tin này, khi có các vấn đề liên quan đến cáchành động cố tình phá hỏng dịch vụ, quản trị viên có thể xem xét những người dùng
có khoảng thời gian sử dụng dịch vụ đó vào thời điểm dịch vụ bị phá, từ đó thu nhỏphạm vi điều tra, tìm ra người dùng đã cố tình phá hệ thống Hoặc đơn giản hơn làtìm hiểu khung thời gian người dùng hay truy cập một dịch vụ nào đó
Các hoạt động truy cập dịch vụ hiển thị các loại dịch vụ mà người dùng truycập, sử dụng Từ đấy quản trị viên có thể đề xuất các biện pháp kiểm soát ngườidùng không được phép truy cập các dịch vụ không mong muốn thông qua các thànhphần an ninh trong hệ thống mạng
2.1.4 Giải pháp giám sát dịch vụ
Giải pháp giám sát dịch vụ là giải pháp giám sát các trạng thái hoạt động củadịch vụ và số lượng phiên kết nối từ người dùng đến dịch vụ Sau khi cài đặt công cụgiám sát, hệ thống sẽ liên tục bắn các bản tin đến các dịch vụ nhằm xác định dịch vụcòn hoạt động hay không Quản trị viên sẽ đặt cảnh báo khi một dịch vụ nào đó ngưnghoạt động, tìm hiểu nguyên nhân tại sao dịch vụ không hoạt động và xử lý Về số lượngphiên kết nối từ người dùng đến dịch vụ, tùy vào mức độ số lượng phiên mà từng dịch
vụ có thể tiếp nhận để đặt mức ngưỡng cảnh báo phù hợp Nếu một dịch vụ chỉ có thểthực hiện 1000 phiên làm việc cùng một lúc, nên đặt mức cảnh báo khi số phiên hoạtđộng đạt đến mức 90-95% tương đương với 900-950 phiên Nếu số lượng phiên truycập dịch vụ luôn trong tình trạng quá tải, cần suy nghĩ đến vấn đề nâng cấp
Trang 28dịch vụ nhằm đáp ứng nhu cầu của người dùng Ngoài ra, khi nói đến dịch vụ, có thể kể đến một số dịch vụ được xây dựng phổ biến trong hệ thống:
- Dịch vụ Web: dịch vụ liên kết trang siêu văn bản, dùng để truyền thông tin tớingười dùng một cách đa dạng và phong phú Dịch vụ Web dùng 2 cách để gửi dữ
liệu tới người dùng đó là HTTP (không bảo mật) và HTTPS (có bảo mật) Dịch vụ chạy ở cổng mặc định là 80 với HTTP và 443 với HTTPS
- Dịch vụ Mail: dịch vụ thư điện tử Thay vì nội dung thư được viết lên giấy vàchuyển đi qua đường bưu điện thì email được lưu dưới dạng các tệp văn bản trong máy tính
và được chuyển đi qua đường Internet Mail sử dụng các giao thức dịch vụ
SMTP, POP3/IMAP để truyền thư trên cổng mặc định là 25, 110 và 143
- Dịch vụ File (FTP): dịch vụ truyền file tốc độ cao FTP sử dụng cổng 20 để truyền dữ liệu và cổng 21 để giao tiếp phiên truyền
2.1.5 Giải pháp giám sát Database
Giải pháp giám sát database là giải pháp giám sát hệ cơ sở dữ liệu trong hệ thống mạng Khi nói đến hệ cơ sở dữ liệu, nó bao gồm 2 thành phần:
- Cơ sở dữ liệu: Cơ sở dữ liệu là tập hợp các dữ liệu được tổ chức theo mộtcấu trúc nhất định để có thể dễ dàng quản lý Cơ sở dữ liệu bao gồm dữ liệu dược cấutrúc một cách rõ ràng Một tập hợp dữ liệu không có cấu trúc hệ thống nhất định khôngđược coi là một cơ sở dữ liệu
- Hệ quản trị cơ sở dữ liệu: Bất cứ cơ sở dữ liệu nào sau khi được tạo ra cũngcần được lưu trữ lại Quá trình lưu cơ sở dữ liệu này được thực hiện qua việc sử dụng hệquản trị cơ sở dữ liệu Hệ quản trị cơ sở dữ liệu là chương trình phần mềm giúp thực hiệnviệc lưu trữ cơ sở dữ liệu Hệ quản trị trị cơ sở dữ liệu khi lưu trữ cơ sở dữ liệu cần đảm bảođược được tính cấu trúc trong cơ sở dữ liệu và ngoài ra cần phải hỗ trợ việc đọc, chỉnh sửa,thêm và xóa dữ liệu trên cơ sở dữ liệu một cách dễ dàng
Vậy khi giám sát hệ cơ sở dữ liệu, quản trị viên cần phải giám sát được 2 thànhphần trên Do hệ quản trị cơ sở dữ liệu được sử dụng nhằm mục đích quản lý cơ sở dữliệu nên hệ thống giám sát chỉ cần giám sát được hệ quản trị cơ sở dữ liệu thì sẽ
Trang 29giám sát được cơ sở dữ liệu nằm bên trong Từ các chức năng của hệ quản trị cơ sở
dữ liệu, những hoạt động cần được giám sát là:
- Truy vấn và lưu trữ: là các hành động tương tác giữa người dùng với cơ sở
dữ liệu Truy vấn bao gồm những hành động đọc, sửa và xóa Công cụ giám sát sẽ thuthập, lưu lại các thông tin về các hành động truy vấn và lưu trữ Sử dụng thông tin trên,quản trị viên có thể nắm rõ các hoạt động của người dùng đối với cơ sở dữ liệu
- Đăng nhập: Hoạt động này dùng để xác thực người dùng Sau khi xác thực,
hệ quản trị sẽ phân quyền người dùng đối với dữ liệu cũng như các truy vấn có thể được
sử dụng Quản trị viên có thể đặt cảnh báo khi số lần đăng nhập thất bại trong mộtkhoảng thời gian ngắn vượt qua ngưỡng
2.1.6 Giải pháp giám sát hệ điều hành
Giải pháp giám sát hệ điều hành là giải pháp giám sát các vấn đề liên quanđến hệ điều hành Quản trị viên cần giám sát các sự kiện (log) của các ứng dụng hệthống, các chính sách an ninh và các sự kiện hệ thống trong hệ điều hành Hệ điềuhành được phân ra thành 2 loại là hệ điều hành mã nguồn mở (Linux) và hệ điềuhành Windows Mỗi một loại hệ điều hành đều có cách giám sát khác nhau
Hệ điều hành mã nguồn mở (Linux): Như một tiêu chuẩn chung trong hầuhết các hệ thống Linux, để thu thập được thông tin về hệ điều hành, hệ thống giámsát cần thu thập các tập tin sự kiện (log) được đặt trong thư mục /var/log Những logcủa hệ điều hành trên Linux mà hệ thống cần giám sát gồm:
- /var/log/messages: Chứa dữ liệu log của hầu hết các thông báo hệ thống nóichung, bao gồm cả các thông báo trong quá trình khởi động hệ thống
- /var/log/secure: Thông điệp an ninh liên quan sẽ được lưu trữ ở đây
- /var/log/kern.log: Các log về nhân của hệ điều hành
Hệ điều hành Windows: Khác với hệ điều hành mã nguồn mở Linux, để xemđược các thông tin (log) về hệ điều hành, ta cần phải sử dụng công cụ của Windows
đã được mặc định cài sẵn trên hệ điều hành Trên hệ điều hành Windows, công cụgiám sát cần phải thu thập những loại log sau:
Trang 30- Application Log: ghi lại sự kiện của các ứng dụng khác từ các nhà sản xuấtkhác như symantec hay các ứng dụng mail…Thường thiết lập trong application là mặcđịnh của các ứng dụng nên chỉ có thể đọc và không thể thiết lập.
- Security Log: Đây là một trong những log quan trọng nhất trong hệ thống,
nó ghi lại toàn bộ các thiết lập audit trong group policy Nhưng trong các thiết lập grouppolicy quan trọng nhất là thiết lập giám sát quá trình login vào hệ thống, truy cập và sửdụng dữ liệu
- System Log: System log được thiết lập mặc định của hệ thống giúp chúng
ta xem lại các sự kiện như bật, tắt, pause, disable, enable các services của hệ thống
Sau khi đã thu thập được các thông tin, sự kiện diễn ra trong hệ điều hành,quản trị viên cần đặt cảnh báo khi xuất hiện các sự kiện báo lỗi được gửi về máychủ giám sát, từ đó đưa ra biện pháp xử lý thích hợp
2.1.7 Giải pháp giám sát an ninh hệ thống mạng
Giải pháp giám sát an ninh hệ thống mạng là giải pháp giám sát các vấn đềliên quan đến tình trạng an ninh hệ thống, các kết nối trái phép, các cuộc tấn côngvào hệ thống, Những vấn đề này phụ thuộc vào những giải pháp bảo mật an ninh
mà hệ thống mạng đang triển khai và sử dụng Các giải pháp bảo mật an ninh mạng
mà các hệ thống thường sử dụng là:
- Firewall: Tường lửa là rào chắn mà một số cá nhân, tổ chức, doanh nghiệp,
cơ quan nhà nước lập ra nhằm ngăn chặn các truy cập thông tin không mong muốn từngoài vào hệ thống mạng nội bộ cũng như ngăn chặn các thông tin bảo mật nằm trongmạng nội bộ xuất ra ngoài Internet mà không được cho phép Ở đây hệ thống giám sátcần thu thập thông tin về các luồng đi vào và đi ra của firewall, các sự kiện diễn ra trongfirewall
- IDS/IPS: IDS có khả năng phát hiện ra các cuộc tấn công, tuy nhiên để ngănchặn thì phải kết hợp với những thiết bị khác như firewall,… Còn IPS vừa có khả năng pháthiện vừa tự động ngăn ngừa kịp thời các hoạt động xâm nhập không mong muốn Hệ thốngIPS sử dụng tập luật tương tự như hệ thống IDS, nên gọi chung là IDS/IPS Chức năng chínhcủa IDS/IPS là xác định các hoạt động nguy hại, lưu giữ
Trang 31các thông tin, sau đó kết hợp với Firewall để dừng các hoạt động đó Ngoài ra IDS/IPS
sẽ đưa ra các báo cáo chi tiết về các hoạt động xâm nhập trái phép trên Sau khiIDS/IPS thực hiện các hoạt động phát hiện và ngăn chặn xâm nhập, công cụ giám sát sẽthu thập bản báo cáo mà hệ thống IPS/IDS tạo ra, giúp quản trị viên nắm bắt kịp thờicác mối nguy hại an ninh vừa xuất hiện và được xử lý trong hệ thống mạng
2.2 Giới thiệu một số công cụ giám sát:
2.2.1 Splunk
Splunk là một phần mềm giám dựa trên việc phân tích Log Splunk thực hiệncác công việc tìm kiếm, giám sát và phân tích các dữ liệu lớn được sinh ra từ cácứng dụng, các hệ thống và các thiết bị hạ tầng mạng Splunk được xây dựng dựatrên nền tảng Lucene và MongoDB với một giao diện web hết sức trực quan [15]
Tính năng:
- Hỗ trợ hầu như tất cả các loại log của hệ thống, thiết bị hạ tầng mạng, phần mềm, Firewall, IDS/IPS, Log Event, Register của các máy trạm …
- Có thể thực hiện việc thu thập log từ rất nhiều nguồn khác nhau
- Cập nhật dữ liệu liên tục khi có thay đổi trong thời gian thực Giúp cho việcphát hiện và cảnh báo trong thời gian thực
- Có thể đánh chỉ mục dữ liệu với một khối lượng dữ liệu rất lớn trong một khoảng thời gian ngắn
- Làm việc rất tốt với dữ liệu lớn và cập nhật liên tục
- Cung cấp cho người dùng một cơ chế cảnh báo dựa trên việc tìm kiếm cácthông tin do chính người sử dụng đặt ra
- Cung cấp một cơ chế hiển thị rất trực quan giúp người sử dụng có thể dễ dàng hình dung về tình trạng của hệ thống, đưa ra các đánh giá về hệ thống
- Là phần mềm trả phí, cần phải chi trả một khoản kinh phí lớn
- Có phiên bản miễn phí, nhưng chỉ đáp ứng một số chức năng nhất định
- Cần đầu tư xây dựng hệ thống riêng, tốn kém
Trang 322.2.2 Zabbix
Zabbix là một phần mềm doanh nghiệp mã nguồn mở giám sát mạng và ứngdụng, được tạo ra bởi Alexei Vladishev và được công bố lần đầu tiên vào năm 2001
Nó được thiết kế để giúp quản trị mạng giám sát và theo dõi tình trạng của các dịch
vụ mạng, máy chủ và phần cứng mạng khác một cách thông minh nhằm đảm bảo hệthống luôn luôn được ổn định [14]
Tính năng:
- Giám sát cả Server và thiết bị mạng
- Dễ dàng thao tác và cấu hình
- Đáng tin cậy trong việc chứng thực người dùng vàphân quyền người dùng
- Giao diện web đẹp mắt, cung cấp biểu đổ theo dõi và báo cáo
- Mã nguồn mở và chi phí thấp
- Hiệu suất còn thấp, chỉ có thể đáp ứng hiệu quả khi số lượng node dưới 1000
- Chỉ mạnh trong giám sát hiệu năng của hệ thống, khó tùy chỉnh
2.2.3 Nagios
Nagios là 1 công cụ giám sát nguồn mở giúp giám sát hạ tầng mạng Phầnmềm ra mắt vào năm 1999, được bảo trợ bởi Nagios Enterprises Nagios có thể đưa
ra cảnh báo tới người dùng khi hệ thống gặp sự cố [16]
Phần mềm được thiết kế với khả năng mở rộng và tính linh hoạt cao Một số sảnphẩm của Nagios như: Nagios XI, Nagios log server, Nagios Network Analyzer,Nagios Fusion
Tính năng:
- Giám sát các dịch vụ mạng và các host
- Các plugin đơn giản, dễ dàng phát triển và kiểm tra dịch vụ
- Phát hiện và phân biệt các host bị down và host không thể truy cập được
- Hỗ trợ giám sát dự phòng
- Có giao diện web
- Cung cấp lịch sử ghi lại các cảnh báo, thông báo, sự cố
Trang 33HP ArcSight Logger là một sản phẩm trong bộ sản phẩm ArcSight của Hp.
Nó cung cấp một giải pháp hiệu quả về trong việc quản lý log Nó có khả năng thuthập, phân tích và lưu trữ với một khối lượng Log lớn với nhiều loại định dạng khácnhau Nó hỗ trợ việc triển khai hệ thống dưới nhiều hình thức như thiết bị, phầnmềm, máy ảo hoặc các dịch vụ đám mây [17]
Ưu điểm:
- Hỗ trợ nhiều loại định dạng Log: Syslog, Eventlog, Device Log …
- Phân tích toàn diện dữ liệu
- Cảnh báo và giám sát hệ thống trong thời gian thực
- Đánh chỉ mục dữ liệu, tìm kiếm và kết xuất báo cáo
- Giải quyết được một số bài toán nhất định
- Hiệu năng xử lý phụ thuộc vào thiết bị, muốn nâng cấp phải mua thiết bị mới
- Chi phí đầu tư tốn kém, đắt đỏ
Ưu điểm:
Trang 34- Sử dụng nhiều loại cảm biến để giám sát.
- Thông qua SNMP để giám sát băng thông mạng
- Giám sát được một số dịch vụ đơn giản, máy chủ, Qos,… Nhược điểm:
- Là phần mềm trả phí, cần phải chi trả một khoản kinh phí lớn
- Có phiên bản miễn phí nhưng vẫn chỉ cung cấp một số chức năng nhất định
- ELK stack là phần mềm mã nguồn mở, không tốn nhiều chi phí khi triển khai
- ELK mới được phát triển mạnh gần đây, nên cộng đồng hỗ trợ rất đông đúc
và mạnh mẽ
- Thu thập được log từ rất nhiều nguồn khác nhau: log hệ thống, log ứngdụng, log thiết bị mạng, log snmp, log từ các hệ thống API (Application ProgrammingInterface)…
- Khả năng tương thích cao, dễ dàng tích hợp với các hệ thống khác mà khônggặp khó khăn
- Giao diện Kibana trực quan, sinh động
- Phương tiện cảnh báo đa dạng, tích hợp với email, sms, slack, các ứng dụng
- Hiệu năng xử lý cao, có thể chịu tải được một lượng lớn dữ liệu (log) đẩy
về mà không phải quá phụ thuộc vào khả năng xử lý của phần cứng
- Giải quyết được hầu hết các bài toán trong giám sát hệ thống mạng: giám sát
hạ tầng, giám sát dịch vụ, giám sát an ninh, giám sát người dùng, Đây là đặc điểm
Trang 35chính giúp cho ELK trong tương lai sẽ được các công ty và tổ chức sử dụng để triểnkhai hệ thống giám sát tập trung bên trong hệ thống mạng của họ.
Các thành phần chính trong ELK stack gồm 4 thành phần:
- Elasticsearch: Dùng để tìm kiếm và query log
- Logstash: Tiếp nhận log từ nhiều nguồn, sau đó xử lý log và ghi vào cơ sở
dữ liệu
- Kibana: Giao diện để quản lý, thống kê log Đọc thông tin từ Elasticsearch.
- Beats: Một tập các công cụ chuyên dùng để thu thập dữ liệu cực mạnh.
Hình 2.2 Các thành phần trong ELK stack [8]
Về nguyên lý hoạt động của ELK stack:
- Đầu tiên, thông tin cần giám sát sẽ được đưa đến máy chủ ELK thông quanhiều con đường, ví dụ như server gửi UDP request chứa log tới URL của Logstash, hoặcBeats thu thập các thông tin từ các bộ công cụ chuyên dụng cài trên các server và gửi lênLogstash hoặc Elasticsearch
- Logstash sẽ đọc những log này, thêm những thông tin như thời gian, IP, parse
dữ liệu từ log (server nào, độ nghiêm trọng, nội dung log) ra, sau đó ghi xuống
database là Elasticsearch
- Khi muốn xem log, người dùng vào URL của Kibana Kibana sẽ đọc thôngtin log trong Elasticsearch, hiển thị lên giao diện cho người dùng query và xử lý Kibanahiển thị thông tin từ log cho người dùng
Trang 36Hình 2.3 Cấu trúc của ELK [8]
Sau đây, luận văn sẽ tìm hiểu chi tiết về từng thành phần trong bộ công cụELK stack để lý giải về khả năng của bộ công cụ giám sát tập trung mã nguồn mởELK stack
Trang 37Hình 2.4 Công cụ Elasticsearch [8]
Một số đặc điểm về ElasticSearch:
- Elasticsearch là một search engine
- Elasticsearch được xây dựng để hoạt động như một server cloud
- Phát triển bằng ngôn ngữ Java
- Là phần mềm open-source được phát hành theo giất phép của ApacheLicense
- Elasticsearch có thể tích hợp được với tất cả các ứng dụng sử dụng các loại ngôn ngữ: Java, JavaScript, Groovy, NET, PHP, Perl, Python, Ruby
- Sở dĩ Elasticsearch được gọi là "search & analyze in real time" là vì nó cókhả năng trả về kết quả tìm kiếm một cách nhanh chóng và chính xác trong một nguồn dữliệu lớn (big data source)
- Elasticsearch không chỉ tìm kiếm được các nguồn cơ sở dữ liệu nổi tiếng nhưMySQL, MS SQL, PostgreSQL, mà nó có thể là văn bản (text), pdf, doc,
Theo như cách thông thường tìm kiếm trong cơ sở dữ liệu database đều biết thì có hai cách là:
- Cách 1: Lật từng trang để tìm kiếm (No index)
- Cách 2: Lật tới phần mục lục để tìm kiếm
Về cơ bản thì ElasticSearch cũng áp dụng giải pháp giống Index Tuy nhiên
về mặt cơ chế xử lý và tìm kiếm thì có sự khác biệt, Index trong ElasticSearch đượcgọi là Inverted Index Inverted Index là kỹ thuật thay vì index theo từng đơn vị row
Trang 38(document) giống như mysql thì chúng ta sẽ biến thành Index theo đơn vị term Cụthể hơn, Inverted Index là một cấu trúc dữ liệu, nhằm mục đích map giữa term vàcác document chứa term đó, giúp gia tăng khả năng tìm kiếm.
Logstash
Logstash là một công cụ thu thập dữ liệu mã nguồn mở với khả năngpipelining thời gian thực Logstash có thể tự động thu thập dữ liệu từ nhiều nguồnkhác nhau và chuẩn hóa dữ liệu đó phụ thuộc vào đích đến của dữ liệu
Ban đầu logstash chỉ đóng vai trò là một bộ thu thập log, nhưng khả năngcủa logstash hiện nay đã vượt qua cả vai trò đó Bất kỳ một dạng sự kiện nào cũngđều có thể được logstash thu thập thông qua các plugins input và output, cùng vớinhững code đã được đơn giản hóa giúp gia tăng khả năng nhập, xử lý và khai tháchiệu quả nhiều loại dữ liệu khác nhau
Hình 2.5 Công cụ Logstash và nguyên lý hoạt động [8]
Logstash có một số lượng plugin đồ sộ (hơn 200) có thể đáp ứng bất kỳ dữliệu nào được đưa đến đầu vào Đơn giản nhất là log, metrics Với web, logstash cóthể biến các requests HTTP thành các sự kiện để phân tích Hay có thể làm việc vớiNoSQL thông qua giao diện JDBC, cung cấp các cảm biến và IoT,…
Trang 39Logstash thường sử dụng giao thức Syslog hay SNMP để có thể thu thậplog Đây là 2 giao thức chính thường được sử dụng trong các hệ thống giám sátnhằm thu thập các thông tin và đẩy dữ liệu về máy chủ giám sát.
Syslog là một giao thức client/server Đây là giao thức dùng để chuyển log
và thông điệp đến máy nhận log Máy nhận log thường được gọi là syslogd, syslogdaemon hoặc syslog server Syslog có thể gửi qua UDP hoặc TCP Các dữ liệu đượcgửi dạng cleartext Syslog dùng cổng 514
Syslog được phát triển năm 1980 bởi Eric Allman, nó là một phần của dự
án Sendmail, và ban đầu chỉ được sử dụng duy nhất cho Sendmail Nhưng sysloghiện nay trở thành giải pháp khai thác log tiêu chuẩn trên Unix-Linux cũng như trênhàng loạt các hệ điều hành khác và thường được tìm thấy trong các thiết bị mạngnhư switch, router
Syslog ban đầu sử dụng UDP, điều này đương nhiên không đảm bảo choviệc truyền tin Tuy nhiên sau đó IETF đã ban hành RFC 3195 Reliable Deliverycho syslog Nó giúp đảm bảo tin cậy cho syslog và RFC 6587 Transmission ofSyslog Messages over TCP giúp truyền tải thông báo syslog qua TCP Điều này cónghĩa là ngoài UDP thì giờ đây syslog cũng đã sử dụng TCP để đảm bảo an toàncho quá trình truyền tin
Trong chuẩn syslog, mỗi thông báo đều được dán nhãn và được gán cácmức độ nghiêm trọng khác nhau Các loại phần mềm sau có thể sinh ra thông báo:auth , authPriv , daemon , cron , ftp , dhcp , kern , mail, syslog, user, Với các mức
độ nghiêm trọng từ cao nhất trở xuống Emergency, Alert, Critical, Error, Warning,Notice, Info, and Debug
SNMP viết tắt của Simple Network Management Protocol, là một giao thứcchuyên được sử dụng trong vấn đề quản lý, giám sát hệ thống mạng SNMP cónhững quy định riêng, những thành phần riêng để các thành phần trong hệ thốngmạng có thể tuân theo, từ đó thu thập được các log trong hệ thống mạng để quản lý,giám sát SNMP sử dụng UDP, chạy trên cổng 161 hoặc 162
Một số các chức năng của các phần mềm sử dụng giao thức SNMP gồm:
Trang 40- Theo dõi tốc độ đường truyền, lưu lượng truyền và nhận.
- Lấy thông tin về phần cứng của máy chủ (RAM, Chip, Ổ cứng,…)
- Tự động cảnh báo (gửi mail, sms) khi có sự cố
SNMP được thiết kế chạy trên nền TCP/IP và quản lý các thiết bị có nốimạng TCP/IP Nếu thiết bị cần giám sát có nối mạng, sử dụng IP và hỗ trợ SNMPthì hoàn toàn có thể giám sát, quản lý nó từ xa thông qua SNMP
Đặc điểm của giao thức SNMP:
- Thiết kế đơn giản hóa quá trình quản lý các thành phần trong mạng Các phần mềm sử dụng SNMP có thể được phát triển nhanh và tốn ít chi phí
- Có thể mở rộng các chức năng quản lý, giám sát
- Có thể thiết kế để 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
Kibana
Kibana là một nền tảng phân tích và trực quan mã nguồn mở được thiết kế
để làm việc với Elasticsearch Ta sử dụng Kibana để tìm kiếm, xem và tương tác với
dữ liệu được lưu trữ trong Elasticsearch Từ đó dễ dàng thực hiện phân tích dữ liệu
và trực quan hóa dữ liệu của mình thông qua biểu đồ, bảng
Hình 2.6 Công cụ Kibana [8]
Kibana giúp nắm bắt nhanh chóng các dữ liệu có khối lượng lớn Giao diệnđơn giản, dựa vào trình duyệt cho phép nhanh chóng hiển thị các thay đổi khi truyvấn Elasticsearch trong thời gian thực
Beats
Beats là một tập hợp các công cụ thu thập thông tin chuyên dụng, được biếtđến như là các Shipper (người vận chuyển) giúp thu thập và gửi dữ liệu từ Client tớimáy chủ ELK Ngoài ra, các beat này có thể được gửi thẳng trực tiếp lên Elasticsearch