Tải bản đầy đủ (.doc) (26 trang)

Cấu hình cơ bản của Pix pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (249.94 KB, 26 trang )

Bài Viết Về PIX FIREWALL

Tác giả: Nguyễn Thị Băng Tâm
Chương 2: CẤU HÌNH CƠ BẢN CỦA PIX


1. ASA Security levels
Khi cấu hình PIX firewall , một điều quan trọng cần lưu ý là cấu
hình pix có 2 interface cũng giống như cấu hình cho pix có 6
interface . Đó là vì PIX firewall hoạt động dựa trên cơ chế ASA
(Adaptive Security Algorithm) sử dụng Security levels . Giữa 2
interface thì một sẽ có Security level cao hơn , một có Security
level thấp hơn .

ASA Security levels :
Security level thiết kế cho interface là inside (trusted) hoặc
interface outside (untrusted) quan hệ với các interface khác . Một
interface được xem là inside trong mối quan hệ với các interface
khác nếu nó có Security level cao hơn các interface khác , một
interface được xem là outside nếu nó có Security level thấp hơn
Security level của các interface khác .

Quy tắc cơ bản cho Security level là :
Khi PIX firewall được cấu hình với 6 command cơ bản , dữ liệu
có thể đi vào pix thông qua một interface với Security level cao
hơn , đi qua pix và đi ra ngoài thông qua interface có Security
level thấp hơn . Ngược lại , dữ liệu đi vào interface có Security
level thấp hơn không thể đi qua pix và đi ra ngoài thông qua
interface có Security level cao hơn nếu trên pix không có cấu
hình conduit hoặc access-list để cho phép nó thực hiện điều
này .



Security level xắp xếp từ 0 đến 100 , cụ thể :
- Security level 100 : đây là Security level cao nhất cho một
interface . Nó được sử dụng cho inside interface của PIX
firewall , là cấu hình mặc định cho Pix và không thể thay
đổi . Vì 100 là Security level trusted nhất cho interface ,
mạng của tổ chức thường ở sau interface này , không ai có
thể truy nhập vào mạng này trừ khi được phép thực hiện điều
đó . Việc cho phép đó phải được cấu hình trên pix , các thiết
bị bên trong mạng này có thể truy cập ra mạng outside .
- Security level 0 : đây là Security level thấp nhất . Security
level này được sử dụng cho outside interface . Đây là cấu
hình mặc định cho Pix và không thể thay đổi . Vì 0 là
Security level ít trusted nhất cho một interface , các untrusted
network thường ở sau interface này . Các thiết bị ở outside
chỉ được phép truy cập vào pix khi nó được cấu hình để làm
điều đó . Interface này thường được dùng cho việc kết nối
internet .
- Security level 1-99 : Các Security level này có thể được
đăng kí cho perimeter interface kết nối đến PIX , mà thông
thường là những kết nối đến một mạng hoạt động như là
demilitarized zone (DMZ) . DMZ là một thiết bị hay là một
mạng thường được sử dụng cho phép user từ untrusted
network truy cập vào . DMZ là vùng được cách ly với môi
trường internal , trusted .
Ví dụ về ASA với pix có 3 interface , Security level trong ví dụ
này cụ thể như sau :

• Outside security 0 đến DMZ security 50 thì DMZ này được
coi là inside . Do đó cần phải có static translation với

conduit cấu hình cho phép các session được khởi tạo từ
outside đến DMZ .
• Inside security 100 đến DMZ security 50 thì DMZ này được
coi là outside . Do đó global và nat thường được cấu hình để
cho phép các session khởi tạo từ inside interface đến DMZ
interface .

Note : Một PIX firewall có thể có đến 4 perimeter network
do đó nó có tối đa tổng cộng là 6 interfaces .

Khi có nhiều kết nối giữa PIX firewall và các perimeter device
thì :
• Dữ liệu đi từ interface có Security level cao hơn đến
interface có Security level thấp hơn : Cần phải có một
translation (static hay dynamic) để cho phép traffic từ
interface có Security level cao hơn đi đến interface có
Security level thấp hơn . Khi đã có translation này , traffic
bắt đầu từ inside interface đến outside interface sẽ được phép
, trừ khi nó bị chặn bởi access-list , authentication hoặc là
authorization .
• Dữ liệu đi từ interface có Security level thấp hơn đến
interface có Security level cao hơn : 2 điều quan trọng cần
thiết phải được cấu hình để cho traffic từ interface có
security thấp hơn đến interface security cao hơn là static
translation và conduit hoặc access-list . Nếu conduit được
cấu hình , user cũng có thể chặn traffic nếu cấu hình thêm
authentication hoặc là authorization .
• Dữ liệu đi qua 2 interface có Security level như nhau :
Không có traffic đi giữa 2 interface có level như nhau .


2. Cấu hình cơ bản của PIX firewall
Phần này sẽ mô tả cấu hình cơ bản cần thiết để sử dụng PIX
firewall và cách thiết lập kết nối cơ bản từ internal network đến
public Internet .
a. Các mode truy nhập :
Cũng giống như các thiết bị của Cisco , pix cũng có các mode
sau :
- Unprivileged mode : là mode được sử dụng khi ta truy nhập
vào pix lần đầu tiên thông qua cổng console hoặc telnet .
Mode này cho phép ta xem tập hợp các lệnh có trong pix .
User không thể thay đổi cấu hình tại mode này .
- Privileged mode : tại mode này user có thể thay đổi một vài
cấu hình hiện tại và xem cấu hình trong pix . Các câu lệnh ở
mode unprivileged đều hoạt động tốt ở mode này . Khi ta đã
vào được mode privileged , thì ta có thể vào được
configuration mode .
- Configuration mode : Tại mode này ta có thể thay đổi cấu
hình của hệ thống . Tất cả các lệnh unprivileged , privileged ,
configuration đều làm việc ở mode này .
- Monitor mode : Tại mode này cho phép ta thao tác một số
cấu hình đặc biệt như là update image hay password recovery
.

Dấu hiệu để nhận biết đang ở trong mode nào :

Mode dấu hiệu
Unprivileged
mode
Pixfirewall>
Privileged

mode
Pixfirewall#
Configuration
mode
Pixfirewall(config)#
Monitor
mode
Monitor>

b. Các lệnh dùng để duy trì và kiểm tra PIX firewall
- Enable command : lệnh enable cho phép ta tiến vào mode
privileged . Để thoát ra và trở về mode trước đó , sử dụng
disable command .
- Enable password : tham số cấu hình này thiết lập password
cho việc truy nhập vào mode enable . Không có password
mặc định . Khi truy cập vào mode này lần đầu tiên (trước khi
enable command được tạo ra) , pix đưa ra dấu nhắc cần nhập
password . Bởi vì password chưa được cấu hình nên chỉ đơn
giản là nhấn Enter . Password là case-sensitive và có thể dài
đến 16 chữ cái . Ta có thể sử dụng bất kì kí tự nào ngoài
khoảng trắng , dấu hỏi , và dấu hai chấm . Password ở dạng
mã hóa .
- Passwd : password này được thiết lập cho inbound traffic
telnet đến pix . Password mặc định là cisco .
- Hostname : câu lệnh hostname cho phép ta thay đổi tên của
Pix , mặc định pix có tên là pixfirewall .
- Ping : lệnh ping quyết định PIX firewall có kết nối đến một
đích cụ thể nào đó hay không . Khi ping command được sử
dụng , pix sẽ gửi ra ngoài echo-request. Đích sẽ đáp lại
bằng một echo-reply. nếu echo-reply được nhận thì host có

tồn tại . Nếu không được nhận , ngõ ra sẽ xuất hiện “no
response received” . Ping command truyền đi 3 echo-request
để tìm địa chỉ . Nếu ta muốn internal host có thể ping được
external host , ta phải tạo một ICMP conduit hoặc là access-
list để cho phép echo-reply .

Note: Sau khi pix được cấu hình và hoạt động , user sẽ không
thể từ outside interface ping được inside interface và ngược lại .
Nếu từ inside interface ping thấy được inside network , và
outside interface ping thấy outside network thì pix họat động
đúng và bìng thường .

- Telnet : lệnh telnet cho phép ta chỉ ra host nào có thể truy
cập cổng console PIX firewall thông qua telnet . Với các
version 5.0 trở về trứơc , chỉ có các internal host mới có thể
truy cập vào PIX firewall thông qua telnet , nhưng các
version sau này , user có thể telnet vào PIX firewall qua tất
cả các interface . Tuy nhiên , PIX firewall khuyến cáo rằng ,
tất cả telnet traffic đến outside interface phải được bảo vệ bởi
IPSEC . Do đó , để khởi động một telnet session đến PIX ,
user cần cấu hình pix để thiết lập IPSEC tunnel họăc là với
một pix khác , hoặc là router , hay là VPN Client . Tunnel đó
phải được mã hóa cho các traffic đặc biệt trong đó có telnet
đến một host nào đó được định nghĩa trong câu lệnh telnet .
Có đến 16 host hoặc mạng được phép telnet đến Pix , nhưng
trong một lúc chỉ có 5 mà thôi .
telnet ip_address [netmask] [if_name]
clear telnet [ip_address] [netmask] [if_name]
no telnet ip_address [netmask] [if_name]
telnet timeout minutes

show telnet
show telnet timeout

- write terminal : cho xem cấu hình đang chạy trên pix , câu
lệnh này có ý nghĩa như câu lệnh show running-config . Cấu
hình này được lưu trong RAM
- write net : dùng để lưu running configuration vào TFTP
server .
- write erase : xóa tập tin cấu hình trong Flash memory
- write memory : lưu tập tin running configuration vào Flash .
- write floppy : lưu cấu hình hiện tại vào đĩa mềm .
- write standby : ghi lại cấu hình được lưu trong RAM của
active failover PIX , đến RAM của standby PIX firewall .
Khi active PIX firewall boot , nó tự động ghi cấu hình này
đến standby PIX firewall .

c. Sáu câu lệnh cơ bản cho cấu hình PIX firewall :
• Nameif command :
nameif hardware_id if_name security_level
câu lệnh nameif dùng để đăng kí 1 tên cho mỗi interface của
Pix và chỉ ra mức security của nó (ngoại trừ outside và inside
interface , chúng có tên mặc định )
Với cấu hình mặc định , e0 có tên là outside với mức security
là 0 , e1 có tên là inside với mức security là 100 .

• Interface command :
interface hardware_id hardware_speed [shutdown]
- hardware_id : chỉ ra interface và vị trí vật lí của nó
trên pix .
- hardware_speed : chỉ ra tốc độ kết nối . Sử dụng auto

để pix tự động điều chỉnh tốc độ với thiết bị mà nó
kết nối .
- shutdown : administratively shut down interface
Note: tránh sử dụng từ khóa auto trên bất kì interface Ethernet
nào . Duplex mismatch có thể xảy ra và làm giảm hoạt động của
Pix .

• ip address command :
Mỗi interface trên pix phải được cấu hình với 1 địa chỉ .
ip address if_name ip_address [netmask]
• nat command :
Network address translation (NAT) giúp cho user dấu được
địa chỉ internal khi đi ra mạng ngoài .
nat (if_name) nat_id local_ip [netmask]
- if_name : tên của internal interface sẽ sử dụng địa chỉ
global . Dữ liệu sẽ đi ra khỏi pix thông qua interface
được chỉ ra trong global command .
- nat_id : chỉ ra global pool , id này phải giống với id
trong global commad
- local_ip : địa chỉ IP được đăng kí đến thiết bị của
inside netword .0.0.0.0 (có thể viết tắt là 0) được sử
dụng để cho phép tất cả các kết nối outbound được
nat ra ngoài với điạ chỉ trong global command .
- netmask : mặt nạ mạng cho local ip address

Khi bắt đầu cấu hình pix , tất cả các host có thể truy cập các kết
nối outbound với nat 1 0.0.0.0 0.0.0.0 command . Câu lệnh này
có ý nghĩa cho phép tất cả các inside host được phép nat ra ngoài
tương ứng với địa chỉ trong global command . 0 có thể được sử
dụng để thay thế 0.0.0.0


• global command :
Khi dữ liệu được gửi đi từ một trusted network đến untrusted
network, địa chỉ source ip thường được chuyển đổi . Pix thực
hiện điều này bằng 2 câu lệnh , câu lệnh thứ nhất là nat – định
nghĩa địa chỉ trusted source sẽ được chuyển đổi , câu lệnh thứ
hai là global command - định nghĩa tầm địa chỉ mà source
address sẽ chuyển đổi thành .
global (if_name) nat_id interface | global_ip [-
global_ip] netmask [global_mask]

Ví dụ về NAT :
Khi gói dữ liệu outbound được gửi từ một thiết bị thuộc mạng
inside đến pix , địa chỉ source được extract ra và so sánh với
bảng chuyển đổi internal . Nếu địa chỉ của thiết bị không có
trong bảng , nó sẽ được chuyển đổi thành . Một entry mới được
tạo ra cho thiết bị đó , sau đó nó được đăng kí một địa chỉ global
ip từ pool địa chỉ global . Đây được gọi là translation slot . Sau
khi translation xảy ra , bảng được update và gói ip được chuyển
đổi đó được gửi ra ngoài . Sau khoảng thời gian timeout (mặc
định là 3 giờ) , sẽ không có gói tin được translate nào dành cho
địa chỉ global đó , entry của nó ở trong bảng translation sẽ bị loại
bỏ và địa chỉ global được sử dụng bởi bất kì host nào trong mạng
inside .
Quá trình được miêu tả như hình vẽ sau :


NOTE : PIX firewall đăng kí địa chỉ từ global pool bắt đầu từ
thấp cho đến cao . Sau khi thay đổi , thêm vào , hay loại bỏ một
global statement , sử dụng clear xlate để xóa tất cả các

translation slot .

• Route command : định nghĩa một static route cho một
interface .
route if_name ip_address netmask gateway_ip [metric]


3. PIX firewall translation
PIX firewall có thể được sử dụng để translate tất cả địa chỉ bên
trong , khi dữ liệu đi từ inside ra outside hay đi đến một mạng có
mức security thấp hơn . Nếu user ở mạng outside cố gắng thực
hiện kết nối đến inside , user đó sẽ không thành công . Một
session không thể được tạo ra từ Internet với địa chỉ đích là địa
chỉ private trừ khi nó được cấu hình cho phép thực hiện điều đó .

Có hai cách để một mạng ít tin cậy hơn đi vào một mạng có độ
tin cậy cao hơn là :
- Response to Valid Request : Khi user ở inside thành lập một
kết nối đến thiết bị ở outside , mặc định response cho request
đó được phép qua pix . Tất cả kết nối từ inside đến outside sẽ
được update trong bảng translation . Khi một thiết bị outside
đáp ứng cho request đó , PIX firewall sẽ kiểm tra bảng
translation để xem thử có translation slot nào tồn tại cho
request đó hay không ? Nếu nó tồn tại, PIX firewall cho phép
response tiếp tục . Sau khi session được tạo ra , idle timer sẽ
bắt đầu khởi động , mặc định là 3 giờ .
- Cấu hình Conduit : Được sử dụng cho việc liên lạc từ
outside đến inside . Static translation hoặc là global và nat
được cấu hình trước , sau đó cấu hình conduit để định nghĩa
địa chỉ , hay là một nhóm địa chỉ , source port hay là

destination port được phép đi qua pix .

a. Static address translation :
Static address translation được sử dụng nếu một host được
translate đến cùng một địa chỉ khi mỗi outbound session được
tạo ra qua pix . Tức là nó được dùng để tạo ra một ánh xạ cố
định (static translation slot) giữa một địa chỉ local và một địa chỉ
global . Khi kết nối đến internet , địa chỉ global phải được phải là
địa chỉ thực ( địa chỉ được đăng kí )

Static address translation được sử dụng bằng câu lệnh sau
:
Static [(internal_if_name , external_if_name)] global_ip
local_ip [netmask network_mask] [max_conns [em_limit]]
[norandomseq]

Đối với outbound connection , sử dụng static để chỉ ra một địa
chỉ global luôn được sử dụng cho việc translation giữa local host
và global host đó . Đối với inbound connection , mặc định là các
host ở untrusted network sẽ không được vào trusted network , do
đó muốn cho các mạng outside vào inside , ta sẽ phải sử dụng
kết hợp cả static command và conduit command để định nghĩa
các địa chỉ trong mạng outside .
Một chú ý quan trọng là :
o Conduit command cho phép kết nối từ interface có mức bảo
mật thấp hơn đến interface có mức bảo mật cao hơn .
o Static command được sử dụng để tạo ra ánh xạ cố định giữa
local host và global ip address .

Conduit command :

conduit permit | deny protocol global_ip global_mask
[operator port [port]] foreign_ip foreign_mask [operator port
[port]]

Một ví dụ khi sử dụng conduit command là kiểm tra kết nối
thông qua pix với các message ICMP . Để cho phép một gói tin
echo-request từ outside qua pix , conduit phải được cấu hình .
Ngoài ra , user outside cũng cần phải có một địa chỉ đích để sử
dụng , thông tin này có thể được map vào pix sử dụng static
command .

b. Dynamic address translation : đây chính là sử dụng nat và
global command mà ta đã nhắc đến phía trước .
Ngoài ra thay vì nat các địa chỉ inside ra outside trong một pool
địa chỉ , ta cũng có thể nat bằng một địa chỉ global bằng cách sử
dụng PAT (port address translation) . PAT là sự kết hợp một địa
chỉ và một source port number để tạo ra một session duy nhất .
Pix sẽ translate mỗi địa chỉ local đến cùng một điạ chỉ global
nhưng đăng kí giá trị port khác nhau và lớn hơn 1024. Câu lệnh
cấu hình PAT giống như Nat , nhưng trong global command ,
thay vì sử dụng một pool địa chỉ ,ta chỉ sử dụng 1 địa chỉ .

c. Cấu hình NAT 0
Đây là chức năng phổ biến khi kết nối đến internet để cho phép
truy cập từ outside đến HTTP server hoặc là SMTP server . Các
server này phải có địa chỉ thực để còn liên lạc với các thiết bị
khác trong mạng internet . Do đó có thể cấu hình pix để địa chỉ
private của thiết bị đó trong inside network được phép đi ra
ngoài mạng mà không có quá trình translation .
Sử dụng nat 0 command phụ thuộc vào chính sách bảo mật mà

nơi ta áp đặt nó vào . Nếu chính sách đó cho phép các internal
client sử dụng địa chỉ private của chúng để đi ra ngoài internet ,
nat 0 sẽ đáp ứng dịch vụ đó . Sử dụng nat 0 một minh sẽ không
cho phép truy cập từ outside đến inside . Nếu chính sách cho
phép truy cập từ outside đến inside , ta phải cấu hình thêm
conduit command .

4. Truy nhập vào PIX firewall
Pix có thể được truy nhập vào thông qua port console hoặc là
truy cập từ xa qua các phương pháp sau :
- telnet
- Secure Shell (SSH)
- Browser sử dụng PIX device Manger (PDM)

a. Truy cập vào PIX bằng Telnet
Có thể quản lí PIX firewall thông qua Telnet từ các host thuộc
internal interface . Nếu IPSEC được cấu hình thì ta có thể quản lí
PIX từ các interface có security level thấp hơn
Để truy cập vào PIX thông qua kết nối Telnet , ta cấu hình như
sau :
bước 1 : cho phép host hay mạng được phép telnet :
telnet local_ip [mask] [if_name]
bước 2 : đặt password cho Telnet :
passwd telnetpasswd
bước 3 : Nếu cần thiết thì thiết lập cho phép Telnet session được
idle trong khoảng bao lâu trước khi Pix làm rớt kết nối . Mặc
định là 5 phút .
telnet timeout time

b. Cấu hình truy cập PIX qua Secure Shell (SSH)

SSH là một chương trình ứng dụng chạy trên lớp transport , có
khả năng xác thực và mã hóa mạnh do đó nó có độ bảo mật cao
hơn Telnet . 5 SSH client có thể được phép truy cập PIX console
đồng thời . PIX firewall hỗ trợ SSH v1 .

Cấu hình PIX cho việc truy cập thông qua SSH có 2 bước :
- Cấu hình trên PIX để chấp nhận kết nối SSH
- Cấu hình SSH client để kết nối đến PIX

5. LAB

Bài 1 : Cấu hình translation

Scenario :

Địa chỉ của các interface như sau :

Device Interface Address
PIX E0
E1
E2
209.162.1.1/24
10.10.10.1/24
172.16.1.1/24
Router
2530
E0 209.162.1.2/24
Router
dmz
E0 172.16.1.2/24

PC 10.10.10.10/24


Cấu hình toàn bộ :

Pix# write terminal
Building configuration
: Saved
:
PIX Version 6.2(2)
nameif ethernet0 outside security0
nameif ethernet1 inside security100
nameif ethernet2 dmz security50
enable password 2KFQnbNIdI.2KYOU encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
hostname Pix
fixup protocol ftp 21
fixup protocol http 80
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol ils 389
fixup protocol rsh 514
fixup protocol rtsp 554
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol sip 5060
fixup protocol skinny 2000
names
access-list aclout deny tcp any any eq www
access-list aclout permit tcp 10.10.10.0 255.255.255.0

host 209.162.1.2 eq telnet access-list aclout permit tcp
host 10.10.10.10 host 172.16.1.2 eq www
access-list aclout permit ip any any
pager lines 24
interface ethernet0 auto
interface ethernet1 auto
interface ethernet2 auto
mtu outside 1500
mtu inside 1500
mtu dmz 1500
ip address outside 209.162.1.1 255.255.255.0
ip address inside 10.10.10.1 255.255.255.0
ip address dmz 172.16.1.1 255.255.255.0
ip audit info action alarm
ip audit attack action alarm
no failover
failover timeout 0:00:00
failover poll 15
failover ip address outside 0.0.0.0
failover ip address inside 0.0.0.0
failover ip address dmz 0.0.0.0
pdm history enable
arp timeout 14400
global (outside) 1 209.162.1.30
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
static (dmz,outside) 209.162.1.10 172.16.1.2 netmask
255.255.255.255 0 0
static (inside,outside) 209.162.1.9 10.10.10.10 netmask
255.255.255.255 0 0
static (inside,dmz) 172.16.1.5 10.10.10.10 netmask

255.255.255.255 0 0
access-group aclout in interface inside
conduit permit tcp host 209.162.1.10 eq www any
conduit permit tcp host 209.162.1.9 eq www any
conduit permit tcp host 209.162.1.9 eq telnet any
conduit permit icmp any any
route outside 0.0.0.0 0.0.0.0 209.162.1.2 1
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc
0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute
aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius
aaa-server LOCAL protocol local
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
floodguard enable
no sysopt route dnat
telnet timeout 2
ssh timeout 5
terminal width 80
Cryptochecksum:d41d8cd98f00b204e9800998ecf8427e
: end

2503#sh run
Building configuration

Current configuration : 569 bytes

!
version 12.1
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname 2503
!
enable password cisco
!
!
!
!
!
ip subnet-zero
!
!
!
!
interface Loopback0
ip address 192.168.1.1 255.255.255.0
!
interface Ethernet0
ip address 209.162.1.2 255.255.255.0
!
interface Serial0
no ip address
shutdown
no fair-queue

!
interface Serial1
no ip address
shutdown
!
interface BRI0
no ip address
shutdown
!
ip classless
ip http server
!
!
line con 0
line aux 0
line vty 0 4
no login
!
end


dmz#sh run
Building configuration

Current configuration : 569 bytes
!
version 12.1
no service single-slot-reload-enable
service timestamps debug uptime
service timestamps log uptime

no service password-encryption
!
hostname dmz
!
enable password cisco
!
!
!
!
!
ip subnet-zero
!
!
!
!
interface Ethernet0
ip address 172.16.1.2 255.255.255.0
!
interface Serial0
no ip address
shutdown
no fair-queue
!
interface Serial1
no ip address
shutdown
!
interface BRI0
no ip address
shutdown

!
ip classless
ip http server
!
!
line con 0
line aux 0
line vty 0 4
no login
!
end

Cấu hình từng bước :
1. Command-line interface ;

Khi truy cập vào Pix sẽ vào mode unprivileged , sử dụng enable
command để vào mode privileged

pixfirewall>enable
password :
=> trước khi vào mode enable , pix sẽ yêu cầu nhập
password , mặc định là không có password nào cả , chỉ cần
nhấn enter
pixfirewall#disable
pixfirewall>  sử dụng disable để đưa pix về mode
unprivileged

pixfirewall> ?
 để xem những lệnh nào có thể dùng được ở mode
này .


pixfirewall#configure terminal
pixfirewall(config)#
 Pix đang ở trong mode configuration , tại đây ta có thể cấu
hình mọi thứ cho PIX .
 Tất cả câu lệnh sử dụng ở hai mode unprivileged và
privileged đều có thể được sử dụng ở mode này .

Trước khi vào cấu hình sử dụng show run command để xem
cấu hình mặc định của PIX



pixfirewall# sh run => hoặc có thể sử dụng write
terminal command để xem
: Saved
:
PIX Version 6.2(2)
nameif ethernet0 outside security0
nameif ethernet1 inside security100
nameif ethernet2 intf2 security10
enable password 8Ry2YjIyt7RRXU24 encrypted
passwd 2KFQnbNIdI.2KYOU encrypted
hostname pixfirewall
fixup protocol ftp 21
fixup protocol http 80
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol ils 389
fixup protocol rsh 514

fixup protocol rtsp 554
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol sip 5060
fixup protocol skinny 2000
names
pager lines 24
interface ethernet0 auto shutdown
interface ethernet1 auto shutdown
interface ethernet2 auto shutdown
mtu outside 1500
mtu inside 1500
mtu dmz 1500
ip address outside 127.0.0.1 255.255.255.255
ip address inside 127.0.0.1 255.255.255.255
ip address dmz 127.0.0.1 255.255.255.255
ip audit info action alarm
ip audit attack action alarm
no failover
failover timeout 0:00:00
failover poll 15
failover ip address outside 0.0.0.0
failover ip address inside 0.0.0.0
failover ip address dmz 0.0.0.0
pdm history enable
arp timeout 14400
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc
0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute

aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius
aaa-server LOCAL protocol local
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
floodguard enable
no sysopt route dnat
telnet timeout 5
ssh timeout 5
terminal width 80
Cryptochecksum:d41d8cd98f00b204e9800998ecf8427e
: end


Cấu hình hostname cho Pix :
pixfirewall(config)#hostname Pix
Pix(config)#

Cấu hình cho các interface :
• Đặt tên và level security cho các interface
Pix(config)#nameif e0 outside sec0
Pix(config)#nameif e1 inside sec100
Pix(config)#nameif e2 dmz sec50

• Up các interface đó lên :

Pix(config)# interface et1 auto
Pix(config)# interface ethernet0 auto

Pix(config)# interface e2 auto

Để kiểm tra xem các interface đã up lên chưa , sử dụng câu
lệnh show interface

PIX(config)# sh interface
interface ethernet0 "outside" is up, line
protocol is up
Hardware is i82559 ethernet, address is
000d.bda1.831d
IP address 127.0.0.1, subnet mask
255.255.255.255
MTU 1500 bytes, BW 10000 Kbit half duplex
53 packets input, 9948 bytes, 0 no buffer
Received 53 broadcasts, 0 runts, 0 giants
0 input errors, 0 CRC, 0 frame, 0 overrun, 0
ignored, 0 abort
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
0 babbles, 0 late collisions, 0 deferred
0 lost carrier, 0 no carrier
input queue (curr/max blocks): hardware
(128/128) software (0/1)
output queue (curr/max blocks): hardware (0/0)
software (0/0)

interface ethernet1 "inside" is up, line protocol
is up
Hardware is i82559 ethernet, address is
000d.bda1.831e

IP address 127.0.0.1, subnet mask
255.255.255.255
MTU 1500 bytes, BW 100000 Kbit full duplex
133 packets input, 22702 bytes, 0 no buffer
Received 133 broadcasts, 0 runts, 0 giants
0 input errors, 0 CRC, 0 frame, 0 overrun, 0
ignored, 0 abort
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 0 interface resets
0 babbles, 0 late collisions, 0 deferred
0 lost carrier, 0 no carrier
input queue (curr/max blocks): hardware
(128/128) software (0/1)
output queue (curr/max blocks): hardware (0/0)
software (0/0)

interface ethernet2 "dmz" is up, line protocol
is up
Hardware is i82559 ethernet, address is
0002.b3d5.285d
IP address 127.0.0.1, subnet mask
255.255.255.255
MTU 1500 bytes, BW 10000 Kbit half duplex
<omitted>

 Câu lệnh show interface cho phép user xem thông tin về
interface ethernet , Token Ring , FDDI . Thông tin về
interface nào là phụ thuộc cái nào được cài đặt trong pix .
Trong trường hợp này là Ethernet . Ta có thể xem một số
thông tin sau :

- Ethernet , Token Ring , FDDI : cho ta biết user đã sử
dụng interface command để cấu hình interface . Cho
biết interface là inside hay là outside .
- Line protocol up : cho biết cable hoạt động tốt (layer
1 connectivity)
- Line protocol down : cho biết hoặc là cable cắm vào
interface không đúng , hoặc là nó không được cắm
vào interface connector .
- Network interface type : chỉ ra network interface
- Mac address : cho biết địa chỉ MAC
- IP address : chỉ ra địa chỉ Ip được đăng kí cho
interface , địa chỉ mặc định là 127.0.0.1 với subnet
mask là 255.255.255.255
- MTU : kích thước được tính bằng byte mà dữ liệu có
thể được gửi đi tốt nhất qua mạng .
- Line speed : tốc độ của interface , 10BaseT là
10000Kbps , 100BaseT là 100000Kbps
- Line duplex status : chỉ ra rằng pix đang chạy full-
duplex hay là half-duplex .
v.v

• Đăng kí địa chỉ cho interface :
Pix(config)# ip address inside 10.10.10.1 255.255.255.0
Pix(config)# ip address outside 209.162.1.1
255.255.255.0
Pix(config)# ip address dmz 172.16.1.1 255.255.255.0

Xem thông tin về địa chỉ của các interface , sử dụng show ip
address command :
Pix# sh ip add

System IP Addresses:
ip address outside 209.162.1.1 255.255.255.0
ip address inside 10.10.10.1 255.255.255.0
ip address dmz 172.16.1.1 255.255.255.0
Current IP Addresses:
ip address outside 209.162.1.1 255.255.255.0
ip address inside 10.10.10.1 255.255.255.0
ip address dmz 172.16.1.1 255.255.255.0

Cấu hình cho router 2530 :

Router#conf t
Enter configuration commands, one per line. End with
CNTL/Z.
Router(config)#hostname 2503
2503(config)#int e0
2503(config-if)#ip add 209.162.1.2 255.255.255.0
2503(config-if)#no shut
2503(config-if)#exit
2503(config)#ip http server
2503(config)#enable pass cisco
2503(config)#line vty 0 4
2503(config-line)#no login
2503(config-line)#exit
2503(config)#int loopback 0
2503(config-if)#ip add 192.168.1.1 255.255.255.0
2503(config-if)#exit
2503(config)#exit

Cấu hình cho router dmz :


Router>en
Router#conf t
Enter configuration commands, one per line. End with
CNTL/Z.
Router(config)#hostname dmz
dmz(config)#int e0
dmz(config-if)#ip add 172.16.1.2 255.255.255.0
dmz(config-if)#no shut
dmz(config-if)#exit
dmz(config)#line vty 0 4
dmz(config-line)#no login
dmz(config-line)#exit
dmz(config)#ip http server
dmz(config)#enable pass cisco
dmz(config)#exit

Kiểm tra kết nối
Như ta đã biết mặc định các host trong một mạng chỉ ping
được interface của pix mà mạng đó kết nối tới .

Pix# ping inside 10.10.10.10
10.10.10.10 response received 0ms
10.10.10.10 response received 0ms
10.10.10.10 response received 0ms

2503#ping 209.162.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 209.162.1.1, timeout is

2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max =
1/1/1 ms

Pix(config)# ping 209.162.1.2
209.162.1.2 response received 0ms
209.162.1.2 response received 0ms
209.162.1.2 response received 0ms

dmz#ping 172.16.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2
seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max =
1/1/1 ms

Pix# ping dmz 172.16.1.2
172.16.1.2 response received 0ms
172.16.1.2 response received 0ms
172.16.1.2 response received 0ms

Cấu hình translation :

Pix(config)# route outside 0.0.0.0 0.0.0.0 209.162.1.2 1
Pix(config)# nat (inside) 1 0 0 0
Pix(config)# global (outside) 1 209.162.1.30
Global 209.162.1.30 will be Port Address Translated


Pix(config)# static (dmz,outside) 209.162.1.10 172.16.1.2
Pix(config)# static (inside,outside) 209.162.1.9
10.10.10.10
Pix(config)# static (inside,dmz) 172.16.1.5 10.10.10.10

Kiểm tra cấu hình bằng các lệnh show :

Pix# sh static
static (dmz,outside) 209.162.1.10 172.16.1.2 netmask
255.255.255.255 0 0
static (inside,outside) 209.162.1.9 10.10.10.10 netmask
255.255.255.255 0 0
static (inside,dmz) 172.16.1.5 10.10.10.10 netmask
255.255.255.255 0 0

Pix# sh nat
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
Pix# sh global
global (outside) 1 209.162.1.30

Pix(config)# sh route
outside 0.0.0.0 0.0.0.0 209.162.1.2 1 OTHER static
inside 10.10.10.0 255.255.255.0 10.10.10.1 1 CONNECT
static
dmz 172.16.1.0 255.255.255.0 172.16.1.1 1 CONNECT
static
outside 209.162.1.0 255.255.255.0 209.162.1.1 1
CONNECT static


 Mặc định trong bảng định tuyến của pix có các route là
connect static . Các route được cấu hình sẽ có prompt là
other static

Để các host giữa các mạng có thể ping thấy nhau , ta phải
dùng conduit command để thực hiện điều này :
Pix(config)# conduit permit icmp any any

Pix(config)# conduit permit tcp host 209.162.1.10 eq www
any
Pix(config)# conduit permit tcp host 209.162.1.9 eq www any
Pix(config)# conduit permit tcp host 209.162.1.9 eq telnet any
 Tạo conduit để cho phép tất cả các host ở mạng outside (any)
có thể truy cập web vào web server ở dmz và inside , có thể
telnet vào mạng inside .

Kiểm tra cấu hình conduit :
Pix# sh conduit
conduit permit tcp host 209.162.1.10 eq www any (hitcnt=0)
conduit permit tcp host 209.162.1.9 eq www any (hitcnt=0)
conduit permit tcp host 209.162.1.9 eq telnet any (hitcnt=1)
conduit permit icmp any any (hitcnt=42)

Pix(config)# ping 192.168.1.1
192.168.1.1 response received 0ms
192.168.1.1 response received 0ms
192.168.1.1 response received 0ms

Tại command-prompt của PC , thực hiện ping :
C:\> ping 209.162.1.2

Ping 209.162.1.2 with 32 bytes of data :
Reply from 209.162.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 209.162.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 209.162.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 209.162.1.2 : bytes = 32 time<10ms TTL = 128

Bật debug lên để quan sát :
Pix(config)#debug icmp trace

39: Outbound ICMP echo request (len 32 id 3 seq 12800)
10.10.10.10 > 209.162.1.9 > 209.162.1.2
40: Inbound ICMP echo reply (len 32 id 3 seq 12800)
209.162.1.2 > 209.162.1.9 > 10.10.10.10
41: Outbound ICMP echo request (len 32 id 3 seq 13056)
10.10.10.10 > 209.162.1.9 > 209.162.1.2
42: Inbound ICMP echo reply (len 32 id 3 seq 13056)
209.162.1.2 > 209.162.1.9 > 10.10.10.10

C:\> ping 172.16.1.2
Ping 172.16.1.2 with 32 bytes of data :
Reply from 172.16.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 172.16.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 172.16.1.2 : bytes = 32 time<10ms TTL = 128
Reply from 172.16.1.2 : bytes = 32 time<10ms TTL = 128


Pix# 43: Outbound ICMP echo request (len 32 id 3 seq
13312) 10.10.10.10 > 172.16.1.5 > 172.16.1.2
44: Inbound ICMP echo reply (len 32 id 3 seq 13312)
172.16.1.2 > 172.16.1.5 > 10.10.10.10

45: Outbound ICMP echo request (len 32 id 3 seq 13568)
10.10.10.10 > 172.16.1.5 > 172.16.1.2
46: Inbound ICMP echo reply (len 32 id 3 seq 13568)
172.16.1.2 > 172.16.1.5 > 10.10.10.10
47: Outbound ICMP echo request (len 32 id 3 seq 13824)
10.10.10.10 > 172.16.1.5 > 172.16.1.2
48: Inbound ICMP echo reply (len 32 id 3 seq 13824)
172.16.1.2 > 172.16.1.5 > 10.10.10.10
49: Outbound ICMP echo request (len 32 id 3 seq 14080)
10.10.10.10 > 172.16.1.5 > 172.16.1.2
50: Inbound ICMP echo reply (len 32 id 3 seq 14080)
172.16.1.2 > 172.16.1.5 > 10.10.10.10

Kiểm tra quá trình translation :

Pix(config)# show xlate
2 in use, 2 most used
Global 172.16.1.5 Local 10.10.10.10
Global 209.162.1.9 Local 10.10.10.10

dmz#ping 172.16.1.5

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.5, timeout is 2
seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max =
100/180/200 ms

2530#ping 209.162.1.9


Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 209.162.1.9, timeout is
2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max =
104/180/200

Kiểm tra các host inside có thể truy cập internet (mạng
outside)


Bây giờ ta tạo một access-list cho outbound traffic như sau :
- từ chối outbound web traffic
- cho phép outbound traffic còn lại
Cấu hình như sau :
Tạo một access-list có tên là aclout .

Pix(config)# access-list aclout deny tcp any any eq www
Pix(config)#access-list aclout permit tcp host 10.10.10.10 host
172.16.1.2 eq www
=>mặc dù không cần thiết nhưng ta vẫn cấu hình cho phép các
host trong mạng inside được phép đi web đến dmz .

Pix(config)# access-list aclout permit ip any any


Pix# sh access-list aclout
access-list aclout; 3 elements
access-list aclout deny tcp any any eq www (hitcnt=6)

access-list aclout permit tcp host 10.10.10.10 host 172.16.1.2 eq
www (hitcnt=0)
access-list aclout permit ip any any (hitcnt=45)

Áp access-list aclout vào interface inside bằng lệnh access-group
Pix(config)# access-group aclout in interface inside

Kiểm tra :


 từ PC không thể đi web ra mạng ngoài được .

×