Introducción
Este documento describe un problema común que se ha producido al configurar Cisco Cloud Web Security (CWS) (anteriormente conocido como ScanSafe) en Cisco Adaptive Security Appliances (ASA) versiones 9.0 y posteriores.
Con CWS, ASA redirige de forma transparente HTTP y HTTPS seleccionados a un servidor proxy CWS. Los administradores pueden permitir, bloquear o advertir a los usuarios finales para protegerlos del malware con la configuración adecuada de las políticas de seguridad en el portal CWS.
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento de estas configuraciones:
- Cisco ASA mediante CLI o Adaptive Security Device Manager (ASDM)
- Cisco Cloud Web Security en Cisco ASA
Componentes Utilizados
La información de este documento se basa en Cisco ASA.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Diagrama de la red
Problema
Un problema común que se produce cuando se configura Cisco CWS en el ASA se produce cuando los servidores web internos se vuelven inaccesibles a través del ASA. Por ejemplo, aquí hay una configuración de ejemplo que corresponde a la topología ilustrada en la sección anterior:
hostname ASA1
!
<snip>
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 10.1.1.1 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 192.168.1.1 255.255.255.0
!
<snip>
object network inside-network
subnet 192.168.1.0 255.255.255.0
object network web-server
host 192.168.1.10
!
<snip>
access-list outside_access_in permit tcp any host 192.168.1.10 eq www
access-list outside_access_in permit tcp any host 192.168.1.10 eq https
access-list http-traffic extended permit tcp any any eq www
access-list https-traffic extended permit tcp any any eq https
!
<snip>
scansafe general-options
server primary fqdn proxy193.scansafe.net port 8080
server backup fqdn proxy1363.scansafe.net port 8080
retry-count 5
license <license key>
!
<snip>
object network inside-network
nat (inside,outside) dynamic interface
object network web-server
nat (inside,outside) static 10.1.1.10
!
access-group outside_access_in in interface outside
!
<snip>
class-map http-class
match access-list http_traffic
class-map https-class
match access-list https_traffic
!
policy-map type inspect scansafe http-pmap
parameters
http
policy-map type inspect scansafe https-pmap
parameters
https
!
policy-map outside-policy
class http-class
inspect scansafe http-pmap fail-close
class https-class
inspect scansafe https-pmap fail-close
!
service-policy outside-policy interface inside
Con esta configuración, el servidor web interno desde afuera que utiliza la dirección IP 10.1.1.10 podría ser inaccesible. Este problema puede deberse a varias razones, como:
- El tipo de contenido alojado en el servidor web.
- El servidor proxy de CWS no confía en el certificado de Secure Socket Layer (SSL) del servidor web.
Solución
El contenido alojado en cualquier servidor interno se considera generalmente de confianza. Por lo tanto, no es necesario analizar el tráfico a estos servidores con CWS. Puede agregar tráfico a dichos servidores internos a la lista permitida con esta configuración:
ASA1(config)# object-group network ScanSafe-bypass
ASA1(config-network-object-group)# network-object host 192.168.1.10
ASA1(config-network-object-group)# exit
ASA1(config)# access-list http_traffic line 1 deny tcp
any object-group ScanSafe-bypass eq www
ASA1(config)# access-list https_traffic line 1 deny tcp
any object-group ScanSafe-bypass eq https
Con esta configuración, el tráfico al servidor web interno en 192.168.1.10 en los puertos TCP 80 y 443 ya no se redirige a los servidores proxy CWS. Si hay varios servidores de este tipo en la red, puede agregarlos al grupo de objetos denominado ScanSafe-bypass.
Configuración final
A continuación se muestra un ejemplo de la configuración final:
hostname ASA1
!
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address 10.1.1.1 255.255.255.0
!
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 192.168.1.1 255.255.255.0
!
interface GigabitEthernet0/2
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/3
no nameif
no security-level
no ip address
!
interface Management0/0
management-only
no nameif
no security-level
no ip address
!
object network inside-network
subnet 192.168.1.0 255.255.255.0
object network web-server
host 192.168.1.10
object-group network ScanSafe-bypass
network-object host 192.168.1.10
!
access-list outside_access_in permit tcp any host 192.168.1.10 eq www
access-list outside_access_in permit tcp any host 192.168.1.10 eq https
access-list http_traffic deny tcp any object-group ScanSafe-bypass eq www
access-list http-traffic extended permit tcp any any eq www
access-list https_traffic deny tcp any object-group ScanSafe-bypass eq https
access-list https-traffic extended permit tcp any any eq https
!
scansafe general-options
server primary fqdn proxy193.scansafe.net port 8080
server backup fqdn proxy1363.scansafe.net port 8080
retry-count 5
license
!
pager lines 24
mtu outside 1500
mtu inside 1500
no asdm history enable
arp timeout 14400
!
object network inside-network
nat (inside,outside) dynamic interface
object network web-server
nat (inside,outside) static 10.1.1.10
!
access-group outside_access_in in interface outside
!
route outside 0.0.0.0 0.0.0.0 10.1.1.254 1
timeout xlate 3:00:00
timeout pat-xlate 0:00:30
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
timeout tcp-proxy-reassembly 0:01:00
timeout floating-conn 0:00:00
!
class-map http-class
match access-list http_traffic
class-map https-class
match access-list https_traffic
!
policy-map type inspect scansafe
http-pmap
parameters
http
policy-map type inspect scansafe https-pmap
parameters
https
!
policy-map inside-policy
class http-class
inspect scansafe http-pmap fail-close
class https-class
inspect scansafe https-pmap fail-close
!
service-policy inside-policy interface inside
Información Relacionada