Configurazione di Windows per comunicazioni OPC Server-Client Come impostare il sistema e DCOM Windows per utilizzare la comunicazione OPC di WinCC RT Advanced / WinCC RT Flexible 1
1. Introduzione Utilizzando il protocollo OPC DA DCOM, il programma di servizio "dcomcnfg" richiede una configurazione corretta per instaurare una comunicazione computer-to-computer sia su OPC client che OPC server. Questo servizio differisce per la tipologia di sistema operativo utilizzato. Il presente manuale è riferito al sistema operativo Windows 7 e alla sua famiglia. DCOM permette solo accessi autenticati tra I diversi computer Si raccomanda la creazione di un gruppo utenti dedicati alle comunicazioni OPC (es. "OPC Users") su tutti i dispositivi utilizzati. Nota: "dcomcnfg" comporta modifiche a livello molto profondo del sistema operativo. Questo può causare instabilità e comportamenti non prevedibili sul sistema stesso. Queste impostazioni diminuiscono il livello di sicurezza del sistema. Contattare il proprio responsabile IT per verificare la fattibilità del procedimento. 2. Impostazioni DCOM I seguenti passaggi sono da effettuare sia sui PC tipo Client che Server. 2.1. Avvio "dcomcnfg" - Premere tasto Windows + R - Digitare "dcomcnfg" - Click "OK" 2.2. Aprire le proprietà "My Computer Properties" - Selezionare Console Root Component Services Computers My Computer nell albero di navigazione laterale sinistro - Premere tasto destro su My Computer e selezionare Properties 2
2.3. My Computer Properties - Selezionare la tab "Default Properties" - Spuntare Enable Distributed COM on this computer - Impostare Default Authentication Level su None - Impostare Default Impersonation Level su Impersonate Nota: Default Authentication Level: indica quando l autenticazione deve essere effettuata (never, when connecting, for every packet, etc.). Default Impersonation Level: indica se le applicazioni possono determinare chi le ha chiamate e effettuare le operazioni utilizzando l identità del client. 3
2.4. Set "Default Protocols" - Selezionare la tab "Default Protocols" - Verificare che "Connection-oriented TCP/IP" sia al primo posto Nota: Windows verifica I protocolli nell ordine visualizzato. Se "Connection-oriented TCP/IP" non è al primo posto potrebbero esserci dei ritardi. Se il tempo impiegato per stabilire la connessione è più lungo del tempo a disposizione del server, il server stesso non è in grado di avviarsi. I protocolli non necessari possono essere cancellati. 4
2.5. Set "COM Security" - Selezionare la tab "COM Security" - Click Access Permission Edit Limits - Aggiungere gli utenti "ANONYMOUS LOGON", "Everyone", "INTERACTIVE", "NETWORK", "SYSTEM" - Spuntare "Local Access" e "Remote Access" per tutti questi utenti - Click "OK" Nota: Se fosse necessario, aggiungere qui I gruppi o gli utenti desiderati. 5
- Ripetere gli stessi settaggi per Access Permission "Edit Default" Click su Launch and Activation Permission "Edit Limits" - Aggiungere gli utenti "Everyone",", "INTERACTIVE", "NETWORK", "SYSTEM" - Spuntare "Local Launch", "Remote Launch", "Local Activation" e "Remote Activation" per tutti gli utenti - Click "OK" - Ripetere I settaggi per Launch and Activation Permissions "Edit Default" 6
3. Settaggi DCOM per le applicazioni Queste impostazioni andranno applicate all OPC Server utilizzato, in questo caso quello di WinCC Advanced. Queste impostazioni andranno effettuate anche sull applicazione OPCEnum.exe 3.1. Finestra proprietà di OPC.SimaticHMI.CoRtHmiRTm - Avviare dcomcnfg.exe (vedi indicazioni sopra) - Navigare dal menu ad albero laterale sinistro in Console Root Component Services Computers My Computer DCOM Config" - Selezionare OPC.SimaticHMI.CoRtHmiRTm - Tasto destro Proprietà 7
- Selezionare la tab "Identity" - Selezionare "The interactive user" 8
Nota: Se l OPC Server è avviato come servizio, le opzioni "interactive user" e "launching user"saranno non selezionabili. In questo caso scegliere "This user" e inserire un utente, preferibilmente uno appartenente al gruppo dedicato all applicazione OPC. - Selezionare la tab "Security" -Nella sezione Launch and Activation Permissions: selezionare "Use Default" - Nella sezione Access Permissions: selezionare "Use Default" - Nella sezione Configuration Permissions selezionare "Customize" e click su "Edit" - Aggiungere "Everyone", "INTERACTIVE", "NETWORK","SYSTEM" - Spuntare "Full Control" e "Read" per questi utenti - Click "OK" Nota: Per applicare le impostazioni DCOM è necessario un riavvio sia dell OPC Server che OPC Client. 9
3.2. Finestra proprietà di OPC.SimaticHMI.CoRtHmiRTm Ripetere i settaggi del paragrafo 3.1 anche per l applicazione OPCEnum.exe 4. Local Security Policy 4.1. DCOM Se si sta utilizzando un WORKGROUP e non un dominio i prossimi settaggi potrebbero essere necessari: - Click su Start -> Control Panel -> Administrative Tools -> Local Security Policy. - Dal menu ad albero sinistro selezionare Security Settings -> Local Policies -> Security Options - Tasto destro su DCOM: Machine Access Restrictions in SDDL syntax e selezionare Properties - Click su Edit Security 10
- Aggiungere gli utenti "Everyone", "INTERACTIVE", "NETWORK", Anonymous Logon e "SYSTEM" - Per ognuno degli utenti spuntare Local Access e Remote Access -Ripetere le impostazioni precedenti anche per la voce DCOM: Machine Launch Restrictions in SDDL syntax 4.2. Network Access - Aprire le proprietà della voce "Network access: Sharing and security model for local accounts" - Selezionare l opzione "Classic local users authenticate as themselves" - Aprire le proprietà della voce "Network access: Let Everyone permissions apply to anonymous users" - Selezionare l opzione "Enabled" 11
4.3. Diritti Utenti - Ritornare alla voce Local Policy e selezionare User Rights Assignment - Doppio click su Access this computer from the network per aprire le proprietà -Assicurarsi che siano presenti gli utenti come da immagine seguente. Non rimuovere le altre utenze già inserite. 12
Nota: Questi settaggi abilitano l accesso completo al sistema, quindi la sicurezza del sistema viene abbassata notevolmente. Assicurarsi di rispettare le policy definite dal vostro responsabile IT. 5. Configurazione di Windows Firewall In Windows 7 il Firewall è abilitato di default. Esso però blocca la comunicazione DCOM bloccando le chiamate remote per funzioni come ad esempio DNS Name Resolution, callback e Function Calls. Possono essere impostate però delle eccezioni all interno del Firewall, sia per applicazione specifica sia per numero di porta di comunicazione. Il problema è che la comunicazione DCOM richiede un ampio numero di porte aperte che possono creare dei buchi nel sistema per quanto riguarda la sicurezza. Nota: Una possibile soluzione potrebbe essere quella di disabilitare completamente il Firewall, ma questo potrebbe non essere permesso dalle Policy IT della compagnia. Contattare l amministrazione IT. Per disabilitare il Firewall seguire la procedura seguente: - Start -> Control Panel - Doppio click sull icona Windows Firewall -Selezionare Turn Windows Firewall on or off sul lato sinistro della finestra -Disabilitare il Firewall sulla rete desiderata (Privata o Pubblica) 13
5.1. Applicazioni Permesse di Windows Firewall Se invece si volesse mantenere attivo il Firewall, è possible seguire la seguente procedura per creare tutte le eccezioni necessarie. - StartControl PanelWindows Firewall - Dal menu laterale sinistro selezionare Allow a Program or Feature through Windows Firewall - Click "Allow another program" - Aggiungere tramite il tasto Browse l applicazione OPCEnum.exe, al percorso Windows\System32 - Selezionare OPC Server Enumerator e cliccare Add. 14
- Spuntare sia la rete Public che la rete Private - Ripetere I passaggi precedenti per l applicazione OPC Server di WinCC Advanced, SOPC_CoRtHmiRTm.exe, localizzata al percorso Program Files\Siemens\Automation\WinCC RT Advanced. Essa verrà visualizzata come Simatic OPC DA Server. - Aggiungere inoltre tutte le altre eventuali applicazioni OPC Client o OPC Server con la stessa modalità. 5.2. Apertura Porte di Windows Firewall - Riportarsi alla pagine iniziale di Windows Firewall - Selezionare Advanced Settings dal menu laterale sinistro - Selezionare Inbound Rules - Dal menù laterale destro selezionare New Rule - Tramite il Wizard, selezionare l opzione Port e cliccare su Next - Selezionare TCP e specificare la porta 135, inserendola nel campo di testo. Premere Next - Selezionare Allow the Connection. Premere Next - Selezionare il tipo di rete su cui si vuole aprire la porta 135 (solitamente sono tutte spuntate), poi Next - Inserire Nome e descrizione(facoltativa) della regola creata. 15
Nota: L apertura della porta 135 crea un buco nella sicurezza del sistema. Questo permette alle applicazioni di effettuare chiamate remote sulla rete e quindi potrebbe creare un possibile passaggio per molti virus o malware. Assicurarsi che la porta 135 sia chiusa tra la rete aziendale e Internet. - Ripetere la seguente procedura creando una nuova regola (sempre Inbound) con il range di porte 1024-65534, necessaria in quanto la porta utilizzata dal Server OPC è dinamica in questo range. Per inserire un range di porte, utilizzare il segno - tra i due valori di porta (inserire 1024 65534) 6. User Access Control Per aumentare il livello di sicurezza nei sistemi Windows 7, è stato implementato un controllo sugli accessi dell utente a programmi, funzionalità e comunicazioni noto come User Access Control (UAC). L UAC limita i permessi degli utenti nell effettuare operazioni di amministrazione del sistema, mostrando un pop up per abilitare temporaneamente l utente ad effettuare tali operazioni. Per la seguente applicazione, è consigliato disabilitare lo UAC, in quanto potrebbe portare a conflitti di sistema con l applicazione OPC. Per disabilitare l UAC, è possibile seguire la guida al seguente link. (https://www.swe.siemens.com/italy/web/ad/prodottiesoluzioni/sistemiautomazionenew/simatic- PLAY/Documents/Disabilitare%20lo%20User%20Account%20Control.pdf) 7. Limitazioni OPC DCOM è stato sviluppato per funzionare in un ambiente specifico, dove possono essere applicate le seguenti condizioni: - Tutte le macchine e gli utenti appartengono allo stesso dominio/gruppo di lavoro - Nessun Firewall è abilitato - Tutti i dispositivi di comunicazione sono affidabili - Non sono presenti restrizioni nella larghezza di banda della comunicazione Queste condizioni sono tipicamente quelle di una rete LAN in un ufficio. Tuttavia questo è difficilmente replicabile all interno di una rete complessa come quella di un tipico impianto industriale. Domini multipli, regole di sicurezza IT, risorse delocalizzate geograficamente e molteplici altri fattori possono rendere la comunicazione tramite protocollo OPC basata su DCOM molto complicata da configurare e da diagnosticare. E quindi consigliata la valutazione di altre metodologie di scambio dati in caso di configurazioni di rete che non soddisfino le condizioni elencate sopra. 16