BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC NHA TRANG
KHOA CÔNG NGHỆ THÔNG TIN
NGUYỄN VĂN ĐƢỜNG
TÌM HIỂU VÀ CÀI ĐẶT HỆ THỐNG
FIREWALL KẾT HỢP VỚI PROXY ĐỂ
BẢO VỆ HỆ THỐNG MẠNG
BÊN TRONG
LUẬN VĂN TỐT NGHIỆP GIÁO VIÊN HƢỚNG DẪN
Th.S NGÔ VĂN CÔNG Nha Trang, 12/2009
Click to buy NOW!
P
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
tiện ích cho mọi người. Internet vừa là nguồn tài nguyên khổng lồ, vừa là nơi chia
sẽ thông tin. Việc sử dụng Internet dần đã trở thành một nhu cầu của mọi người.
Nhu cầu chia sẽ thông tin của con người thông qua Internet ngày càng cao. Tuy
nhiên, Internet là một nơi công cộng, mọi người đều có quyền tham gia đóng góp
nhưng đồng thời đó cũng là nơi để trở mà bất kỳ người nào cũng có thể trở thành
đối tượng cho nhiều người khác tấn công với các mục đích khác nhau. Internet
mang lại nhiều lợi ích nhưng cũng đồng thời cũng mang lại nhiều nguy cơ tiềm ẩn.
Cùng với sự phát triển không ngừng của Internet và các dịch vụ trên Internet, số
lượng các vụ tấn công trên Internet cũng tăng theo cấp số nhân. Trong khi các
phương tiện thông tin đại chúng ngày càng nhắc nhiều đến Internet với những khả
năng truy nhập thông tin dường như đến vô tận của nó, thì các tài liệu chuyên môn
bắt đầu đề cập nhiều đến vấn đề bảo đảm và an toàn dữ liệu cho các máy tính được
kết nối vào mạng Internet.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 2
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 3
Khóa luận này với mục tiêu tìm hiểu hệ điều hành nguồn mở Ubuntu Linux,
Firewall iptables, một Firewall được tích match sẵn trong nhân của Linux, Proxy
Squid, một web cache proxy, và các phần mềm nguồn mở khác nhằm thay thế cho
hệ điều hành mạng Window Server và các máy trạm hệ điều hành Window vốn rất
được sử dụng thông dụng hiện nay.
Click to buy NOW!
P
D
F
-
X
C
h
a
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 5
NHẬN XÉT CỦA GIÁO VIÊN HƢỚNG DẪN
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
Trang 6
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
1.2.3.2. Rejecting so với Denying 24
1.3. Perimeter Networks 25
1.3.1. Bastion host 26
1.3.2. Three-legged configuration 27
1.3.3. Back to Back 28
Chương 2: Linux Firewall iptables 30
2.1. Giới thiệu iptables 30
2.2. Tính năng trong iptables 30
2.2.1. Bảng filter 30
2.2.2. Bảng mangle 32
2.2.3. Bảng nat 32
2.3. Tính năng NAT 33
2.4. Tính năng Mangle 34
2.5. Cú pháp lệnh iptables 36
2.5.1. Những lệnh thao tác bảng filter 37
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
2.6.2. Cho phép sự hỗ trợ của nhân 54
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 9
2.6.3. Xóa luật hiện tại 55
2.6.4. Đặt lại chính sách mặc định và ngắt Firewall 56
2.6.5. Cho phép interface loopback 56
2.6.6. Xác định lựa chọn chính sách mặc định 56
2.6.7. Kiểm tra nhanh tính match lệ của gói tin 57
2.6.8. Sử dụng kết nối có trạng thái để giảm xét luật 57
2.6.9. Ngăn giả mạo địa chỉ 58
2.7. Cho phép một số dịch vụ mạng cơ bản 59
2.7.1. Dịch vụ phân giải tên miền 59
2.7.1.1. Cho phép người dùng phân giải địa chỉ 60
2.7.1.2. Cho phép làm một DNS server trung chuyển 61
2.7.2. Cho phép một số dịch vụ TCP thông dụng 62
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 10
3.1.3. Cài đặt Squid từ một Repository 73
3.2. Những lưu ý trước khi khởi động 74
3.2.1. Những tham số tùy chọn khi khởi động 74
3.2.2. Khởi tạo cache 75
3.3. Chạy thử chương trình 75
3.4. Access Control trong Squid 76
3.4.1. Access Control Elements cơ sở 77
3.4.1.1. Địa chỉ IP 77
3.4.1.2. Tên miền 78
3.4.1.3. Tên người dùng 79
3.4.1.4. Biểu thức chính quy (regular expression) 80
3.4.1.5. Số hiệu cổng TCP 80
3.4.1.6. Số hiệu của hệ thống tự trị 80
3.4.2. Phương thức (method) 81
3.4.3. Giao thức (proto) 81
3.4.4. Thời gian (time) 81
3.4.5. Xác thực (ident) 83
3.4.6. Số lương kết nối tối đa (maxconn) 83
3.4.7. Trình duyệt (browser) 84
3.4.8. Nội dung trong request (req_mine_type) 84
3.4.9. Nội dung trong response (rep_mine_type) 84
3.4.10. External ACL 85
3.4.11. Luật kiểm soát truy cập 86
3.4.12. Phương thức match luật trong Squid 87
3.4.13. Một số tình huống sử dụng Squid 89
3.5. Những vấn đề cơ bản về đĩa cache 90
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
3.7.3.1. ICP server 99
3.7.3.2. ICP client 99
3.8. Bộ điều hướng 100
3.9. Chứng thực 101
3.9.1. Chứng thực bằng HTTP Basic 101
3.9.2. Chứng thực bằng HTTP Digest 102
3.9.3. Chứng thực bằng NTLM 103
3.9.4. External ACLs 104
3.9.4.1. ip_user 104
3.9.4.2. ldap_group 105
3.9.4.3. unix_group 105
3.9.4.4. winbind_group 105
3.10. Log 105
3.10.1. Tập tin cache.log 106
3.10.2. Tập tin access.log 106
3.10.3. Tập tin store.log 108
Chương 4: Mô hình thử nghiệm 109
4.1. Môi trường thử nghiệm 109
4.2. Mô hình thử nghiệm 109
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 13
DANH SÁCH CÁC HÌNH
Hình 1.1. Chính sách từ chối mặc định
Hình 1.2. Chính sách chấp nhận mặc định
Hình 1.3. Rejecting so với Denying
Hình 1.4. Mô hình pháo đài, một Firewall với hai card mạng
Hình 1.5. Mô hình ba chân, một Firewall và ba card mạng
Hình 1.6. Mô hình Firewall back-to-back
Hình 2.1. Luồng gói tin trong bảng filter
Hình 2.2. Sơ đồ duyệt gói trong iptables có đi qua NAT
Hình 2.3. Sơ đồ duyệt gói tin trong Netfilter đầy đủ
Hình 2.4. Phân giải địa chỉ client-to-server
Hình 2.5. Phân giải địa chỉ khi có server trung chuyển
Hình 2.6. Duyệt luật trong chain mặc định
Hình 2.7. Duyệt luật chain tự tạo dựa trên địa chỉ đích của gói tin
Hình 2.8. Duyệt chain tự tạo dựa vào giao thức
Hình 3.1. Cấu trúc thư mục cahce theo lược đồ ufs
Hình 3.2. Mạng ví dụ interception caching
Hình 4.1. Mô hình thử nghiệm tổng thể
Hình 4.2. Mô hình thử nghiệm với địa chỉ mạng
Hình 4.3. Mô hình chia sẽ tập tin và máy in
Hình 4.4. Thống kê dạng biểu đồ cột theo từng tháng
Hình 4.5. Thống kê dạng bảng theo từng tháng
Hình 4.6. Thống kê chi tiết trong tháng
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
Bảng 2.9. Target REJECT
Bảng 2.10. Target ULOG
Bảng 2.11. Bổ trợ match multiport filter
Bảng 2.12. Bổ trợ match limit filter
Bảng 2.13. Bổ trợ match dstlimit filter
Bảng 2.14. Bổ trợ match state filter
Bảng 2.15. Match mở rộng mac filter
Bảng 2.16. Match mở rộng owner filter
Bảng 2.17. Match mở rộng mark filter
Bảng 2.18. Match mở rộng tos filter
Bảng 2.19. Match mở rộng addrtype filter
Bảng 2.20. Các loại địa chỉ
Bảng 2.21. Match mở rộng iprange filter
Bảng 2.22. Match mở rộng length filter
Bảng 2.23. Target MARK và target TOS
Bảng 3.1. Match bằng tên miền
Bảng 3.2. Mã và giá trị của ngày
Bảng 4.1. Người dùng trong mạng thử nghiệm
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
ACL Access Control List
Danh sách kiểm soát truy cập
URL Universal Resource Location
Chuỗi định vị tài nguyên
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 16
AS Autonomous System
Hệ thống tự trị
ARP Address Resolution Protocol
Giao thức phân giải địa chỉ
ICP Internet Caching Protocol
Giao thức bộ đệm mạng
LDAP Lightweight Directory Access Protocol
Giao thức truy cập dịch vụ thư mục
PAM Pluggable Authentication Modules
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
Thông thường Firewall được đặt giữa mạng bên trong (Intranet) của một công
ty, tổ chức, hay một quốc gia, và Internet. Vai trò chính là bảo mật thông tin, ngăn
chặn sự truy nhập không mong muốn từ bên ngoài (Internet) và cấm truy nhập từ
bên trong (Intranet) tới một số địa chỉ nhất định trên Internet.
Trong trường lợp lý tưởng, một Firewall cần phải cung cấp sự tách biệt về mặt
vật lý giữa các mạng với nhau. Ngày nay, sự tách biệt đó đã trở nên mờ dần bởi việc
sử dụng những mạng ảo. Sự ảo hóa giúp phân chia các mạng ở mức logic, điều này
không được khuyến khích trong xây dựng một hệ thống Firewall.
Với vai trò là một hệ thống bảo mật, Firewall tạo một bức tường bao quanh máy
tính hoặc một mạng với Internet. Bức tường đó quyết định những luồng thông tin
nào được phép trong một máy tính hay trong một mạng cục bộ. Firewall giúp bảo
vệ máy tính hay một mạng khỏi hackers, viruses, và những hoạt động mang tính
nguy hiểm.
1.2. Chức năng chính
Chức năng chính của Firewall là kiểm soát luồng thông tin từ giữa Intranet và
Internet. Thiết lập cơ chế điều khiển dòng thông tin giữa mạng bên trong (Intranet)
và mạng Internet. Cụ thể là:
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
Protocol (ICMP) hay bằng bất kỳ một giao thức nào khác. Mỗi giao
thức đều được gán một số hiệu. Ví dụ, TCP có số hiệu giao thức là 6.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 19
4. Hướng đi của gói tin qua Firewall. Hướng đi của một gói tin qua
Firewall có thể là đi vào, đi ra hoặc cả hai.
5. Số hiệu cổng. Mỗi gói tin TCP/UDP đều có số hiệu cổng nguồn và số
hiệu cổng đích.
Nếu luật lọc gói tin được thoả mãn thì gói tin đó chuyển qua Firewall. Nếu
không gói tin đó sẽ bị bỏ đi. Nhờ vậy mà Firewall có thể ngăn cản được các
kết nối vào các máy chủ hoặc mạng nào đó được xác định, hoặc khoá việc truy
cập vào hệ thống mạng nội bộ từ những địa chỉ không cho phép.
1.2.1.1. Ƣu điểm
Bộ lọc gói tin chỉ kiểm tra header của tầng mạng và tầng vận chuyển
nên việc lọc gói tin là rất nhanh.
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 20
1.2.1.2. Nhƣợc điểm
Bộ lọc gói tin không thể ngăn chặn sự giả mạo địa chỉ IP hoặc tấn
công bằng source-routing. Một attacker có thể thay thế địa chỉ IP
của mình bằng địa chỉ của một host tin tưởng và bộ lọc gói sẽ không
thể ngăn được gói tin đi qua Firewall.
Bộ lọc gói không thể ngăn được tấn công bằng IP-fragment. Tấn
công bằng IP-fragment là chia nhỏ gói tin IP thành nhiều mảnh. Hầu
hết các bộ lọc gói đều chỉ kiểm tra gói tin đầu tiên và mặc nhiên
xem như các gói tin tiếp theo sau là match lệ. Nhưng những phân
mảnh theo sau có thể mang những nội dung gây hại.
Bộ lọc gói không nhận biết được ứng dụng đang chạy. Nếu ta ngăn
cổng mặc định Telnet (cổng 23) nhưng lại mở cổng cho giao thức
Hypertext Transfer Protocol (cổng 80) đi qua, nếu attacker có thể
cấu hình một Telnet server trong mạng của ta lắng nghe trên cổng 80
thì mặc nhiên gói tin sẽ được đi qua Firewall.
1.2.2. Bộ lọc gói tin có trạng thái
Khi Firewall sử dụng bộ lọc trạng thái (statefull filtering), Firewall không
những kiểm tra thông tin header của gói tin mà còn kiểm tra cả trạng thái của
gói tin. Một ví dụ củ thể, Firewall có thể kiểm tra gói tin tại external interface
và xác định xem gói tin đó có phải là trả lời của một yêu câu trước đó từ bên
trong ra hay không. Phần kiểm tra này có thể thực hiện tại cả hai tầng vận
chuyển và tầng ứng dụng.
Bộ lọc trạng thái sử dụng thông tin của phiên làm việc TCP (TCP session)
để xác định một gói tin sẽ được cho phép hay bị ngăn chặn tại Firewall. Phiên
làm việc TCP được thiết lập thông qua cơ chế bắt tay ba pha của TCP. Mục
tiêu của phương thức này là để đồng bộ hóa sequence number và
acknowledgment number và trao đổi những thông tin để hai host có thể truyền
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
TCP cũng sử dụng một cơ chế tương tự để kết thúc kết nối.
Firewall sử dụng thông tin này để thực hiện lọc trạng thái. Khi một client
thuộc mạng bên trong sử dụng cơ chế bắt tay ba pha để thực hiện kết nối gửi
gói tin đầu tiên, Firewall sẽ cho phép gói tin đó và ghi nhận lại gói tin đã gửi.
Khi có gói tin trả lời, Firewall chấp nhận vì nó là trả lời của một yêu cầu từ
bên trong. Nếu gói tin đến Firewall nhưng chỉ với giá trị bit SYN là 1 hoặc với
cả hai bit SYN và ACK nhưng Firewall không ghi nhận là đã chuyển gói tin
yêu cầu nào từ trong ra thì gói tin đó sẽ bị ngăn chặn.
Firewall cũng có thể sử dụng một cơ chế khác để kiểm soát phiên làm việc
TCP bằng cách sử dụng đồng hồ đếm. Khi một phiên làm việc được bắt đầu từ
bên trong thì Firewall ghi nhận và chỉ cho phiên làm việc đó có hiệu lực trong
một khoảng thời gian nào đó.
1.2.2.1. Ƣu điểm
Bộ lọc trạng thái giúp ta chắc chắn rằng tất cả lưu lượng đi qua
Firewall đều là một phần của những phiên làm việc đang tồn tại,
hoặc sẽ phù match với luật của Firewall khi mở một kết nối mới.
Click to buy NOW!
P
D
F
-
X
C
h
a
n
g
e
V
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
u
-
t
r
a
c
k
.
c
o
m
GVHD: Th.S Ngô Văn Công SVTH: Nguyễn Văn Đường
Trang 23 Hình 1.1 Chính sách từ chối mặc định
Với cách tiếp cận là chấp nhận mọi thứ mặc định, cách này dể dàng xây
dựng được một Firewall và cho hoạt động ngay, nhưng nó cũng yêu cầu ta
phải đoán trước và thêm vào Firewall những luật đối với những truy cập
mà ta cần ngăn chặn. Nguy hiểm đối với cách tiếp cận này là chúng ta
không thể đoán trước hết được những loại truy cập nguy hiểm mà chúng ta
cần phải ngăn chặn.
Click to buy NOW!
P
D
F
-
X
C
h
P
D
F
-
X
C
h
a
n
g
e
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
V
i
e
w
e
r
w
w
w
.
d
o
c
u
-
t
r
a
c
k
.
c
o
m
Click to buy NOW!
P
D
F
-
X
m