Sei sulla pagina 1di 26

Sommario

Progetti condivisi

MANUALE D’INSTALLAZIONE
Guida di installazione rapida ___________________________________________________________1
I. Introduzione _______________________________________________________________________1
II. Requisiti hardware e software ________________________________________________________1
III. Installazione del server _____________________________________________________________1
IV. Configurazione ____________________________________________________________________2
V. Avvio del server ____________________________________________________________________2
VI. Arresto del server __________________________________________________________________3
VII. Avvio automatico del server_________________________________________________________3
APPROFONDIMENTO
Capitolo 1 Principi di funzionamento _____________________________________________________5
1.1 Principi di funzionamento di AMVNetworkSrv _____________________________________________ 5
1.1.1 Check-out e check-in ________________________________________________________________________ 5

Capitolo 2 Requisiti di funzionamento ____________________________________________________6


Capitolo 3 Installazione________________________________________________________________7
Capitolo 4 Configurazione ed avviamento _________________________________________________8
4.1 Configurazione del server ______________________________________________________________ 8
4.2 Avvio del server ______________________________________________________________________ 9
4.3 Pagina di amministrazione ____________________________________________________________10
4.4 Arresto del server ___________________________________________________________________11
4.5 Avvio automatico del server ___________________________________________________________12
Capitolo 5 Reti locali e configurazione ___________________________________________________13
5.1 Cartella di scambio temporaneo________________________________________________________15
Capitolo 6 Considerazione sulla sicurezza ________________________________________________19
Capitolo 7 Pagina di amministrazione ___________________________________________________20
7.1 Login ______________________________________________________________________________20
7.2 Gestione dei progetti_________________________________________________________________21
Capitolo 8 Backup del server___________________________________________________________22
Capitolo 9 Trasferimento del server _____________________________________________________23

1
Collana AMV

Guida di installazione rapida

I. Introduzione
Questo documento è rivolto a tecnici ed amministratori di sistema che abbiano conoscenze di reti tra computer e di
configurazione delle stesse.

AMVNetworkSrv è l’applicazione server di AMV per gestire i progetti condivisi di Mastersap.


Il connubio di questo server con MasterSap permette, una volta creato un progetto da parte di un utente in MasterSap,
di poterlo salvare e archiviare in una cartella condivisa (da qui in poi altresì denominata “repository”), in modo da po-
ter essere utilizzato anche da altri utenti, ciascuno sul proprio computer.

Per una descrizione dettagliata degli argomenti si consiglia di consultare le guide d’uso:

− Approfondimento del manuale di installazione (capitoli da 1 a 9 del presente manuale);


− Manuale d’uso Modellazione Analisi di MasterSap: Capitolo 2: Guida all'utilizzo dei progetti condivisi con il
programma MasterSap.

II. Requisiti hardware e software


• Sistema operativo Windows 10 Build 17063 64 bit e successive.
• È necessario avere una rete locale configurata, con un computer sempre disponibile per installare l'applicazione
server.
• Per operare dall'esterno della rete locale (connessione remota) sarà necessario stabilire un collegamento tra il
computer esterno e la rete locale (in genere mediante VPN).

III. Installazione del server


E’ compito dell’amministratore di sistema della macchina che ospiterà il server (host), creare preventivamente in essa:

• una cartella per contenere i progetti condivisi (repository), p.es: AMVRepository.


Questa deve essere di accesso esclusivo dell’amministratore del server di condivisione. Può trovarsi sull’host
stesso (scelta consigliata), ma anche su un computer diverso o su un’unità a disco esterna. In entrambi i casi tali
dispositivi devono essere visibili nella stessa rete del computer host ed il computer host deve avere i privilegi di
accesso per essi.
• una cartella di scambio temporaneo per gli utenti della condivisione, p.es: AMVRepoTemp.
Questa deve possedere i privilegi di accesso in lettura e scrittura per tutti gli utenti degli altri computer della rete
(nonché dell'amministratore), che vogliano condividere i progetti.

Per installare il server:


• copiare il file AMVNetworkSrv.zip nel computer (host) in cui si vuole installare il server.
Tale file si trova nella cartella “AMVNetworkSrvZip” dell’installazione di MasterSap 2022; eventualmente
può anche essere scaricato da internet cliccando qui.
• Decomprimere il file AMVNetworkSrv.zip in una nuova cartella, p.es AMVNetworkSrv (nome consigliato)

1
Collana AMV

IV. Configurazione
Nella cartella del server AMVNetworkSrv, se il file zip è stato decompresso correttamente, ci sarà una cartella "data".

Per configurare il server:


• Posizionarsi nella cartella "data"
• Aprire il file config.json con un editor di testo, p.es. il programma "Blocco Note" di Windows
Si osservano i campi portHttp, repositoryDir, repoTempDir, il cui valore va inserito dall'amministratore di
sistema in base al seguente significato:
o repoTempDir rappresenta la cartella temporanea di interscambio progetti.
La specifica del percorso DEVE contenere il nome della macchina host, il nome della cartella tempo-
ranea di interscambio ed avere il doppio backslash per i diversi gradi del percorso.
P.es. se la cartella sulla macchina host si chiama "AMVRepoTemp", è stata condivisa per tutte le mac-
chine in rete (tutti gli utenti) e il computer host si chiama "PCINRETE", bisognerà specificare
"repoTempDir":"\\\\PCINRETE\\AMVRepoTemp"
(si osservi che un host in una rete Windows è caratterizzato da quattro backslah, un percorso di cartella
da due backslash)
o repositoryDir rappresenta il percorso della cartella di repository, p.es C:\\AMVRepository. Inserire il
nome della cartella voluta se diverso da quello in esempio, avendo cura di usare il quadruplo backslash
con il nome del computer che ospita il repository, se diverso dall'host del server; usare il doppio back-
slash come separazione dei diversi gradi del percorso.
o portHttp contiene il numero di porta di comunicazione del server di rete AMV, tipicamente 3000. Tale
numero può essere cambiato dall’utente se il computer host ha qualche altro servizio già attivo sulla
stessa porta. Bisogna inoltre verificare che eventuali Firewall presenti nella rete consentano la comuni-
cazione su questa porta.

V. Avvio del server


• Posizionarsi nella cartella AMVNetworkSrv
• Eseguire il comando “AMVNetworkSrv.bat”.
Si apre una finestra di comando in stile DOS

Se l’avvio del server non ha successo la finestra di comando presenta il messaggio “AMVNetworkSrv terminato”.
Se l’avvio del server ha successo la finestra di comando rimane aperta, senza messaggi.

2
Collana AMV
Dalla macchina che ospita il server, l’amministratore può avviare un bro-
wser (p.es Chrome) e digitare http://localhost:3000, dovrebbe apparire la
schermata a lato.

Nella schermata di accesso l’utente è “admin” e la password di default è


“admin”. Si consiglia all’amministratore del sistema, di cambiare questa
password con la procedura successivamente indicata.
Una volta effettuato l’accesso, si ottiene la schermata di amministrazione
dei progetti condivisi, per l’uso della quale si consiglia di fare riferimento
al par. 7.1.

VI. Arresto del server


Prima di chiudere il processo del server, bisogna assicurarsi che nessun utente stia facendo operazioni di check-in,
check-out, avvisando i singoli utenti. In caso contrario l’operazione utente non sarà eseguita con successo ed i dati di
un progetto potrebbero non essere salvati allo stato dell’arte.

Per chiudere il servizio del server è sufficiente chiudere la finestra di comando.

VII. Avvio automatico del server


È possibile avviare il server in automatico con l’accensione del computer host. Ciò può risultare utile a seguito di ag-
giornamenti di sistema operativo che il computer host può subire con conseguenti riavvii.
Per l’avviamento automatico si deve generare un “collegamento” di AMVNetworkSrv.bat dalla cartella in cui esso è
installato (tipicamente “C:\AMVNetworkSrv”) alla cartella “C:\ProgramData\Microsoft\Windows\Start Menu\Pro-
grams\StartUp”.

Per questioni di privilegi di esecuzione, facendo copia e incolla collegamento nella cartella “C:\ProgramData\Micro-
soft\Windows\Start Menu\Programs\StartUp”, il sistema può chiedere di generare tale collegamento sul desktop. Da là
lo si potrà spostare in “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp” fornendo i privilegi di
accesso. Posizionato il collegamento nella cartella indicata, al successivo riavvio del computer host, il server dei pro-
getti condivisi partirà in automatico.

3
APPROFONDIMENTO
Capitolo 1
Principi di funzionamento

Questo documento contiene le istruzioni per installare e gestire i progetti condivisi di MasterSap tramite l’applicazione
server AMVNetworkSrv. È rivolto a tecnici ed amministratori di sistema che abbiano conoscenze di rete tra computer e
di configurazione delle stesse.

1.1 Principi di funzionamento di AMVNetworkSrv


I progetti MasterSap sono tipicamente gestiti in locale su un computer di proprietà dell’utente. Volendo condividere un
progetto con altri utenti finora l’unica possibilità era il passaggio del progetto ad altro utente che lo utilizzava a sua volta
in locale sul proprio computer.
Condividere un progetto, tipicamente sito in una cartella, da parte di un utente con gli altri utenti e permettere a ciascuno
l’accesso incontrollato al progetto, espone ciascun utente (nonché il proprietario originario) all’utilizzo contemporaneo
dello stesso progetto con problemi di interferenza reciproca nelle attività associate di lettura e scrittura dei diversi file
che compongono il progetto.
Il server di gestione di progetti condivisi MasterSap permette, una volta creato un progetto da parte di un utente, di
poterlo memorizzare in modo controllato in una cartella comune (denominata repository) in modo da poter essere uti-
lizzato anche da altri utenti, ciascuno sul proprio computer senza accesso e quindi interferenze da parte degli altri utenti.
Per fare questo si utilizza un’applicazione server di “condivisione” da ospitarsi su un computer “in comune” detto host,
con cui le singole istanze di MasterSap, presenti sui computer di ciascun utente, possano dialogare per trasferire un
progetto dal repository alla cartella locale dell’utente, tenendo conto se il progetto stesso viene utilizzato o meno da altri
utenti e concedendo la possibilità di utilizzo del progetto MasterSap su una macchina solo se altri utenti non lo stanno
utilizzando.

1.1.1 Check-out e check-in


Per raggiungere tale scopo di esclusività il server utilizza un meccanismo di check-out e check-in.
Con check-out si intende la possibilità per un utente di trasferire il progetto dal repository al proprio computer, in una
cartella locale da cui MasterSap aprirà il progetto stesso.
Una volta confermato ed eseguito il check-out da parte di un utente, gli altri utenti vedranno che il progetto è impiegato
e non potranno a loro volta eseguire il check-out finché il primo utente non avrà terminato i suoi sviluppi con un’opera-
zione di check-in.

Il check-in consiste nell’invio dei file di progetto locali al server per essere memorizzati nel repository. Al termine del
check-in ci sarà di nuovo la possibilità di utilizzo del progetto previo check-out da parte di altri utenti.
Con queste operazioni di check-in / check-out si determina la possibilità che un utente lavori e gli altri siano a conoscenza
che il progetto è impegnato per modifiche: alla conclusione del primo gli altri potranno operare.
Il server di condivisione tipicamente risiede su un computer (detto host) diverso da tutti quelli degli altri utenti e può
ospitare anche il repository oppure il repository può essere posto su un altro computer ancora o su un disco di rete NAS.

5
Capitolo 2
Requisiti di funzionamento

Per ospitare il server AMV dei progetti condivisi è necessario un computer (host) con sistema operativo Windows 10 di
versione superiore alla Build 17063. Tale server può anche essere un computer di uno degli utenti che vogliano utilizzare
i progetti condivisi, tuttavia è raccomandabile un computer terzo in funzionamento continuo, in quanto i singoli compu-
ter possono essere spenti o scollegati dalla rete (ad es. portatili).
La base di dati dei progetti condivisi, repository, deve essere ospitata in una cartella di accesso esclusivo dell’ammini-
stratore del server di condivisione e può trovarsi sull’host stesso oppure su un’unità a disco esterna, ma visibile nella
stessa rete del computer host.
Il server deve cioè poter accedere alla cartella con i progetti condivisi.
E’ altresì necessaria una cartella di scambio temporaneo con privilegi di accesso in lettura e scrittura per tutti gli utenti,
degli altri computer della rete, che vogliano condividere i progetti.
E’ compito dell’amministratore del server creare la cartella con i progetti condivisi (repository), la cartella di scambio
temporaneo per gli utenti della condivisione e gestire l’avvio del server.

6
Capitolo 3
Installazione

AMV fornisce un file compresso AMVNetworkSrv.zip contenente il software necessario per il server.
Tale file si trova nella cartella “AMVNetworkSrvZip” dell’installazione di MasterSap 2022; eventualmente può anche
essere scaricato dal seguente indirizzo web.
https://amsrl.s3.eu-central-1.amazonaws.com/CollanaAMV/2022/AMVNetworkSrv/AMVNetworkSrv.zip

Si copi tale file sul computer scelto come host in un percorso a piacere, ad esempio in “C:\”. Facendo click con il tasto
destro sul file AMVNetworkSrv.zip e selezionando “Estrai tutto”, si installerà il software necessario nella cartella AMV-
NetworkSrv. Si può anche optare per una cartella diversa, specificandola in sede di estrazione. Nel seguito si assume che
il server sia installato nella cartella AMVNetworkSrv; nel caso di una diversa cartella prescelta per l’estrazione, si assume
che chi legge consideri tale nome al posto di AMVNetworkSrv.

7
Capitolo 4
Configurazione ed avviamento

Nella cartella di installazione del server di rete AMVNetworkSrv si nota la presenza di una sottocartella data: in essa ci
sono tre file con estensione “.json”.

1. config.json: è il file di configurazione del server, deve essere modificato tramite un editor di testo dall’ammini-
stratore di sistema, con i parametri opportuni più avanti descritti. Importante: se questo file non viene modifi-
cato come descritto o se si scrivono parametri errati, non si potrà avviare il server dei progetti condivisi, che
restituirà errori.
2. users.json: è un file contenente la password di amministrazione per operazioni particolari sui progetti nel ser-
ver, la password può essere modificata solo utilizzando un browser, quando il server si è correttamente avviato,
tramite la pagina di amministrazione descritta più avanti. Il file NON deve essere modificato tramite editor
dall’amministratore, in quanto contiene una password in formato crittato, modificabile in modo corretto solo
tramite la pagina di amministrazione.
3. ProjectTable.json: è un file di dati che costituisce una parte della base dati per la gestione dei progetti condi-
visi; per quanto sia in formato leggibile, non deve essere mai modificato dall’amministratore; solo il pro-
gramma server, una volta avviato, può apportarvi le modifiche.

I tre file precedenti, nel caso in cui il server venga spostato in altro percorso o su altro computer host devono essere
preservati e copiati nella nuova destinazione. Solo il file config.json può essere modificato dall’amministratore di sistema
per la diversa configurazione che può essere richiesta al nuovo computer host.
Questi tre file devono essere poi soggetti ad eventuali backup di sicurezza: tutto il resto della cartella AMVNetworkSrv
può essere ripristinata, tramite il file AMVNetwork.zip, al suo stato originale, ma questi file devono essere preservati e
rimessi nella sottocartella data o si perderanno gli indici dei progetti condivisi. Si veda il capitolo ‘Backup’ e quello
‘Trasferimento server’.

4.1 Configurazione del server


Il file di configurazione (config.json) dopo l’installazione si presenta con il seguente contenuto:
{
"useHttp" : true,
"portHttp" : 3000,
"repositoryDir": "",
"repoTempDir": "",
"logNum": 10
}

Il campo “portHttp” contiene il numero di porta di comunicazione del server di rete AMV, tipicamente 3000, tale nu-
mero può essere cambiato dall’utente nel caso che il computer che ospita il server abbia qualche altro servizio già at-
tivo sulla stessa porta.
“repositoryDir” rappresenta invece il percorso della cartella della base di dati dei progetti (repository). L’amministra-
tore del server deve creare una nuova cartella e specificare il suo percorso tra i caratteri virgolette, p.es. “C:\\AMVRe-
pository”, se il computer che ospita il server ha un disco C: ed in esso si crea la cartella AMVRepository. La cartella
deve essere di proprietà dell’utente che avvia il server e non deve essere di accesso pubblico o condivisa tra più utenti.

8
Capitolo 4 – Configurazione e avviamento
Può anche risiedere su un altro computer in una cartella visibile al server: in tal caso bisogna specificare anche il nome
della macchina con la cartella, p.es. “\\\\ALTROPC\\AMVRepository”. Si noti la presenza di doppio carattere “\\”
backslash; esso è obbligatorio nella specifica del percorso: ci devono essere due backslash “\\” di separazione per ogni
cartella, p.es. “C:\\Cartella1\\Cartella2\\AMVRepository” e quattro backslash “\\\\” di separazione in presenza di nome
di computer, p.es. “\\\\NOMEPCINRETE\\Cartella\\AMVRepository”. È accettabile anche specificare il computer che
ospita la cartella in termini di indirizzo IP, es. “\\\\192.168.1.5\\Cartella\\AMVRepository”.
“repoTempDir”: rappresenta la cartella temporanea di interscambio progetti che deve essere creata dall’amministra-
tore del server e di pubblica condivisione tra tutti gli utenti autorizzati a condividere progetti; per semplicità può essere
anche una cartella accessibile da chiunque (cosiddetti utenti “Everyone”), se la rete è protetta da un firewall per cui
solo i computer all’interno della LAN possono vedersi tra loro e non c’è accesso dall’esterno (a meno che ciò non av-
venga tramite una più sicura VPN). La cartella temporanea deve essere esclusivamente specificata assieme al nome del
computer che la ospita (in generale, sarà lo stesso computer che ospita il server di condivisione); si osserva che non
basta un nome di percorso locale, che specifichi il disco in cui la cartella si trova, in quanto l’accesso è condiviso tra i
diversi computer con utenti della rete locale; es. di formato valido è “\\\\NOMEPCINRETE\\AMVRepoTemp”.

Attenzione: non si potrà specificare il nome della cartella come “C:\\AMVRepoTemp” anche se essa è ospitata nel disco “C:”
della macchina chiamata “NOMEPCINRETE”, perché tale disco rappresenta un percorso locale e non un percorso condi-
viso noto a tutti i computer della rete che vogliano condividere i progetti!

“logNum”: tipicamente pari a 10, rappresenta il numero di versioni che per ogni progetto sono conservate (storico), in
questo caso le ultime 10, e che un utente può ripristinare, nel caso in cui l’ultima versione non vada bene per il chec-
kout e si voglia mettere in checkout una versione precedente.

4.2 Avvio del server


Una volta che il file config.json è stato opportunamente scritto con i percorsi delle cartelle, l’amministratore del server
può avviare il server stesso facendo click sul file di script AMVNetworkSrv.bat.
Da un punto di vista tecnico esso avvia un server ‘node’ tramite script javascript. Per la tecnologia ‘node’ riferirsi a
“https://nodejs.org”. L’eseguibile ‘node’, versione 16.13.1, è già ospitato nella directory installata da AMV in AMVNet-
workSrv.

L’avviamento comporta l’apertura di una finestra di “prompt dei comandi” di Windows entro cui si può leggere “AMV-
NetworkSrv avviato…”. Se l’avvio del server non ha successo si può leggere “AMVNetworkSrv terminato”. Premendo
un tasto qualunque si esce dal “prompt dei comandi”. Si può leggere cosa non ha funzionato nel file di testo AMVNet-
workSrv.log. Tipicamente accade che la porta del server specificata, 3000, sia già occupata da un altro server oppure che
le cartelle specificate non esistano o sia sbagliato il loro percorso.
Se l’avvio del server ha successo, ‘node’ resta in esecuzione e la finestra di “prompt dei comandi” resta aperta senza
messaggio “AMVNetworkSrv terminato”.

9
Capitolo 4 – Configurazione e avviamento

4.3 Pagina di amministrazione


Dalla macchina che ospita il server, l’amministratore può avviare un brow-
ser (p.es Chrome) e digitare http://localhost:3000, appare la schermata di
fig. 4.1.
Il server cioè presenta una pagina di amministrazione. Se essa non appare
ed il browser risponde con sito non trovato, se il server si è correttamente
avviato, può essere che l’antivirus o il firewall (spesso dello stesso produt-
tore dell’antivirus) blocchi il programma stesso: in tal caso agire sul firewall
per consentire al programma AMVNetworkSrv, in particolare al processo
node.exe, di eseguirsi senza blocchi. Tipicamente i firewall, alla partenza
dello script AMVNetworkSrv.bat si accorgono del tentativo di apertura di
un server che utilizza una porta di trasmissione TCP e chiedono se lasciare
l’utilizzo o bloccare la porta.
A questo punto si è sicuri che il server è effettivamente funzionante, ma non
è detto sia visibile da altri computer della rete. Bisogna conoscere il nome fig. 4.1
del computer host ed il suo indirizzo IP: entrambi possono essere reperiti
facendo riferimento al capitolo 5, in generale cercando tali informazioni in “Impostazioni di Windows”, “Sistema”, “In-
formazioni”.
Su uno dei computer della rete, una volta aperto il browser, inserire l’indirizzo IP della macchina host o il suo nome,
p.es: “http://10.0.0.121:3000” oppure “http://NOMECOMPUTER:3000”. Se appare la schermata precedente il server è
visibile dal computer di rete; se non appare, dato che sappiamo che il server stesso è funzionante, può accadere che
l’accesso al server sia inibito da un firewall software del computer di rete oppure da un firewall fisico cui i computer sono
collegati, tipicamente uno switcher con funzione firewall o un router. In tal caso bisogna contattare l’amministratore
della rete (tipicamente sarà la stessa figura che ha avviato il server AMVNetworkSrv), e configurare i firewall in modo
che lascino aperte le comunicazioni tra i computer client e il computer che ospita il server (nell’esempio in esame il
computer di indirizzo “10.0.0.121” o di nome Windows “NOMECOMPUTER”) con la porta TCP 3000. Se ciò non è
possibile e solo alcune porte possono essere aperte, sarà l’amministratore ad aggiornare il file di parametri config.json,
campo “httpPort” con una porta TCP disponibile, a riavviare il server con l’opportuna configurazione e a comunicare ai
client quale porta utilizzare per l’accesso al server ed alla sua pagina di amministrazione.

10
Capitolo 4 – Configurazione e avviamento

4.4 Arresto del server


Nel caso di avvio e funzionamento con successo del server, resta sempre possibile terminare l’esecuzione dello stesso,
per esigenze di manutenzione (vedi cap. 9 e 10). Prima di chiudere il processo del server, bisogna assicurarsi che nessun
utente stia facendo operazioni di check-in, check-out, avvisando i singoli utenti. In caso contrario l’operazione utente
non sarà eseguita con successo ed i dati di un progetto potrebbero non essere salvati allo stato dell’arte.
Per terminare l’esecuzione del server bisogna posizionarsi sulla finestra di “Prompt dei comandi” di AMVNetworkSrv,
generata all’avviamento del server. Si preme quindi <CTRL> + C, cioè si preme il tasto <CTRL> seguito dalla lettera
“C” mantenendo premuto il tasto <CTRL>. Compare la scritta “Terminare il processo batch (S/N)?”. Premendo S il
processo del server ‘node’ si arresta.
È anche possibile arrestare il server da “Gestione attività”, programma Windows richiamabile con
<CTRL><ALT><CANC>; si ottiene la schermata:

Si nota in esecuzione il processo del server dei progetti condivisi sotto la voce “Processore dei comandi di Windows” o
“prompt di Windows”, contenente un “Node.js Runtime” (nota: può essere che la voce principale debba essere espansa
con click del mouse per identificare se contiene il Node.js):
Selezionando quindi la voce “Processore dei comandi di Windows” e facendo click con il tasto destro, seguito dalla scelta
di menù “Termina”, si chiuderà il processo server dei progetti condivisi.

11
Capitolo 4 – Configurazione e avviamento

4.5 Avvio automatico del server


È possibile avviare il server in automatico con l’accensione del computer host. Ciò può risultare utile a seguito di aggior-
namenti di sistema operativo che il computer host può subire con conseguenti riavvii.
Per l’avviamento automatico si deve generare un “collegamento” di AMVNetworkSrv.bat dalla cartella in cui esso è
installato (tipicamente “C:\AMVNetworkSrv”) alla cartella “C:\ProgramData\Microsoft\Windows\Start Menu\Pro-
grams\StartUp”. Per questioni di privilegi di esecuzione, facendo copia e incolla collegamento nella cartella “C:\Progra-
mData\Microsoft\Windows\Start Menu\Programs\StartUp”, il sistema può chiedere di generare tale collegamento sul
desktop. Da là lo si potrà spostare in “C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp” fornendo i
privilegi di accesso. Posizionato il collegamento nella cartella indicata, al successivo riavvio del computer host, il server
dei progetti condivisi partirà in automatico.

12
Capitolo 5
Reti locali e configurazione

La comunicazione dai client verso il server dei progetti avviene tramite reti locali tra computer Windows. La rete più
semplice è quella peer to peer tra computer connessi ad un router/hub. Questo tipo di rete va bene per un numero
limitato di computer che sono considerati tutti allo stesso livello, e ben si adatta agli utenti MasterSap che vogliano
scambiarsi i progetti.
Come breve cenno alle reti si consideri che i computer hanno un nome in Windows rilevabile tramite click in Imposta-
zioni, Sistema, Informazioni. Di seguito un esempio in cui si evince che il nome del computer è Antonio.

13
Capitolo 5 – Reti locali e configurazione
Se tale computer è connesso in rete ad esso viene assegnato un indirizzo IP, rilevabile con click in Impostazioni, Rete e
Internet, bottone proprietà. Si ottiene una schermata tipo:

Ove alla voce Indirizzo IPv4 si legge l’indirizzo IP del computer nel tipico formato v4: 10.0.0.121.
E’ proprio il nome del computer oppure l’indirizzo IPv4 a dover comparire nel file visto in precedenza, config.json.

14
Capitolo 5 – Reti locali e configurazione

5.1 Cartella di scambio temporaneo


Il server di condivisione utilizza una cartella di scambio temporaneo cui i client si connettono per ricevere i progetti
condivisi o per depositare un progetto da condividere. Tale cartella di nome p.es AMVRepoTemp, deve essere accessibile
in Lettura/Scrittura da parte dei computer client (che utilizzano MasterSap con i suoi menù di operazioni sui progetti
condivisi). Su una rete peer to peer, che è il più semplice tipo di rete Windows, si può condividere la cartella AMVRepo-
Temp tramite le seguenti operazioni:

Facendo click sul tasto destro Proprietà, si può osservare la tab di condivisione:

15
Capitolo 5 – Reti locali e configurazione
Con click su Condividi, si può aggiungere la visibilità della cartella a tutti gli utenti della rete che devono essere specificati
nell’apposita casella della successiva schermata;

Nell’esempio sopra, l’utente1 si appresta ad essere aggiunto in condivisione alla cartella AMVRepoTemp cioè tale utente
potrà vedere dal suo computer la cartella AMVRepoTemp di interscambio per la condivisione dei progetti.
Ulteriori utenti, tipicamente uno per ogni computer di rete, possono essere aggiunti, tramite il tasto Aggiungi.

Una volta aggiunto, l’utente ha tipicamente un livello di autorizzazione di Lettura:

16
Capitolo 5 – Reti locali e configurazione
Ciò non è sufficiente per il meccanismo di condivisione: la cartella di interscambio, per l’utente1 dell’esempio, deve
risultare di “Lettura/Scrittura”. Spostare quindi il livello di autorizzazione su “Lettura/Scrittura” agendo sul triangolino
vicino alla parola “Lettura”. Si ottiene il seguente risultato:

Nota: si devono ripetere le precedenti operazioni per ogni utente che si desidera coinvolgere nella condivisione dei
progetti. Il meccanismo di accesso ai progetti condivisi tiene conto dei privilegi assegnati dall’amministratore del server
alla cartella AMVRepoTemp: solo gli utenti dichiarati con accesso in “Lettura/Scrittura” potranno condividere i progetti.
Il client MasterSap dei progetti condivisi, per utenti non autorizzati, negherà l’accesso ai progetti condivisi con messaggi
di errore.

Infine, click su Condividi farà sì che AMVRepoTemp sia vista da tutti gli utenti dei computer connessi alla rete. P.es in
esplora risorse si vede che il computer Antonio-Port ha due cartelle condivise, una delle quali è AMVRepoTemp appena
aggiunta:

17
Capitolo 5 – Reti locali e configurazione

Esiste un’ulteriore possibilità per dare l’accesso a tutti gli utenti di una rete: di solito è invisa agli amministratori di
sistema in quanto riduce la protezione di Windows ed è percorribile solo se la macchina server è su una rete locale
adeguatamente protetta da firewall rispetto alle comunicazioni via Internet all’esterno della rete stessa.
Si può infatti dichiarare l’accesso alla cartella AMVRepoTemp in “Lettura/Scrittura” selezionando “Everyone” come
utente. In tal caso l’accesso è consentito a tutti gli utenti. Nel caso in cui il server sia erroneamente esposto su Internet,
chiunque potrebbe accedere ai progetti condivisi. Inoltre, tutti gli utenti nella rete locale potranno accedere ai progetti
condivisi tramite un client MasterSap: non è un problema per i piccoli studi di ingegneria in cui effettivamente tutti gli
ingegneri condividono, ma può esserlo per studi più grandi e strutturati in cui l’accesso si desidera solo per alcuni utenti
(p.es. gli ingegneri strutturisti, ma non gli impiegati commerciali o i progettisti degli impianti elettrici). In tal caso dichia-
rare esplicitamente utente per utente.

18
Capitolo 6
Considerazione sulla sicurezza

Considerato che l’ambiente in cui viene usata questa condivisione di progetti è quella di un piccolo studio di Ingegneria
in cui i singoli tecnici sono coinvolti sullo stesso progetto e vi è un rapporto di fiducia, l’interscambio dati tra i client
MasterSap ed il server AMVNetworkSrv avviene nel modo più semplice con comandi tramite protocollo http senza ci-
fratura: in linea teorica i vari comandi (es. Check-out, Check-in, Lista progetti, …) potrebbero essere rilevati con stru-
menti di packet sniffing da parte di qualunque computer connesso alla rete. Al di fuori del client MasterSap la riprodu-
cibilità di comandi con intenzioni malevole non è comunque semplice ed i comandi più critici, quali la cancellazione dei
progetti obsoleti o il reset del checkout di un utente, può avvenire solo da parte dell’utente di amministrazione, admin,
tramite browser previa autenticazione e non da client MasterSap. In questo modo solo l’utente di amministrazione può
cancellare i progetti, gli altri possono solo aggiungere e prendere contributi, limitando così la possibilità di errori non
recuperabili.
La mancanza di cifratura comporta che la condivisione sia opportuna solo all’interno di una rete locale adeguatamente
isolata da Internet tramite firewall, condizione questa facilmente raggiungibile e regolarmente implementata anche con
i modem router degli Internet provider classici. Configurando la rete in modo opportuno, dall’esterno non sarà possibile
accedere ai progetti.
Qualora i singoli computer fossero collegati alla rete locali tramite uno switcher dotato di caratteristiche di sicurezza (e
non un semplice hub/router), questo si può configurare con porte protette in modo che venga meno la possibilità di
packet sniffing sulla rete locale, per evitare che venga carpita anche la password dell’utente admin da parte di altri com-
puter collegati alla rete.
Configurando una VPN si può avere accesso alla rete locale e far sì che computer remoti possano essere visti come parte
della rete locale, ma in condizioni di cifratura lungo il percorso internet tra il computer client ed il server. Al di fuori
della VPN, se le condizioni di protezione descritte in precedenza sono soddisfatte, non è possibile, da parte di un com-
puter remoto in Internet, effettuare un collegamento direttamente al server.

19
Capitolo 7
Pagina di amministrazione

Il server dei progetti condivisi mette a disposizione delle pagine web di amministrazione, accessibili tramite “http://no-
meserver:porta”, ad es. “http://Antonio-port:3000” o “http://Antonio-port:80”.

7.1 Login
La prima schermata che compare (fig. 7.1) è una richiesta di accesso perché
tramite queste pagine si possono eseguire operazioni non comuni quali can-
cellare i progetti condivisi. Tipicamente l’amministratore che avvia il server è
anche deputato ad accedere a questa pagina e ad eseguire le operazioni criti-
che, ma può anche essere un ingegnere di riferimento del gruppo degli strut-
turisti, il quale si limiti a gestire i progetti senza preoccuparsi dell’infrastrut-
tura sottostante predisposta dall’amministratore di sistema come descritto nei
capitoli precedenti (privilegi utente, configurazione porte del server e cartelle
di condivisione o del repository, …).

Nella schermata di accesso l’utente è “admin” e la password di default è “ad-


min”. Si consiglia all’amministratore del sistema, di cambiare questa pas-
sword con la procedura successivamente indicata.

fig. 7.1

Una volta effettuato l’accesso, si ottiene la scher-


mata di fig. 7.2(in presenza di progetti già condi-
visi):

Tramite “Modifica password” si può modificare


la password di default dell’utente admin, in
modo che solo un utente, rappresentativo di tutti
gli altri, possa essere deputato alle operazioni sui
progetti.
Con “Uscita” si esce dalle pagine di amministra-
zione e si ritorna all’accesso utente.
Se non ci sono progetti condivisi, la lista non ap-
pare (è vuota).

fig. 7.2

20
Capitolo 7 – Pagina di amministrazione

7.2 Gestione dei progetti


Se ci sono progetti condivisi, la lista sopra li presenta e per ciascuno di essi sono possibili alcune operazioni:

• “+”: si visualizzano alcune informazioni aggiuntive sullo storico dei progetti condivisi, in particolare l’utente
che ha effettuato il check-in e in quale data/ora.

• Bottone “Annulla checkout utente”: gli utenti eseguono i check-out tramite il client MasterSap. Finché
l’utente non annulla il checkout dal suo client oppure esegue un check-in, il progetto resta occupato da
quell’utente e gli altri utenti non possono eseguire il check-out, se intenzionati ad aggiungere i loro contributi.
Se il primo utente non conclude, non ha contributi o modifiche, ma si “dimentica” il progetto in check-out sul
proprio computer (e successivamente non riesce ad avere il computer a portata di mano), l’amministratore,
sapendo che altri utenti attendono ed il primo non ha contributi importanti, può decidere di annullare il check-
out con questo bottone, “liberando” il progetto per gli altri.

• Bottone “Cancella definitivamente progetto”: si userà raramente, ma può essere che un progetto con il suo
storico di modifiche non sia più necessario ed occupi spazio nel repository. Con questo bottone si può cancellare
definitivamente tutto il progetto con le sue versioni storiche. Attenzione! L’operazione non si può annullare e
si perderà tutto quanto sviluppato fino a quel momento.

• Bottone “Cancella le versioni obsolete del progetto tranne l’ultima”: dato che un progetto con il suo storico
di modifiche può occupare spazio nel repository, specie se il numero massimo di versioni è stato aumentato in
sede di configurazione del server, dalle 10 impostate da AMV ad un valore superiore (p.es. 100…), si può deci-
dere di cancellare tutte le versioni tranne la più recente. Logicamente, prima di premere tale bottone, è oppor-
tuno che la versione più recente sia veramente quella più aggiornata!

Considerando che i comandi appena descritti possono creare danni sostanziali nella gestione dei progetti, si raccomanda
cautela nell’uso e si comprende perché l’accesso a tali funzioni sia riservato ad un solo utente responsabile (o ad un
numero ristretto di utenti in possesso della password) ed avvenga tramite pagina web in sede separata rispetto ai client
MasterSap.

21
Capitolo 8
Backup del server

Per questioni di sicurezza è opportuno effettuare un backup periodico del server con le informazioni sui progetti condi-
visi finora inseriti nel sistema.
I backup devono riguardare tutti i file della sottocartella data in AMVNetworkSrv che devono essere copiati in luogo
sicuro: un altro disco (magari su altro computer) tramite programma di backup o tramite copia manuale.
Oltre ai file della cartella data, i contenuti dei progetti condivisi MasterSap si trovano nella cartella specificata nel campo
“repositoryDir” del file config.json. Assumendo che tale cartella sia p.es. “C:\\AMVRepository” essa dovrà essere inte-
ramente sottoposta al backup.
In essa ci sono i file compressi di ciascun progetto MasterSap con la sua versione, con formato tipico “Progetto.Ver-
sione.tar.gz”. Tali file vengono manipolati dal server e scambiati con i client MasterSap durante le operazioni di gestione
dei progetti condivisi. Tutti i file presenti devono essere soggetti a backup, essi non devono essere eliminati a mano da
parte dell’amministratore, poiché tali file vengono indicizzati dal server grazie al file ProjectTable.json della cartella
data e la mancanza di uno di questi file può compromettere il funzionamento del server.
Per svolgere il backup è opportuno terminare l’esecuzione del server, eseguire il backup della cartella “data” e del repo-
sitory, riavviare il server. Queste operazioni possono anche essere eseguite con il server operativo, ma bisogna assicurarsi
che nessun utente stia effettuando operazioni lato client MasterSap, altrimenti, durante il backup si corre il rischio di
avere modifiche ai file e di effettuare un backup incompleto.

22
Capitolo 9
Trasferimento del server

Se si vuole trasferire il server dei progetti condivisi da un computer host ad un altro si può decidere di copiare l’intera
cartella AMVNetworkSrv direttamente nel nuovo computer oppure di installare sul nuovo computer il software fornito
da AMV, che costituirà quindi una nuova installazione e sarà priva dei dati dei progetti finora utilizzati. In entrambi i
casi bisogna sincerarsi che siano copiati sia i file presenti nella sottocartella “data” che i file compressi di ciascun progetto
MasterSap.
I file della sottocartella “data” sono ProjectTable.json, users.json e config.json. I primi due devono essere copiati senza
modifiche. Il terzo file dovrà essere modificato in base al nuovo host, in particolare i parametri "portHttp", "repository-
Dir", "repoTempDir” dovranno essere modificati se sul nuovo computer è disponibile una porta http differente (para-
metro “portHttp”); bisogna modificare il nome della cartella di interscambio specificata nel parametro “repoTempDir”
se c’è una nuova cartella deputata a tale scopo, e controllare anche il percorso specificato in “repositoryDir”.
A questo proposito si osserva che proprio nel percorso specificato in “repositoryDir” ci sono i file compressi di ciascun
progetto MasterSap aventi nome in un formato tipo: “Progetto.Versione.tar.gz”. Tali file devono essere copiati dalla
cartella nel vecchio host, specificata appunto in “repositoryDir”, alla cartella nel nuovo host sempre specificata in “re-
positoryDir”. Se in “repositoryDir” c’è un percorso che si riferisce ad un altro computer (cioè non al nuovo host) depu-
tato ad ospitare il contenitore dei progetti e tale computer rimane lo stesso nel passaggio dal vecchio al nuovo host, il
campo “repositoryDir” in config.json resterà ovviamente invariato. Bisogna logicamente assicurarsi che il nuovo host
riesca a “vedere” il computer contenente il repository dei progetti. Effettuato il trasferimento si può avviare il pro-
gramma server AMVNetworkSrv sul nuovo host, assicurandosi che il firewall consenta il traffico TCP/HTTP verso tale
server.

23

Potrebbero piacerti anche