Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 94 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
94
Dung lượng
2,75 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH CƠNG TRÌNH NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ÐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM NGUỒN MỞ MÃ SỐ: T2013-45 SKC005440 Tp Hồ Chí Minh, 2013 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƯỜNG XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ĐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM NGUỒN MỞ Mã số: T2013-45 Chủ nhiệm đề tài: ThS Huỳnh Nguyên Chính TP HCM, 11/2013 TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA CƠNG NGHỆ THƠNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƯỜNG XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ĐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM NGUỒN MỞ Mã số: T2013-45 Chủ nhiệm đề tài: ThS Huỳnh Nguyên Chính TP HCM, 11/2013 i MỤC LỤC MỞ ĐẦU Chương TỔNG QUAN 1.1Tổng quan bảo mật hệ thống mạng máy tính 1.2Phân loại lỗ hổng bảo mật 1.3Các công cụ phát lỗ hổng mạng 1.4Các kiểu công mạng 1.5Các giải pháp phát phịng chống cơng mạng Chương HỆ THỐNG PHÁT HIỆN & PHÒNG CHỐNG XÂM NHẬP 2.1Vai trò IDS/IPS hệ thống mạng 2.1.1Lịch sử phát triển 2.1.2Vai trò hệ thống phát 2.2Đặc điểm hệ thống IDS/IPS 2.2.1Kiến trúc hệ thống phát hi 2.2.2Các cách triển khai hệ thống ID 2.2.3Khả phát phòng 2.3Hệ thống giám sát lưu lượng, thiết bị dịch vụ 2.4Hệ thống báo động 2.5 SNMP hệ thống giám sát mạng Chương CÁC CÔNG CỤ NGUỒN MỞ HỖ TRỢ PHÁT HIỆN & PHÒNG CHỐNG XÂM NHẬP MẠNG 3.1Giới thiệu 3.2Đặc điểm Snort 3.3Phân tích vấn đề Snort khả triển khai 3.3.1Lợi ích Snort 3.3.2Đánh giá tập luật Snort ii 3.5Hệ thống giám sát trạng thái hoạt động thiết bị dịch v 3.6Hệ thống giám sát lưu lượng - Cacti 3.7Hệ thống báo động qua SMS - Gnokii Chương PHÁT TRIỂN ỨNG DỤNG HỆ THỐNG GIÁM SÁT MẠNG DỰA VÀO MÃ NGUỒN MỞ 4.1Mơ hình cài đặt thực nghiệm 4.2Cài đặt thực nghiệm 4.2.1Cài đặt Gnokii 4.2.2Cài đặt Snort 4.2.3Cài đặt Fwsnort 4.2.4Cài đặt Nagios 4.2.5Cài đặt Cacti 4.3Kết thực nghiệm 4.4Kết luận Chương KẾT LUẬN 5.1Một số kết đạt 5.2Hướng phát triển TÀI LIỆU THAM KHẢO Phụ lục A:Hướng dẫn cấu hình GSM/GPRS Gateway Linux Phụ lục B:Hướng dẫn cài đặt Snort Phụ lục C:Hướng dẫn cài đặt cấu hình Nagios Phụ lục D:Hướng dẫn cài đặt cấu hình CACTI iii DANH MỤC CÁC TỪ VIẾT TẮT BASE Basic Analysis and Security Engine DdoS Distribute Denial of Service DNS Domain Name Service DoS Denial of Service FTP File Transfer Protocol ICMP Internet Control Message Protocol IDS Intrusion Detection System IPS Intrusion Prevention System SNMP Simple Network Managerment Protocol TCP Transfer Control Protocol HIDS Host-based Intrusion Detection System NIDS Network-based IDS ATTT An Tồn Thơng Tin MIB Management Information Base iv DANH MỤC CÁC HÌNH VẼ Hình 2.1 Hệ thống phát xâm nhập 12 Hình 2.2 Kiến trúc hệ thống IDS 13 Hình 2.3 Sự kết hợp lọc gói tin 14 Hình 2.4 IDS hoạt động chế độ promiscuous 16 Hình 2.5 IDS hoạt động chế độ inline 17 Hình 2.6 Các thiết bị dùng báo động SMS 20 Hình 3.1 Các thành phần Snort 24 Hình 3.2 Nagios giám sát thiết bị dịch vụ 28 Hình 3.3 Nagios theo dõi dịch vụ Windows qua NSClient 29 Hình 3.4 Nagios giám sát dịch vụ máy Unix/Linux qua NRPE 29 Hình 3.5 Nagios giám sát máy in 29 Hình 3.6 Nagios giám sát Router, Switch 30 Hình 3.7 Nagios giám sát thiết bị mạng 30 Hình 3.8 Nagios vẽ sơ đồ trạng thái host mạng 31 Hình 3.9 Nagios gửi cảnh báo qua e-mail SMS 31 Hình 3.10 Sơ đồ hoạt động Cacti 32 Hình 3.11 Sơ đồ trao đổi thông tin SNMP Cacti thiết bị 33 Hình 3.12 Cacti thu thập thông tin qua SNMP 33 Hình 3.13 Cacti biểu diễn lưu lượng dạng đồ thị thời gian thực .34 Hình 4.1 Mơ hình cài đặt thực nghiệm 38 v Hình 4.2 Thiết lập thông số cho thiết bị Cacti 49 Hình 4.3 Lưu lượng thu thập qua SNMP 49 Hình 4.4 Màn hình theo dõi Cacti tích hợp tính giám sát 50 Hình 4.5 Theo dõi hoạt động Cisco Switch qua đồ thị 51 Hình 4.6 Theo dõi trạng thái thiết bị & phát báo động âm 51 Hình 4.7 Hiển thị đồ thị cho thiết bị 52 Hình 4.8 Theo dõi tổng quan cảnh báo từ Snort qua giao diện Web 52 Hình 4.9 Theo dõi chi tiết cảnh báo từ Snort qua giao diện Web 53 Hình 4.10 Hiển thị đồ thị lưu lượng cho kết nối mạng 53 Hình 4.11 Theo dõi số dịch vụ chạy host từ Nagios 54 Hình 4.12 Theo dõi lưu lượng mạng thiết bị trực quan 54 Hình 4.13 Hiển thị đồ thị lưu lượng cho kết nối mạng 55 Hình 4.14 Cảnh báo dùng DoSHTTP để công vào Web server 56 Hình 4.15 Cảnh báo gửi qua Email dùng chương trình SolarWinds scan 56 Hình 4.16 Hệ thống phát cảnh báo cho dịch vụ HTTP máy chủ Web .57 -1- MỞ ĐẦU I Cơ sở khoa học thực tiễn Mạng máy tính ngày có vai trò quan trọng cho cá nhân, tổ chức, doanh nghiệp Việc trao đổi thông tin thực giao dịch chủ yếu thông qua hệ thống mạng máy tính Vì thế, bảo mật hệ thống mạng nhu cầu cấp thiết cho tổ chức, doanh nghiệp nhằm bảo vệ hệ thống sở liệu mình, chống lại cơng từ bên ngồi thực trao đổi thông tin, giao dịch qua mạng an toàn II Mục tiêu đề tài Khảo sát lỗ hổng bảo mật nguy hệ thống mạng bị công xâm nhập Xem xét giải pháp giám sát hệ thống mạng: phát xâm nhập, phòng chống xâm nhập, theo dõi tình trạng hoạt động Server, Switch, Router, số dịch vụ mạng Phát triển hệ thống cảnh báo đa dạng qua Web, Email, SMS Audio III Đối tượng nghiên cứu Các phần mềm nguồn mở phát xâm nhập Các phần mềm nguồn mở phòng chống xâm nhập Các phần mềm nguồn mở giám sát lưu lượng mạng Các phần mềm nguồn mở giám sát thiết bị dịch vụ mạng IV Nội dung nghiên cứu Nghiên cứu khả công mạng Nghiên cứu giải pháp phát xâm nhập mạng Nghiên cứu khả phịng chống cơng mạng MỞ ĐẦU -69- Phụ lục C: Hướng dẫn cài đặt cấu hình Nagios Bước 1: Download NAGIOS Plugins http://www.nagios.org/download http://sourceforge.net Bước 2: Cài đặt NAGIOS - Tạo account: username: nagios ; group: nagios # useradd nagios # passwd nagios # groupadd nagios # usremod -a -G nagios nagios - Kiểm tra user nagios gửi sms # chown -R nagios /dev/ttyS0 # chown -R nagios /var/lock/ # cp /etc/gnokiirc /home/nagios/.gnokiirc # su nagios $ gnokii identify $ printf "test user nagios" | gnokii sendsms Yêu cầu gói sau phải cài trước apache, php, gcc, glibc, glibc-common, gd, gd-devel # - yum install httpd php gcc glibc glibc-common gd gd-devel Di chuyển vào source cua NAGIOS va install lệnh #./configure with-command-group=nagios # make all # make install # make install-init Phụ Lục -70- # make install-config # make install-commandmode # make install-webconf Tao user de truy cap web NAGIOS (user: nagiosadmin, password: nagiosadmin) # - htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmi Restart apache # service httpd restart - Cấu hình plugin Lưu ý: gán quyền truy xuất cho user nagios: #chown nagios.nagios /usr/local/nagios #chown -R nagios.nagios /usr/local/nagios/libexec Bước 3: Cấu hình file cấu hình NAGIOS # /usr/local/nagios/etc/nagios.cfg # /usr/local/nagios/etc/objects/***.cfg - Kiểm lỗi trình cấu hình #/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg # service nagios restart Đưa nagios vào system startup (Khi hệ thống khởi động Nagios khởi động) # chkconfig add nagios # chkconfig nagios on - Cài nagios plugin # tar -zxvf nagios-plugins-1.4.14.tar.gz # cd nagios-plugins-1.4.14 # /configure with-nagios-user=nagios with-nagios-group=nagios # make # make install Phụ Lục -71- Bước 4: Kiểm tra hoạt động hệ thống qua giao diện web Dùng trình duyệt web, đăng nhập với url: http://ip-address/nagios Đăng nhập với account: nagiosadmin/nagiosadmin Phụ Lục -72- Phụ lục D: Hướng dẫn cài đặt cấu hình CACTI YÊU CẦU Cài đặt gói sau, trước cài Cacti: – RRDTool – NET-SNMP – MySQL – PHP – Apache HƯỚNG DẪN CÀI ĐẶT APACHE • Install Apache: # yum install httpd PHP • Install PHP: # yum install php • Tạo info.php thư mục /var/www/ html • Khởi động apache: # /etc/init.d/httpd restart • Đảm bảo http hoạt động tốt trước qua bước MySQL • Cài đặt mysql # yum install mysql-server php-mysql • Restart Apache: # /etc/init.d/httpd restart • Reload http://localhost/info.php kiểm tra xem PHP load module MySQL khơng Phụ Lục -73- Net-SNMP • Tương tự bước trước Dùng lệnh sau để cài đặt Net-SNMP: # yum instal net-snmp php-snmp • Sau hoàn thành, khởi động lại Apache: # /etc/init.d/httpd restart • Reload http://localhost/info.php and kiểm tra PHP load module SNMP: • Cài đặt thêm Dag RPM Repository cho phép yum có thêm tính mở rộng • Download file RPM-GPG-KEY.dag.txt: # wget http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt • Import Key: # rpm import RPM-GPG-KEY.dag.txt • Tạo file dag.repo: vi /etc/yum.repos.d/dag.repo với nội dung sau: RRDTool • Cài đặt RRDTool: # yum enablerepo=dag -y install rrdtool Cài đặt cấu hình Cacti # yum enablerepo=dag -y install cacti Cấu hình • Gán quyền truy xuất Apache đến thư mục /var/www/cacti/ Đặt password cho user cactiuser việc truy cập database theo hướng dẫn Phụ Lục -74- Cấu hình MySQL • Đặt password truy xuất database MySQL cho user root: # mysqladmin -u root password 'new-password' •Tạo database tên cacti table: Tạo Crontab •Tiếp theo, tạo cron job chạy file poller.php phút lần # touch /etc/cron.d/cacti • Sau đó, chỉnh sửa /etc/cron.d/cacti với nội dung sau: */5 * * * * cactiuser php /var/www/cacti/poller.php> /dev/null 2>&1 • Cron tìm kiến liệu cần thiết lưu trữ thư mục rra Chúng ta phải thay đổi quyền ownership thư mục rra log chi user cactiuser Phụ Lục -75- # cd /var/www/cacti/ # chown –R cactiuser rra/ log/ Cài đặt Plug-in Architecture Download • Đầu tiên, download Plugin Architecture từ Website http://cactiusers.org/downloads Extract • Giải nén # tar -zvxf cacti-plugin-arch.tar.gz • Sau giải nén xong, có thư mục cacti-plugin-arch với file patchtrong thư mục Cài đặt (Sử dụng file Patch) • Trong thư mục cacti-plugin-arch có số file có tên tương tự "cacti-plugin-0.8.6g.diff“ • Copy file thư mục cài đặt Cacti Sau đó, sử dụng lệnh sau: # patch -p1 -N dry-run < cacti-plugin-arch.diff • Tiếp tục thực lệnh sau: # patch -p1 -N < cacti-plugin-arch.diff Cấu hình • Chỉnh sửa file includes/global.php , tìm đến dịng sau: config['url_path'] = "/"; • Thay đổi thành: $config['url_path'] = "/cacti/“; • Chú ý: Khi truy xuất Cacti sử dụng http://servername/cacti/ SQL • Trong thư mục cacti-plugin-arch có file pa.sql Phụ Lục -76- • Import file vào cacti SQL database: # mysql –p cacti < pa.sql • Mọi thứ hồn thành.Chúng ta tiến hành plug-in Cho phép user Admin sử dụng “Plugin Management” • Click Console User Management Plugin Management Admin Realm Permissions Tab Check Cài đặt Plug-in Có nhiều plug-ins, phần náy hướng dẫn cài đặt cấu hình plug-in update, , realtime, setting Download • http://cactiusers.org/downloads • http://docs.cacti.net/plugins Extract # tar –xvcf realtime-0.4.0-1.tar.gz # tar –xvcf settings-latest.tgz # tar –xvcf update-0.4.tar.gz •Sau hồn tất, có thư mục realtime, settings, update Phụ Lục -77- Upload • Chép thư mục " realtime, settings, update" vào thư mục "plugins" web server, Ví dụ: /var/www/cacti/plugins/realtime/ /var/www/cacti/plugins/settings/ /var/www/cacti/plugins/update/ Activate • Chỉnh sửa file /var/www/cacti/include/global.php •Tìm đến dịng: $plugins = array(); •Thêm dịng sau: $plugins[] = 'update'; $plugins[] = 'realtime'; $plugins[] = 'settings'; Cấu hình • Click Console User Management Check vào Check for Update, Plugin Phụ Lục Admin Realtime Realm Permissions Tab -78- Activate Realtime, Settings, Update for cacti • Click Console Plugin Management click Install click Enable Step by step for Global Plugin Settings, Realtime Graph Viewer and Update SQL • Chú ý: số plug-in có file dạng *.sql file Chúng ta phải import vào cacti database # mysql –p cacti < *.sql Cài đặt Spine • Cài đặt thêm gói cần thiết trước biên dịch Spine: • Dùng lệnh: yum install –y net-snmp-devel mysql mysql-devel openssl-devel ksh automake autoconf libtool gcc • #libtoolize force • #autoheader Phụ Lục -79- • #autoconf • #automake • #./configure • #make • #make install Cấu hình file spine.conf • Tìm đến thư mục chứa spine (/usr/local/spine/etc) # cd /usr/local/spine/etc/ # cp spine.conf.dist # vim spine.conf spine.conf • Thay đổi thông tin sau: DB_Host localhost DB_Database cact DB_User cactuser DB_Pass password DB_Port 3306 • Trong file include/config.php: $database_type = "mysql"; $database_default = "cact"; $database_hostname = "localhost"; $database_username = "cactuser"; $database_password = "password"; $database_port = "3306"; Activate SPINE cho cacti • This is the cacti Log before use spine (only with cmd.php) Phụ Lục -80- • Cập nhật lại vị trí hoạt động spine: Console -> Settings->Paths>Alternate Poller Path-> Spine Poller File Path = /usr/local/spine/bin/spine • Thay đổi tần số hoạt động Poller: Console -> Settings->Poller Poller Type = spine Poller Interval = every minutes Cron Interval = every minutes Phụ Lục -81- • Cacti Log sau cài đặt spine Đến hoàn thành việc cấu hình cho Cacti Phụ Lục ... cứu Các phần mềm nguồn mở phát xâm nhập Các phần mềm nguồn mở phòng chống xâm nhập Các phần mềm nguồn mở giám sát lưu lượng mạng Các phần mềm nguồn mở giám sát thiết bị dịch vụ mạng IV... THÀNH PHỐ HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƯỜNG XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ĐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM NGUỒN MỞ Mã số: T2013-45 Chủ nhiệm đề... 3. 5Hệ thống giám sát trạng thái hoạt động thiết bị dịch v 3. 6Hệ thống giám sát lưu lượng - Cacti 3. 7Hệ thống báo động qua SMS - Gnokii Chương PHÁT TRIỂN ỨNG DỤNG HỆ THỐNG GIÁM SÁT MẠNG