29.01.2018 Views

L01-Corso Presentazione Infrastruttura Tecnologica

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Presentazione</strong> della<br />

<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

di Previnet<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

1


Agenda<br />

• Breve presentazione di Previnet<br />

• Cenni sull’infrastruttura tecnologica<br />

• Componenti di un’applicazione<br />

• Servizi accessori<br />

• Linee Guida per gli sviluppatori<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

2


Chi?<br />

PREVINET<br />

-<br />

Servizi amministrativi<br />

in full outsourcing<br />

CLIENTI<br />

-<br />

Contratti SLA<br />

Fondi Pensione<br />

Compagnie di Ass.<br />

Società Finanziarie<br />

CONTROPARTI<br />

-<br />

Banche<br />

Centri Servizi<br />

Strutture Tecniche<br />

UTENTI FINALI<br />

-<br />

Aderenti<br />

Sottoscrittori<br />

Beneficiari<br />

Intermediari, Broker<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

3


Chi?<br />

PREVINET – Unità Organizzative<br />

DIREZIONE<br />

FONDI PENSIONE<br />

-<br />

Front Office<br />

Back Office<br />

Contabilità<br />

Area IT<br />

COMPAGNIE di ASS.<br />

-<br />

Front Office<br />

Back Office<br />

Contabilità<br />

Area IT<br />

SOGGETTI FINANZIARI<br />

-<br />

Front Office<br />

Back Office<br />

Contabilità<br />

Area IT<br />

UFFICIO LEGALE UFFICIO CONTABILE UFFICIO del PERSONALE<br />

UFFICIO ARCHITETTURA<br />

UFFICIO SISTEMI<br />

-<br />

System Administrator<br />

Database Administrator<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

4


Cosa?<br />

APPLICAZIONI<br />

-<br />

Client /Server tradizionali<br />

Client/Server web<br />

Web, Mobile<br />

DATI<br />

-<br />

Database relazionali, NoSQL<br />

Files<br />

SERVIZI<br />

-<br />

Ricetrasmissione flussi<br />

Web Services<br />

RICERCA e<br />

SVILUPPO<br />

-<br />

Predictive Modeling, Data Analytics<br />

Nuove tecnologie web<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

5


Come?<br />

Canali di Comunicazione<br />

Internet<br />

VPN<br />

MPLS<br />

Fonia<br />

Posta<br />

HTTPS SFTP FTPS (SMTP)<br />

HTTPS SFTP FTPS<br />

HTTP FTP<br />

MQ<br />

HTTPS SFTP FTPS<br />

HTTP FTP<br />

MQ<br />

Voce<br />

Fax<br />

Corriere<br />

Servizio Postale Nazionale<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

6


Dove?<br />

Sito Primario<br />

-<br />

CED PREVINET<br />

Preganziol<br />

Sito DR<br />

-<br />

CED SINTEA<br />

Torino<br />

INFRASTRUTTURA TECNOLOGICA<br />

Sistema di Gestione della Sicurezza (ISMS)<br />

certificato ISO 27001:2013<br />

a protezione dei dati in termini di<br />

• RISERVATEZZA<br />

• INTEGRITA’<br />

• DISPONIBILITA’<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

7


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Overview<br />

CANALI DI COMUNICAZIONE – Internet VPN MPLS<br />

Firewall Esterno<br />

DMZ – rete dati dei servizi esposti<br />

Firewall Interno<br />

LAN – rete dati dei servizi interni<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

8


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Canali di Comunicazione<br />

Internet<br />

IP Pubblici<br />

rappresentati da nomi DNS<br />

Ore<br />

- sicuro<br />

VPN<br />

IP Privati<br />

Giorni<br />

MPLS<br />

IP Privati<br />

Mesi<br />

+ sicuro<br />

IP Privati:<br />

10.0.0.0 – 10.255.255.255 (16.777.216)<br />

172.16.0.0 – 172.31.255.255 (1.048.576)<br />

192.168.0.0 – 192.168.255.255 (65.536)<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

9


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Canali di Comunicazione<br />

Capacità<br />

- bloccante<br />

Latenza<br />

Compatibilità di reti<br />

+ bloccante<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

10


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Fw Esterno – DMZ<br />

Fw Esterno<br />

Espone nei canali di comunicazione solo<br />

i servizi necessari (IP, Porta)<br />

DMZ<br />

IP in<br />

172.16.0.0<br />

…<br />

172.31.255.255<br />

La rete DMZ principale è<br />

172.28.x.x<br />

Contiene per lo più i servizi esposti dal<br />

Fw Esterno:<br />

• web server<br />

• dns<br />

• posta (MTA)<br />

• sftp server<br />

• ftp server (solo in VPN, MPLS)<br />

• mq server (solo in VPN, MPLS)<br />

• …<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

11


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Fw Interno – LAN<br />

Fw Interno<br />

LAN<br />

IP in<br />

10.0.0.0<br />

…<br />

10.255.255.255<br />

La rete LAN principale è<br />

10.213.x.x<br />

Protegge la LAN regolando il traffico di<br />

rete proveniente dai / indirizzato ai<br />

servizi in DMZ<br />

Contiene tutti i servizi interni:<br />

• db server<br />

• batch server<br />

• app server<br />

• reverse proxy<br />

• ftp server, mq server<br />

• file server<br />

• posta<br />

• client<br />

• server accessori<br />

• …<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

12


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Visione trasposta - Ambienti<br />

LAN DMZ CANALI<br />

SVILUPPO<br />

client, db server<br />

batch server<br />

app server, ftp server<br />

reverse proxy<br />

web server<br />

COLLAUDO<br />

client, db server<br />

batch server<br />

app server, ftp server<br />

reverse proxy<br />

web server<br />

Internet<br />

VPN<br />

MPLS / ISDN<br />

PRODUZIONE<br />

client, db server<br />

batch server<br />

app server, ftp server<br />

mq server, file server<br />

posta, reverse proxy<br />

web server<br />

ftp server, sftp server<br />

posta (MTA)<br />

Internet<br />

VPN<br />

MPLS / ISDN<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

13


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Ambiente di Produzione<br />

• Versionamento del codice<br />

PRODUZIONE<br />

BLINDATA<br />

• Passaggi in produzione<br />

• Controllo Accessi<br />

• Lettera di nomina a incaricato<br />

• Policy di comportamento<br />

In ambiente di Collaudo deve esserci una copia ‘anonimizzata’ dei dati di produzione<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

14


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Visione fisica – il Datacenter<br />

Virtual<br />

Machines<br />

Link Balancer<br />

Virtualization System<br />

Fw Esterno<br />

Server BLADE System<br />

Server BLADE System<br />

Server BLADE System<br />

Fw Interno<br />

Switch Layer III<br />

STORAGE NAS NAS NAS<br />

Switch Layer II<br />

Switch Layer II<br />

Switch Layer II<br />

Switch Layer II<br />

Backup System Disks Tapes<br />

Switch Layer II<br />

Il Datacenter non è un sistema a risorse infinite<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

15


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Cluster<br />

Dataserver<br />

Batch<br />

App PB<br />

App Server<br />

Web Server<br />

Reverse Proxy<br />

Visione fisica – il parco server<br />

pp… cp… tp…<br />

ps… cs… ts…<br />

srvbatchprod… srvjbatchprod… srvbatchpreprod… srvbatchcoll… bspoller<br />

srvnt09 srvftp srvspazio collaudont2k win2000pc<br />

\\srvfile\Sviluppo\Pb9Appl<br />

\\srvfile\Sviluppo\Appl<br />

\\srvfile\Sviluppo\ApplProd<br />

\\srvfile\Sviluppo\WebAppl<br />

srvj… srvjcoll… c…as… testas…<br />

fondipensione (webuploader dataentry crono)<br />

polizze (creval ergowtc gate179 gate mart3 mobile onlife unionvita)<br />

finanza (agorafondi dpap elios gpm iasset iassetext pixel qbera templeton)<br />

webab web webv wtc wtcvpn<br />

collaudoweb cweb testweb<br />

srvwebproxyprod<br />

srvwebproxycoll<br />

srvwebproxytest<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

16


<strong>Infrastruttura</strong> <strong>Tecnologica</strong><br />

Server<br />

Scambio Flussi<br />

Accesso<br />

Logico<br />

Server<br />

Accessori<br />

Visione fisica – il parco server<br />

srvnt09 (solo in output verso Internet)<br />

srvftp (input/output in VPN/MPLS)<br />

srvspazio (input/output in VPN/MPLS)<br />

caronte (input/output Internet solo sftp)<br />

fileway (input/output Internet solo sftp con filtro sugli IP sorgente e uso dei protocolli più sicuri ssh)<br />

collaudont2k (solo uso interno)<br />

win2000pc (solo uso interno)<br />

srvnt03 (deprecato)<br />

srvad… (utenti di dominio)<br />

srvfile<br />

srvcvs srvsharedcvs<br />

srvsvn<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

17


Applicazione – componenti<br />

Database<br />

Batch linux<br />

Anagrafica, Portafoglio, Comunicazioni, Processi, Servizio<br />

Definito in un gestore di database (cluster, dataserver)<br />

Home utente di processo, pollerstep (poller)<br />

Postgresql, Sybase<br />

Sql, Perl, Java, Bash<br />

Batch nt<br />

Home utente di processo, pollerslave (pollernt)<br />

Sql, Perl, Batch<br />

App PB<br />

App Server<br />

Applicazione client/server per la navigazione delle tabelle del<br />

db attraverso l’uso di finestre e collegamenti<br />

Applicazioni speedahead, applicazioni web<br />

PowerBuilder, Sail<br />

Jboss, Wildfly, J2EE<br />

Web Server<br />

File Server<br />

Gestore Accessi<br />

Servizio di pubblicazione delle applicazioni / servizi web<br />

Reverse Proxy per accesso controllato a risorse esterne<br />

Area di scambio e di archivio dei file di input/output lavorati<br />

da processo<br />

Gestione delle utenze e dei profili<br />

Moduli di login applicativi e di registrazione degli accessi<br />

Apache<br />

Ftp, Flex, Spazio<br />

Active Directory, Isec<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

18


Applicazione – componenti<br />

Client<br />

Gestore Accessi<br />

Active<br />

Directory<br />

Browser<br />

App PB<br />

Sail<br />

App Server<br />

deploy.previnet/<br />

ear, war, xml, bsh<br />

Jboss<br />

WildFly<br />

LAN DMZ Canali<br />

di Com.<br />

Web Server<br />

Apache<br />

Nome e IP virtualhost<br />

Jkmount(context, appserver)<br />

Browser<br />

Web Server<br />

Web Service<br />

Gestore Accessi<br />

Reverse Proxy<br />

Apache<br />

Isec<br />

Cluster - Dataserver<br />

Nome e IP virtualhost<br />

ProxyPass(context, URL)<br />

Web Service<br />

nomedb<br />

Poller<br />

Batch Linux<br />

File Server<br />

Spazio<br />

Dns<br />

Bind<br />

Nome dominio<br />

Bind(nome servizio, IP)<br />

Browser<br />

Web Server<br />

Web Service<br />

Sftp Client<br />

/home/nomedb/<br />

Poller<br />

slave<br />

Batch nt<br />

d:\home\nomedb\<br />

script<br />

script<br />

\SpazioRoot\perXXX\<br />

\SpazioRoot\daXXX\<br />

File Server<br />

\FtpRoot\nomedb\In\<br />

\FtpRoot\nomedb\Out\<br />

\FtpRoot\nomedb\Archivio\<br />

Flex<br />

Sftp Server<br />

/home/nomesftp<br />

Fileway<br />

Caronte<br />

MQ Server<br />

Ftp Server<br />

Sftp Server<br />

Sftp Client<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

19


Applicazione - deploy<br />

database@previnet.it<br />

Librerie PB<br />

Passaggi in produzione una tantum controllati<br />

prodfondi@previnet.it<br />

prodpolizze@previnet.it<br />

prodfinanza@previnet.it<br />

sql, script perl/java/spoon/…, script perl di manutenzione<br />

Ogni 10 minuti dalle 8:30 circa fino alle 21:00 circa (no sabato e domenica)<br />

wiki.previnet.it > Area DBA > Area sviluppatori<br />

ufficio.deploy@previnet.it<br />

helpdesk.sistemisti@previdom.previnet.it<br />

Applicazioni Web in produzione<br />

Applicazioni Web su WildFly in produzione e collaudo<br />

Orari: prima delle 9.00 e dopo le 19.00 circa<br />

I Primi Deploy sono eseguiti il giorno successivo<br />

Richieste urgenti di rilascio di Applicazioni Web in produzione<br />

Richieste urgenti di rilascio di Applicazioni Web su WildFly in produzione e collaudo<br />

deploy.automatico@previdom.previnet.it<br />

Qualunque richiesta di rilascio di Applicazioni Web in produzione e collaudo<br />

No Primi Deploy<br />

Orari: produzione dopo le 19.00, collaudo ogni 10 minuti h24<br />

Blocco servizio in caso di demo<br />

In fase di costruzione pagina wiki<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

20


Applicazione - pubblicazione<br />

database@previnet.it<br />

Applicazioni PB in rete LAN<br />

\\syncserver\syncrete\installNew.exe o installNewASA8.exe<br />

helpdesk.sistemisti@previdom.previnet.it<br />

Applicazioni Web, Servizi Web<br />

Internet, VPN o MPLS?<br />

Quale VirtualHost? Indirizzo IP o nome DNS?<br />

HTTP o HTTPS?<br />

Solo certificato server<br />

o anche certificato client?<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

21


Servizi Accessori<br />

Active Directory<br />

Isec<br />

Flex<br />

Spazio<br />

Fileway<br />

Caronte<br />

Dns<br />

Cron<br />

Edoc<br />

Pluto<br />

Profilazione utenze dominio aziendale: UTENTE, PASSWORD, APPLICAZIONE, RUOLO<br />

Profilazione utenze extra dominio: UTENTE, PASSWORD, APPLICAZIONE, RUOLO<br />

Sistema a processi di ricetrasmissione flussi via ftp, sftp, ftps, spazio<br />

API per i processi gestionali (perldoc Previnet::Flussi::Flex)<br />

Sistema di terze parti per la ricetrasmissione flussi<br />

code locali, code remote<br />

Server sftp esposto ai clienti, utilizza solo i protocolli di crittografia più sicuri<br />

L’accesso è gestito da una whitelist contenente gli IP dei client che possono collegarsi al server<br />

Server sftp esposto ai clienti<br />

L’accesso è gestito solo tramite user e password<br />

Servizio che gestisce il dominio previnet.it e alcuni altri domini di clienti<br />

Per ogni servizio (virtualhost, sftp server) ritorna il corrispondente indirizzo IP pubblico<br />

Schedulatore automatico di processi applicativi<br />

Attivo per ogni utente batch linux<br />

Servizio di gestione documentale, integrabile nell’applicazione e nel database gestionale<br />

Sistema a processi per la gestione dei flussi bancari<br />

API per i processi gestionali<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

22


Servizi Accessori<br />

Backup<br />

MassMail<br />

Cvs - Svn<br />

Bugzilla<br />

Tool di sviluppo<br />

Librerie Standard<br />

HelpDesk<br />

WebTransfer<br />

Salvataggio quotidiano (notturno) su disco e su cassetta di tutti i dati di produzione<br />

Database, configurazioni, virtual machine, file, …<br />

Servizio di invio massivo di email derivate da un template a cui si applicano alcuni documenti con<br />

contenuto variabile (indirizzi destinatari, allegati, …)<br />

Sistema di versionamento del codice prodotto dagli sviluppatori<br />

Input del processo di passaggio in produzione<br />

Strumento di bug tracking per il tracciamento delle attività definite tra area applicativa e area sviluppo<br />

Strumenti forniti dall’ufficio sistemi a supporto delle attività di sviluppo:<br />

clonadbsvil, spalma, prelevalog, showplan, queryplan, … (\\srvfile\sviluppo\DocSviluppo\TOOLS)<br />

Librerie Perl Standard Previnet<br />

helpdesk.sistemisti@previdom.previnet.it (vedi bacheca aziendale http://bacheca.previnet.it/)<br />

database@previnet.it<br />

Strumento di ricetrasmissione flussi una tantum (https://webtransfer.previnet.it/)<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

23


Servizi Accessori<br />

HelpDesk Sistemisti / Database<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

24


Linee Guida per gli sviluppatori<br />

• Stretta collaborazione con il proprio responsabile<br />

(iniziativa e proposizione)<br />

• Uso di linee guida di codifica sicura (www.owasp.org)<br />

• Uso di standard aziendali (librerie perl, framework, …)<br />

• Diffusione delle conoscenze<br />

• Ottimizzazione del codice (query plan, …)<br />

• Analisi dei log -> risoluzione delle eccezioni<br />

• Versionamento del codice<br />

• Sviluppo -> Collaudo -> Produzione<br />

• Sicurezza dei dati e del codice<br />

• VAPT (segnalazione di vulnerabilità al proprio responsabile)<br />

• Ergonomicità<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

25


Domande?<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

26


Grazie<br />

Ufficio Sistemi<br />

Classification: CONFIDENTIAL<br />

27

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!