Bài viết sẽ tập hợp các lệnh (CLI) hữu ích nhất mà bạn thường dùng để cấu hình trên tường lửa Firewall Cisco. Từ phiên bản ASA 8.3 trở lên (bao gồm cả 9.x), cú pháp lệnh có thay đổi một chút đối với một số lệnh ở mỗi lần cập nhật phiên bản mới nhưng phần lớn các cấu hình cốt lõi vẫn giữ nguyên. Tổng hợp các lệnh cấu hình tường lửa Firewall Cisco ASA quan trọng nhất: Lệnh bắt đầu cấu hình tường lửa (Start Configuring the firewall) ciscoasa> enable Password: [Vào “Chế độ đặc quyền”. Điều này sẽ yêu cầu nhập mật khẩu "bật"] ciscoasa# configure terminal ciscoasa(config)# [Vào “Chế độ cấu hình chung” để bắt đầu định cấu hình thiết bị]
Lệnh xem và lưu cấu hình (Viewing and Saving the configuration) ciscoasa# show running-config [Hiển thị cấu hình hiện đang chạy] ciscoasa# show startup-config [Hiển thị cấu hình được lưu trữ trên thiết bị. Đây file sẽ được tải nếu bạn khởi động lại tường lửa] ciscoasa# copy run start or ciscoasa# write memory [Lưu cấu hình đang chạy để nó không bị mất nếu bạn khởi động lại]
Lệnh quản lý phần mềm IOS (Image Software Management) ciscoasa# copy tftp flash [Sao chép tệp IOS từ TFTP sang Flash của ASA] ciscoasa#config term ciscoasa(config)# boot system flash:/asa911-k8.bin [Ở lần khởi động lại tiếp theo, tường lửa sẽ sử dụng IOS phần mềm “asa911-k8.bin” từ flash]
Lệnh cấu hình Mật khẩu và Người dùng (Passwords and Users) ciscoasa(config)# enable password TheGioiMang@20@! [Bạn phải tạo một mật khẩu “enable” mạnh để cấp quyền truy cập vào chế độ cấu hình của thiết bị] ciscoasa(config)#username ciscoadmin password adminpassword privilege 15 [Tạo local user account và cấp quyền đặc biệt 15, nghĩa là quyền truy cập của thành viên quản trị]
Lệnh thay đổi tên thiết bị (Change Device Hostname) ciscoasa(config)# hostname TGM-DATA-FW TGM-DATA-FW(config)# [Đặt tên cho thiết bị]
Lênh cấu hình quyền truy cập quản lý an toàn vào tường lửa (Configure Secure Management Access to the Firewall) ciscoasa(config)# crypto key generate rsa modulus 2048 [Tạo khóa SSH] ciscoasa(config)#aaa authentication ssh console LOCAL [Thiết bị sẽ xác thực quyền truy cập của người dùng SSH từ cơ sở dữ liệu người dùng LOCAL] ciscoasa(config)#username admin password adminpassword privilege 15 [Tạo tài khoản quản trị viên cục bộ] ciscoasa(config)#ssh 192.168.1.10 255.255.255.255 inside [Chỉ cho phép truy cập SSH từ máy chủ 192.168.1.10 từ giao diện “bên trong”]
Lệnh cấu hình giao diện và mức độ bảo mật (Interface Configuration and Security Levels) ciscoasa(config)# interface GigabitEthernet0/1 ciscoasa(config-if)# nameif DMZ ciscoasa(config-if)# ip address 192.168.1.2 255.255.255.0 ciscoasa(config-if)# security-level 50 ciscoasa(config-if)# no shutdown Các lệnh Interface Sub-commands cần thiết mà bạn cần phải cấu hình để giao diện cho lưu lượng truy cập đi qua như sau: nameif “interface name”: Gán tên cho một giao diện ip address “ip_address” “subnet_mask” : Gán địa chỉ IP cho giao diện security-level “number 0 to 100” : Chỉ định mức bảo mật cho giao diện no shutdown : Theo mặc định, tất cả các giao diện đều bị tắt, vì vậy hãy bật chúng.
Lệnh cấu hình định tuyến tĩnh và mặc định (Static and Default Routes) ciscoasa(config)# route outside 0.0.0.0 0.0.0.0 100.1.1.1 [Cấu hình một tuyến đường mặc định qua giao diện “bên ngoài” với IP cổng là 100.1.1.1] ciscoasa(config)# route inside 192.168.2.0 255.255.255.0 192.168.1.1 [Cấu hình một tuyến đường tĩnh thông qua giao diện “bên trong”. Để truy cập mạng 192.168.2.0/24 đi qua cổng IP 192.168.1.1]
Lệnh dịch địa chỉ mạng - Network Address Translation (NAT) ciscoasa(config)# object network internal_lan ciscoasa(config-network-object)# subnet 192.168.1.0 255.255.255.0 ciscoasa(config-network-object)# nat (inside,outside) dynamic interface [Cấu hình PAT cho mạng LAN nội bộ (192.168.1.0/24) để truy cập Internet bằng giao diện bên ngoài] ciscoasa(config)# object network obj_any ciscoasa(config-network-object)# subnet 0.0.0.0 0.0.0.0 ciscoasa(config-network-object)# nat (any,outside) dynamic interface [Cấu hình PAT cho tất cả (“any”) mạng để truy cập Internet bằng giao diện bên ngoài] ciscoasa(config)# object network web_server_static ciscoasa(config-network-object)# host 192.168.1.1 ciscoasa(config-network-object)# nat (DMZ , outside) static 100.1.1.1 [Cấu hình NAT tĩnh. IP riêng 192.168.1.1 trong DMZ sẽ được ánh xạ tĩnh thành IP công cộng 100.1.1.1 ở vùng bên ngoài] ciscoasa(config)# object network web_server_static ciscoasa(config-network-object)# host 192.168.1.1 ciscoasa(config-network-object)# nat (DMZ , outside) static 100.1.1.1 service tcp 80 80 [Cấu hình NAT tĩnh. IP riêng 192.168.1.1 trong DMZ sẽ được ánh xạ tĩnh thành IP công cộng 100.1.1.1 ở vùng bên ngoài trên cổng 80]
Lệnh tạo danh sách kiểm soát truy cập - Access Control Lists (ACL) ciscoasa(config)# access-list OUTSIDE_IN extended permit tcp any host 192.168.1.1 eq 80 [Tạo ACL để cho phép truy cập TCP từ IP nguồn “bất kỳ” đến máy chủ 192.168.1.1 cổng 80] ciscoasa(config)# access-group OUTSIDE_IN in interface outside [Áp dụng ACL ở trên tại giao diện “bên ngoài” cho lưu lượng truy cập “vào” giao diện] ciscoasa(config)# access-list INSIDE_IN extended deny ip host 192.168.1.1 any ciscoasa(config)# access-list INSIDE_IN extended permit ip any any ciscoasa(config)# access-group INSIDE_IN in interface inside [Tạo ACL để từ chối tất cả lưu lượng truy cập từ máy chủ 192.168.1.1 đến bất kỳ điểm đến nào và cho phép mọi thứ khác. ACL này sau đó được áp dụng tại giao diện “bên trong” cho lưu lượng truy cập “vào” giao diện]
Lệnh tạo nhóm đối tượng (Object Groups) ciscoasa(config)# object-group network WEB_SRV ciscoasa(config-network)# network-object host 192.168.1.1 ciscoasa(config-network)# network-object host 192.168.1.2 [Tạo một nhóm mạng có hai máy chủ (192.168.1.1 và 192.168.1.2). Nhóm này có thể được sử dụng trong các lệnh cấu hình khác như ACL] ciscoasa(config)# object-group network DMZ_SUBNETS ciscoasa(config-network)# network-object 10.1.1.0 255.255.255.0 ciscoasa(config-network)# network-object 10.2.2.0 255.255.255.0 [Tạo một nhóm mạng có hai mạng con (10.1.1.0/24 và 10.2.2.0/24). Nhóm này có thể được sử dụng trong các lệnh cấu hình khác như ACL] ciscoasa(config)# object-group service DMZ_SERVICES tcp ciscoasa(config-service)# port-object eq http ciscoasa(config-service)# port-object eq https ciscoasa(config-service)# port-object range 21 23 [Tạo một nhóm dịch vụ có nhiều cổng. Nhóm này có thể được sử dụng trong các lệnh cấu hình khác như ACL] ciscoasa(config)# access-list OUTSIDE-IN extended permit tcp any object-group DMZ_SUBNETS object-group DMZ_SERVICES [Ví dụ về việc sử dụng các nhóm đối tượng trong ACL]
Lệnh trên các giao diện con và VLAN (Subinterfaces and VLANs) ciscoasa(config)# interface gigabitethernet 0/1 ciscoasa(config-if)# no nameif ciscoasa(config-if)# no security-level ciscoasa(config-if)# no ip address ciscoasa(config-if)# exit ciscoasa(config)# interface gigabitethernet 0/1.1 ciscoasa(config-subif)# vlan 10 ciscoasa(config-subif)# nameif inside1 ciscoasa(config-subif)# security-level 80 ciscoasa(config-subif)# ip address 192.168.1.1 255.255.255.0 ciscoasa(config)# interface gigabitethernet 0/1.2 ciscoasa(config-subif)# vlan 20 ciscoasa(config-subif)# nameif inside2 ciscoasa(config-subif)# security-level 90 ciscoasa(config-subif)# ip address 192.168.2.1 255.255.255.0 [Trong ví dụ trên, chúng ta có một giao diện vật lý (GE0 / 1) được chia thành hai giao diện con (GE0 / 1.1 và GE0 / 1.2) thuộc hai VLAN khác nhau với các IP và mức độ bảo mật khác nhau]
Lệnh thiết lập cài đặt thời gian (Clock Settings) ciscoasa# clock set 18:30:00 Aug 10 2016 [Đặt ngày giờ] ciscoasa(config)# clock timezone MST -7 [Đặt múi giờ thành MST với chênh lệch -7 giờ so với UTC] ciscoasa(config)# clock summer-time MST recurring 1 Sunday April 2:00 last Sunday October 2:00 [Đặt daylight saving time]
Lệnh ghi nhật ký (Logging Commands) ciscoasa(config)# logging enable [Bật ghi nhật ký] ciscoasa(config)# logging timestamp [Đính kèm dấu thời gian để ghi nhật ký tin nhắn] ciscoasa(config)# logging buffer-size 64000 [Đặt bộ đệm nhật ký thành 64kB] ciscoasa(config)# logging buffered warnings [Gửi thông báo nhật ký cảnh báo đến nhật ký đệm] ciscoasa(config)# logging asdm errors [Gửi thông báo nhật ký lỗi đến quản lý ASDM] ciscoasa(config)# logging host inside 192.168.1.30 ciscoasa(config)# logging trap errors [Gửi thông báo nhật ký lỗi đến máy chủ nhật ký hệ thống 192.168.1.30]
Lệnh bật quyền truy cập quản lý với ASDM (Enable Management Access with ASDM) ciscoasa(config)# asdm image disk0:/asdm-647.bin [Vị trí của file IOS ASDM trên ASA] ciscoasa(config)# http server enable [Bật máy chủ http trên thiết bị] ciscoasa(config)# http 10.10.10.0 255.255.255.0 inside [Cho thiết bị biết địa chỉ IP nào được phép kết nối với HTTP (ASDM)] ciscoasa(config)#username admin password adminpass [Cấu hình user / pass để đăng nhập bằng ASDM]
Lệnh cấu hình DHCP (Gán địa chỉ IP tự động đến PCs từ thiết bị ASA) ciscoasa(config)# dhcpd address 192.168.1.101-192.168.1.110 inside [Tạo một nhóm địa chỉ DHCP để gán cho các máy khách. Nhóm địa chỉ này phải nằm trên cùng một mạng con với giao diện ASA] ciscoasa(config)# dhcpd dns 209.165.201.2 209.165.202.129 [Máy chủ DNS để gán cho máy khách qua DHCP] ciscoasa(config)# dhcpd enable inside [Bật máy chủ DHCP trên giao diện bên trong]
Lệnh cho phép lưu lượng truy cập giữa các mức độ bảo mật giống nhau (Permit Traffic Between Same Security Levels) ciscoasa(config)# same-security-traffic permit inter-interface [Cho phép giao tiếp giữa các giao diện khác nhau có cùng mức độ bảo mật.] ciscoasa(config)# same-security-traffic permit intra-interface [Cho phép lưu lượng truy cập vào và thoát ra cùng một giao diện.]
Lệnh hiển thị (Show) xác minh và khắc phục sự cố hữu ích (Useful Verification and Troubleshooting Commands) ciscoasa# show access-list OUTSIDE-IN [Hiển thị số lần truy cập trên ACL với tên " OUTSIDE-IN ". Nó cho biết mỗi mục có bao nhiêu lần truy cập trên ACL] Ví dụ: access-list OUTSIDE-IN line 1 extended permit tcp 100.100.100.0 255.255.255.0 10.10.10.0 255.255.255.0 eq telnet (hitcnt=15) 0xca10ca21 ciscoasa# show clock [Xác minh rằng ngày và giờ trên thiết bị] ciscoasa# show conn [Lệnh show conn hiển thị số lượng kết nối TCP và UDP đang hoạt động, đồng thời cung cấp thông tin về các loại kết nối khác nhau.] ciscoasa# show conn all [Hiển thị tất cả các kết nối thông qua thiết bị] ciscoasa# show conn state up,http_get,h323,sip [Hiển thị các kết nối HTTP GET, H323 và SIP ở trạng thái "up"] ciscoasa# show conn count 54 in use, 123 most used [Hiển thị tổng số kết nối] ciscoasa# show cpu usage [hiển thị việc sử dụng CPU] ciscoasa# show crypto ipsec sa [hiển thị thông tin chi tiết về IPSEC VPN như các gói được mã hóa / giải mã, đồng đẳng đường hầm, v.v.] ciscoasa# show crypto isakmp sa [hiển thị chi tiết nếu một đường hầm IPSEC VPN có Up hay không. MM_ACTIVE có nghĩa là đường hầm đã Up] ciscoasa# show disk [Liệt kê nội dung của đĩa flash bên trong của ASA] ciscoasa# show environment [Hiển thị thông tin vận hành về các thành phần hệ thống phần cứng như CPU, quạt, nguồn điện, nhiệt độ, v.v.] ciscoasa# show failover [Hiển thị thông tin về trạng thái chuyển đổi dự phòng Active/Standby] ciscoasa# show interface [Hiển thị thông tin về Giao diện, chẳng hạn như trạng thái dòng, gói đã nhận / gửi, địa chỉ IP, v.v.] ciscoasa# show local-host [Hiển thị trạng thái mạng của các máy cục bộ. Máy cục bộ được tạo cho bất kỳ máy nào chuyển tiếp lưu lượng truy cập đến hoặc qua ASA.] ciscoasa# show memory [Hiển thị bộ nhớ vật lý tối đa và bộ nhớ trống hiện tại] ciscoasa# show route [Hiển thị bảng định tuyến] ciscoasa# show version [Hiển thị phiên bản phần mềm, cấu hình phần cứng, khóa cấp phép và dữ liệu thời gian hoạt động liên quan] ciscoasa# show xlate [Hiển thị thông tin về phiên NAT]