Cisco ASA 5505 不允许 OPC 流量

Cisco ASA 5505 不允许 OPC 流量

我正在按以下方式集成 Cisco ASA 5505 防火墙:

内部 IP 范围(VLAN-AWTP):192.168.127.xxx(工业设备)

DMZ IP 范围(VLAN-OPC):192.168.77.xxx(仅具有访问工业网络设备的 OPC Server PC)

外部 IP 范围(VLAN-MWTP):192.168.50.xxx(OPC 客户端)

防火墙的目的是授予 VLAN-MWTP 访问 VLAN-OPC 上的 PC 的权限(完全访问是可以的),并且为 OPC 服务器提供对工业设备的有限访问(单个 TCP 端口)。这涉及到 NATing 等,我认为我已经实现好了。

这是我目前的状况和我的问题:

VLAN-OPC访问VLAN-AWTP成功(可以访问工业设备上的TCP端口)。

-VLAN-MWTP 上的一台 PC使用 NATed 192.168.50.32(转换为 192.168.77.4)ping 和 rdp 到 VLAN-OPC 服务器 PC,但似乎它无法浏览或连接到 OPC 服务器。我收到错误“RPC 服务器不可用”

-我已将其归结为防火墙问题,而不是 Windows DCOM,因为这是 OPC 连接的常见问题(已经遇到过这种问题!)我通过将 OPC PC 的 IP 设置为与 MWTP-VLAN 相同的子网并绕过防火墙进行了测试。连接正常。

-我尝试了几种不同的方法,例如按照一些论坛的指示启用 DCERPC 检查,但仍然没有成功,但到了这个时候,我感觉力不从心,所以我很可能做错了什么。您可能已经看到我的检查政策从哪里开始变得马虎了。

-基本上,我对从 VLAN-MWTP 到 VLAN-OPC 的完全访问(包括 RPC、DCOM 等)感到满意。我没想到这会这么难??

配置如下:

ASA Version 8.2(5)
!
hostname AAA-AAAAA
enable password HxFQQ4ozRZkZGyAK encrypted
passwd HxFQQ4ozRZkZGyAK encrypted
names
!
interface Ethernet0/0
 switchport access vlan 100
!
interface Ethernet0/1
 switchport access vlan 200
!
interface Ethernet0/2
 switchport access vlan 300
!
interface Ethernet0/3
 shutdown
!
interface Ethernet0/4
 shutdown
!
interface Ethernet0/5
 shutdown
!
interface Ethernet0/6
 shutdown
!
interface Ethernet0/7
 shutdown
!
interface Vlan100
 no forward interface Vlan300
 nameif VLAN-AWTP
 security-level 100
 ip address 192.168.127.4 255.255.255.0
!
interface Vlan200
 nameif VLAN-OPC
 security-level 0
 ip address 192.168.77.1 255.255.255.0
!
interface Vlan300
 nameif VLAN-MWTP
 security-level 0
 ip address 192.168.50.245 255.255.255.0
!
ftp mode passive
same-security-traffic permit inter-interface
same-security-traffic permit intra-interface
object-group network opc-chw-ip
access-list opc-access-in extended permit tcp host 192.168.77.4 host 192.168.77.50 eq 44818
access-list vws-access-out extended permit tcp host 192.168.77.4 host 192.168.127.50 eq 44818
pager lines 24
mtu VLAN-AWTP 1500
mtu VLAN-OPC 1500
mtu VLAN-MWTP 1500
icmp unreachable rate-limit 1 burst-size 1
no asdm history enable
arp timeout 14400
static (VLAN-AWTP,VLAN-OPC) 192.168.77.50 192.168.127.50 netmask 255.255.255.255
static (VLAN-OPC,VLAN-MWTP) 192.168.50.32 192.168.77.4 netmask 255.255.255.255
access-group vws-access-out out interface VLAN-AWTP
access-group opc-access-in in interface VLAN-OPC
timeout xlate 3:00:00
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
dynamic-access-policy-record DfltAccessPolicy
aaa authentication telnet console LOCAL
no snmp-server location
no snmp-server contact
snmp-server enable traps snmp authentication linkup linkdown coldstart
crypto ipsec security-association lifetime seconds 28800
crypto ipsec security-association lifetime kilobytes 4608000
telnet timeout 5
ssh 192.168.127.0 255.255.255.0 VLAN-AWTP
ssh timeout 60
console timeout 0

threat-detection basic-threat
threat-detection statistics access-list
no threat-detection statistics tcp-intercept
username aaaaaaaa password Tpz8OQBnrHIDp010 encrypted privilege 15
!
class-map icmp-class
 match default-inspection-traffic
class-map inspection-default
class-map CM-DCERPC
 match port tcp eq 135
class-map inspection_default
 match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
 parameters
  message-length maximum client auto
  message-length maximum 512
policy-map icmp_policy
 class icmp-class
  inspect icmp
policy-map global_policy
 class inspection_default
  inspect dns preset_dns_map
  inspect ftp
  inspect h323 h225
  inspect h323 ras
  inspect ip-options
  inspect netbios
  inspect rsh
  inspect rtsp
  inspect skinny
  inspect esmtp
  inspect sqlnet
  inspect sunrpc
  inspect tftp
  inspect sip
  inspect xdmcp
  inspect icmp
  inspect dcerpc
 class CM-DCERPC
  inspect dcerpc
policy-map PM-DCERPC
 class CM-DCERPC
  inspect dcerpc
!
service-policy global_policy global
service-policy icmp_policy interface VLAN-AWTP
service-policy PM-DCERPC interface VLAN-OPC
service-policy PM-DCERPC interface VLAN-MWTP
prompt hostname context
no call-home reporting anonymous
call-home
 profile CiscoTAC-1
  no active
  destination address http https://tools.cisco.com/its/service/oddce/services/DDCEService
  destination address email [email protected]
  destination transport-method http
  subscribe-to-alert-group diagnostic
  subscribe-to-alert-group environment
  subscribe-to-alert-group inventory periodic monthly
  subscribe-to-alert-group configuration periodic monthly
  subscribe-to-alert-group telemetry periodic daily
Cryptochecksum:f545ff56444cbffecda9d652f2261e2d
: end

我尝试连接的 OPC PC 具有静态 IP 192.168.77.4/24,网关为 192.168.77.1(此防火墙)。

任何帮助都将不胜感激!

答案1

您忘记了正在使用的许可证,但考虑到“无前向接口 Vlan300”,我假设是“基本”许可证。

无论如何,为什么会有这些言论?

相同安全流量允许接口内
...
访问列表 opc-access-in 扩展允许 tcp 主机 192.168.77.4 主机 192.168.77.50 eq 44818
...
接口 VLAN-OPC 中的访问组 opc-access-in

似乎他们试图过滤同一子网上主机之间的流量,但这种流量不应该穿过防火墙,对吧?192.168.77.50 是谁?我唯一能想到的是,你正试图将工业设备映射到 OPC 网络的 IP...通过执行“静态 (VLAN-AWTP,VLAN-OPC) 192.168.77.50 192.168.127.50 网络掩码 255.255.255.255”并应用接口内等。

此外,两个功能齐全的接口具有相同的安全级别(0),而且应用于特定接口的服务策略对我来说没有多大意义。

请不要误会,我只是想了解整体情况。

我能想到的可能的解决方案是:

  1. 由于 RPC 有不同的变体,并且 RPC 使用端点映射器 (EPM) 为在端口 135 上启动请求的客户端生成新连接(类似于主动 FTP 行为),因此一个可能的问题可能与 ASA 版本 <9.4 的某些 RPC 变体/消息的支持有限有关(http://www.cisco.com/c/en/us/td/docs/security/asa/asa94/release/notes/asarn94.html- “DCERPC 检查支持 ISystemMapper UUID 消息 RemoteGetClassObject opnum3”);根据您软件使用的调用(例如,如果使用非 EPM 调用),可能需要升级(请记住配置语句的更改,特别是从 8.3 开始)。

  2. 鉴于您告诉我们 ping 和 RDP 可以工作,但 RPC 不能,重新设计完整配置可能不是一个很好的解决方案,但我会尝试编写一个可能适合的更简单的配置,假设:

    • 您不需要在使用私有 IP 寻址的内部网络之间进行 NAT(nat-control 似乎确实被禁用了)。
    • 您不需要接口内通信。
ASA 版本 8.2(5)
主机名 AAA-AAAAA
启用密码 HxFQQ4ozRZkZGyAK 加密
密码 HxFQQ4ozRZkZGyAK 加密
名称
接口以太网0/0
 交换机端口无协商
 交换机端口模式访问
 交换机端口访问 VLAN 100
接口Ethernet0/1
 交换机端口无协商
 交换机端口模式访问
 交换机端口访问 VLAN 200
接口Ethernet0/2
 交换机端口无协商
 交换机端口模式访问
 交换机端口访问 VLAN 300
接口Ethernet0/3
 关闭
接口Ethernet0/4
 关闭
接口Ethernet0/5
 关闭
接口Ethernet0/6
 关闭
接口以太网0/7
 关闭
接口 Vlan100
 无转发接口 Vlan300
 nameif VLAN-AWTP
 安全级别 100
 IP地址 192.168.127.4 255.255.255.0
接口 Vlan200
 nameif VLAN-OPC
 安全级别 20
 IP地址 192.168.77.1 255.255.255.0
接口Vlan300
 nameif VLAN-MWTP
 安全级别 90
 IP地址 192.168.50.245 255.255.255.0
ftp 模式被动
访问列表 vws-access-out 扩展允许 tcp 主机 192.168.77.4 主机 192.168.127.50 eq 44818
传呼机线路 24
icmp 不可达速率限制 1 突发大小 1
没有启用 asdm 历史记录
arp 超时 3600
访问组 vws-access-out 出接口 VLAN-AWTP
超时 xlate 3:00:00
超时连接 1:00:00 半封闭 0:10:00 udp 0:02:00 icmp 0:00:02
超时 sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
超时 sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
超时 sip-provisional-media 0:02:00 uauth 0:05:00 绝对
超时 tcp-代理重组 0:01:00
浮动连接超时 0:00:00
动态访问策略记录 DfltAccessPolicy
aaa 身份验证 ssh 控制台本地
没有 snmp 服务器位置
没有 snmp 服务器联系
snmp-server 启用陷阱 snmp 身份验证 linkup linkdown coldstart
加密 ipsec 安全关联生存期秒 28800
加密 ipsec 安全关联生存期千字节 4608000
telnet 超时 5
ssh 192.168.127.0 255.255.255.0 VLAN-AWTP
ssh 超时 60
控制台超时 0
威胁检测 基本威胁
威胁检测统计访问列表
没有威胁检测统计 tcp 拦截
用户名 aaaaaaaa 密码 Tpz8OQBnrHIDp010 加密权限 15
类映射检查默认
 匹配默认检查流量
策略映射类型检查 DNS preset_dns_map
 参数
  消息长度最大客户端自动
  消息长度最大为 512
策略图 global_policy
 检查类_默认
  检查 DNS preset_dns_map
  检查 ftp
  检查 h323 h225
  检查 h323 ras
  检查 ip 选项
  检查 netbios
  检查 rsh
  检查 rtsp
  检查瘦
  检查 esmtp
  检查 sqlnet
  检查 sunrpc
  检查 tftp
  检查 SIP
  检查 xdmcp
  检查 icmp
  检查 dcerpc
服务策略 global_policy 全局
提示主机名上下文
无需回电报告 匿名
回电
 简介 CiscoTAC-1
  无活动
  目标地址 http https://tools.cisco.com/its/service/oddce/services/DDCEService
  目标地址电子邮件[电子邮件保护]
  目标传输方法 http
  订阅警报组诊断
  订阅警报组环境
  订阅警报组库存定期每月
  订阅警报组配置定期每月
  订阅警报组遥测定期每日
加密校验和:f545ff56444cbffecda9d652f2261e2d
: 结尾

当然,我不能保证它在您的环境下能起作用,但是“debug dcerpc ?”和“packet tracer ?”命令对于捕捉您实时设备上的错误很有用。

相关内容