CÁC BƯỚC NAT MỘT DẢI MẠNG LAN TRUY CẬP RA NGOÀI INTERNET TRÊN FIRE WALL CISCO
10 - CÁC BƯỚC NAT MỘT DẢI MẠNG LAN TRUY CẬP RA NGOÀI INTERNET TRÊN FIRE WALL CISCO ỨNG DỤNG OBJECT
I. ỨNG DỤNG CỦAOBJECT TRONG FIREWALL
Trong cấu trúc quản lý của Firewall Cisco (cả dòng Cisco ASA truyền thống và dòng thế hệ mới Cisco Firepower/FTD), Object (Đối tượng) là một khái niệm nền tảng và cực kỳ quan trọng. Thay vì nhập trực tiếp các giá trị IP, Port, hay Domain một cách thủ công vào các policy, kỹ sư sẽ đóng gói chúng thành các Object để tái sử dụng.
Dưới đây là các ứng dụng thực tế và lợi ích lớn nhất của Object trong Firewall Cisco:
1. Quản lý cấu trúc mạng tường minh và chuyên nghiệp
Thay vì nhìn vào một bảng luật (Access Control List - ACL) dày đặc các địa chỉ IP thuần túy khó nhớ, Object giúp bạn định nghĩa hệ thống mạng bằng tên gọi tường minh.
Network Object: Đóng gói một IP đơn lẻ, một dải IP (Range) hoặc một subnet mạng.
Ví dụ: Tạo object Obj_Web_Server chứa IP 192.168.10.10, object Subnet_LAN_HN chứa 172.16.1.0/24.
Service Object: Đóng gói các giao thức (TCP/UDP/ICMP) và các cổng dịch vụ (Port).
Ví dụ: Tạo object Svc_ERP_Port chứa cổng TCP 8080.
Ứng dụng: Khi viết luật cho phép phòng LAN ở Hà Nội truy cập Web Server qua cổng ERP, câu lệnh hoặc policy sẽ trở nên rất rõ ràng:
Permit Subnet_LAN_HN to Obj_Web_Server service Svc_ERP_Port
2. Gom cụm tài nguyên bằng Object Group (Tối ưu hóa Policy)
Đây là ứng dụng mạnh mẽ nhất giúp rút gọn cấu hình Firewall từ hàng ngàn dòng xuống còn vài chục dòng. Object Group cho phép bạn gom nhiều Object đơn lẻ có cùng tính chất lại với nhau.
Network Object Group: Gom nhiều máy chủ hoặc nhiều chi nhánh LAN lại một nhóm.
Ví dụ: Nhóm Grp_Doi_Tac_FDI chứa IP của 10 nhà máy đối tác khác nhau.
Service Object Group: Gom nhiều port dịch vụ lại một nhóm.
Ví dụ: Nhóm Grp_Allowed_Ports chứa các cổng 80, 443, 22, 3389.
3. Cấu hình NAT tự động (Auto NAT/Object NAT)
Trên Firewall Cisco, Object là thành phần bắt buộc khi bạn muốn cấu hình Auto NAT (phương pháp cấu hình NAT đơn giản và phổ biến nhất trên Cisco ASA/FTD).
Cách hoạt động: Bạn khai báo cấu hình NAT ngay bên trong phần định nghĩa của chính Object đó.
Ứng dụng: Khi tạo Network Object cho một Server (192.168.10.20), bạn đính kèm luôn lệnh NAT bên trong để ánh xạ nó ra IP Public. Firewall sẽ tự động hiểu và sinh ra các rule NAT tương ứng mà bạn không cần phải viết các hàm Manual NAT phức tạp bên ngoài.

4. Cập nhật hệ thống nhanh chóng, không gián đoạn (Centralized Update)
Trong môi trường doanh nghiệp, nhân sự hoặc IP máy chủ thường xuyên thay đổi. Nếu cấu hình theo kiểu thủ công (nhập IP trực tiếp vào Rule), mỗi khi thay đổi IP Server, bạn phải vào từng Rule liên quan để xóa IP cũ và thêm IP mới.
Ứng dụng của Object: Object hoạt động như một biến số trong lập trình. Khi một máy chủ thay đổi IP (hoặc doanh nghiệp thêm một dải IP LAN mới), bạn chỉ cần cập nhật lại giá trị IP bên trong Object đó một lần duy nhất.
Toàn bộ Access Control List (ACL), NAT Policy, VPN Policy... đang gọi tên Object đó sẽ tự động áp dụng giá trị mới ngay lập tức mà không làm gián đoạn các dịch vụ khác.
5. Ứng dụng nâng cao trên Cisco Firepower (FTD) với Object thế hệ mới
Nếu anh đang dịch chuyển hoặc quản lý dòng Firewall thế hệ mới (Next-Generation Firewall) chạy phần mềm FTD quản lý qua FMC/FDM, Object còn được mở rộng ra rất nhiều ứng dụng nâng cao:
URL Objects/Geolocation Objects: Định nghĩa Object dựa trên các trang web cụ thể hoặc theo quốc gia (vùng địa lý) để chặn hoặc cho phép traffic theo nhu cầu bảo mật nghiêm ngặt.
Security Intelligence & Application Filters: Nhóm các ứng dụng (như Facebook, YouTube, các phần mềm chat) thành các Object để kiểm soát hành vi người dùng một cách trực quan thay vì chặn theo IP/Port truyền thống.
II. CÁCH NAT MỘT DẢI MẠNG LAN SỬ DỤNGOBJECT TRONG FIREWALL:
Để NAT một dải IP từ mạng LAN ra ngoài Internet trên thiết bị Firewall Cisco, bạn cần thực hiện các bước sau. Tôi sẽ trình bày chi tiết từng bước, giả định rằng bạn đã có quyền truy cập cấu hình vào thiết bị Cisco Firewall (thông qua CLI hoặc ASDM).
Giả định:
Interface bên trong (LAN): inside (thường là interface kết nối với mạng nội bộ của bạn)
Interface bên ngoài (WAN): outside (thường là interface kết nối với Internet)
Dải IP LAN cần NAT: 192.168.10.0/24
Địa chỉ IP Public hoặc dải IP Public có sẵn để NAT: Giả sử bạn có một địa chỉ IP Public duy nhất là 203.0.113.5 hoặc một dải IP Public là 203.0.113.5 - 203.0.113.10.

Các bước thực hiện:
1. Định nghĩa Network Object cho dải IP LAN:
Bước này giúp bạn tạo một đối tượng mạng đại diện cho dải IP LAN của mình. Điều này giúp cho việc cấu hình trở nên dễ dàng và trực quan hơn.
FdcCiscoasa(config)# object network obj_lan
FdcCiscoasa(config-objetc)# subnet 192.168.10.0 255.255.255.0
Object network Obj_Lan: Tạo một đối tượng mạng có tên là Obj_Lan. Bạn có thể chọn một tên khác mô tả mạng LAN của mình.
Subnet 192.168.10.0 255.255.255.0: Định nghĩa dải IP và subnet mask của mạng LAN. Trong trường hợp này là dải 192.168.10.0/24.
2. Định nghĩa Network Object cho địa chỉ IP Public (nếu cần):
Nếu bạn NAT sang một địa chỉ IP Public cụ thể (không phải là địa chỉ IP của interface outside), bạn cần định nghĩa một network object cho địa chỉ đó. Nếu bạn muốn NAT sang địa chỉ IP của interface outside, bạn có thể bỏ qua bước này và sử dụng từ khóa interface trong bước 3.
FdcCiscoasa(config)# object network obj_public_ip
FdcCiscoasa(config-objetc)# host 203.0.113.5
object network obj_public_ip: Tạo một đối tượng mạng có tên là obj_public_ip.
host 203.0.113.5: Định nghĩa địa chỉ IP Public. Nếu bạn có một dải IP Public, bạn có thể sử dụng lệnh range thay vì host:
FdcCiscoasa(config)# object network obj_public_range
FdcCiscoasa(config-objetc)# range 203.0.113.5 203.0.113.10

3. Cấu hình NAT (Network Address Translation):
Có hai loại NAT phổ biến bạn có thể cấu hình:
Dynamic PAT (Port Address Translation)/NAT Overload: Nhiều địa chỉ IP riêng trong mạng LAN được ánh xạ đến một địa chỉ IP Public duy nhất (thường là địa chỉ IP của interface outside) bằng cách sử dụng các cổng khác nhau. Đây là cấu hình phổ biến nhất cho phép nhiều thiết bị trong mạng LAN truy cập Internet.
FdcCiscoasa(config)# nat (inside,outside) dynamic interface
Hoặc, nếu bạn muốn sử dụng network object đã tạo cho dải IP LAN:
FdcCiscoasa(config)# nat (inside,outside) source dynamic obj_lan interface
Static NAT: Một địa chỉ IP riêng trong mạng LAN được ánh xạ tĩnh đến một địa chỉ IP Public cụ thể. Thường được sử dụng cho các server cần truy cập trực tiếp từ Internet.
FdcCiscoasa(config)# nat (inside,outside) source static 192.168.10.10 203.0.113.5
Trong ví dụ này, địa chỉ IP riêng 192.168.10.10 sẽ được ánh xạ tĩnh đến địa chỉ IP Public 203.0.113.5.
Nếu bạn muốn NAT một dải IP LAN sang một dải IP Public (one-to-one mapping), bạn có thể sử dụng lệnh sau (cần đảm bảo số lượng địa chỉ IP trong hai dải là bằng nhau):
FdcCiscoasa(config)# nat (inside,outside) source static obj_lan obj_public_range
Giải thích lệnh NAT:
nat (inside,outside): Chỉ định interface bên trong (inside) và interface bên ngoài (outside) tham gia vào quá trình NAT. Lưu lượng truy cập đi từ inside ra outside sẽ được NAT.
dynamic: Chỉ định kiểu NAT động (PAT/Overload).
static: Chỉ định kiểu NAT tĩnh.
source: Xác định nguồn lưu lượng truy cập cần NAT.
obj_lan: Tham chiếu đến network object đã tạo cho dải IP LAN.
interface: Sử dụng địa chỉ IP của interface outside làm địa chỉ IP Public cho NAT.
obj_public_ip hoặc obj_public_range: Tham chiếu đến network object đã tạo cho địa chỉ hoặc dải IP Public.
192.168.10.10: Địa chỉ IP riêng cần NAT tĩnh.
203.0.113.5: Địa chỉ IP Public được ánh xạ tới.
4. Cấu hình Access Control List (ACL) (nếu cần):
Trong một số trường hợp, bạn có thể cần cấu hình ACL trên interface outside để cho phép lưu lượng truy cập từ Internet đến các địa chỉ IP Public đã được NAT tĩnh. Điều này không cần thiết cho NAT động (PAT/Overload) khi lưu lượng truy cập được khởi tạo từ bên trong mạng LAN.
Ví dụ, nếu bạn đã cấu hình NAT tĩnh cho server có địa chỉ 192.168.10.10 sang 203.0.113.5 và bạn muốn cho phép truy cập HTTP (port 80) từ Internet vào server này, bạn cần cấu hình ACL trên interface outside:
FdcCiscoasa(config)# access-list outside_in extended permit tcp any host 203.0.113.5 eq 80
FdcCiscoasa(config)# access-group outside_in in interface outside
access-list outside_in extended permit tcp any host 203.0.113.5 eq 80: Cho phép lưu lượng TCP từ bất kỳ địa chỉ IP nào đến địa chỉ 203.0.113.5 trên port 80.
access-group outside_in in interface outside: Áp dụng ACL outside_in vào interface outside theo hướng vào (in).
5. Lưu cấu hình:
Sau khi hoàn thành các bước cấu hình, bạn cần lưu lại cấu hình để các thay đổi có hiệu lực sau khi перезагрузка (reboot) thiết bị.
FdcCiscoasa(config)# Ciscoasa(config)# write memory
Hoặc
FdcCiscoasa(config)# copy running-config startup-config