Báo cáo ứng dụng thiết kế và an toàn thông tin
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MÁY TÍNH VÀ TRUYỀN THÔNG
BÁO CÁO ĐỀ TÀI MÔN HỌC ỨNG DỤNG TRUYỀN THÔNG VÀ AN NINH THÔNG TIN
GIẢNG VIÊN HƯỚNG DẪN: ThS NCS TÔ NGUYỄN NHẬT QUANGNHÓM SINH VIÊN THỰC HIỆN: NHÓM 14 – LỚP MMT 02
Trang 2Mục lục:
PHẦN I/ TỔNG QUAN VỀ FIREWALL: 4
1/ Cơ bản về Firewall: 4
a/ Khái niệm: 4
b/ Nhiệm vụ và chức năng: 4
c/ Các thành phần của Firewall: 5
2/ Phân loại Firewall: 5
a/ Phân loại theo phạm vi: 5
b/ Phân loại theo tầng giao thức: 6
c/ Phân loại theo khả năng theo dõi: 6
3/ Một số Firewall phổ biến: 6
a/ Simple Packet Filtering Firewall: 6
c/ Application Lever Firewall: 7
4/ Xây dựng Firewall Rule: 7
5/ Các mô hình Firewall thường dùng: 8
a/ Perimeter Firewall Topology: 8
b/ Three - Legged (DMZ) Firewall Topology: 9
c/ Chained (DMZ) Firewall Topology: 9
PHẦN II/ IPTABLES: 10
1/ Khái niệm: 10
2/ Chức năng: 10
3/ Cài đặt IPTables: 10
Trang 34/ Cấu trúc IPTables: 10
5/ Targets và Jumps: 13
6/ Một số ví dụ minh họa: 14
PHẦN III/ CẤU HÌNH FIREWALL MICROSOFT ISA 2006: 15
1/ Giới thiệu: 15
2/ Cài đặt Microsoft ISA 2006: 16
3/ Cấu hình một số Rule trên ISA 2006 18
a/ Cho phép truy vấn DNS: 18
b/ Cho phép User sử dụng Email: 20
c/ Cấm truy cập Website được chỉ định: 21
4/ Cấu hình các mô hình Firewall trong ISA 2006: 22
a/ Tổng quan: 22
b/ Cấu hình Edge Firewall: 22
5/ Cấu hình Intrusion Detection: 25
6/ Cấu hình Application Filter: 29
a/ Cấu hình HTTP Filter: 29
b/ SMTP Filter: 31
TÀI LIỆU THAM KHẢO: 35
Trang 4Công nghệ Firewall xuất hiện vào năm 1988 khi các hệ thống lọc gói tin cơ bản đượcphát triển.
Hình 1: Mô hình Firewall đơn giản.
Các chức năng của Firewall:
Firewall cho phép hoặc không cho phép những dịch vụ bên trong truy cập ra mộttài nguyên nào đó bên ngoài
Firewall cho phép hoặc ngăn những dịch vụ truy cập từ bên ngoài vào một vùngmạng hoặc một tài nguyên nào đó bên trong
Firewall theo dõi và kiểm soát luồng dữ liệu đi từ hệ thống mạng bên trong ra bênngoài và ngược lại
Trang 5 Firewall theo dõi và kiểm soát địa chỉ truy cập, cấm truy cập hoặc truy cập một sốđịa chỉ đã được thiết lập.
Firewall kiểm soát việc truy cập của người dùng và những dữ liệu mà người dùngnhận từ mạng bên ngoài
Firewall có thể chống lại những đợt tấn công của hacker
c/ Các thành phần của Firewall:
Một Firewall chuẩn sẽ gồm các thành phần sau:
_Bộ lọc gói tin (Packet Filter): Dữ liệu truyền trên mạng luôn được chia nhỏ thành cácgói có gán địa chỉ và các thông tin khác để có thể nhận và tái lập, bộ lọc packet cho phépnhận hoặc từ chối mỗi packet mà nó nhận được bằng cách kiểm tra các thông tin headertrên mỗi packet (IP nguồn, IP đích, port đích Giao thức, dịch vụ)
_Proxy Server: Là một firewall được thiết kế để kiểm soát các loại dịch vụ, giao thức chophép truy cập vào hệ thống mạng Nó hoạt động dựa trên cách thức gọi là Proxy Server,
là bộ các chương trình cài trên gateway cho từng ứng dụng, việc truy cập từ mạng nội bộ
ra bên ngoài và ngược lại đều thông qua Proxy Server này thay cho Server/Client thực sựcần phải giao tiếp Proxy Server cũng có vai trò như một bộ lọc tin, ngăn chặn các truycập không móng muốn vào client thực sự Proxy Sever cũng giúp tăng tốc độ truy cập do
có lưu thông tin
_Circuit-Lever Gateway: Hoạt động ở lớp Session (mô hình OSI) và tầng Transport (lớpTCP, mô hình TCP/IP), CLG giám sát việc bắt tay TCP giữa các gói tin để xác định mộtphiên truyền dữ liệu là phù hợp, CLG giúp che dấu client, hệ thống mạng mà nó cần bảo
vệ CLG không lọc các gói tin
2/ Phân loại Firewall:
a/ Phân loại theo phạm vi:
Tường lửa cá nhân (Personal Firewall): Thường là ứng dụng lọc dữ liệu ra vào trong mộtmáy tính đơn
Tường lửa mạng (Network Firewall): Chạy trên các thiết bị mạng hoặc máy tính chuyêndụng đặt tại vùng biên giữa các khu vực mạng
Trang 6b/ Phân loại theo tầng giao thức:
Tường lửa tầng mạng, còn được gọi là Packet Filter Firewall
Tưởng lửa tầng ứng dụng, được gọi là Application/Proxy Gateway Firewall
c/ Phân loại theo khả năng theo dõi:
Tường lửa có trạng thái (Stateful FirewalL): Là tường lửa theo dõi trạng thái của các kếtnối mạng (giao thức TCP/UDP) đi qua nó, bao gồm IP nguồn, IP đích, port TCP/UDPnguồn, port TCP/UDP đích, data, protocol) tường lửa này được lập trình để biết được góitin hợp lệ được phép đi qua hoặc sẽ bị hủy bỏ nếu nó là gói tin không hợp lệ
Tưởng lưa phi trạng thái (Stateless Firewall): Là tường lửa không theo dõi trạng thái củacác kết nối mà chỉ dựa vào địa chỉ nguồn, địa chỉ đích, một số thông tin trên header đểquyết định cho phép hay không cho phép gói tin đi qua
3/ Một số Firewall phổ biến:
a/ Simple Packet Filtering Firewall:
Đây có thể coi là loại tường lửa căn bản nhất, nó kiểm tra từng gói tin ra vào hệ thốngmạng, so sách các thông tin thu được (của gói tin đó) với các quy định (rule) đã đượcthiết lập sẵn, sau đó quyết định xem gói tin là hợp lệ hay không hợp lệ Các thông tinđược kiểm tra bao gồm:
Địa chỉ nguồn của gói tin, cũng có thể là địa chi của hệ thống mà gói tin xuất phát
b/ Stateful Packet Filtering Firewall:
Tường lửa này cũng có các tính năng và cách hoạt động giống với Simple PacketFiltering Firewall như là lọc gói tin dựa trên các rule đã được thiết lập, và nó còn giữ lạitất cả trạng thái của các kết nối đã được chấp nhận (Accepted Connection) trong bộ nhớ
Trang 7Khi một gói tin đến, firewall có thể xác định được gói tin đó là của kết nối mới hoặc làcủa kết nối đã được thiết lập.
Các trạng thái của các kết nối gồm LISTEN, SYN-SENT, SYN-RECEIVED,ESTABLISHED, FIN-WAIT-1, FIN-WAIT-2, CLOSE-WAIT, CLOSING, LAST-ACK,TIME-WAIT, CLOSED
Khi một phiên kết nối bị ngắt hoặc do hết thời gian dành cho kết nối thì thông tin về kếtnối đó sẽ được xóa khỏi bộ nhớ của firewall Tường lửa này hoạt động ở Layer 2, 3 và 4trong mô hình OSI
c/ Application Lever Firewall:
Đây là một loại tường lửa phức tạp (còn được gọi là Application - Proxy Gateway), vì nóthực hiện nhiều sự kiểm tra các gói dữ liệu từ tầng 2 đến tầng 7 (trong mô hình OSI).Application Lever Firewall kiểm soát và dẫn đường các gói tin giữa các vùng mạng (tincậy và không tin cậy) theo các cơ chế đã được cấu hình trên nó, kiểm soát các ứng dụnghoặc dịch vụ nào đang gởi hoặc nhận dữ liệu Tường lửa này cũng có chưc năng như làmột Applicaton Proxy
Application Lever Firewall có thể thực hiện kiểm tra kĩ lưỡng một gói tin để đưa ra cácquyết định chính xác về việc cho phép hoặc hủy bỏ một gói tin/kết nối
Application Lever Firewall có thể yêu cầu chứng thực giữa mỗi người dùng hoặc ứngdụng đang muốn truyền dữ liệu đi qua nó
4/ Xây dựng Firewall Rule:
Rule của tường lửa là các quy tắc xử lý các gói tin, các kết nối khi nó đi qua tường lửa.Thông thường thì gói tin hoặc kết nói sẽ được xử lý như sau:
Accept: Tường lửa chấp nhận cho gói tin/kết nối đi qua và đến nơi cần đến
Deny: Tường lửa bỏ qua gói tin/kết nối, sau đó một thông báo lỗi sẽ được gởi đếnnơi xuất phát của gói tin
Discard: Tường lửa bỏ qua gói tin và không thông báo gì cho nơi gửi
Các thông tin trong packet sẽ được tường lửa kiểm tra và so sánh với các rule đã có đểquyết định cho phép hay hủy bỏ một gói tin Chúng ta có thể tạo rule dựa trên các thôngtin này Chúng bao gồm: địa chỉ nguồn, địa chỉ đích, giao thức, port nguồn, port đích,
Trang 8dịch vụ, giá trị TTL, dải IP nguồn, dãi IP đích, Domain nguồn, Domain đích, ứng dụngnguồn, ứng dụng đích, thông tin chứng thực.
5/ Các mô hình Firewall thường dùng:
Firewall có thể được cấu hình thành nhiều các topology phù hợp với hệ thống mạng mà
nó cần bảo vệ Có ba topology phổ biến thường được sử dụng trong các hệ thống mạnghiện đại, đó là:
a/ Perimeter Firewall Topology:
Đây là mô hình Firewall phổ biến nhất, mô hình sẽ gồm một Firewall đặt nằm giữa cácvùng mạng hoặc giữa các hệ thống tin cậy và không tin cậy:
Hình 2: Mô hình Perimeter Firewall.
b/ Three - Legged (DMZ) Firewall Topology:
Mô hình này thường được sử dụng khi chúng ta muốn công khai các nguồn tài nguyên ra các hệ thống mạng bên ngoài, khu vực mạng chứa các tài nguyên này được gọi là DMZ Cũng giống như mô hình Perimeter Firewall, mô hình này sử dụng một tường lửa nhưng có thêm một card mạng khác để kết nối với DMZ Tường lửa sẽ được cấu hình cho phép bên ngoài chỉ có thể truy cập đến những tài nguyên được chỉ định.
Trang 9Hình 3: Mô hình 3 Legged (DMZ).
c/ Chained (DMZ) Firewall Topology:
Mô hình này sử dụng 2 tường lửa để tạo DMZ nằm ở giữa hệ thống mạng nội bộ và bên ngoài Việc cấu hình cho 2 firewall này tương đối phức tạp, nhưng nếu cấu hình đúng thì mô hình tường lửa này mang lại hiệu quả bảo mật rát cao Mô hình này thường được áp dụng khi mạng nội bộ và bên ngoài muốn truy cập vào DMZ, sẽ có các rule ở mỗi tường lửa cho từng truy cập từ bên trong và bên ngoài.
Trang 10qua IPTables, chúng ta có thể dễ dàng hiểu được cơ chế hoạt động của một hệ thốngFirewall nói chung
2/ Chức năng:
IPTABLE dùng để tăng tính bảo mật trên hệ thống của Linux
Tích hợp tốt với kernel của Linux
Có khả năng phân tích package hiệu quả
Lọc package dựa vào MAC và một số cờ hiệu trong TCP Header
Cung cấp chi tiết các tùy chọn để ghi nhận sự kiện hệ thống
Cung cấp kỹ thuật NAT
Có khả năng ngăn chặn một số cơ chế tấn công theo kiểu DoS
3/ Cài đặt IPTables:
IPTABLE được cài đặt mặc định trong hệ thống của Linux Package của IPTABLE là
Iptable-1.2.9-1.0.i386.rpm.
Khởi động IPTABLE:
#service iptable start
#service iptable stop
#service iptable restart
4/ Cấu trúc IPTables:
IPTables gồm có 3 bảng: FILTER, MANGLE, NAT và các CHAIN trong mỗi bảng, người quảntrị sử dụng chúng để tạo ra các rule cho IPTable để kiểm soát các gói tin ra vào hệ thống, chứcnăng của chúng như sau:
MANGLE: Dùng chỉnh sửa QoS bit trong phần TCP Header của gói tin.
FILTER: Dùng để lọc các gói tin, gồm có các chain được xây dựng sẵn gồm:
_Forward Chain: Lọc những gói tin đi qua hệ thống này và chuyển qua môt hệ thống
khác:
Trang 11_Input Chain: Lọc những gói tin đi vào hệ thống:
_Output Chain: Lọc những gói tin đi ra khỏi hệ thống:
NAT: Sửa địa chỉ gói tin gồm các chain được thiết lập sẵn, bao gồm:
_Pre-Routing: Sửa địa chỉ đích của gói tin trước khi nó được routing bởi bảng routing của
hệ thống (destination NAT hay DNAT)
Trang 12_Post-Routing: Ngược lại với Pre-routing, nó sửa địa chỉ nguồn của gói tin sau khi gói tin
đã được routing bởi hệ thống (SNAT)
5/ Targets và Jumps:
IPTables Rule kiểm tra những gói IP và xác định nó sẽ được xử lý theo kiểu nào (target).Sau đây là một số build-in targets thường được sử dụng:
Trang 13ACCEPT: IPTables chấp nhận gói tin, đưa nó qua hệ thống mà không tiếp tục kiểm tra nónữa.
DROP: IPTables loại bỏ gói tin, không tiếp tục xử lý nó nữa
LOG: Thông tin của gói tin sẽ được ghi lại bởi syslog hệ thống, IPTables tiếp tục xử lýgói tin bằng những rules tiếp theo
REJECT: Chức năng của nó cũng giống như DROP tuy nhiên nó sẽ gửi một errormessage tới host đã gửi gói tin
DNAT: Dùng để sửa lại địa chỉ đích của gói tin
SNAT: Dùng để sửa lại địa chỉ nguồn của gói tin
MASQUERADE: Cũng là một kiểu dùng để sửa địa chỉ nguồn của gói tin
Để xây dựng các rules còn phải sử dụng các tuỳ chọn để tạo điều kiện so sánh, sau đây làmột số tuỳ chọn thường dùng:
-t: Chỉ ra tên của bảng mà rule của bạn sẽ được ghi vào (mặc định là FILTER)
-j: Nhảy đến một kiểu xử lý (target) tương ứng như đã định nghĩa ở trên nếu điều kiện sosánh thoả mãn
-a: Ghi nối tiếp rule vào đuôi một chain
-p: So sánh protocol gói tin
-s: So sánh địa chỉ nguồn của gói tin
-d: So sánh địa chỉ đích của gói tin
-i: So sánh tên card mạng mà gói tin đi vào hệ thống qua đó
-o: So sánh tên card mạng mà gói tin từ hệ thống đi ra qua đó
-p tcp sport: Xác định port nguồn của gói tin TCP
-p tcp dport: Xác định port đích của gói tin TCP
-p udp sport: Xác định port nguồn của gói tin UDP
-p udp dport: Xác định port đích của gói tin UDP
Trang 14syn: Xác định gói tin có phải là một yêu cầu tạo một kết nối TCP mới hay không.
icmp-type: Xác định loại gói ICMP (echo-reply hay echo-request)
-m multiport sport < port, port >: Xác định một loạt các giá trị port nguồn
-m multiport dport < port, port >: Xác định một loạt các giá trị port đích
-m multiport port < port, port >: Xác định một loạt các giá trị port (không phân biệtnguồn hay đích)
-m state < state >: Xác định trạng thái kết nối mà gói tin thể hiện
ESTABLISHED: Gói tin thuộc một kết nối đã được thiết lập
NEW: Gói tin thể hiện một yêu cầu kết nối
RELATED: Gói tin thể hiện một yêu cầu kết nối thứ hai (có liên quan đến kết nối thứnhất, thường xuất hiện ở những giao thức FPT hay ICMP)
INVALID: Thể hiện một gói tin không hợp lệ
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o eth1 -p TCP
\ sport 1024:65535 dport 80 -j ACCEPT
Hệ thống được phép thực hiện lệnh ping ra ngoài:
iptables -A INPUT -p icmp icmp-type echo-reply -j ACCEPT
Trang 15Mở dịch vụ web trên hệ thống 192.168.1.58 chỉ cho phép những gói tin có giá trị portnguồn trong phạm vi 1024:65535, giá trị port đích 80, 443 (http, https) từ mọi địa chỉ IP
đi vào card mạng eth0 đi ra card mạng eth1 đến hệ thống 192.168.1.58 Cho phép hệthống có địa chỉ 192.168.1.58 gửi (gửi trả lời) những gói tin TCP qua card mạng eth1 đi
ra card mạng eth0:
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o eth1 -p TCP
\
sport 1024:65535 -m multiport dports 80,443 -j ACCEPT
iptables -A FORWARD -d 0/0 -o eth0 -s 192.168.1.58 -i eth1 -p TCP
\
-m state state ESTABLISHED -j ACCEPT
PHẦN III/ CẤU HÌNH FIREWALL MICROSOFT ISA 2006:
1/ Giới thiệu:
ISA là một sản phẩm tường lửa (firewall) của Microsoft được người sử dụng hiện nay rất
ưa chuộng nhờ khả năng bảo vệ hệ thống mạnh mẽ cùng cơ chế quản lý linh hoạt
ISA có 2 phiên bản chính là Standard và Enterprise:
Standard:
Dành cho các doanh nghiệp có qui mô vừa và nhỏ
Xây dựng để kiểm soát các luồng dữ liệu vào ra của hệ thống mạng nội bộ
Triển khai các hệ thống VPN site to site, Remote Access để hỗ trợ truy cập từxa,trao đổi dữ liệu giữa các văn phòng chi nhánh
Xây dựng các dùng DMZ riêng biệt cho các máy server của công ty (Web,Mail…)
Ngoài ra còn có hệ thống đệm (caching) giúp kết nối web nhanh hơn
Enterprise:
Đây là phiên bản dành cho các doanh nghiệp có qui mô lớn
Trang 16 Có đầy đủ các tính năng của phiên bản Standard bên cạnh đó còn cho phép thiếtlập mảng các ISA server cung cấp khả năng Load Balancing.
2/ Cài đặt Microsoft ISA 2006:
Trang 17Sau khi quá trình cài đặt hoàn tất, ISA sẽ tạo ra rule deny tất cả các client không được sử dụnginternet.
Nhập dải địa
chỉ mạng sử
dung
Trang 183/ Cấu hình một số Rule trên ISA 2006
a/ Cho phép truy vấn DNS:
Bước 1: vào ISA management Firewall policy New Rule:
Bước 2: Gõ “DNS Query” vào Access name next:
Bước 3: Action chọn Allow next:
Bước 4: Trong This Rule apply to:chọn ”Select Protocols” Add Comand protocol là DNS
Ok next:
Trang 19Bước 5: Trong Access Rule Source chọn Add Network là Internal Add close next:
Bước 6: Trong Access Rule Destination chọn Add Network là External Add close next:
Trang 20Bước 7: Trong User sets chọn giá trị mặc định là All user next finish (chọn nút apply phía
trước có dấu chấm than):
Bước 8: Dùng lệnh Nslookup để phân giải một tên miền bất kỳ:
b/ Cho phép User sử dụng Email:
Tạo Access Rule theo các thông số sau:
Rule Name: Allow Mail (SMTP + POP3)
Action: Allow
Protocols: POP3 + SMTP
Source: Internal
Destination: External