Trong bài viết này, chúng ta cùng nhau sẽ mô tả hình thức dự phòng dạng “stateful failover” ở chế độ “Active/Standby” được sử dụng phổ biến trong hầu hết các hạ tầng mạng ngày nay. ASA cũng hỗ trợ chế độ dự phòng Active/Active nhưng đòi hỏi một số cấu hình tương đối đặc biệt bằng cách sử dụng nhiều “firewall context”.
I. TÌM HIỂU CHẾ ĐỘ HOẠT ĐỘNG ACTIVE/STANDBY SATEFUL FAILOVER
Ở chế độ hoạt động “Active/Standby – A/S”, một thiết bị firewall hoạt động ở chế độ dự phòng failover được bố trí kèm với một firewall đang giữ vai trò hoạt động, điều khiển, xử lý tất các các luồng lưu lượng và chức năng bảo mật tương ứng. Trong trường hợp, firewall chính xảy ra sự cố thì firewall dự phòng sẽ đứng ra đảm nhận vai trò của firewall chính.Tính năng dự phòng “stateful failover” được thực hiện bằng cách, firewal active sẽ cập nhật thông tin trạng thái các phiên kết nối cho firewal standby. Ngay sau khi sự cố xảy ra thì firewal standby đã có đầy đủ thông tin để đảm nhận chức năng của firewal active mà không làm gián đoạn các kết nối của người sử dụng. Thông tin đồng bộ giữa hai thực thể “stateful failover” bao gồm các thông tin như thông tin dải địa chỉ IP Public, thông tin trạng thái, thông tin các phiên kết nối, thông tin quá trình NAT và trạng thái của chúng, thông tin trạng thái các phiên TCP/UDP và cả bảng ARP table và nhiều thông tin khác nữa.
.
Sơ đồ mạng trên minh hoạt cho mô hình hoạt động Active/Standby của firewal nhằm mục đích dự phòng failover. Các giao tiếp “inside” được kết nối đến cùng một switch nội vùng và các giao tiếp “outside” thì được kết nối đến cùng một switch ngoại vùng. Bên cạnh đó, hai thực thể firewal Active và Standby còn được kết nối với nhau thông qua sợi dây cáp chéo LAN Failover Link. Trong suốt quá trình hoạt động, firewal giữ vai trò ACTIVE đứng ra kiểm soát toàn bộ lưu lượng truyền thông giữa bên trong và bên ngoài hệ thống. Trong tình huống active firewall xảy ra sự cố, thực thể STANDBY sẽ đứng ra tiếp nhận các địa chỉ IP từ thực thể ACTIVE và vì thế lưu lượng vẫn tiếp tục được duy trì thông suốt. Tất cả các thông tin được đồng bộ thông qua kết nối LAN Failover Link và vì thế STANDBY firewall biết được toàn bộ thông tin kết nối khi nó đóng vai trò kiểm soát lưu lượng.
Có một số yêu cầu liên quan đến phần cứng và cả phần mềm để hai thực thể firewall tương tác được với nhau về mặt hoạt động cũng như cấu hình:
Theo sơ đồ được thể hiện trên, hai thực thể firewall được kết nối với nhau thông qua kết nối dành riêng LAN Failover Link. Điều này đòi hỏi hai thiết bị phải được cấu hình để có thể hoạt động được ở dạng stateful failover. Cổng Ethernet dành riêng phải được dự trữ cho kết nối LAN Failover Link. Liên kết này được kết nối với nhau thông qua cáp chéo Ethernet kết nối trực tiếp giữa hai thực thể.
II. CẤU HÌNH ACTIVE/STANDBY STATEFUL FAILOVER
.
.Căn cứ vào mô hình trên, chúng ta sẽ thảo luận tiến trình cấu hình hai ASA firewall hoạt động ở chế độ Active/Standby Failover từ bước một theo quy trình sau:
1: Chuẩn bị Primary (Active) Firewall
Lựa chọn một firewall đóng vai trò là thực thể ACTIVE. Sau đó kết nối các kết nối cần thiết tương ứng với từng cổng giao tiếp hướng tới các switch nội vùng và ngoại vùng như trong sơ đồ. Thực thể Standby Firewall lúc này vẫn chưa được kết nối vào hệ thống. Thiết lập các cổng giao
tiếp của Active firewall hoạt động ở chế độ duplex và tốc độ cố định. Chẳng hạn như, sử dụng câu lệnh speed 100 và câu lệnh duplex full ở chế độ cấu hình Interface Configuration. Thêm vào đó, cũng cần phải cấu hình tính năng PortFast trên các cổng giao tiếp của switch hướng tới các cổng giao tiếp của firewall.
Quy hoạch hai địa chỉ IP cho các giao tiếp của hai Firewall tương ứng với ngoại vùng và nội vùng hệ thống, một địa chỉ IP đượ gán cho thực thể Active và địa chỉ còn lại được gán cho thực thể Standby. Hai địa chỉ IP này tương ứng với các cổng giao tiếp phải cùng mạng subnet với nhau. Chẳng hạn như sơ đồ trên, giả sử rằng cổng giao tiếp Inside được quy hoạch địa chỉ 192.168.1.1/24 cho ACTIVE firewall và 192.168.1.2 cho STANDBY firewall. Tiếp sau đó, đối với các giao tiếp ngoại vùng Outside được quy hoạch địa chỉ 100.100.100.1/24 cho ACTIVE và 100.100.100.2/24 cho STANDBY. Lựa chọn một lớp mạng cục bộ private cho đường liên kết Dedicated LAN Failover Link giữa hai cổng giao tiếp G0/2 giữa hai thực thể firewall. Giả sử như lớp mạng 192.168.99.0/24.
2: Cấu hình liên kết LAN Failover Link trên thực thể Primary (Active) Firewall
Trên sơ đồ trên, ta sử dụng liên kết Gigabit Ethernet G0/2 làm liên kết LAN Stateful Failover Link. Cấu trúc câu lệnh liên quan đến cấu hình liên kết Failover được thực hiện như sau:
ASA(config)# failover lan unit {primary | secondary} Thiết lập thực thể ở dạng primary
ASA(config)# failover lan interface “Failover Name” “Physical Interface” Chỉ định cổng giao tiếp vật lý đóng vai trò liên kết Failover link
ASA(config)# failover link “Failover Name” “Physical Interface” Cho phép liên kết Failover
Link được đồng sử dụng trong vấn đề dự phòng Stateful Failover.
ASA(config)# failover interface ip “Failover Name” “ip_address” “netmask” standby “standby_ip_address”Chỉ định địa chỉ IP gán cho các cổng giao tiếp Active và Standby Failover.
ASA(config)# failover Bật cơ chế failover mechanism
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# interface GigabitEthernet0/2
ACTIVE-ASA(config-if)# no shut
ACTIVE-ASA(config)# failover lan unit primary
ACTIVE-ASA(config)# failover lan interface FAILOVER GigabitEthernet0/2
ACTIVE-ASA(config)# failover link FAILOVER GigabitEthernet0/2
ACTIVE-ASA(config)# failover interface ip FAILOVER 192.168.99.1 255.255.255.0 standby 192.168.99.2
ACTIVE-ASA(config)# failover
3: Cấu hình IP cho cổng giao tiếp Interface trên Primary (Active) Firewall
Mỗi cổng giao tiếp firewall trong cặp dự phòng failover phải được quy hoạch hai địa chỉ IP, một địa chỉ cho active firewall và địa chỉ còn lại cho standby. Trước khi cấu hình trên firewal tiếp theo, chúng ta cần cấu hình địa chỉ IP trên thực thể Primary. Cấu trúc của câu lệnh như sau:
ASA(config)# interface {Physical or Logical Interface}
ASA(config-if)# ip address “Active Unit IP” “netmask” standby “Standby Unit IP”
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# interface GigabitEthernet0/1
ACTIVE-ASA(config-if)# nameif inside
ACTIVE-ASA(config-if)# security-level 100
ACTIVE-ASA(config-if)# ip address 192.168.1.1 255.255.255.0 standby 192.168.1.2
ACTIVE-ASA(config)# interface GigabitEthernet0/0
ACTIVE-ASA(config-if)# nameif outside
ACTIVE-ASA(config-if)# security-level 0
ACTIVE-ASA(config-if)# ip address 100.100.100.1 255.255.255.0 standby 100.100.100.2
4: Cấu hình giám sát Monitoring trên những cổng giao tiếp của Primary (Active) Firewall
Một trong những sự kiện kích hoạt tiến trình dự phòng Failover là cổng giao tiếp của firewall xảy ra sự cố. Chúng ta có thể chỉ định cổng giao tiếp nào cần phải giám sát cho quá trình dự phòng Failover hoạt động. Theo sơ đồ minh họa ở trên, có thể tiến hành giám giám cả cổng giao tiếp Inside và Outside.
Câu lệnh thực hiện:
ASA(config)# monitor-interface “Interface Name”
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# monitor-interface inside
ACTIVE-ASA(config)# monitor-interface outside
Nếu một trong hai cổng giao tiếp “inside” hoặc “outside” xảy ra sự cố thì Active firewall sẽ tiến hành failover cho thực thể Standby. Chúng ta có thể loại trừ các cổng giao tiếp không tham gia vào tiến trình failover bằng câu lệnh no monitor-interface {interface name}.
5: Cấu hình liên kết LAN Failover Link trên Secondary (Standby) Firewall
Sau khi cấu hình xong thực thể Primary firewall xong, chúng ta có thể bắt đầu cấu hình thực thể Secondary. Cấu hình đòi hỏi duy nhất cần phải cấu hình trên Standby firewall là liên kết LAN Failover Link. Bật nguồn cho Standby Firewall và kết nối các cổng giao tiếp cần thiết tương ứng với các swtich cụ thể được thể hiện như trên sơ đồ. Vẫn chưa kết nối đường liên kết LAN Failover Link giữa hai thực thể firewall. Kết nối cáp điều khiển console và thực thi các câu lệnh:
Ví dụ (cho Secondary Firewall):
ASA(config)# interface GigabitEthernet0/2
ASA(config-if)# no shut
ASA(config)# failover lan unit secondary
ASA(config)# failover lan interface FAILOVER GigabitEthernet0/2
ASA(config)# failover link FAILOVER GigabitEthernet0/2
ASA(config)# failover interface ip FAILOVER 192.168.99.1 255.255.255.0 standby
192.168.99.2
ASA(config)# failover
Lưu ý rằng điểm khác biệt duy nhất trong cấu hình trên mà chúng tôi đã thực hiện khác biệt so với thực thể Primary là từ khóa “secondary”. Mặc dù chúng tôi cấu hình thực thể Secondary, địa chỉ IP được cấu hình vẫn tương tự như địa chỉ được cấu hình tại thực thể Primary.
6: Khởi động lại Secondary (Standby) Firewall
Sử dụng câu lệnh write memory để lưu cấu hình trên Secondary Firewall. Kết nối liên kết LAN Failover Link giữa hai thực thể Firewall và sử dụng câu lệnh reload để khởi động lại thực thể secondary.
Sau khi thực thể Secondary khởi động hoàn tất, cấu hình của Primary firewall được chép sang thực thể Secondary firewall. Đoạn thông điệp sau đây sẽ xuất hiện tại Primary firewall:
Beginning Configuration Replication: Sending to Mate : cho thấy tiến trình đồng bộ hóa giữa hai thực thể đang bắt đầu
End Configuration Replication to Mate : cho thấy tiến trình đồng bộ hóa đã hoàn tất
I. TÌM HIỂU CHẾ ĐỘ HOẠT ĐỘNG ACTIVE/STANDBY SATEFUL FAILOVER
Ở chế độ hoạt động “Active/Standby – A/S”, một thiết bị firewall hoạt động ở chế độ dự phòng failover được bố trí kèm với một firewall đang giữ vai trò hoạt động, điều khiển, xử lý tất các các luồng lưu lượng và chức năng bảo mật tương ứng. Trong trường hợp, firewall chính xảy ra sự cố thì firewall dự phòng sẽ đứng ra đảm nhận vai trò của firewall chính.Tính năng dự phòng “stateful failover” được thực hiện bằng cách, firewal active sẽ cập nhật thông tin trạng thái các phiên kết nối cho firewal standby. Ngay sau khi sự cố xảy ra thì firewal standby đã có đầy đủ thông tin để đảm nhận chức năng của firewal active mà không làm gián đoạn các kết nối của người sử dụng. Thông tin đồng bộ giữa hai thực thể “stateful failover” bao gồm các thông tin như thông tin dải địa chỉ IP Public, thông tin trạng thái, thông tin các phiên kết nối, thông tin quá trình NAT và trạng thái của chúng, thông tin trạng thái các phiên TCP/UDP và cả bảng ARP table và nhiều thông tin khác nữa.
.
Sơ đồ mạng trên minh hoạt cho mô hình hoạt động Active/Standby của firewal nhằm mục đích dự phòng failover. Các giao tiếp “inside” được kết nối đến cùng một switch nội vùng và các giao tiếp “outside” thì được kết nối đến cùng một switch ngoại vùng. Bên cạnh đó, hai thực thể firewal Active và Standby còn được kết nối với nhau thông qua sợi dây cáp chéo LAN Failover Link. Trong suốt quá trình hoạt động, firewal giữ vai trò ACTIVE đứng ra kiểm soát toàn bộ lưu lượng truyền thông giữa bên trong và bên ngoài hệ thống. Trong tình huống active firewall xảy ra sự cố, thực thể STANDBY sẽ đứng ra tiếp nhận các địa chỉ IP từ thực thể ACTIVE và vì thế lưu lượng vẫn tiếp tục được duy trì thông suốt. Tất cả các thông tin được đồng bộ thông qua kết nối LAN Failover Link và vì thế STANDBY firewall biết được toàn bộ thông tin kết nối khi nó đóng vai trò kiểm soát lưu lượng.
Có một số yêu cầu liên quan đến phần cứng và cả phần mềm để hai thực thể firewall tương tác được với nhau về mặt hoạt động cũng như cấu hình:
- Cả hai thực thể phải cùng kiểu model
- Phải có cùng thông số cấu hình phần cứng (số lượng và loại cổng giao tiếp)
- Phải cùng chế độ vận hành (routed hoặc transparent, single context hoặc multiple context)
- Phải có cùng dung lượng bộ nhớ Flash và RAM
- Phải cùng có những đặc tính “license” tương đồng nhau (chẳng hạn như phải cùng hỗ trợ khả năng mã hóa, số lượng context, hỗ trợ cùng số lượng kết nối VPN đến các đối tác)
- Đúng phiên bản cấp phép sử dụng license. Dòng sản phẩm Cisco ASA model 5505 và 5510 chỉ hỗ trợ khả năng dự phòng failover với giấy phép sử dụng Security Plus license. Với license này, ASA 5505 chỉ hỗ trợ kiểu dự phòng stateless Active/Standby. Tuy nhiên, ASA 5510 có khả năng hỗ trợ cả chế độ hoạt động Active/Standby và chế độ Active/Active. Tất cả các dòng sản phẩm cao hơn (5520, 5540, 5550) đều có khả năng hỗ trợ chế độ hoạt động Active/Standby và chế độ hoạt động Active/Active với license cơ bản nhất.
Theo sơ đồ được thể hiện trên, hai thực thể firewall được kết nối với nhau thông qua kết nối dành riêng LAN Failover Link. Điều này đòi hỏi hai thiết bị phải được cấu hình để có thể hoạt động được ở dạng stateful failover. Cổng Ethernet dành riêng phải được dự trữ cho kết nối LAN Failover Link. Liên kết này được kết nối với nhau thông qua cáp chéo Ethernet kết nối trực tiếp giữa hai thực thể.
II. CẤU HÌNH ACTIVE/STANDBY STATEFUL FAILOVER
.
.Căn cứ vào mô hình trên, chúng ta sẽ thảo luận tiến trình cấu hình hai ASA firewall hoạt động ở chế độ Active/Standby Failover từ bước một theo quy trình sau:
1: Chuẩn bị Primary (Active) Firewall
Lựa chọn một firewall đóng vai trò là thực thể ACTIVE. Sau đó kết nối các kết nối cần thiết tương ứng với từng cổng giao tiếp hướng tới các switch nội vùng và ngoại vùng như trong sơ đồ. Thực thể Standby Firewall lúc này vẫn chưa được kết nối vào hệ thống. Thiết lập các cổng giao
tiếp của Active firewall hoạt động ở chế độ duplex và tốc độ cố định. Chẳng hạn như, sử dụng câu lệnh speed 100 và câu lệnh duplex full ở chế độ cấu hình Interface Configuration. Thêm vào đó, cũng cần phải cấu hình tính năng PortFast trên các cổng giao tiếp của switch hướng tới các cổng giao tiếp của firewall.
Quy hoạch hai địa chỉ IP cho các giao tiếp của hai Firewall tương ứng với ngoại vùng và nội vùng hệ thống, một địa chỉ IP đượ gán cho thực thể Active và địa chỉ còn lại được gán cho thực thể Standby. Hai địa chỉ IP này tương ứng với các cổng giao tiếp phải cùng mạng subnet với nhau. Chẳng hạn như sơ đồ trên, giả sử rằng cổng giao tiếp Inside được quy hoạch địa chỉ 192.168.1.1/24 cho ACTIVE firewall và 192.168.1.2 cho STANDBY firewall. Tiếp sau đó, đối với các giao tiếp ngoại vùng Outside được quy hoạch địa chỉ 100.100.100.1/24 cho ACTIVE và 100.100.100.2/24 cho STANDBY. Lựa chọn một lớp mạng cục bộ private cho đường liên kết Dedicated LAN Failover Link giữa hai cổng giao tiếp G0/2 giữa hai thực thể firewall. Giả sử như lớp mạng 192.168.99.0/24.
2: Cấu hình liên kết LAN Failover Link trên thực thể Primary (Active) Firewall
Trên sơ đồ trên, ta sử dụng liên kết Gigabit Ethernet G0/2 làm liên kết LAN Stateful Failover Link. Cấu trúc câu lệnh liên quan đến cấu hình liên kết Failover được thực hiện như sau:
ASA(config)# failover lan unit {primary | secondary} Thiết lập thực thể ở dạng primary
ASA(config)# failover lan interface “Failover Name” “Physical Interface” Chỉ định cổng giao tiếp vật lý đóng vai trò liên kết Failover link
ASA(config)# failover link “Failover Name” “Physical Interface” Cho phép liên kết Failover
Link được đồng sử dụng trong vấn đề dự phòng Stateful Failover.
ASA(config)# failover interface ip “Failover Name” “ip_address” “netmask” standby “standby_ip_address”Chỉ định địa chỉ IP gán cho các cổng giao tiếp Active và Standby Failover.
ASA(config)# failover Bật cơ chế failover mechanism
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# interface GigabitEthernet0/2
ACTIVE-ASA(config-if)# no shut
ACTIVE-ASA(config)# failover lan unit primary
ACTIVE-ASA(config)# failover lan interface FAILOVER GigabitEthernet0/2
ACTIVE-ASA(config)# failover link FAILOVER GigabitEthernet0/2
ACTIVE-ASA(config)# failover interface ip FAILOVER 192.168.99.1 255.255.255.0 standby 192.168.99.2
ACTIVE-ASA(config)# failover
3: Cấu hình IP cho cổng giao tiếp Interface trên Primary (Active) Firewall
Mỗi cổng giao tiếp firewall trong cặp dự phòng failover phải được quy hoạch hai địa chỉ IP, một địa chỉ cho active firewall và địa chỉ còn lại cho standby. Trước khi cấu hình trên firewal tiếp theo, chúng ta cần cấu hình địa chỉ IP trên thực thể Primary. Cấu trúc của câu lệnh như sau:
ASA(config)# interface {Physical or Logical Interface}
ASA(config-if)# ip address “Active Unit IP” “netmask” standby “Standby Unit IP”
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# interface GigabitEthernet0/1
ACTIVE-ASA(config-if)# nameif inside
ACTIVE-ASA(config-if)# security-level 100
ACTIVE-ASA(config-if)# ip address 192.168.1.1 255.255.255.0 standby 192.168.1.2
ACTIVE-ASA(config)# interface GigabitEthernet0/0
ACTIVE-ASA(config-if)# nameif outside
ACTIVE-ASA(config-if)# security-level 0
ACTIVE-ASA(config-if)# ip address 100.100.100.1 255.255.255.0 standby 100.100.100.2
4: Cấu hình giám sát Monitoring trên những cổng giao tiếp của Primary (Active) Firewall
Một trong những sự kiện kích hoạt tiến trình dự phòng Failover là cổng giao tiếp của firewall xảy ra sự cố. Chúng ta có thể chỉ định cổng giao tiếp nào cần phải giám sát cho quá trình dự phòng Failover hoạt động. Theo sơ đồ minh họa ở trên, có thể tiến hành giám giám cả cổng giao tiếp Inside và Outside.
Câu lệnh thực hiện:
ASA(config)# monitor-interface “Interface Name”
Ví dụ (đối với Primary Firewall):
ACTIVE-ASA(config)# monitor-interface inside
ACTIVE-ASA(config)# monitor-interface outside
Nếu một trong hai cổng giao tiếp “inside” hoặc “outside” xảy ra sự cố thì Active firewall sẽ tiến hành failover cho thực thể Standby. Chúng ta có thể loại trừ các cổng giao tiếp không tham gia vào tiến trình failover bằng câu lệnh no monitor-interface {interface name}.
5: Cấu hình liên kết LAN Failover Link trên Secondary (Standby) Firewall
Sau khi cấu hình xong thực thể Primary firewall xong, chúng ta có thể bắt đầu cấu hình thực thể Secondary. Cấu hình đòi hỏi duy nhất cần phải cấu hình trên Standby firewall là liên kết LAN Failover Link. Bật nguồn cho Standby Firewall và kết nối các cổng giao tiếp cần thiết tương ứng với các swtich cụ thể được thể hiện như trên sơ đồ. Vẫn chưa kết nối đường liên kết LAN Failover Link giữa hai thực thể firewall. Kết nối cáp điều khiển console và thực thi các câu lệnh:
Ví dụ (cho Secondary Firewall):
ASA(config)# interface GigabitEthernet0/2
ASA(config-if)# no shut
ASA(config)# failover lan unit secondary
ASA(config)# failover lan interface FAILOVER GigabitEthernet0/2
ASA(config)# failover link FAILOVER GigabitEthernet0/2
ASA(config)# failover interface ip FAILOVER 192.168.99.1 255.255.255.0 standby
192.168.99.2
ASA(config)# failover
Lưu ý rằng điểm khác biệt duy nhất trong cấu hình trên mà chúng tôi đã thực hiện khác biệt so với thực thể Primary là từ khóa “secondary”. Mặc dù chúng tôi cấu hình thực thể Secondary, địa chỉ IP được cấu hình vẫn tương tự như địa chỉ được cấu hình tại thực thể Primary.
6: Khởi động lại Secondary (Standby) Firewall
Sử dụng câu lệnh write memory để lưu cấu hình trên Secondary Firewall. Kết nối liên kết LAN Failover Link giữa hai thực thể Firewall và sử dụng câu lệnh reload để khởi động lại thực thể secondary.
Sau khi thực thể Secondary khởi động hoàn tất, cấu hình của Primary firewall được chép sang thực thể Secondary firewall. Đoạn thông điệp sau đây sẽ xuất hiện tại Primary firewall:
Beginning Configuration Replication: Sending to Mate : cho thấy tiến trình đồng bộ hóa giữa hai thực thể đang bắt đầu
End Configuration Replication to Mate : cho thấy tiến trình đồng bộ hóa đã hoàn tất