Ajustes de DCOM para comunicação OPC no Windows Server 2022: passo a passo, firewall e segurança

Se o seu servidor OPC no Windows Server 2022 parou de responder após ajustes de DCOM, este guia mostra, de ponta a ponta, como configurar permissões, identidade e firewall, fixar portas e validar a comunicação com segurança e previsibilidade.

Índice

Visão geral do problema

Em ambientes que ainda utilizam OPC Classic/OPC DA, a comunicação entre cliente e servidor depende de DCOM e RPC. Em instalações atualizadas do Windows Server 2022, políticas de segurança mais rígidas, permissões incorretas de DCOM, contexto de identidade inadequado ou portas bloqueadas por firewall são as causas mais frequentes de falha na conexão, na enumeração do OPCEnum e em operações de leitura/escrita.

Este artigo consolida um procedimento comprovado para restaurar a comunicação e, ao mesmo tempo, endurecer a segurança. Inclui um passo a passo visualmente organizado, tabelas de verificação, scripts de firewall e notas importantes para domínios do Active Directory e redes com segmentação estrita.

Checklist rápido antes de mexer no DCOM

  • Admin local: execute o processo com uma conta com privilégios administrativos na máquina do servidor OPC.
  • Arquitetura 32/64 bits: muitos servidores OPC Classic são 32-bit. Para configurá-los, abra o console de 32 bits: Win + R → mmc comexp.msc /32 Se abrir apenas o console padrão, você verá itens de 64 bits e pode não encontrar o servidor OPC.
  • Serviços base: confirme os serviços Remote Procedure Call (RPC) e DCOM Server Process Launcher em execução e definidos para inicialização automática.
  • Perfil de rede: prefira perfis Domínio/Privada em vez de Pública para o adaptador em uso.
  • DNS e horário: resolução de nomes consistente e relógios sincronizados (NTP) minimizam falhas de autenticação (Kerberos/NTLM).

Como o OPC Classic usa DCOM

OPC Classic (OPC DA, AE, HDA) usa RPC/DCOM com o seguinte fluxo simplificado:

  1. O cliente contata o RPC Endpoint Mapper na porta 135/TCP do servidor.
  2. Recebe um endpoint dinâmico (porta TCP aleatória dentro de um intervalo amplo) onde o servidor OPC atenderá.
  3. O cliente se autentica, ativa o servidor COM e estabelece a sessão OPC.

Portanto, abrir apenas a 135/TCP raramente basta. Em redes restritivas, recomenda-se fixar um intervalo de portas DCOM pequeno e liberá-lo no firewall, conforme mostrado mais adiante.

Solução recomendada (passo a passo)

EtapaAçãoObjetivo
1Abra Executar (Win + R) → dcomcnfgEntrar no Console Serviços de Componentes
2Navegue em Serviços de Componentes ▸ Computadores ▸ Meu Computador ▸ DCOM ConfigLocalizar o aplicativo OPC
3Clique com botão direito no servidor OPC ▸ PropriedadesAbrir definições específicas
4Geral → confirme “Executar neste computador”Garantir que o serviço rode localmente
5Localização → marque “Executar aplicação neste computador”Evitar execução remota indesejada
6SegurançaDefinir permissões exclusivas
6aPermissões de Inicialização e AtivaçãoPersonalizarEditarConceda Lançamento/Ativação Local e Remota às contas ou grupos que precisam acessar o servidor
6bPermissões de AcessoPersonalizarEditarConceda Acesso Local e Remoto às mesmas contas
7Identidade → selecione a conta de serviço correta; mantenha nível de autenticação Connect ou superiorGarantir contexto de segurança adequado
8Abra no firewall a porta 135/TCP e o intervalo de portas dinâmicas ou estáticas definido para DCOM/OPCPermitir o tráfego de rede necessário
9Reinicie o serviço/servidor OPC (ou o próprio Windows Server)Aplicar todas as alterações

Notas importantes para cada etapa

  • Encontrando o servidor OPC: ordene por Aplicativo ou AppID. Se ele for 32 bits, use mmc comexp.msc /32.
  • Permissões mínimas: crie um grupo dedicado (ex.: OPCUsers) e conceda a esse grupo as permissões nas seções 6a e 6b. Evite usar Everyone ou Anonymous Logon.
  • Identidade: para serviços contínuos, prefira Este usuário com uma conta de serviço (de domínio, se possível). Garanta políticas “Fazer logon como serviço” e acesso aos recursos necessários (arquivos, drivers, chaves de registro).
  • Nível de autenticação: Connect funciona na maioria dos cenários; quando possível, alinhe com níveis mais altos (Packet Integrity/Packet Privacy) para acompanhar o endurecimento do DCOM em edições recentes do Windows Server 2022.
  • Reinício: alguns servidores OPC se registram como surrogate (dllhost). Após alterar Identidade ou permissões, reinicie o serviço do OPC (ou o host COM) para forçar nova ativação.

Ajuste do firewall do Windows

Em redes segmentadas, habilite regras explícitas. Exemplos em PowerShell:

# Porta do RPC Endpoint Mapper
New-NetFirewallRule -DisplayName "OPC/RPC - 135/TCP (IN)" -Direction Inbound -Protocol TCP -LocalPort 135 -Action Allow

Exemplo de intervalo fixo de portas DCOM (ajuste conforme sua política)

New-NetFirewallRule -DisplayName "OPC/DCOM - 50000-50100/TCP (IN)" -Direction Inbound -Protocol TCP -LocalPort 50000-50100 -Action Allow

(Opcional) Restringir por origem conhecida (substitua 10.10.0.0/16 pelo seu segmento de clientes)

New-NetFirewallRule -DisplayName "OPC/DCOM - 50000-50100/TCP (IN - Clientes)" -Direction Inbound -Protocol TCP -LocalPort 50000-50100 -RemoteAddress 10.10.0.0/16 -Action Allow

Testes rápidos de conectividade a partir do cliente

Testa a 135/TCP

Test-NetConnection \ -Port 135

Se usar portas fixas, teste uma porta do intervalo

Test-NetConnection \ -Port 50000 

Dica: em auditorias, ative o log de conexões do firewall para evidenciar acessos (Propriedades do Firewall → Log do Firewall → Log dropped packets / Log successful connections).

Definindo um intervalo fixo de portas DCOM

Fixar um intervalo reduz a superfície exposta e simplifica regras de firewall. Duas abordagens usuais:

Pelo console de Component Services

  1. Abra Serviços de Componentes ▸ Computadores ▸ Meu Computador ▸ Propriedades.
  2. Guia Protocolos Padrão → selecione TCP/IP orientado a conexãoPropriedades.
  3. Em Endpoints, informe um intervalo (ex.: 50000-50100).
  4. Confirme e reinicie os serviços afetados.

Pelo Registro (cenário avançado)

Em ambientes muito restritos, vale definir o intervalo de portas no Registro, em HKLM\Software\Microsoft\Rpc\Internet, conforme indicado na sua política interna. Após a mudança, alinhe o firewall para permitir exatamente esse intervalo. Documente e padronize o valor em todas as máquinas envolvidas.

Segurança do DCOM: permissões e limites

Para evitar os erros mais comuns (principalmente 10016/10036 do DistributedCOM), ajuste tanto as permissões do aplicativo OPC quanto os limites globais do COM:

No aplicativo OPC (recomendado como primeira medida)

  • Segurança ▸ Permissões de Inicialização e AtivaçãoPersonalizarAdicionar o grupo OPCUsers (ou equivalente) com:
    • Ativação Local
    • Ativação Remota
    • Inicialização Local
    • Inicialização Remota
  • Segurança ▸ Permissões de AcessoPersonalizar → conceda:
    • Acesso Local
    • Acesso Remoto

Nos limites globais do COM (quando o evento acusar falta de direitos de Remote Activation)

  1. Em Meu Computador ▸ Propriedades ▸ Segurança COM, edite:
    • Permissões de Inicialização e AtivaçãoEditar Limites
    • Permissões de AcessoEditar Limites
  2. Inclua apenas os grupos necessários (ex.: OPCUsers) com Remote Access e Remote Activation. Evite Everyone e Anonymous Logon.

Identidade e nível de autenticação

  • Identidade: use Este usuário com uma conta de serviço dedicada. Evite Usuário interativo, que depende de sessão logada.
  • Autenticação: deixe o nível do aplicativo em Usar Padrão quando os Propriedades Padrão do computador estiverem em Connect ou superior. Em ambientes já “endurecidos”, prefira Integridade de Pacote.
  • Representação: Impersonate atende à maioria das necessidades de OPC DA.

Domínio, autenticação e topologias

CenárioRequisitosObservações
Mesmo domínio ADConta de serviço de domínio; DNS correto; relógio sincronizadoPreferível. Kerberos reduz fricção e melhora segurança.
Domínios diferentes com confiançaTrust configurada; SPNs; políticas de autenticaçãoValide roteamento, DNS entre florestas e políticas de NTLM/Kerberos.
Grupo de trabalhoMesmos usuários e senhas em cliente/servidor; NTLM habilitadoEvite alterações inseguras (ex.: relaxar UAC para contas locais). Considere usar OPC UA como alternativa.

Validação da comunicação

  1. Testes de porta a partir do cliente: Test-NetConnection <ServidorOPC> -Port 135 Test-NetConnection <ServidorOPC> -Port <portadointervalo>
  2. Enumeração do servidor: verifique se o cliente OPC consegue listar OPCEnum e o servidor OPC. Falhas aqui geralmente indicam 135/TCP ou permissões.
  3. Leitura/Escrita: execute uma leitura simples (ex.: um item Heartbeat) para confirmar estabilidade.

Diagnóstico e erros comuns

SintomaProvável causaComo resolver
Cliente não lista servidores OPC135/TCP bloqueada, OPCEnum ausente ou permissões de acessoAbra 135/TCP; instale/registre o OPCEnum; ajuste Permissões de Acesso
Conecta mas cai ao ativarSem Remote Activation ou Launch para o grupo do clienteCorrija em Permissões de Inicialização e Ativação (aplicativo e/ou limites)
Conexão intermitenteIntervalo dinâmico flutuante bloqueado pelo firewallFixe portas DCOM (ex.: 50000–50100) e libere o intervalo
Falha só com clientes antigosRequisitos mais altos de autenticação no Windows Server 2022Aumente o nível de autenticação do cliente ou ajuste compatibilidade conforme política
Eventos 10016/10036/10028 no VisualizadorPermissões insuficientes ou ativação remota negadaReveja permissões do aplicativo e “Editar Limites” em COM Security

Boas práticas de segurança

  • Princípio do menor privilégio: conceda acesso apenas a grupos específicos (evite Everyone).
  • Conta de serviço dedicada: sem privilégios administrativos desnecessários; senhas rotacionadas; “Log on as a service”.
  • Portas restritas: use intervalo fixo e limite RemoteAddress das regras de firewall aos segmentos de clientes.
  • Criptografia de tráfego: quando disponível, use níveis de autenticação mais altos (Packet Privacy).
  • Monitoramento: audite falhas no DistributedCOM e conexões no log do firewall para detectar tentativas indevidas.

Exemplo de matriz de permissões recomendada

PermissãoUsoConceder a
Inicialização LocalPermite inicializar o servidor localmenteConta de serviço do OPC
Inicialização RemotaPermite que o cliente dispare a ativação via DCOMGrupo de clientes OPC (ex.: OPCUsers)
Ativação LocalCria instâncias do servidor localmenteConta de serviço do OPC
Ativação RemotaCria instâncias via redeGrupo de clientes OPC
Acesso LocalChamadas locais ao servidor COMConta de serviço do OPC
Acesso RemotoChamadas remotas ao servidor COMGrupo de clientes OPC

Observações complementares

  • Serviços essenciais – Confirme se Remote Procedure Call (RPC) e DCOM Server Process Launcher estão ativos.
  • Intervalo de portas fixo – Em ambientes com firewall restritivo, vale definir um intervalo controlado de portas DCOM (registro: HKLM\Software\Microsoft\Rpc\Internet) e liberá‑lo.
  • Domínio e autenticação – Se utilizar contas de domínio, certifique‑se de que Kerberos ou NTLM estão habilitados e de que há confiança entre as máquinas.
  • Migração para OPC UA – Sempre que possível, considere projetar novas integrações em OPC UA (baseado em TCP/TLS e não em DCOM), que simplifica configuração, melhora segurança e facilita uso em redes segmentadas.

Fluxo de validação final

  1. Revisar Identidade do servidor OPC e confirmar execução sob a conta correta.
  2. Verificar Permissões de Acesso e Inicialização/Ativação no aplicativo e, se necessário, nos Limites do COM Security.
  3. Garantir 135/TCP e o intervalo fixo abertos no firewall (e, se aplicável, em dispositivos de borda).
  4. Executar Test-NetConnection e um cliente OPC de teste para confirmar browse, leitura e escrita.
  5. Checar o Visualizador de Eventos para confirmar ausência de novos erros do DistributedCOM.

Quando migrar para OPC UA

Se o ambiente exige segmentação rígida, acoplamento mínimo com AD/NTLM e configuração previsível de portas, migrar para OPC UA reduz custo operacional e riscos. UA usa TCP com certificados e perfis de segurança modernos; basta abrir as portas de cada endpoint UA (com TLS ou sem, conforme política). Na coexistência, um gateway ou wrapper UA ↔ Classic permite manter os clientes atuais enquanto a migração acontece.

FAQ

O que muda no Windows Server 2022 em relação a DCOM?
Políticas de autenticação e endurecimento vieram mais rígidas por padrão. Em geral, use níveis de autenticação “Connect” ou superiores e evite permissões amplas.

Preciso liberar portas além da 135?
Sim. DCOM usa portas dinâmicas para o tráfego de aplicação. Em redes restritas, defina um intervalo fixo (ex.: 50000–50100) e libere-o.

Por que o cliente enxerga o servidor mas falha na ativação?
Permissões de Remote Activation e Remote Launch ausentes para o grupo do cliente. Ajuste no aplicativo e, se necessário, nos Limites globais.

O servidor é 32 bits; como configurá-lo?
Abra o console de 32 bits: mmc comexp.msc /32. Muitos servidores OPC Classic se registram apenas nesse contexto.

Workgroup é suportado?
É possível, mas o domínio simplifica autenticação e segurança. Em Workgroup, use contas locais sincronizadas e evite ajustes inseguros.

Modelo de plano de ação

  1. Criar grupo OPCUsers e adicionar os usuários/serviços necessários.
  2. Definir Identidade do servidor OPC para uma conta de serviço dedicada.
  3. Conceder Acesso/Inicialização/Ativação ao grupo.
  4. Fixar intervalo DCOM e ajustar firewall.
  5. Validar com cliente de teste e monitorar eventos.

Exemplos adicionais de automação

Crie e documente as regras em código para padronizar implantações:

# Variáveis
$ports = "50000-50100"
$clients = "10.10.0.0/16"

Regras inbound

New-NetFirewallRule -DisplayName "OPC RPC 135 IN" -Direction Inbound -Protocol TCP -LocalPort 135 -Action Allow
New-NetFirewallRule -DisplayName "OPC DCOM IN (\$ports)" -Direction Inbound -Protocol TCP -LocalPort \$ports -RemoteAddress \$clients -Action Allow

Regras outbound (se a política exigir controle de saída)

New-NetFirewallRule -DisplayName "OPC RPC 135 OUT" -Direction Outbound -Protocol TCP -RemotePort 135 -Action Allow
New-NetFirewallRule -DisplayName "OPC DCOM OUT (\$ports)" -Direction Outbound -Protocol TCP -RemotePort \$ports -RemoteAddress \$clients -Action Allow

Auditoria rápida

Get-NetFirewallRule -DisplayName "OPC\*" | Format-Table DisplayName, Enabled, Direction, Action 

Conclusão

OPC Classic no Windows Server 2022 continuará funcionando de forma estável e segura quando você:

  • Define corretamente Identidade e permissões DCOM,
  • Controla o intervalo de portas e ajustes do firewall,
  • Padroniza contas/grupos e monitora eventos,
  • Planeja a migração para OPC UA no médio prazo.

Seguindo o passo a passo e as boas práticas acima, você reduz drasticamente erros de DistributedCOM, evita surpresas após atualizações e mantém a operação industrial previsível e auditável.

Índice