6 Các công trình nghiên cứu liên quan
5.3 nghĩa khoa học và thực tiễn
5.3.1 Ý nghĩa về mặt khoa học
Đề tài nghiên cứu đưa ra cách nhìn tổng quan nhất về một hệ thống giám sát, phát hiện và phòng chống xâm nhập mạng, các phương thức tấn công mạng và các giải pháp bảo mật hệ thống mạng. Bên cạnh đó xây dựng một hệ thống giám sát và cảnh báo bằng email hoặc bằng SMS đến quản trị viên, giúp cho việc quản trị hệ thống mạng trở nên cơ động và an toàn hơn.
5.3.2 Về mặt thực tiễn
Đề tài sẽ được ứng dụng ngay trong cơ quan của tác giả hoặc có thể mở rộng trong toàn ngành nơi mà tác giả đang công tác do dựa trên mã nguồn mở hoàn toàn miễn phí và đáp ứng nhu cầu của cơ quan.
Mặt khác, nghiên cứu của đề tài có thể được áp dụng rộng rãi trong các đơn vị hoặc các doanh nghiệp do không cần chi phí đầu tư và hiệu quả của công trình nghiên cứu có tính khả thi.
Cung cấp cho các quản trị viên một bộ công cụ tích hợp giám sát mạng và phát hiện xâm nhập, giúp quản trị viên dễ dàng trong việc theo dõi và quản trị hệ thống mạng của mình trực quan, hiệu quả hơn.
5.4 Hướng phát triển cho đề tài
+ Hoàn thiện các chức năng của chương trình
Hoàn thiện thêm chức năng gửi cảnh báo đến quản trị viên bằng âm thanh (Audio), chức năng tự động cập nhật các rule của snort.
Hiện tại, mô hình đang được áp dụng cho hệ thống mạng nội bộ trong một doanh nghiệp, chưa thể áp dụng trong một hệ thống mạng trong môi trường WAN nên cần tiếp tục nghiên cứu phát triển.
TÀI LIỆU THAM KHẢO A Tiếng Việt
[1] Ngô Vi Đồng (2009),”Hiện trạng về ATTT khu vực phía Nam”, Ngày an toàn thông tin 2009.
[2] Trọng Cầm, Báo điện tử Vietnamnet.vn (2010)“ An toàn thông tin Việt Nam: thừa nhận thức, thiếu thực thi”.
[3] “ Hướng dẫn cài đặt và cấu hình file config hệ thống giám sát Cacti” Bài viết của các tác giả trên báo điện tử http://www.asterisk.vn/forum/viewtopic.php?f=18&t=174(2010)
[4] “Cài đặt và cấu hình gateway SMS Gnokii” Bài viết trên website http://forum.niit.vn/archive/index.php/t-20359.html, tác giả hieunh tháng 2/2011 [5] “Các kiểu tấn công mạng” tác giả LeHoanPC 3/2008,Website http://www.quantrimang.com.vn/baomat/giaiphapbaomat/22_Cac-kieu-tan- cong-mang.aspx.
[6] Lỗ hổng bảo mật mạng. Website http://vinasupport.com/2010/lo-hong-bao- mat/ tác giả manlivo189, 25/3/2010.
[7] “Hệ thống phát hiện xâm nhập IDS”
http://www.quantrimang.com.vn/kienthuc/kien-thuc-co-ban/37334_He-thong- phat-hien-xam-pham-IDS-Phan-1.aspx tác giả VanLinh 24/01/2007
B Tiếng Anh
[8] Max Schubert, Derrick Bennett (2008), “Nagios 3 Enterprise Network Monitoring Including Plug-ins and Hardware Devices”, Syngress.
[9] Dinangkur Kundu, S.M. lbrahim Lavlu (2009), "Cacti 0.8 Network Monitoring" PACKT Publishing.
[10] Rafeeq UR Rehman (2003),“Intrusion Detection With Snort - Advanced IDS Techniques using Snort, Apache, MySQL, PHP, and ACID”, Prentice Hall PTR.
[11] Nagios NRPE Document (1997-2000), NDOUtil Database Model(2006- 2007),EthanGalstard.
[12] The Snort Project (2009), “Snort users manual 2.8.5”.
[13] David Josephsen (2007),“Building a Monitoring Infrastructure with Nagios”, Prentic Hall.
PHỤ LỤC PHỤ LỤC A
Bước 1: Chuẩn bị source cài đặt
- Download software tại http://www.gnokii.org (gnokii-0.6.28.tar.gz) - Chép các gói vào /usr/gnokii-soft
Bước 2: Giải nén source gnokii
# tar -zxvf gnokii-0.6.28.tar.gz
Bước 3: Cài đặt
Chú ý: phải cài trước gói gcc (# yum install gcc) và intltool (# yum install intltool)
- Di chuyển vào thư mục đã giải nén gnokii-0.6.28 # cd /gnokii-0.6.28
# ./configure # gmake
# gmake install
Bước 4: Điều chỉnh file cấu hình
- copy /Docs/sample/gnokiirc --> /etc/gnokiirc #cp ../Docs/gnokiirc /etc/gnokiirc
- Điều chỉnh cấu hình trong /etc/gnokiirc
Tùy vào thiết bị GSM/GPRS modem (gắn cổng COM1 (/dev/ttyS0) hay USB (/dev/ttyUSB0))
#vi /etc/.gnokiirc
---> Điều chỉnh: Bỏ dấu # tại dòng: model AT thêm dấu # tại dòng: model 6510 va TELEPHONE chỉnh: debug = off
-- copy gnokiirc vào /root/
# cp /etc/gnokiirc /root/.gnokiirc
- gnokii --identify
Note: Nếu có hiển thị các thông số của GSM/GPRS modem thì computer đã
nhận diện ra thiết bị VD:
#gnokii --identify GNOKII Version 0.6.28 IMEI : 351047888189814
Manufacturer : WAVECOM MODEM Model : MULTIBAND 900E 1800
Product name : MULTIBAND 900E 1800 Revision : 641b09gg.Q2403! 132
//Kiểm tra việc gửi SMS từ dòng lệnh
PHỤ LỤC B
Hướng dẫn cài đặt và cấu hình Snort
Bước 1: Các gói cần thiết phải cài đặt trước khi thực hiện cài Snort
# yum –y install mysql mysql-bench mysql-server mysql-devel mysqlclient10 php-mysql httpd gcc pcre-devel php-gd gd mod_ssl glib2-devel gcc-c++ libpcap-
devel php php-pear
Bước 2: Bật và khởi động các service cần thiết
- Sử dụng các dòng lệnh dưới đây để bật các service lên #/sbin/chkconfig httpd on
#/sbin/chkconfig mysqld on
- Sử dụng các dòng lệnh dưới đây để khởi động các service #/sbin/service httpd start
#/sbin/service mysqld start
Bước 3. Kiểm tra Apache Server
Vào thư mục /var/www/html và tải về tập tin index.php.txt như sau◊ #cd /var/www/html
#wget http://www.internetsecurityguru.com/index.php.txt Đổi tên tập tin vừa tải về thành index.php bằng lệnh sau: #mv index.php.txt index.php
Mở trình duyệt và gõ vào địa chỉ http://<ip của máy đang cấu hình>/index.php
Bước 4. Tạo tài khoản snort để truy xuất vào hệ thống và cơ sở dữ liệu mysql
/usr/sbin/groupadd snort
/usr/sbin/useradd –g snort snort –s /sbin/nologin Đặt password cho user snort bằng lệnh: passwd snort Bước 5. Tải các gói cần thiết để cài đặt SNORT
Download gói Snort-2.8.5.1.tar.gz
Giải nén gói tin vừa chép về bằng các lệnh dưới đây #tar –xvzf snort-2.8.5.1.tar.gz
Vào thư mục vừa giải nén. Thực hiện các lệnh dưới đây để cài đặt: #chmod +x ./configure
#./configure - -with-mysql - -enable-dynamicplugin #make
#make install
Tạo các thư mục chứa tập tin cài đặt và chạy snort #mkdir /etc/snort
Giải nén và sao chép toàn bộ tập tin snortrules-snapshot-2.7.tar.gz vào trong /etc/snort vừa tạo
#cd /etc/snort
#tar –xvzf snortrules-snapshot-2.7.tar.gz
Chỉnh sửa tập tin snort.conf nằm trong thư mục /etc/snort/etc/snort.conf là tập tin
cấu hình chính của snort; khi thực thi, snort sẽ đọc tâp tin này để khởi động các thông số cần thiết. Mở và chỉnh sửa tập tin snort.conf bằng quyền root
#vi /etc/snort/snort.conf
Sửa các dòng theo chỉ dẫn dưới đây:
- Tìm đến dòng “var HOME_NET any” và sửa thành “var HOME_NET 192.168.3.0/24”; nếu địa chỉ mạng trong là địa chỉ đường mạng 192.168.3.0 - Sửa đường dẫn đến thư viện rules
Tìm đến dòng sau
var RULE_PATH .../rules Sửa đường dẫn thành:
Var RULE_PATH /etc/snort/rules
Bước 6. Cấu hình để Snort log vào cơ sở dữ liệu MySQL
Tìm đến phần output với dòng sau
# output database: log, mysql, user=root password=test dbname=db host=localhost
Bỏ dấu “#” và sửa thành như sau:
output database: log, mysql, user=snort password=<password> dbname=snort host=localhost
Bước 7. Cài đặt cơ sở dữ liệu vào MySql
#mysql
mysql> SET PASSWORD FOR root@localhost=PASSWORD('password'); >Query OK, 0 rows affected (0.25 sec) (no need-da tao trong cacti)
mysql> create database snort;
>Query OK, 1 row affected (0.01 sec)
mysql> grant INSERT,SELECT on root.* to snort@localhost; >Query OK, 0 rows affected (0.02 sec)
mysql> SET PASSWORD FOR
snort@localhost=PASSWORD('password_from_snort.conf'); >Query OK, 0 rows affected (0.25 sec)
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost;
>Query OK, 0 rows affected (0.02 sec)
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort;
mysql> exit >Bye
- Thực thi câu lệnh dưới đây để import cơ sở dữ liệu snort vào Mysql
# mysql –u root –p snort < /etc/snort/snort-2.8.5.1/schemas/create_mysql.sql Enter password: <mysql root password>
- Sau đó kiểm tra lại cơ sở dữ liệu mysql như sau #mysql –p
>Enter password:
mysql> show databases; +---+ | Database +---+ | mysql | Snort | test +---+
3 rows in set (0.00 sec) mysql> use snort
>Database changed mysql> show tables;
Bước 8. Cài đặt BASE
- Cài đặt ADODB #cd /var/www/html
#tar –xzf /root/snortinstall/adodb495.tgz - Cài đặt BASE
#cd /var/www/html
#tar –xvzf /root/snortinstall/base-1.4.0.tar.gz - Đổi tên thư mục:
mv base-1.4.0 base/
Chép tập tin base_conf.php.dist thành base_conf.php #cd base/
#cp base_conf.php.dist base_conf.php
- Chỉnh sửa cấu hình BASE cho thích hợp như sau #BASE_urlpath = "/base"; #DBlib_path = "/var/www/html/adodb/ "; #DBtype = "mysql"; #alert_dbname = "snort"; #alert_host = "localhost"; #alert_port = ""; #alert_user = "snort"; #alert_password = "password_from_snort_conf";
Kiểm tra lại bằng cách dùng trình duyệt và gõ vào địa chỉ như sau: http://<ip máy server>/base
Sau bước này, chúng ta đã cài đặt thành công IDS SNORT vào hệ thống, quản trị viên sẽ theo dõi hệ thống và các alert của IDS SNORT thông qua trang web BASE vừa cài đặt.
PHỤ LỤC C
Hướng dẫn cài đặt và cấu hình Nagios Bước 1: Cài đặt các gói thư viện – service cần thiết
# yum install httpd gcc glibc glibc-common gd gd-devel php[11]
Bước 2: Tạo account và group dành cho việc run các command thông qua giao
diện web
# useradd -m nagios
///Tạo nhóm nagcmd và đưa user nagios và apache vào nhóm # groupadd nagcmd
# usermod -a -G nagcmd nagios # usermod -a -G nagcmd apache
Bước 3: Tạo thư mục và down các file cài đặt Nagios
# mkdir /opt/Nagios
Download gói core của Nagios và Plugins http://www.nagios.org/download/download.php
Gói tải về trong bài này là Nagios-3.3.1.tar.gz và nagios-plugins-1.4.15-35- g355a.tar.gz
Bươc 4: Cài đặt Nagios
///Xả nén 2 file trong thư mục Nagios vùa tạo # cd /opt/Nagios
# tar –xzvf nagios-3.3.1.tar.gz # cd nagios-3.3.1
///Biên dịch và cấu hình Nagios
# ./configure –with-command-group=nagcmd # make all # make install # make install-init # make install-config # make install-commandmode
Xong bước này thì Nagios đã sẵn sàng trong /usr/local/nagios
Bước 5: Cài đặt giao diện web cho Nagios
# make install-webconf
///Tạo user quản trị giao diện web
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin ///Start dịch vụ httpd
# service httpd start # chkconfig httpd on
Bước 6 : Cài đặt Nagios plugin [11]
# cd /opt/Nagios
# tar xzf nagios-plugins-1.4.15-35-g355a.tar.gz # cd nagios-plugins-1.4.15-35-g355a
///Biên dịch và cài đặt Nagios
# ./configure –with-nagios-user=nagios –with-nagios-group=nagios # make
# make install
Cấu hình địa chỉ admin nhận các alerts trong file /usr/local/nagios/etc/objects/contacts.cfg
Sửa dòng
email nagios@localhost ; <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ******
Check lại file cấu hình mặc định của Nagios
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Total Warnings: 0
Total Errors: 0 Start dịch vụ Nagios # chkconfig –add nagios # chkconfig nagios on # service nagios start
Bước 7: log on và kiểm tra kết quả qua trang admin : http://ip-address/nagios/
Lưu ý:
Khi cài đặt xong hệ thống Nagios mặc định sẽ add localhost làm đối tượng monitor đầu tiên lúc này dịch vụ http của localhost sẽ được monitor nhưng luôn
gặp thông báo warning vì không tìm thấy index.html hay index.php.. vì lúc này folder /var/www/hmtl đang rỗng vì thế để giải quyết warning chỉ cần tão một file index.html trong /var/www/html
PHỤ LỤC D
Hướng dẫn cài đặt và cấu hình Cacti [3]
Yêu cầu phần mềm:
+ MySQL Server : lưu trữ dữ liệu của cacti.
+ NET-SNMP server - SNMP (Simple Network Management Protocol) là một giao thức dùng cho quản trị mạng.
+ PHP with net-snmp module
+ Truy xuất vào dữ liệu SNMP bởi PHP.
+ Apache / lighttpd / ngnix webserver : Web server để thể hiện giao diện đồ thị được tạo ra bởi PHP và RRDTOOL.
Các gói cần có cho RRDTOOL:
# pango-devel, libxml2-devel.ruby ruby-devel, //Cài NET-SNNMP
Trích dẫn:
#yum -y install net-snmp-utils php-snmp net-snmp-libs //Cài MySQL
Trích dẫn:
#yum -y install mysql-server mysql
//Cấu hình MySQL database cho Cacti cài đặt password cho mysql root user
Trích dẫn:
#mysqladmin -u root password NEWPASSWORD //Tạo database cho Cacti
Trích dẫn:
# mysql -u root -p -e 'create database cacti'
//Tạo và cấp quyền cho user cacti trên database cacti với password là 123456
Trích dẫn:
#mysql -u root –p
mysql> GRANT ALL ON cacti.* TO cacti@localhost DENTIFIED BY '123456';
mysql>FLUSH privileges; mysql> exit
//Cài đặt SNMP
Trích dẫn:
#yum install net-snmp-utils php-snmp net-snmp-libs //Cấu hình snmp
Trích dẫn:
#vi /etc/snmp/snmpd.conf
Bạn thay đổi và thêm nội dung sau vào SNMP (xem snmpd.conf để biết thêm chi tiết)
Trích dẫn:
rocommunity 123456
syslocation "Asterisk Vietnam" proc mountd
proc ntalkd 4 disk / 10000 load 12 14 14
Bạn lưu file snmpd.conf và đóng lại, sau đó start snmpd và bật snmpd service:
Trích dẫn:
#/etc/init.d/snmpd start #chkconfig snmpd on //Cài đặt rrdtool
Trích dẫn:
#wget http://packages.sw.be/rrdtool/rrdtool-1 ... f.i386.rpm #wget http://packages.sw.be/rrdtool/perl-rrdt ... f.i386.rpm #wget http://packages.sw.be/rrdtool/rrdtool-d ... f.i386.rpm
rpm -ivh rrdtool-1.2.18-1.el5.rf.i386.rpm perl-rrdtool-1.2.18-1.el5.rf.i386.rpm rrdtool-devel-1.2.18-1.el5.rf.i386.rpm
Trích dẫn:
#wget http://www.cacti.net/downloads/cacti-0.8.7g.tar.gz #tar -zvxf cacti-0.8.7g.tar.gz -C /var/www/html/
#cd /var/www/html/#mv cacti-0.8.7g cacti //Hoặc bạn có thể cài bằng yum
Trích dẫn:
#yum -y install cacti
//Tạo MySQL database cho cacti với database name là cacti
Trích dẫn:
#mysqladmin --user=root --password=password create cacti //Import cacti database mặc định từ cacti.sql trong thư mục cacti
Trích dẫn:
#mysql --user=root --password=password cacti < cacti.sql
//Edit lại nội dung file include/config.php cho đúng với username và database của hệ thống của bạn.
Trích dẫn:
#cd /var/www/html/cacti/include #vi config.php
//Thay đổi nội dung trong file config.php :
Trích dẫn:
$database_default = "cacti"; $database_hostname = localhost"; $database_username = "cacti"; $database_password = "123456";
//Bạn add thêm dòng sau đây vào /etc/crontab
Trích dẫn:
// thêm nội dung như sau :
*/5 * * * * /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1 //Hoàn tất quá trình cài đặt Cacti.