Tải bản đầy đủ (.docx) (72 trang)

Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.82 MB, 72 trang )

Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Mục lục
Lời cảm ơn.............................................................................................................
Lời nói đầu.............................................................................................................
Chương 1: Mở đầu................................................................................................
1.1 Lý do chọn đề tài...........................................................................................
1.2 Mục tiêu đề tài...............................................................................................
1.3 Mục đích........................................................................................................
1.4 Nội dung đề tài..............................................................................................
Chương 2: Tìm hiểu về Firewall...........................................................................
2.1 Khái niệm tường lửa (Firewall).....................................................................
2.1.1 Khái niệm Firewall...........................................................................
2.1.2 Đặc điểm của Firewall.....................................................................
2.1.3 Ưu điểm và hạn chế..........................................................................
2.2 Các loại Firewall và cơ chế hoạt động...........................................................
2.2.1 Bộ lọc gói (Packet Filtering)............................................................
2.2.2 Cổng ứng dụng (Application-Level Gateway )................................
2.2.3 Cổng vòng (Circuit-Level Gateway)................................................
2.3 Những mô hình cơ bản của Firewall.............................................................
2.3.1 Dual-Homed Host.............................................................................
2.3.2 Kiến trúc Screened Host...................................................................
2.3.3 Kiến trúc Screened Subnet Host.......................................................
2.3.4 Sử dụng nhiều Bastion Host.............................................................
2.3.5 Kiến trúc ghép chung Router trong và Router ngoài........................
2.4 Hệ thống Proxy..............................................................................................
2.4.1 Tác dụng và chức năng.....................................................................
2.4.2 Sự kết nối thông qua Proxy (Proxying)............................................
2.4.3 Các dạng Proxy................................................................................
Chương 3: Tìm hiểu Smoothwall Express...........................................................
3.1 Giới thiệu.......................................................................................................
3.2 Cài đặt SmoothWall Express.........................................................................


3.2.1 Cấu hình yêu cầu..............................................................................
3.2.2 Các bước cài đặt...............................................................................
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 1
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
3.2.3 Truy câp SmoothWall Express.........................................................
3.3 Quản trị SmoothWall Express........................................................................
3.3.1 Tổng quan SmoothWall Express......................................................
3.3.2 Kiểm soát Network Traffic...............................................................
3.3.3 Làm việc với VPN............................................................................
3.3.4 Sử dụng SmoothWall Express Tools................................................
3.3.5 Sử dụng SmoothWall Express Services............................................
3.3.6 Quản lý Sử dụng SmoothWall Express............................................
3.3.7 Thông tin và bản ghi.........................................................................
Chương 4: Thực nghiệm.......................................................................................
4.1 Mô tả, yêu cầu...............................................................................................
4.2 Các bước cấu hình.........................................................................................
4.3 Cấu hình các luật...........................................................................................
4.4 Kiểm tra.........................................................................................................
Chương 5: Kết luận...............................................................................................
5.1 Kết quả đạt được...........................................................................................
5.2 Ưu điểm, khuyết điểm...................................................................................
5.3 Hướng phát triển............................................................................................
5.4 Khó khăn.......................................................................................................
Tài liệu tham khảo.................................................................................................
Lời cảm ơn
Trước tiên em xin gửi lời cảm ơn chân thành tới thầy Nguyễn Đăng Quang đã
trực tiếp hướng dẫn và tận tình chỉ bảo, truyền đạt kinh nghiệm giúp nhóm hoàn
thành đề tài
Trong suốt quá trình thực hiện đề tài, nhóm đã nhận được rất nhiều sự hỗ trợ,
giúp đỡ từ phía nhà trường và các thầy cô

Cuối cùng, nhóm xin cảm ơn tất cả các bạn trong lớp đã giúp nhóm trong những
buổi trao đổi về các ý tưởng cũng như công nghệ để phát triển đề tài
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 2
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Lời nói đầu
Trong vai trò là người quản trị hệ thống hay một chuyên gia thiết kế mạng thì
vấn đề an ninh cho mạng máy tính luôn đặt lên hàng đầu. Tường lửa chính là phương
thức giúp chúng ta thực hiện việc này một cách tối ưu nhất. Nó ngăn chặn các truy
nhập bất hợp pháp từ bên ngoài, và lọc các gói tin ra vào mạng nội bộ.
Ngày nay có rất nhiều công cụ tường lửa thương mại cũng như miễn phí và
Smoothwall là một trong những tường lửa miễn phí được đánh giá rất cao từ cộng
đồng người sử dụng. Tuy miễn phí nhưng Smoothwall mang đầy đủ tính năng của
một tường lửa thương mại.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 3
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Mục tiêu của đề tài là tìm hiểu về hệ thống tường lửa và phát triển ứng dụng sử
dụng phấn mềm mã nguồn mở Smoothwall. Cho đến nay phần mềm này chưa được
ứng dụng rộng rãi tại Việt Nam. Chính vì thế nhóm muốn tìm hiểu về phân mềm để
góp phần phát triển phần mềm mã nguồn mở tại Việt Nam.
CHƯƠNG 1: MỞ ĐẦU
1.1 Lý do chọn đề tài
Chúng ta đang sống trong một thời đại mới, thời đại phát triển rực rỡ của công
nghệ thông tin. Sự ra đời của các mạng máy tính và những dịch vụ của nó đã mang
lại cho con người rất nhiều những lợi ích to lớn, góp phần thúc đẩy nền kinh tế phát
triển mạnh mẽ, đơn giản hóa những thủ tục lưu trữ, xử lý, trao chuyển thông tin phức
tạp, liên lạc và kết nối giữa những vị trí, khoảng cách rất lớn một cách nhanh chóng,
hiệu quả … Và mạng máy tính đã trở thành yếu tố không thể thiếu đối với sự phát
triển của nền kinh tế, chính trị cũng như văn hóa, tư tưởng của bất kỳ quốc gia hay
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 4
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành

châu lục nào. Con người đã không còn bị giới hạn bởi những khoảng cách về địa lý,
có đầy đủ quyền năng hơn để sáng tạo những giá trị mới vô giá về vật chất và tinh
thần, thỏa mãn những khát vọng lớn lao của chính họ và của toàn nhân loại.
Cũng chính vì vậy, nếu không có mạng máy tính, hoặc mạng máy tính không
thể hoạt động như ý muốn thì hậu quả sẽ rất nghiêm trọng. Và vấn đề an toàn cho
mạng máy tính cũng phải được đặt lên hàng đầu khi thiết kế, lắp đặt và sử dụng
Trong quá trình làm tiểu luận tốt nghiệp, được sự đồng ý, hướng dẫn và chỉ bảo
tận tình của thầy giáo hướng dẫn Nguyễn Đăng Quang , cùng với sự giúp đỡ của bạn
bè, nhóm đã có thêm nhiều điều kiện để tìm hiểu về mạng máy tính, về vấn đề an
toàn trong mạng máy tính và phần mềm tường lửa Smoothwall. Đó cũng là đề tài mà
chúng em muốn nghiên cứu và trình bày trong tiểu luận tốt nghiệp này.
1.2 Mục tiêu đề tài
Mục tiêu nghiên cứu của đề tài này bao gồm các điểm sau:
- Tìm hiểu Firewall
- Tìm hiểu phần mềm mã nguồn mở Smoothwall
- Cài đặt và sử dụng hệ thống tường lửa SmoothWall
1.3 Mục đích
Hiểu biết về hệ thống Firewall và có khả năng triển khai một hệ thống Firewall
sử dụng phần mềm Smoothwall
1.4 Nội dung đề tài
Để hoàn thành mục tiêu, nhóm tập trung nghiên cứu các nội dung chính sau
đây:
- Tìm hiểu về hệ thống Firewall: đặc điểm, các thành phần, nguyên lý hoạt
động và các mô hình firewall cơ bản
- Tìm hiểu phần mềm Smoothwall: các chức năng và cách cấu hình
- Triển khai Smoothwall trên máy ảo để thực nghiệm
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 5
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
CHƯƠNG 2: TÌM HIỂU VỀ FIREWALL
2.1 Khái niệm tường lửa (Firewall)

Để bảo vệ một máy tính hay cho cả một mạng nội bộ (Intranet), người ta sử
dụng tường lửa (Firewall). Chức năng của tường lửa là ngăn chặn các truy nhập trái
phép (theo danh sách truy nhập đã xác định trước) và thậm chí có thể lọc các gói tin
không muốn gửi đi hoặc nhận vào vì một lý do nào đó. Phương thức bảo vệ này được
dùng nhiều trong môi trường liên mạng Internet
2.4.1 Khái niệm Firewall
Firewall là một cơ chế bảo vệ mạng tin tưởng intranet với các mạng không tin
tưởng thường là internet. Firewall bao gồm các cơ cấu nhằm:
• Ngăn chặn truy nhập bất hợp pháp.
• Kiểm soát thông tin trao đổi từ trong ra và từ Internet vào hệ thống cục
bộ.
• Ghi nhận và theo dõi thông tin mạng
Trên thực tế, Firewall được thể hiện rất khác nhau: bằng phần mềm hoặc phần
cứng chuyên dùng, sử dụng một máy tính hoặc một mạng các máy tính.
2.4.2 Đặc điểm
Thông tin giao lưu được theo hai chiều
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 6
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Chỉ có những thông tin thỏa mãn nhu cầu bảo vể mới được đi qua
Bước đầu tiên trong việc cấu hình Firewall là thiết lập các chích sách:
• Những dịch vụ nào cần ngăn chặn
• Những host nào cần phục vụ
• Mỗi nhóm cần truy nhập những dịch vụ nào
• Mỗi dịch vụ sẽ được bảo vệ như thế nào
2.4.3 Ưu điểm và hạn chế
Ưu điểm:
• Ngăn chặn thông tin từ bên ngoài (Internet) vào trong mạng được bảo vệ,
trong khi cho phép người sử dụng hợp pháp truy nhập tự do mạng bên ngoài
• Firewall còn là một điểm quan trọng trong chính sách kiểm soát truy nhập. Nó
là “cửa khẩu” duy nhất nối mạng được bảo vệ với bên ngoài, do đó có thể ghi

nhận mọi cuộc trao đổi thông tin, điểm xuất phát và đích, thời gian, …
Firewall có thể phục vụ như một công cụ theo dõi các cuộc tấn công với ý đồ
xấu từ bên ngoài nhằm dự báo khả năng bị tấn công trước khi cuộc tấn công
xẩy ra.
Hạn chế:
• Firewall không thể đọc hiểu từng loại thông tin và phân tích nội dung của nó.
Firewall chỉ có thể ngăn chặn sự xâm nhập của những nguồn thông tin đã xác
định trước
• Firewall không thể ngăn chặn một cuộc tấn công nếu cuộc tấn công này không
“đi qua” nó, như là sự dò rỉ thông tin do dữ liệu bị sao chép bất hợp pháp lên
đĩa mềm.
• Firewall cũng không thể chống lại các cuộc tấn công bằng dữ liệu (data–
drivent attack). Khi có một số chương trình được chuyển theo thư điện tử,
vượt qua Firewall vào trong mạng được bảo vệ và bắt đầu hoạt động ở đây.
• Firewall không thể làm nhiệm vụ rà quét virus trên các dữ liệu được chuyển
qua nó, do tốc độ làm việc, sự xuất hiện liên tục của các virus mới và do có rất
nhiều cách để mã hóa dữ liệu, thoát khỏi khả năng kiểm soát của Firewall
(một Ví Dụ là các virus máy tính)
• Tuy nhiên, Firewall vẫn là giải pháp hữu hiệu được áp dụng rộng rãi.
2.2 Các thành loại Firewall và cơ chế hoạt động
Một Firewall chuẩn bao gồm một hay nhiều các loại sau đây:
• Bộ lọc gói (Packet–Filter)
• Cổng ứng dụng (Application–level Gateway hay Proxy Server)
• Cổng vòng (Circuite level Gateway)
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 7
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
2.4.1 Bộ lọc gói (Packet Filtering)
Nguyên lý hoạt động
Hình 1: Sơ đồ làm việc của Packet Filtering
Khi nói đến việc lưu thông dữ liệu giữa các mạng với nhau thông qua

Firewall thì điều đó có nghĩa rằng Firewall hoạt động chặt chẽ với giao thức
TCI/IP. Vì giao thức này làm việc theo thuật toán chia nhỏ các dữ liệu nhận được từ
các ứng dụng trên mạng, hay nói chính xác hơn là các dịch vụ chạy trên các giao thức
(Telnet, SMTP, DNS, SMNP, NFS ...) thành các gói dữ liệu (data pakets) rồi gán cho
các paket này những địa chỉ để có thể nhận dạng, tái lập lại ở đích cần gửi đến, do đó
các loại Firewall cũng lien quan rất nhiều đến các Packet và những con số địa chỉ của
chúng.
Bộ lọc gói cho phép hay từ chối mỗi Packet mà nó nhận được. Nó kiểm tra
toàn bộ đoạn dữ liệu để quyết định xem đoạn dữ liệu đó có thoả mãn một trong số
các luật lệ của lọc gói hay không. Các luật lệ lọc gói này là dựa trên các thông tin ở
đầu mỗi Packet (Packet Header), dùng để cho phép truyền các Packet đó ở trên
mạng .Đó là:
• Địa chỉ IP nơi xuất phát ( IP Source address)
• Địa chỉ IP nơi nhận (IP Destination address)
• Những thủ tục truyền tin (TCP, UDP, ICMP, IP tunnel)
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 8
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
• Cổng TCP/UDP nơi xuất phát (TCP/UDP source port)
• Cổng TCP/UDP nơi nhận (TCP/UDP destination port)
• Dạng thông báo ICMP (ICMP message type)
• Giao diện Packet đến (Incomming interface of Packet)
• Giao diện Packet đi (Outcomming interface of Packet)
Nếu luật lệ lọc gói được thoả mãn thì Packet được chuyển qua Firewall nếu
không Packet 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. Hơn nữa, việc kiểm soát các cổng làm
cho Firewall có khả năng chỉ cho phép một số loại kết nối nhất định vào các loại
máy chủ nào đó, hoặc chỉ có những dịch vụ nào đó (Telnet, SMTP, FTP...) được phép
mới chạy được trên hệ thống mạng cục bộ.
Ưu điểm

Đa số các hệ thống Firewall đều sử dụng bộ lọc gói. Một trong những ưu điểm
của phương pháp dùng bộ lọc gói là chi phí thấp vì cơ chế lọc gói đã được bao gồm
trong mỗi phần mềm Router.
Ngoài ra, bộ lọc gói là trong suốt đối với người sử dụng và các ứng dụng, vì
vậy nó không yêu cầu sự huấn luyện đặc biệt nào cả.
Hạn chế
Việc định nghĩa các chế độ lọc gói là một việc khá phức tạp; nó đòi hỏi người
quản trị mạng cần có hiểu biết chi tiết về các dịch vụ Internet, các dạng Packet
Header, và các giá trị cụ thể mà họ có thể nhận trên mỗi trường. Khi đòi hỏi vể sự lọc
càng lớn, các luật lệ về lọc càng trở nên dài và phức tạp, rất khó để quản lý và điều
khiển.
Do làm việc dựa trên Header của các Packet, rõ ràng là bộ lọc gói không kiểm
soát được nội dung thông tin của Packet. Các Packet chuyển qua vẫn có thể mang
theo những hành động với ý đồ ăn cắp thông tin hay phá hoại của kẻ xấu.
2.4.2 Cổng ứng dụng (Application-Level Gateway )
Nguyên lý hoạt động
Đây là một loại Firewall được thiết kế để tăng cường chức năng kiểm soát
các loại dịch vụ, giao thức được cho phép truy cập vào hệ thống mạng. Cơ chế hoạt
động của nó dựa trên cách thức gọi là Proxy Service (dịch vụ đại diện). Proxy
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 9
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Service là các bộ code đặc biệt cài đặt trên cổng ra (gateway) cho từng ứng dụng.
Nếu người quản trị mạng không cài đặt Proxy code cho một ứng dụng nào đó, dịch
vụ tương ứng sẽ không được cung cấp và do đó không thể chuyển thông tin qua
Firewall. Ngoài ra, Proxy code có thể được định cấu hình để hỗ trợ chỉ một số đặc
điểm trong ứng dụng mà ngưòi quản trị mạng cho là chấp nhận được trong khi từ
chối những đặc điểm khác.
Một cổng ứng dụng thường được coi như là một pháo đài (Bastion Host), bởi
vì nó được thiết kế đặt biệt để chống lại sự tấn công từ bên ngoài. Những biện pháp
đảm bảo an ninh của một Bastion Host là:

• Bastion Host luôn chạy các version an toàn (secure version) của các
phần mềm hệ thống (Operating system). Các version an toàn này được
thiết kế chuyên cho mục đích chống lại sự tấn công vào hệ điều hành
(Operating System), cũng như là đảm bảo sự tích hợp Firewall.
• Chỉ những dịch vụ mà người quản trị mạng cho là cần thiết mới được
cài đặt trên Bastion Host, đơn giản chỉ vì nếu một dịch vụ không được
cài đặt, nó không thể bị tấn công. Thông thường, chỉ một số giới hạn
các ứng dụng cho các dịch vụ Telnet, DNS, FTP, SMTP và xác thực
user là được cài đặt trên Bastion Host.
• Bastion Host có thể yêu cầu nhiều mức độ xác thực khác nhau, Ví Dụ
như user password hay smart card.
Mỗi Proxy được đặt cấu hình để cho phép truy nhập chỉ một sồ các máy chủ
nhất định. Điều này có nghĩa rằng bộ lệnh và đặc điểm thiết lập cho mỗi Proxy chỉ
đúng với một số máy chủ trên toàn hệ thống.
Mỗi Proxy duy trì một quyển nhật ký ghi chép lại toàn bộ chi tiết của giao
thông qua nó, mỗi sự kết nối, khoảng thời gian kết nối. Nhật ký này rất có ích trong
việc tìm theo dấu vết hay ngăn chặn kẻ phá hoại.
Mỗi Proxy đều độc lập với các proxies khác trên Bastion Host. Điều này cho
phép dễ dàng quá trình cài đặt một Proxy mới, hay tháo gỡ môt Proxy đang có vấn
để.
Ưu điểm
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 10
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Cho phép người quản trị mạng hoàn toàn điều khiển được từng dịch vụ trên
mạng, bởi vì ứng dụng Proxy hạn chế bộ lệnh và quyết định những máy chủ nào có
thể truy nhập được bởi các dịch vụ
Cho phép người quản trị mạng hoàn toàn điều khiển được những dịch vụ nào
cho phép, bởi vì sự vắng mặt của các Proxy cho các dịch vụ tương ứng có nghĩa là
các dịch vụ ấy bị khoá
Cổng ứng dụng cho phép kiểm tra độ xác thực rất tốt, và nó có nhật ký ghi

chép lại thông tin về truy nhập hệ thống
Luật lệ filltering (lọc) cho cổng ứng dụng là dễ dàng cấu hình và kiểm tra hơn
so với bộ lọc gói
Hạn chế
Yêu cầu các users biến đổi (modify) thao tác, hoặc modify phần mềm đã cài
đặt trên máy Client cho truy nhập vào các dịch vụ Proxy. Ví Dụ, Telnet truy nhập qua
cổng ứng dụng đòi hỏi hai bước để nối với máy chủ chứ không phải là một bước thôi.
Tuy nhiên, cũng đã có một số phần mềm Client cho phép ứng dụng trên cổng ứng
dụng là trong suốt, bằng cách cho phép user chỉ ra máy đích chứ không phải cổng
ứng dụng trên lệnh Telnet.
2.4.3 Cổng vòng (Circuit-Level Gateway)
Hình 2: Kết nối qua cổng vòng(Circuit–Level Gateway)
Cổng vòng là một chức năng đặc biệt có thể thực hiện đươc bởi một cổng ứng
dụng. Cổng vòng đơn giản chỉ chuyển tiếp (relay) các kết nối TCP mà không thực
hiện bất kỳ một hành động xử lý hay lọc gói nào
Hình 2 minh hoạ một hành động sử dụng nối Telnet qua cổng vòng. Cổng
vòng đơn giản chuyển tiếp kết nối Telnet qua Firewall mà không thực hiện một sự
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 11
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
kiểm tra, lọc hay điều khiển các thủ tục Telnet nào. Cổng vòng làm việc như một sợi
dây, sao chép các byte giữa kết nối bên trong (inside connection) và các kết nối bên
ngoài (outside connection). Tuy nhiên, vì sự kết nối này xuất hiện từ hệ thống
Firewall, nó che dấu thông tin về mạng nội bộ
Cổng vòng thường được sử dụng cho những kết nối ra ngoài, nơi mà các nhà
quản trị mạng thật sự tin tưởng những người dùng bên trong. Ưu điểm lớn nhất là
một Bastion Host có thể được cấu hình như là một hỗn hợp cung cấp cổng ứng dụng
cho những kết nối đến, và cổng vòng cho các kết nối đi. Điều này làm cho hệ thống
bức tường lửa dễ dàng sử dụng cho những người trong mạng nội bộ muốn trực tiếp
truy nhập tới các dịch vụ Internet, trong khi vẫn cung cấp chức năng bức tường lửa
để bảo vệ mạng nội bộ từ những sự tấn công bên ngoài

2.3 Những mô hình Firewall
Dưới đây sẽ đưa ra một số mô hìnhFirewall cơ bản, các kiến trúc khác có thể
mở rộng từ kiến trúc này tùy theo cấu trúc kết nối của mạng.
2.4.1 Dual-Homed Host
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 12
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 3: Sơ đồ kiến trúc Dual–homed Host
Dual–homed Host là hình thức xuất hiện đầu tiên để bảo vệ mạng nội bộ.
Dual–homed Host là một máy tính có hai giao tiếp mạng: một nối với mạng cục bộ
và một nối với mạng ngoài (Internet).
Hệ điều hành của Dual–homed Host được cấu hình để chức năng chuyển các
gói tin (Packet forwarding) giữa hai giao tiếp mạng này không hoạt động. Để làm
việc được với một máy trên Internet, người dùng ở mạng cục bộ trước hết phải login
vào Dual–homed Host, và từ đó bắt đầu phiên làm việc.
Ưu điểm của Dual–homed Host:
• Cài đặt dễ dàng, không yêu cầu phần cứng hoặc phần mềm đặc biệt.
• Dual–homed Host chỉ yêu cầu cấm khả năng chuyển các gói tin, do vậy, thông
thường trên các hệ Unix, chỉ cần cấu hình và dịch lại nhân (Kernel) của hệ
điều hành là đủ.
Nhược điểm của Dual–homed Host:
• Không đáp ứng được những yêu cầu bảo mật ngày càng phức tạp, cũng như
những hệ phần mềm mới được tung ra thị trường.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 13
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
• Không có khả năng chống đỡ những cuộc tấn công nhằm vào chính bản thân
nó, và khi Dual–homed Host đó bị đột nhập, nó sẽ trở thành đầu cầu lý tưởng
để tấn công vào mạng nội bộ.
Đánh giá về kiến trúc Dual–homed Host:
• Để cung cấp dịch vụ cho những người sử dụng internal network có một số giải
pháp như sau:

 Kết hợp với các Proxy Server cung cấp những Proxy Service
 Đăng nhập vào máy dual-homed host bằng account được cấp
• Nếu dùng phương pháp cấp account thì rất phiền phức cho người sử dụng vì
phải login vào máy khác.
• Nếu dùng Proxy Server thì khó cung cấp được nhiều dịch vụ vì khả năng đáp
ứng của hệ thống.
• Một khuyết điểm cơ bản của hai mô hình trên nữa là khi mà máy dual –homed
host bị đột nhập vào. Người tấn công sẽ thấy hết các lưu thông bên trong
mạng nội bộ.
2.4.2 Kiến trúc Screened Host
Kiến trúc này kết hợp 2 kỹ thuật đó là Packet Filtering và Proxy Services.
Packet Filtering: Lọc một số loại dịch vụ mà hệ thống muốn cung cấp sử dụng
Proxy Server, bắt người sử dụng nếu muốn dùng dịch vụ thì phải kết nối đến Proxy
Server mà không được bỏ qua Proxy Server để nối trực tiếp với mạng bên trong/bên
ngoài (internal/external network), đồng thời có thể cho phép Bastion Host mở một số
kết nối với internal/external host.
Proxy Service: Bastion Host sẽ chứa các Proxy Server để phục vụ một số dịch
vụ hệ thống cung cấp cho người sử dụng qua Proxy Server.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 14
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 4: Sơ đồ kiến trúc Screened Host
Ưu, khuyết điểm của kiến trúc Screened Host
Kiến trúc screened host hay hơn kiến trúc dual–homed host ở một số điểm cụ
thể sau:
• Dual–Homed Host: Khó có thể bảo vệ tốt vì máy này cùng lúc cung cấp nhiều
dịch vụ, vi phạm qui tắc căn bản là mỗi phần tử hay thành phần nên giữ ít
chức năng nếu có thể được (mỗi phần tử nên giữ ít chức năng càng tốt), cũng
như tốc độ đáp ứng khó có thể cao vì cùng lúc đảm nhận nhiều chức năng.
• Screened Host: Đã tách chức năng lọc các gói IP và các Proxy Server ở hai
máy riêng biệt. Packet Filtering chỉ giữ chức năng lọc gói nên có thể kiểm

soát, cũng như khó xảy ra lỗi (tuân thủ qui tắc ít chức năng). Proxy Servers
được đặt ở máy khác nên khả năng phục vụ (tốc độ đáp ứng) cũng cao.
• Cũng tương tự như kiến trúc Dual–Homed Host khi mà Packet Filtering
system cũng như Bastion Host chứa các Proxy Server bị đột nhập vào (người
tấn công đột nhập được qua các hàng rào này) thì lưu thông của internal
network bị người tấn công thấy.
• Từ khuyết điểm chính của 2 kiến trúc trên ta có kiến trúc thứ 3 sau đây khắc
phục được phần nào khuyết điểm trên.
2.4.3 Kiến trúc Screened Subnet Host
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 15
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 5: Sơ đồ kiến trúc Screened Subnet Host
Với kiến trúc này, hệ thống này bao gồm hai Packet–Filtering Router và một
Bastion Host (hình 5). Kiến trúc này có độ an toàn cao nhất vì nó cung cấp cả mức
bảo mật: Network và Application trong khi định nghĩa một mạng perimeter network.
Mạng trung gian(DMZ) đóng vai trò như một mạng nhỏ, cô lập đặt giữa Internet và
mạng nội bộ. Cơ bản, một DMZ được cấu hình sao cho các hệ thống trên Internet và
mạng nội bộ chỉ có thể truy nhập được một số giới hạn các hệ thống trên mạng DMZ,
và sự truyền trực tiếp qua mạng DMZ là không thể được.
Với những thông tin đến, Router ngoài(Exterior Router) chống lại những sự
tấn công chuẩn (như giả mạo địa chỉ IP), và điều khiển truy nhập tới DMZ. Nó chỉ
cho phép hệ thống bên ngoài truy nhập Bastion Host. Router trong (Interior Router)
cung cấp sự bảo vệ thứ hai bằng cách điều khiển DMZ truy nhập mạng nội bộ chỉ với
những truyền thông bắt đầu từ Bastion Host.
Với những thông tin đi, Router trong điều khiển mạng nội bộ truy nhập tới
DMZ. Nó chỉ cho phép các hệ thống bên trong truy nhập Bastion. Quy luật Filtering
trên Router ngoài yêu cầu sử dụng dịch vụ Proxy bằng cách chỉ cho phép thông tin ra
bắt nguồn từ Bastion Host.
Ưu điểm:
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 16

Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
• Có ba tầng bảo vệ: Router ngoài, Bastion Host và Router trong.
• Router ngoài chỉ quảng bá DMZ Network tới Internet, hệ thống mạng nội bộ
là không thể nhìn thấy (invisible). Chỉ có một số hệ thống đã được chọn ra
trên DMZ là được biết đến bởi Internet qua routing table và DNS information
exchange (Domain Name Server).
• Router trong chỉ quảng bá DMZ Network tới mạng nội bộ, các hệ thống trong
mạng nội bộ không thể truy nhập trực tiếp vào Internet. Điều nay đảm bảo
rằng những user bên trong bắt buộc phải truy nhập Internet qua dịch vụ Proxy.
Đánh giá kiến trúc Screened Subnet Host:
• Đối với những hệ thống yêu cầu cung cấp dịch vụ nhanh, an toàn cho nhiều
người sử dụng đồng thời cũng như khả năng theo dõi lưu thông của mỗi người
sử dụng trong hệ thống và dữ liệu trao đổi giữ các người dùng trong hệ thống
cần được bảo vệ thì kiến trúc cơ bản trên phù hợp.
• Để tăng độ an toàn trong internal network, kiến trúc screen subnet ở trên sử
dụng thêm một mạng DMZ (DMZ hay perimeter network) để che phần nào
lưu thông bên trong internal network. Tách biệt internal network với Internet.
• Sử dụng 2 Screening Router : Exterior Router và Interior Router.
• Áp dụng qui tắc dư thừa có thể bổ sung thêm nhiều mạng trung gian (DMZ
hay perimeter network) càng tăng khả năng bảo vệ càng cao.
• Ngoài ra, còn có những kiến trúc biến thể khác như: sử dụng nhiều Bastion
Host, ghép chung Router trong và Router ngoài, ghép chung Bastion Host và
Router ngoài.
2.4.4 Sử dụng nhiều Bastion Host
Do các yêu cầu về tốc độ đáp ứng (performance) và dư thừa (redundancy),
cũng như tách biệt các Servers khác nhau.
Sử dụng 1 Bastion Host cung cấp những dịch vụ cho người sử dụng bên trong
(internal user), như dịch vụ SNMP Server, Proxy Servers …
Sử dụng một Bastion Host khác dịch vụ cho Internet hoặc những người sử
dụng bên ngoài cung cấp (external user) sẽ sử dụng. Như là Anonymous FTP Server

mà Server này những người sử dụng bên trong( local users) không truy xuất đến.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 17
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 6: Sơ đồ kiến trúc sử dụng 2 Bastion Host
Với cách này thì tốc độ đáp ứng cho những người sử dụng bên trong (local
user) một phần nào đó không bị ảnh hưởng (bị làm chậm đi) bởi hoạt động của những
người sử dụng bên ngoài (external users).
Cũng có thể sử dụng nhiều Bastion Host mà cung cấp cho 1 dịch vụ nào đó để
tăng tốc độ đáp ứng (performance), nhưng việc này cũng khó cân bằng tải giữa các
Server trừ khi đoán trước được mức độ sử dụng.
Việc sử dụng kỹ thuật dư thừa để đảm bảo tính sẵn sàng cao của hệ thống, để
khi mà một Bastion Host hỏng thì có cái khác thay thế. Nhưng chỉ có một số loại dịch
vụ trợ giúp dạng này: DNS Server, SMTP Server, ... có thể dùng nhiều Bastion Host
làm DNS Server , SMTP Server. Khi một Bastion Host hỏng hoặc quá tải, những yêu
cầu về DNS Server và SNMP sẽ được dùng qua Bastion Host khác như là một
fallback system.
Sử dụng nhiều Bastion Host trong trường hợp muốn cung cấp dịch vụ cho
nhiều mạng khác nhau, và loại dữ liệu cung cấp cho mỗi mạng cũng khác nhau.
Sử dụng nhiều Bastion Host cho các Server khác nhau để khi mà một Server
nào đó bị đột nhập vào hay bị hỏng thì Server khác vẫn hoạt động tốt.
Ví Dụ : Tách HTTP Server và FTP Server trên 2 máy riêng biệt.
2.4.5 Kiến trúc ghép chung Router trong và Router ngoài
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 18
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Sử dụng kiến trúc này thì cần tăng tốc độ của máy làm Router.
Hình 7: Sơ đồ kiến trúc ghép chung Router trong và Router ngoài
Kiến trúc này gần giống với Screened Host trong trường hợp khi mà
exterior/interior Router bị đột nhập vào thì lưu thông trong mạng bên trong sẽ bị lộ ra
bên ngoài nhưng tốt hơn Screened Host đó là nó cũng sử dụng thêm một mạng bên
ngoài. Mạng bên ngoài sẽ chứa các Server có thể nối ra Internet mà nếu các Server

này bị đột nhập thì lưu thông của mạng bên trong cũng không bị lộ ra bên ngoài.
Kiến trúc này cũng gần giống với Screened Subnet nhưng mà exterior Router và
interior Router được ghép chung nên nó giảm đi số lớp bảo vệ. Nói chung, kiến trúc
ghép chung interior Router và exterior Router ở trung gian giữa hai kiến trúc này.
2.4 Hệ thống Proxy
Proxy cung cấp cho người sử dụng truy xuất Internet với những host đơn.
Những Proxy Server phục vụ những nghi thức đặc biệt hoặc một tập những nghi thức
thực thi trên dual–homed host hoặc Bastion Host. Những chương trình Client của
người sử dụng sẽ qua trung gian Proxy Server thay thế Server thật sự mà người sử
dụng cần giao tiếp.
Proxy Server xác định những yêu cầu từ Client và quyết định đáp ứng hay
không đáp ứng, nếu yêu cầu được đáp ứng, Proxy Server sẽ kết nối đến Server thật
thay cho Client và tiếp tục chuyển tiếp những yêu cầu từ Client đến Server, cũng như
chuyển tiếp những đáp ứng của Server trở lại Client. Vì vậy Proxy Server giống như
cầu nối trung gian giữa Server thật và Client
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 19
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
2.4.1 Tác dụng và chức năng
Để đáp ứng được những nhu cầu của người sử dụng khi cần truy xuất đến
những ứng dụng được cung cấp bởi Internet nhưng vẫn đảm bảo được an toàn cho hệ
thống cục bộ, trong hầu hết những phương pháp được đưa ra để giải quyết điều này
là cung cấp một host đơn truy xuất đến Internet cho tất cả người sử dụng. Tuy nhiên,
phương pháp này không phải là phương pháp giải quyết thỏa mãn nhất bởi vì như
vậy nó sẽ tạo cho người sử dụng cảm thấy không thoải mái. Khi truy xuất đến
Internet thì họ không thể thực hiện những công việc đó một cách trực tiếp, phải log in
vào dual–homed host, thực hiện tất cả những công việc ở đây, và sau đó bằng phương
pháp nào đó chuyển đổi những kết quả đạt được của công việc trở lại workstation sở
hữu.
Điều này trở nên rất tồi tệ ở những hệ thống với nhiều hệ điều hành khác nhau
(Ví dụ trong trường hợp nếu hệ thống là Macintosh nhưng riêng dual–homed host là

hệ thống Unix).
Khi dual homed host được thiết kế trên mô hình không có Proxy, điều đó sẽ
khiến cho người sử dụng thêm bực bội và đáng chú ý hơn là làm giảm đi những tiện
ích mà Internet cung cấp, tồi tệ hơn là chúng thường không cung cấp an toàn một
cách đầy đủ, khi một máy gồm nhiều người sử dụng tất nhiên độ an toàn của nó sẽ
giảm, đặc biệt khi họ cố gắng nắm bắt với vạn vật bên ngoài.
Proxy System giúp người sử dụng thoải mái hơn và an toàn cho dual–homed
host, thay thế những yêu cầu của người sử dụng bằng cách gián tiếp thông qua dual–
homed host. Hệ thống Proxy cho phép tất cả những tương tác nằm dưới một hình
thức nào đó. Người sử dụng có cảm giác trực tiếp làm việc với Server trên Internet
mà họ thật sự muốn truy xuất.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 20
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 8 : Kết nối sử dụng Application–Level Gateway
Proxy Application chính là chương trình trên application–level gateway
Firewall hành động trên hình thức chuyển đổi những yêu cầu người sử dụng thông
qua Firewall, tiến trình này được thực hiện trình tự như sau:
• Thành lập một kết nối đến Proxy application trên Firewall.
• Proxy Application thu nhập thông tin về việc kết nối và yêu cầu của người sử
dụng.
• Sử dụng thông tin để xác định yêu cầu có được chấp nhận không, nếu chấp
nhận, Proxy sẽ tạo sự kết nối khác từ Firewall đến máy đích.
• Sau đó thực hiện sự giao tiếp trung gian, truyền dữ liệu qua lại giữa Client và
Server.
Proxy System giải quyết được rủi ro trên hệ thống bởi tránh người sử dụng log
in vào hệ thống và ép buộc thông qua phần mềm điều khiển.
2.4.2 Kết nối thông qua Proxy (Proxying)
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 21
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Proxying được thực hiện khác nhau với từng dịch vụ, có một vài dịch vụ dễ

dàng cài đặt hoặc tự động, nhưng vài dịch vụ lại rất khó khăn. Tuy nhiên hầu hết các
dịch vụ đều yêu cầu những phần mềm Proxy Server và Client tương ứng.
Hình 9: Kết nối giữa người dùng (Client) với Server qua Proxy
2.4.3 Các dạng Proxy
Dạng kết nối trực tiếp
• Phương pháp đầu tiên được sử dụng trong kỹ thuật Proxy là cho người sử
dụng kết nối trực tiếp đến Firewall Proxy, sử dụng địa chỉ của Firewall và số
cổng của Proxy, sau đó Proxy hỏi người sử dụng cho địa chỉ của host hướng
đến, đó là một phương pháp brute force sử dụng bởi Firewall một cách dễ
dàng, và đó cũng là một vài nguyên nhân tại sao nó là phương pháp ít thích
hợp.
• Trước tiên, yêu cầu người sử dụng biết địa chỉ của Firewall, kế tiếp nó yêu cầu
người sử dụng nhập vào hai địa chỉ cho mỗi sự kết nối: Địa chỉ của Firewall
và địa chỉ của đích hướng đến. Cuối cùng nó ngăn cản những ứng dụng hoặc
những nguyên bản trên máy tính của người sử dụng điều đó tạo ra sự kết nối
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 22
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
cho người sử dụng, bởi vì chúng sẽ không biết như thế nào điều khiển những
yêu cầu đặc biệt cho sự truyền thông với Proxy.
Dạng thay đổi Client
• Phương Phương pháp kế tiếp sử dụng Proxy setup phải thêm vào những ứng
dụng tại máy tính của người sử dụng. Người sử dụng thực thi những ứng dụng
đặc biệt đó với việc tạo ra sự kết nối thông qua Firewall. Người sử dụng với
ứng dụng đó hành động chỉ như những ứng dụng không sửa đổi. Người sử
dụng cho địa chỉ của host đích hướng tới. Những ứng dụng thêm vào biết
được địa chỉ Firewall từ file config cục bộ, set up sự kết nối đến ứng dụng
Proxy trên Firewall, và truyền cho nó địa chỉ cung cấp bởi người sử dụng.
Phương pháp này rất có hiệu quả và có khả năng che dấu người sử dụng, tuy
nhiên, cần có một ứng dụng Client thêm vào cho mỗi dịch vụ mạng là một đặc
tính trở ngại.

Proxy vô hình
• Một số phương pháp phát triển gần đây cho phép truy xuất đến Proxy, trong
vài hệ thống Firewall được biết như Proxy vô hình. Trong mô hình này, không
cần phải có những ứng dụng thêm vào với người sử dụng và không phải kết
nối trực tiếp đến Firewall hoặc biết rằng Firewall có tồn tại. Sử dụng sự điều
khiển đường đi cơ bản, tất cả sự kết nối đến mạng bên ngoài được chỉ đường
thông qua Firewall. Như những Packet nhập vào Firewall, tự động chúng được
đổi hướng đến ứng dụng Proxy đang chờ. Theo hướng này, Firewall thực hiện
rất tốt trong việc giả như host đích. Khi kết nối được tạo ra Firewall Proxy,
Client nghĩ rằng nó được kết nối với Server thật. Nếu được phép Proxy sau đó
tạo kết nối thứ hai đến Server thật.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 23
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
CHƯƠNG 3: TÌM HIỂU SMOOTHWALL
3.1 Giới thiệu
SmoothWall Express là một tường lửa mã nguồn mở hoạt động trên các bản
phân phối của hệ điều hành GNU/Linux. SmoothWall được cấu hình thông qua Web
và không đòi hỏi người sử dụng phải biết về Linux để cài đặt và sử dụng
SmoothWall Express cho phép bạn dễ dàng xây dựng một bức tường lửa kết nối
bảo mật một mạng máy tính đến Internet
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 24
Trường Đại học Sư Phạm Kỹ Thuật Tp.HCM Tiểu luận chuyên ngành
Hình 1: Mô hình mạng sử dụng Smoothwall
3.2 Cài đặt SmoothWall Express
3.2.1 Cấu hình yêu cầu
Cấu hình tối thiểu đề nghị để cài đặt SmoothWall Express:
Phần cứng Thông tin
Vi xử lý Intel Pentium 200
Ram 128 Mb
Đĩa cứng 2Gb còn trống, hỗ trợ IDE và SCSI

Card mạng Hỗ trợ card mạng NIC
Keyboard, CD-
ROM, Monitor
Chỉ cần khi cài đặt
3.2.2 Các bước cài đặt
Lưu ý trước khi cài đặt
Không cài đặt SmoothWall trên máy chính hay là máy trạm duy nhất vì tất cả
dữ liệu trên máy trạm sẽ bị mất. Trước khi cài đặt cần bảo chắc rằng tất cả dữ liệu
đã được sao lưu
Các bước cài đặt
 Tải bản cài đặt về từ website và gi ra đĩa CD để
cài đặt
 Bỏ đĩa CD vào máy cần cài đặt tường lửa và reboot máy tính. Vào chế độ
boot CD để tiến hành cài đặt.
Tìm hiểu và xây dựng hệ thống Firewall mã nguồn mở sử dụng Smoothwall 25

×