• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 524
  • Last Modified:

FTP not working on a Cisco PIX Firewall v6.3(4)

I am trying to open only ftp on my PIX for a certain server inside my network. We are using a PocketPC device with windows mobile that we are trying to get the FTP to work with. It works great if the server is outside of the PIX., but not practical. The configuration I have tried is posted below.


Building configuration...
: Saved
:
PIX Version 6.3(4)
interface ethernet0 100full
interface ethernet1 100full
nameif ethernet0 outside security0
nameif ethernet1 inside security100
enable password xxxxxxxxxxx encrypted
passwd xxxxxxxxxxxxx encrypted
hostname xxxxxxxxxxxxx
domain-name ciscopix.com
fixup protocol dns maximum-length 512
fixup protocol ftp 20
fixup protocol ftp 21
fixup protocol h323 h225 1720
fixup protocol h323 ras 1718-1719
fixup protocol http 80
fixup protocol rsh 514
fixup protocol rtsp 554
fixup protocol sip 5060
fixup protocol sip udp 5060
fixup protocol skinny 2000
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol tftp 69
names
access-list 99 permit ip 192.168.1.0 255.255.255.0 10.0.0.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.18.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.19.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.21.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.23.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.24.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.25.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.26.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.27.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.28.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.30.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.31.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.32.0 255.255.255.0
access-list 99 permit ip 192.168.1.0 255.255.255.0 192.168.33.0 255.255.255.0
access-list 99 permit icmp any any
access-list 20 permit ip 192.168.1.0 255.255.255.0 192.168.18.0 255.255.255.0
access-list 30 permit ip 192.168.1.0 255.255.255.0 192.168.19.0 255.255.255.0
access-list 40 permit ip 192.168.1.0 255.255.255.0 192.168.21.0 255.255.255.0
access-list 50 permit ip 192.168.1.0 255.255.255.0 192.168.23.0 255.255.255.0
access-list 60 permit ip 192.168.1.0 255.255.255.0 192.168.24.0 255.255.255.0
access-list 90 permit ip 192.168.1.0 255.255.255.0 192.168.27.0 255.255.255.0
access-list 100 permit ip 192.168.1.0 255.255.255.0 192.168.28.0 255.255.255.0
access-list 110 permit ip 192.168.1.0 255.255.255.0 192.168.30.0 255.255.255.0
access-list 120 permit ip 192.168.1.0 255.255.255.0 192.168.31.0 255.255.255.0
access-list 130 permit ip 192.168.1.0 255.255.255.0 192.168.32.0 255.255.255.0
access-list 140 permit ip 192.168.1.0 255.255.255.0 192.168.33.0 255.255.255.0
access-list acl_out permit icmp any any
access-list acl_out permit ip any any
access-list acl_in permit icmp any any
access-list acl_in permit tcp xxx.xxx.xxx.xxx 255.255.252.0 host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit esp host xxx.xxx.xxx.xxx host xxx.xxx.xxx.xxx
access-list acl_in permit udp host xxx.xxx.xxx.xxx host xxx.xxx.xxx.xxx eq xxxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.xxx eq xxxx
access-list acl_in permit tcp any host xxx.xxx.xxx.25 eq ftp
access-list acl_in permit tcp any host xxx.xxx.xxx.25 eq ftp-data
pager lines 24
mtu outside 1500
mtu inside 1500
ip address outside xxx.xxx.xxx.xxx 255.255.255.240
ip address inside 192.168.1.103 255.255.255.0
ip audit info action alarm
ip audit attack action alarm
ip local pool pptp-pool xxx.xxx.xxx.xxx-xxx.xxx.xxx.xxx
no failover
failover timeout 0:00:00
failover poll 15
no failover ip address outside
no failover ip address inside
pdm logging informational 100
pdm history enable
arp timeout 14400
global (outside) 1 xxx.xxx.xxx.xxx
nat (inside) 0 access-list 99
nat (inside) 1 192.168.0.0 255.255.0.0 0 0
static (inside,outside) xxx.xxx.xxx.xxx 192.168.1.4 netmask 255.255.255.255 0 0
static (inside,outside) xxx.xxx.xxx.25 192.168.1.254 netmask 255.255.255.255 0 0
access-group acl_in in interface outside
access-group acl_out in interface inside
route outside 0.0.0.0 0.0.0.0 xxx.xxx.xxx.xxx 1
timeout xlate 1:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
timeout h323 0:05:00 mgcp 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 TACACS+ max-failed-attempts 3
aaa-server TACACS+ deadtime 10
aaa-server RADIUS protocol radius
aaa-server RADIUS max-failed-attempts 3
aaa-server RADIUS deadtime 10
aaa-server LOCAL protocol local
http server enable
http 192.168.1.0 255.255.255.0 inside
no snmp-server location
no snmp-server contact
snmp-server community public
no snmp-server enable traps
floodguard enable
sysopt connection permit-ipsec
sysopt connection permit-pptp
crypto ipsec transform-set strong esp-des esp-md5-hmac
crypto map ipsec 20 ipsec-isakmp
crypto map ipsec 20 match address 20
crypto map ipsec 20 set peer xxx.xxx.xxx.xxx
crypto map ipsec 20 set transform-set strong
crypto map ipsec 30 ipsec-isakmp
crypto map ipsec 30 match address 30
crypto map ipsec 30 set peer xxx.xxx.xxx.xxx
crypto map ipsec 30 set transform-set strong
crypto map ipsec 40 ipsec-manual
crypto map ipsec 40 match address 40
crypto map ipsec 40 set peer xxx.xxx.xxx.xxx
crypto map ipsec 40 set transform-set strong
crypto map ipsec 40 set session-key inbound esp 40 cipher xxxxxxxxxx authenticator xxxxxxxxxxxxxxxxxxx
crypto map ipsec 40 set session-key outbound esp 40 cipher xxxxxxxxxxxxx authenticator xxxxxxxxxxxxxxxx
crypto map ipsec 50 ipsec-isakmp
crypto map ipsec 50 match address 50
crypto map ipsec 50 set peer xxx.xxx.xxx.xxx
crypto map ipsec 50 set transform-set strong
crypto map ipsec 60 ipsec-isakmp
crypto map ipsec 60 match address 60
crypto map ipsec 60 set peer xxx.xxx.xxx.xxx
crypto map ipsec 60 set transform-set strong
crypto map ipsec 90 ipsec-isakmp
crypto map ipsec 90 match address 90
crypto map ipsec 90 set peer xxx.xxx.xxx.xxx
crypto map ipsec 90 set transform-set strong
crypto map ipsec 100 ipsec-isakmp
crypto map ipsec 100 match address 100
crypto map ipsec 100 set peer xxx.xxx.xxx.xxx
crypto map ipsec 100 set peer xxx.xxx.xxx.xxx
crypto map ipsec 100 set transform-set strong
crypto map ipsec 110 ipsec-isakmp
crypto map ipsec 110 match address 110
crypto map ipsec 110 set peer xxx.xxx.xxx.xxx
crypto map ipsec 110 set transform-set strong
crypto map ipsec 120 ipsec-isakmp
crypto map ipsec 120 match address 120
crypto map ipsec 120 set peer xxx.xxx.xxx.xxx
crypto map ipsec 120 set transform-set strong
crypto map ipsec 130 ipsec-isakmp
crypto map ipsec 130 match address 130
crypto map ipsec 130 set peer xxx.xxx.xxx.xxx
crypto map ipsec 130 set transform-set strong
crypto map ipsec 140 ipsec-isakmp
crypto map ipsec 140 match address 140
crypto map ipsec 140 set peer xxx.xxx.xxx.xxx
crypto map ipsec 140 set transform-set strong
crypto map ipsec interface outside
isakmp enable outside
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.255
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.255
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.255
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.248
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.248
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.248
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.240
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.252
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.248
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.248
isakmp key xxxxxxxx address xxx.xxx.xxx.xxx netmask 255.255.255.0
isakmp identity address
isakmp policy 10 authentication pre-share
isakmp policy 10 encryption des
isakmp policy 10 hash md5
isakmp policy 10 group 1
isakmp policy 10 lifetime 86400
telnet 192.168.1.0 255.255.255.0 inside
telnet timeout 5
ssh 0.0.0.0 0.0.0.0 outside
ssh 0.0.0.0 0.0.0.0 inside
ssh timeout 60
console timeout 10
vpdn group 1 accept dialin pptp
vpdn group 1 ppp authentication pap
vpdn group 1 ppp authentication chap
vpdn group 1 ppp authentication mschap
vpdn group 1 client configuration address local pptp-pool
vpdn group 1 pptp echo 60
vpdn group 1 client authentication local
vpdn enable outside
dhcpd lease 3600
dhcpd ping_timeout 750
dhcpd auto_config outside
terminal width 80
banner login                          WARNING!!!
banner login                   Property of xxxxxxxx, Inc.
banner login      Unauthorized Access is prohibited and punishable by law!
: end
[OK]

 xxxxxxxxxxx#
0
NascarFan3
Asked:
NascarFan3
  • 2
1 Solution
 
lrmooreCommented:
>access-group acl_out in interface inside
Start by removing this acl since you're permitting everything anyway. No acl on the inside interface means all traffic is allowed by default

access-list acl_in permit tcp any host xxx.xxx.xxx.25 eq ftp
access-list acl_in permit tcp any host xxx.xxx.xxx.25 eq ftp-data
static (inside,outside) xxx.xxx.xxx.25 192.168.1.254 netmask 255.255.255.255 0 0

Those three entries should be all you need.
Assuming that xxx.xxx.xxx.25 is *not* the same Ip address as you have assigned to the outside interface, and
Assuming that the ftp server has it's default gateway set to the PIX's inside ip address.

You might try disabling the fixup ftp 20/21
 no fixup protocol ftp 20
 no fixup protocol ftp 21
0
 
NascarFan3Author Commented:
Tried it with both combinations, and can't get it to connect. When testing with a straight ftp from a pc, it says connected. The next line says connection closed by remote host. It's like it's not getting through the firewall at all. We have tried doing traces to check for connectivity to the ftp server, and it says no data. Strange that we can ping the ftp server from outside, but no connection. Tracert doesn't work from outside either.
0
 
NascarFan3Author Commented:
Got it! You're comment was right. I had an address that should not have been used. Works perfectly! Thanks!!
0

Featured Post

Microsoft Certification Exam 74-409

VeeamĀ® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now