Sau thời gian nghiên cứu firewall và tôi đã cấu hình các ASA của cisco xin chia sẽ cũng các bạn những kiến thức cơ bản sau:
-------------------------------------------------------------------------------------------------------------------------------------------------------------
Các công nghệ Firewall: có 3 công nghệ chính
- Packet filtering
+ Ưu điểm: đơn giản, xử lý nhanh.
+ Nhược điểm: Khó quản lý ACL khi ACL cồng kềnh. Khó quản lý với 1 số vấn đề giao thức, kết nối đặc biệt.
- Proxy (ủy quyền – mở gói tin tới tầng 7):
+ Ưu điểm: vì kiểm soát gói tin tới tầng 7 – content nên kiểm soát chặt chẽ hơn.
+ Nhược điểm: xử lý chậm và hạn chế với nhiều giao thức.
- Statefull inspection:
+ Ưu điểm: Quản lý mềm dẻo và linh hoạt hơn tùy nhu cầu của người quản trị
+ Nhược điểm: Xử lý chậm hơn Packet Filtering vì còn quá trình kiểm tra trạng thái
firewall Cisco
pixfirewall#configure terminal
pixfirewall(config)#hostname pix1
pix1(config)#
* Cấu hình enable password và telnet password *
pix1(config)#enable pasword bkna
pix1(config)#passwd bkis
* Định danh các Public Server, AAA_Server và InsideHost *
pix1(config)#names
pix1(config)#name 172.16.1.3 DNS_Server
pix1(config)#name 172.16.1.4 Web_Server
pix1(config)#name 172.16.1.5 Mail_Server
pix1(config)#name 172.16.1.6 FTP_Server
pix1(config)#name 10.0.4.5 AAA_Server
pix1(config)#name 10.0.2.10 InsideHost
ASA Firewall trong hệ thống sẽ hoạt động như một thiết bị lớp 3, vì vậy ta phải cấu hình các interface cho firewall. Lưu ý là interface Ethernet 0 kết nối đến vùng outside nên có cấp độ bảo mật thấp nhất (cấp độ 0), Ethernet 1 kết nối đến vùng inside nên có cấp độ bảo mật cao nhất (cấp độ 100), còn Ethernet 2 kết nối đến vùng DMZ nên có cấp độ bảo mật trung bình (cấp độ 50).
* Cấu hình cho interface Ethernet 0 (ouside) *
pix1(config)#interface e0
pix1(config-if)#name-if outside // đặt tên cho interface
pix1(config-if)#ip address 192.168.1.2 255.255.255.240
pix1(config-if)#speed 100
pix1(config-if)#duplex full
pix1(config-if)#security 0 // thiết lập cấp độ bảo mật
pix1(config-if)#no shutdown
pix1(config-if)#exit
* Cấu hình cho interface Ethernet 1 (inside) *
pix1(config)#interface e1
pix1(config-if)#name-if inside
pix1(config-if)#ip address 10.0.1.1 255.255.255.0
pix1(config-if)#speed 100
pix1(config-if)#duplex full
pix1(config-if)#security 100
pix1(config-if)#no shutdown
pix1(config-if)#exit
* Cấu hình cho interface Ethernet 2 (DMZ) *
pix1(config)#interface e2
pix1(config-if)#name-if dmz
pix1(config-if)#ip address 172.16.1.1 255.255.255.0
pix1(config-if)#speed 100
pix1(config-if)#duplex full
pix1(config-if)#security 50
pix1(config-if)#no shutdown
pix1(config-if)#exit
Œ Cấu hình giao thức sử dụng cho AAA Server
pix1(config)#aaa-server MyRadius protocol radius
pix1(config-aaa-server-group)#accounting-mode single
pix1(config-aaa-server-group)#exit
Định danh AAA Server và khóa chia sẻ
pix1(config)#aaa-server MyRadius (inside) host AAA_Server
pix1(config-aaa-server-host)#key secretkey
pix1(config-aaa-server-host)#exit
Ž Cấu hình yêu cầu xác thực cho các lưu lượng đi qua PIX Firewall
pix1(config)#aaa authentication include any outside 0 0 0 0 MyRadius
pix1(config)#aaa authentication include any inside 0 0 0 0 MyRadius
pix1(config)#aaa authentication include any inside 0 0 172.16.1.0 255.255.255.0 MyRadius
pix1(config)#aaa authentication telnet console MyRadius
pix1(config)#timeout uauth 0:10:00 absolute
Cấu hình dự phòng (Failover)
Để đảm bảo khả năng dự phòng cho hệ thống, ta cần sử dụng 2 PIX Firewall và cấu hình dự phòng trên 2 firewall. Lưu ý là các interface của thiết bị chính (Primary) và phụ (Secondary) cùng được kết nối đến các vùng như nhau, riêng interface Ethernet 3 được dùng làm failover link giữa hai thiết bị. Dưới đây là các bước cấu hình dự phòng trên thiết bị chính (Primary)
* Kích hoạt interface Ethernet 3 dành cho failover link *
pix1(config)#interface e3
pix1(config-if)#no shutdown
pix1(config-if)#exit
* Đặt địa chỉ IP dự phòng (stanby) cho mỗi interface *
--------------------- Ethernet 0 -----------------------
pix1(config)#interface e0
pix1(config-if)#ip address 192.168.1.2 255.255.255.0 standby 192.168.1.7
pix1(config-if)#exit
----------------------- Ethernet 1 ---------------------
pix1(config)#interface e1
pix1(config-if)#ip address 10.0.1.1 255.255.255.0 standby 10.0.1.7
pix1(config-if)#exit
----------------------- Ethernet 2 ---------------------
pix1(config)#interface e2
pix1(config-if)#ip address 172.16.1.1 255.255.255.0 standby 172.16.1.7
pix1(config-if)#exit
Tiếp theo, ta cấu hình dự phòng LAN-base cho hệ thống thông qua interface Ethernet 3 đã kích hoạt ở trên. Các thông tin failover sẽ được chuyển đi qua failover link này
* Cấu hình failover LAN-base *
pix1(config)#failover lan interface MyFailover e3
pix1(config)#failover interface ip 172.16.2.1 255.255.255.0 standby 172.16.2.7
pix1(config)#failover lan enable
Cuối cùng ta khai báo khóa dành cho failover, vai trò của thiết bị (Primary hay Secondary) và kích hoạt tính năng failover
* Khai báo khóa dành cho failover *
pix1(config)#failover lan key failoverkey
* Khai báo vai trò thiết bị *
pix1(config)#failover lan unit primary
* Kích hoạt tính năng failover *
pix1(config)#failover
* Cấu hình chuyển đổi địa chỉ động (NAT)*
pix1(config)#nat-control // thiết lập quy tắc NAT
pix1(config)#nat (inside) 1 10.0.1.0 255.255.255.0
pix1(config)#global (outside) 1 192.168.1.10-192.168.1.250 netmask 255.255.255.0
pix1(config)#global (dmz) 1 172.16.1.10-172.16.1.250 netmask 255.255.255.0
* Cấu hình định tuyến tĩnh đến các VLAN trong vùng inside *
pix1(config)#route inside 10.0.2.0 255.255.255.0 10.0.1.2
pix1(config)#route inside 10.0.3.0 255.255.255.0 10.0.1.2
pix1(config)#route inside 10.0.4.0 255.255.255.0 10.0.1.2
* Cấu hình đường mặc định *
pix1(config)#route outside 0 0 192.168.1.1
Cấu hình nhóm thực thể (Object Group)
Nhóm thực thể giúp người quản trị dễ dàng hơn trong việc quản lý hệ thống mạng. Đối với bài toán này, ta sẽ cấu hình nhóm thực thể để tiện cho công việc quan trị sau này
* Nhóm Public Server *
pix1(config)#object group network PubServer
pix1(config-network)#network-object host DNS_Server
pix1(config-network)#network-object host Web_Server
pix1(config-network)#network-object host Mail_Server
pix1(config-network)#network-object host FTP_Server
pix1(config-network)#exit
* Nhóm Ping (được sử dụng để cho phép ping giữa các vùng sau này)*
pix1(config)#object-group icmp-type Ping
pix1(config-icmp)#icmp-object echo
pix1(config-icmp)#icmp-object echo-reply
pix1(config-icmp)#icmp-object unreachable
pix1(config-icmp)#exit
Cấu hình truy cập
Để các host bên ngoài Internet có thể truy cập được vào các Public Server trong vùng DMZ, ta cần cấu hình chuyển đổi tĩnh cho các Server và thiết lập một ACL cho phép bên ngoài truy cập đến.
* Cấu hình chuyển đổi tĩnh cho Public Server *
pix1(config)#static (inside, outside) 192.168.1.10 insidehost netmask 255.255.255.255
pix1(config)#static (dmz, outside) 192.168.1.3 DNS_Server netmask 255.255.255.255
pix1(config)#static (dmz, outside) 192.168.1.4 Web_Server netmask 255.255.255.255
pix1(config)#static (dmz, outside) 192.168.1.5 Mail_Server netmask 255.255.255.255
pix1(config)#static (dmz, outside) 179.168.1.6 FTP_Server netmask 255.255.255.255
* Cấu hình ACL cho phép bên ngoài truy cập vào Public Server *
pix1(config)#access-list Outside_In permit tcp any host DNS_Server eq domain
pix1(config)#access-list Outside_In permit tcp any host Web_Server eq www
pix1(config)#access-list Outside_In permit tcp any host Mail_Server eq smtp
pix1(config)#access-list Outside_In permit tcp any host FTP_Server eq ftp
Trong quá trình quản trị cũng như giải quyết các sự cố của hệ thống, người quan trị có thể cần sử dụng một số công cụ như ping, tracert/traroute… Tuy nhiên, mặc định để đảm bảo an toàn thì PIX Firewall cấm không cho các gói ping trả về theo chiều vào trong (inbound) nên nếu muốn sử dụng ping để kiểm tra thì ta phải cấu hình ACL cho phép các gói ping theo chiều inbound. Lưu ý là để đảm bảo an toàn tránh các cuộc tấn công thăm dò (ping sweep, port sweep…) thì ta chỉ nên áp ACL cho phép ping lên interface trong quá trình giải quyết sự cố.
* Cấu hình ACL cho phép ping theo chiều inbound từ vùng DMZ *
pix1(config)#access-list DMZ_In permit icmp 172.16.1.0 255.255.255.0 10.0.0.0 255.255.248.0 object-group PING
pix1(config)#access-list DMZ_In deny ip any any
pix1(config)#access-group DMZ_In in interface DMZ
* Cấu hình ACL cho phép ping theo chiều inbound từ vùng outside *
pix1(config)#access-list Outside_In permit any 172.16.1.0 255.255.255.0 object-group PING
pix1(config)#access-list Outside_In permit any 10.0.0.0 255.255.248.0 object-group PING
pix1(config)#access-list Outside_In deny ip any any
pix1(config)#access-group Outside_In in interface outside
Giả sử trong giờ cao điểm (từ 9h-11h sáng), để đảm bảo cho đường truyền Internet không bị tắc nghẽn, ta có thể cấu hình cấm sử dụng dịch vụ FTP từ inside ra Internet bằng cách sử dụng time-range kết hợp với ACL
* Cấu hình time-range (từ 9h-11h sáng) *
pix1(config)#time-range RushHour
pix1(config-time-range)#absolute start 09:00 01 jun 2007 end 11:00 30 jun 2007
pix1(config-time-range)#periodic weekdays 09:00 to 11:00
pix1(config-time-range)#exit
* Cấu hình ACL cấm truy cập FTP ra ngoài trong giờ cao điểm *
pix1(config)#access-list Inside_In permit tcp 10.0.0.0 255.255.248.0 172.16.1.0 255.255.255.0 eq FTP
pix1(config)#access-list Inside_In deny tcp 10.0.0.0 255.255.248.0 any eq FTP time-range RushHour
pix1(config)#access-list Inside_In permit ip any any
pix1(config)#access-group Inside_In in interface inside
Cho mô hình mạng như sau:
Interface | Zone | Network | IP | Security level |
ethernet 0 (ethernet 0/0) | Inside | 192.168.1.0/24 | 192.168.1.1 | 100 |
ethernet 1 (ethernet 0/1) | DMZ | 172.16.1.0/24 | 172.16.1.1 | 50 |
· Yêu cầu:
- Cấu hình định tuyến trên Firewall cho phép ra ngoài internet.
- Cấu hình NAT cho phép các máy tính ở inside truy cập vào dmz và internet. Địa chỉ dùng để NAT là địa chỉ của các interface outside và DMZ
- Cấu hình NAT server 172.16.1.254 ra ngoài Outside với IP 10.2.46.146.
- Cấu hình cho phép PC (outside) truy cập vào dịch vụ DNS, HTTP của server. Thử ping từ PC (outside) vào server (theo địa chỉ đã NAT), giải thích kết quả.
- Cho phép ping giữa các vùng
· Bài làm:
- Cấu hình định tuyến trên Firewall cho phép ra ngoài Internet
Pixfirewall(config)route outside 0.0.0.0 0.0.0.0 10.2.46.1 1
- Cấu hình NAT cho phép các máy tính ở inside truy cập vào dmz và internet
Pixfirewall(config) nat (inside) 1 192.168.1.0 255.255.255.0
Pixfirewall(config) global (outside) 1 interface
Pixfirewall(config) global (dmz) 1 172.16.1.20-172.16.1.222 netmask 255.255.255.0
- Cấu hình NAT server 172.16.1.254 ra ngoài Outside với IP 10.2.46.146.
Pixfirewall(config) static (dmz,outside) 10.2.46.146 172.16.1.254 netmask 255.255.255.255
- Cấu hình cho phép PC (outside) truy cập vào dịch vụ DNS, HTTP của server. Thử ping từ PC (outside) vào server (theo địa chỉ đã NAT), giải thích kết quả.
Pixfirewall(config) access-list FROM_OUTSIDE extended permit tcp any host 10.2.46.146 eq www
Pixfirewall(config) access-list FROM_OUTSIDE extended permit udp any host 10.2.46.146 eq domain
Pixfirewall(config) access-group FROM_OUTSIDE in interface outside
+ Ping từ PC (outside) vào địa chỉ Server (đã được NAT) sẽ không ping được vì ACL FRO_OUTSIDE áp trên cổng outside của PIX chỉ cho phép lưu lượng www và dns.
- Cho phép ping giữa các vùng
//Inside ping ra outside
Pixfirewall(config) access-list FROM_OUTSIDE extended permit icmp any any echo-reply
Pixfirewall(config) access-group FROM_OUTSIDE in interface outside
//Inside ping ra dmz
Pixfirewall(config) access-list FROM_DMZ extended permit icmp any any echo-reply
Pixfirewall(config) access-group FROM_DMZ in interface dmz
Nghiên cứu về an ninh thiết bị Cisco thì anh em vào link dưới nhé, và search tài liệu "asa.all.in.one"
http://www.cisco.com/en/US/docs/ios/11_3/security/configuration/guide/secur_c.html
Các nội dung cơ bản
1. ACL Advanced
2. AAA
3. Encryption.
4. IPSec
and more....