Tìm hiểu về vấn đề bảo mật trong mạng LAN
Bạn đang xem 20 trang mẫu của tài liệu "Tìm hiểu về vấn đề bảo mật trong mạng LAN", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- tim_hieu_ve_van_de_bao_mat_trong_mang_lan.pdf
Nội dung text: Tìm hiểu về vấn đề bảo mật trong mạng LAN
- BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƢỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG NGÀNH CÔNG NGHỆ THÔNG TIN ====== ISO 9001:2000 ĐỒ ÁN TỐT NGHIỆP TÊN ĐỀ TÀI: TÌM HIỂU VỀ VẤN ĐỀ BẢO MẬT TRONG MẠNG LAN Giáo viên hướng dẫn : TS. Phạm Hồng Thái CN. Lƣơng Việt Nguyên Sinh viên :Nguyễn Thị Thúy Lớp :CT 701 Mã số sinh viên :10419 1
- NỘI DUNG MỤC ĐÍCH CỦA ĐỀ TÀI NỘI DUNG CHÍNH 2
- MỤC ĐÍCH CỦA ĐỀ TÀI Nghiên cứu các giải pháp nhằm bảo vệ cho mạng nội bộ nhằm điều khiển luồng thông tin ra, vào và bảo vệ các mạng nội bộ khỏi sự tấn công từ Internet. 3
- NỘI DUNG CHÍNH I. Vấn đề an ninh mạng II. Tổng quan về Firewall. III. IPTables Firewall trên Linux IV. Thiết lập firewall bảo vệ mạng nội bộ bằng Iptable trên Linux. 4
- I. Vấn đề an ninh mạng 1.1 An ninh mạng là gì? An ninh mạng bao hàm tất cả các hoạt động mà các tổ chức, hãng, hay cơ quan đảm nhiệm nhằm bảo vệ các giá trị và tính hữu ích của các tài nguyên cũng nhƣ tính toàn vẹn và tính sẵn sàng của các hoạt động hệ thống mạng. Một chiến lƣợc an ninh mạng hiệu quả đòi hỏi sự xác định đƣợc các mối đe dọa và sau đó là chọn lựa một tập các công cụ có hiệu quả nhất để chống lại chúng. 5
- 1.2 Các giải pháp cơ bản để đảm bảo an ninh an toàn mạng Giải pháp về phần cứng. Giải pháp về phần mềm. Giải pháp về con ngƣời. 6
- 1.3 Một số giải pháp bảo vệ cho mạng nội bộ. Tƣờng lửa (Firewall) Mạng riêng ảo (Virtual Private Network- VPN) Mã hóa dữ liệu Sử dụng các chƣơng trình antivirus Các biện pháp bảo vệ vật lý 7
- II. Tổng quan về Firewall 2.1 Khái niệm Firewall là thiết bị nhằm ngăn chặn sự truy nhập không hợp lệ từ mạng ngoài vào mạng trong. Hệ thống firewall thƣờng bao gồm cả phần cứng và phần mềm. Firewall thƣờng đƣợc dùng theo phƣơng thức ngăn chặn hay tạo các luật đối với các địa chỉ khác nhau. 8
- 2.2 Các chức năng cơ bản của Firewall Chức năng chính của Firewall là kiểm soát luồng thông tin giữa mạng cần bảo vệ (Trusted Network) và Internet thông qua các chính sách truy nhập đã đƣợc thiết lập. Cho phép hoặc cấm các dịch vụ truy nhập từ trong ra ngoài và từ ngoài vào trong. Kiểm soát địa chỉ truy nhập, và dịch vụ sử dụng. Kiểm soát khả năng truy cập ngƣời sử dụng giữa 2 mạng. Kiểm soát nội dung thông tin truyền tải giữa 2 mạng. Ngăn ngừa khả năng tấn công từ các mạng ngoài. 9
- 2.3 Phân loại Firewall Thông thƣờng Firewall đƣợc chia làm 2 loại: Firewall phần cứng Firewall phần mềm. Và một số hệ thống firewall khác. 10
- a. Firewall phần cứng Là một thiết bị phần cứng đƣợc tích hợp bộ định tuyến, các quy tắc cho việc lọc gói tin đƣợc thiết lập ngay trên bộ định tuyến đó. Hình 1: Mô hình sử dụng Firewall phần cứng. 11
- b. Firewall phần mềm Loại firewall này là một chƣơng trình ứng dụng nguyên tắc hoạt động dựa trên trên ứng dụng proxy - là một phần mềm cho phép chuyển các gói tin mà máy chủ nhận đƣợc đến những địa điểm nhất định theo yêu cầu. Các quy tắc lọc gói tin đƣợc ngƣời sử dụng tự thiết lập. Hình 1: Mô hình sử dụng Firewall phần mềm. 12
- c. Ưu và nhược điểm của firewall Firewall phần cứng : Thƣờng đƣợc sử dụng để đảm bảo an ninh cho các mạng lớn. Có thể chạy một cách hoàn toàn độc lập không bị phụ thuộc vào hệ điều hành nhƣ firewall phần mềm. Chỉ có thể lọc thông tin trong phần header của gói tin. Không thể ngăn chặn đựơc các loại Virus. Đắt hơn Firewall phần mềm. Firewall phần mềm : Thƣờng đƣợc sử dụng để đảm bảo an ninh cho các máy tính cá nhân hoặc một mạng nhỏ Điểm yếu của firewall phần mềm đó là với mỗi firewall phần mềm đƣợc chạy trên từng hệ điều hành nhất định. 13
- 2.4 Một số hệ thống Firewall khác. Packet-Filtering Router (Bộ trung chuyển có lọc gói) Screened Host Firewall Demilitarized Zone (DMZ - khu vực phi quân sự) hay Screened-subnet Firewall 14
- 2.5. Kết luận Các hệ thống firewall thiết lập nhằm mục đích đảm bảo an ninh mạng thông qua việc kiểm soát phần header của các gói tin. Nhƣng để sử dụng firewall đảm bảo đƣợc an ninh mạng một các hiệu quả thì ngƣời quản trị hệ thống cần có những hiểu biết sâu sắc về địa chỉ IP đích, địa chỉ IP nguồn, cổng dịch vụ, các giao thức mạng (TCP, UDP, SMTP )và đặc biệt cần có những công cụ giúp cấu hình hệ thống firewall hiệu quả. Trong chƣơng tiếp theo này em sẽ trình bày về công cụ FirewallIptable đƣợc tích hợp trên hệ điều hành mã nguồn mở Linux để bảo vệ cho mạng nội bộ. 15
- III. IPTables Firewall trên Linux 3.1. Giới thiệu về Ipchain Ipchain đƣợc dùng để cài đặt, duy trì và kiểm tra các luật của Ip firewall trong Linux kernel. Những luật này có thể chia làm nhóm chuỗi luật khác nhau là: Ip Input chain Ip Output chain Ip forwarding chain Các chuỗi luật do ngƣời dùng định nghĩa 16
- 3.2. Firewall IPtable trên Redhat Iptables là một tƣờng lửa ứng dụng lọc gói dữ liệu rất mạnh, có sẵn bên trong kernel Linux 2.4.x và 2.6.x. Netfilter/Iptable gồm 2 phần là Netfilter ở trong nhân Linux và Iptables nằm ngoài nhân. IpTables chịu trách nhiệm giao tiếp giữa ngƣời dùng và Netfilter để đẩy các luật của ngƣời dùng vào cho Netfilter xử lí. Hình 3: Firewall IPTable trong Linux. 17
- 3.2.1 Netfilter/Iptables có khả năng gì? Xây dựng bức tƣờng lửa dựa trên cơ chế lọc gói stateless và stateful Dùng bảng NAT và masquerading chia sẻ sự truy cập mạng nếu không có đủ địa chỉ mạng. Dùng bảng NAT để cài đặt transparent proxy Làm các thay đổi các bit(mangling) TOS/DSCP/ECN của IP header Có khả năng theo dõi sự kết nối, có khả năng kiểm tra nhiều trạng thái của packet. Có khả năng giới hạn tốc độ kết nối và ghi nhật ký tránh sự tấn công từ chối dịch vụ (Deinal of service). Có khả năng lọc trên các cờ và địa chỉ vật lý của TCP. 18
- 3.2.2. Cấu trúc của Iptable. Iptables đƣợc chia làm 3 bảng (table): 19
- 3.2.3. Nguyên tắc làm việc của Netfilter/Iptable Hình 4: Quá trình chuyển gói dữ liệu qua Netfilter 20
- Packet sẽ qua chain PREROUTING Tại đây, packet có thể bị thay đổi thông số (mangle) hoặc bị đổi địa chỉ IP đích (DNAT). Đối với packet đi vào máy, sẽ qua chain INPUT. Tiếp theo packet sẽ đƣợc chuyển lên cho các ứng dụng (client/server) xử lí và tiếp theo là đƣợc chuyển ra chain OUTPUT. Tại chain OUTPUT, packet có thể bị thay đổi các thông số và bị lọc chấp nhận ra hay bị hủy bỏ. Đối với packet forward qua máy, packet sau khi rời chain PREROUTING sẽ qua chain FORWARD. Tại chain FORWARD, nó cũng bị lọc ACCEPT hoặc DENY. Packet đến chain POSTROUTING Tại chain POSTROUTING, packet có thể đƣợc đổi địa chỉ IP nguồn (SNAT) hoặc MASQUERADE. Packet sau khi ra card mạng sẽ đƣợc chuyển lên cáp để đi đến máy tính khác trên mạng. 21
- 3.3 Sử dụng IPTables 3.3.1. Cấu hình iptables Iptables đƣợc cài đặt mặc định trong hệ thống Linux, package của iptables là iptablesversion.rpm hoặc iptables-version.tgz. Để khởi động, ngừng hoặc khởi động lại Iptables có thể dùng lệnh sau: /etc/rc.d/init.d/Iptables start : khởi động iptables. /etc/rc.d/init.d/Iptables stop : ngừng iptables. /etc/rc.d/init.d/Iptables restart : khởi động lại iptables. Để cấu hình Iptables thì dùng file : /etc/sysconfig/iptables. 22
- 3.4. Các tham số dòng lệnh 3.4.1 Gọi trợ giúp $ man iptables hoặc $ iptables help. VD :Tùy chọn của match limit :$ iptables -m limit –help 3.4.2. Các tùy chọn để thao tác với chain iptables -N : Tạo chain mới iptables -X : Xóa hết các luật đã tạo iptables –P: Đặt chính sách cho các chain (INPUT, OUTPUT & FORWARD) ví dụ: iptables -P INPUT ACCEPT để chấp nhận các packet vào chain INPUT iptables -L : Liệt kê các luật có trong chain iptables -F : Xóa các luật có trong chain iptables -Z : Reset bộ đếm packet về 0 23
- 3.4.3 Các tùy chọn để chỉ định thông số Chỉ định tên table: -t , ví dụ -t filter, -t nat Chỉ đinh loại giao thức: -p , ví dụ -p tcp, -p udp hoặc -p ! udp để chỉ định các giao thức không phải là udp Chỉ định card mạng vào: -i , ví dụ: -i eth0, -i lo Chỉ định card mạng ra: -o , ví dụ: -o eth0, -o pp0 Chỉ định địa chỉ IP nguồn: -s Chỉ định địa chỉ IP đích: -d <địa_chỉ_ip_đích Chỉ định cổng nguồn: sport , ví dụ: sport 21 (cổng 21 Chỉ định cổng đích: dport , tƣơng tự nhƣ –sport 24
- 3.4.4. Các tùy chọn để thao tác với luật Thêm luật: -A (append) Xóa luật: -D (delete) Thay thế luật: -R (replace) Chèn thêm luật: -I (insert 3.4.5 Phân biệt giữa ACCEPT, DROP và REJECT packet ACCEPT: chấp nhận packet DROP: thả packet (không hồi âm cho client) REJECT: loại bỏ packet (hồi âm cho client bằng một packet khác) 25
- 3.4.6 Phân biệt giữa NEW, ESTABLISHED và RELATED NEW: mở kết nối mới ESTABLISHED: đã thiết lập kết nối RELATED: mở một kết nối mới trong kết nối hiện tại 3.4.7 Tùy chọn limit, limit-burst limit-burst: mức đỉnh, tính bằng số packet limit: tốc độ khi chạm mức đỉnh, tính bằng số packet/s(giây), m(phút), d(giờ) hoặc h(ngày). 26
- 3.5. Cách đổi địa chỉ IP động (Dynamic - NAT) NAT động là một trong những kĩ thuật chuyển đổi địa chỉ IP NAT (Network Address Translation). Các địa chỉ IP nội bộ đƣợc chuyển sang IP NAT nhƣ sau: 27
- 3.6 Cách đóng giả địa chỉ IP (masquerade) NAT Router chuyển dãy IP nội bộ 192.168.0.x sang một IP duy nhất là 203.162.2.4 bằng cách dùng các số hiệu cổng (port- number) khác nhau. 28
- IV. Thiết lập firewall bảo vệ mạng nội bộ bằng Iptable trên Linux. 29
- 4.1 Xây dựng phần mềm quản trị Firewall IPTables từ xa Mô tả bài toán Công cụ Firewall IP-Tables chạy trên nền hệ điều hành Linux phiên bản Redhat là một công cụ rất mạnh. Nhƣng muốn sử dụng công cụ này một cách hiệu quả nhất thì đòi hỏi ngƣời quản trị phải hiểu biết sâu sắc về kiến thức mạng máy tính và nhớ chắc chắn một số lƣợng lớn các tham số phức tạp. Vì lí do nêu trên mà tôi đã xây dựng phần mềm trợ giúp việc quản trị firewall từ xa. Phần mềm đƣợc xây dựng bằng ngôn ngữ PHP và chạy trên Webserver Apache nên tại mọi máy tính trong mạng ta đều có thể truy xuất đến phần mềm và cấu hình hệ thống firewall này. 30
- Với mục đích giúp dễ dàng cho việc cấu hình firewall nhờ iptables thì phần mềm quản lí IP-Tables đã đƣợc xây dựng trên nền tảng là ngôn ngữ PHP Phần mềm với nhiều tính năng nổi trội nhƣ cho phép ngƣời dùng có thể cấu hình tƣờng lửa từ xa, cho phép lƣu trữ các cấu hình cũ và có thể cập nhật lại, ngƣời dùng dễ dàng thêm/xóa/sửa/ di chuyển các câu lệnh Chƣơng trình đƣợc xây dựng trên cơ sở các trang web nên tại mọi thời điểm chỉ cần ngƣời sử dụng có trình duyệt và kết nối đến máy tính cần cấu hình firewall. 31
- 4.2. Một số giao diện chương trình 32
- Giao diện sau khi thiết lập xong các tùy chọn 33
- 4.2.1 Đánh giá phần mềm. Ưu điểm phần mềm Thiết kế dƣới dạng website nên tại mọi máy tính trong mạng đều có thể thực hiện công việc cấu hình iptables. Giúp ngƣời dùng không cần kiến thức quá sâu sắc về các tham số của iptables vẫn có thể cấu hình đƣợc firewall nhờ việc tạo sẵn các luật. Việc tái sử dụng, chỉnh sửa với các luật, câu lệnh iptables là rất dễ dàng. Chƣơng trình thiết kế dạng mã nguồn mở nên ngƣời dùng có thể tự thay đổi theo yêu cầu. 34
- Nhược điểm phần mềm Hiện tại mới hỗ trỗ một ngôn ngữ. Cài đặt còn khó khăn vì phải cài nhiều phần mềm hỗ trợ nhƣ HTTP Server, Crond tab Mọi ngƣời dùng đều có quyền nhƣ nhau. Sự phát triển trong tương lai - Một website sẽ đƣợc thiết kế với mục đích giới thiệu và công bố các phiên bản mới của phần mềm. - Phiên bản tiếp theo sẽ cung cấp khả năng cập nhật các luật mới. Và các file luật này sẽ đƣợc cung cấp trên website. - Mỗi ngƣời dùng sẽ đƣợc cấp quyền sử dụng các luật khác nhau trong tập luật. 35
- KẾT LUẬN Hệ thống Firewall này mang tính ứng dụng thực tế cao vì: Phần cứng sử dụng cho hệ thống này không cần có cấu hình mạnh. Các phần mềm sử dụng cho hệ thống này đều là phần mềm mã nguồn mở. Tài liệu hỗ trợ cho các phần mềm này có đầy đủ trên Internet và miễn phí. Hệ thống đƣợc thiết kế mềm dẻo tuỳ vào chính sách an toàn của đơn vị. Sử dụng hệ điều hành có độ ổn định cao và bảo mật tốt. 36
- EM XIN CHÂN THÀNH CẢM ƠN! 37