Một FireWall chuẩn bao gồm một hay nhiều thành phần sau:
a. Bộ lọc packet (Packet filtering router).
b. Cổng ứng dụng (Application level gateway hay proxy server).
c. Cổng vũng (Circuite level gateway).
a. Bộ lọc packet (Paket filtering router).
Nguyờn lý hoạt động:
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 TCP/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 liờn quan rất nhiều đến cỏc packet và những con số địa chỉ của chỳng.
Bộ lọc packet 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 packet hay khụng. Cỏc luật lệ lọc packet 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).
• 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 packet đượ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 packet. Một trong những ưu điểm của phương phỏp dựng bộ lọc packet là chi phớ thấp vỡ cơ chế lọc packet đó được bao gồm trong mỗi phần mềm router.
Ngoài ra, bộ lọc packet 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 package là một việc khỏ phức tạp, đũ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ể 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 packet 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.
b. 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. Proxy service là cỏc bộ code đặc biệt cài đặt trờn 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ế đặc 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 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 proxy 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:
• 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ệ lọc Filltering 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 packet.
Hạn chế:
Yờu cầu cỏc users thay đổi thao tỏc, hoặc thay đổi phần mềm đó cài đặt trờn mỏy client cho truy nhập vào cỏc dịch vụ proxy. Chẳng hạn, 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.
c. 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 packet nào.
Hỡnh dưới đõy 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ự 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 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. out out out in in in
outside host Inside host
Circuit-level Gateway