Prefazione 4. Convenzioni tipografiche... 4 Commenti Informazioni su questo documento 6. Note sul Flusso di Approvvigionamento 8

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Prefazione 4. Convenzioni tipografiche... 4 Commenti... 5. Informazioni su questo documento 6. Note sul Flusso di Approvvigionamento 8"

Transcript

1 Parallels Panel

2 Contenuto Prefazione 4 Convenzioni tipografiche... 4 Commenti... 5 Informazioni su questo documento 6 Note sul Flusso di Approvvigionamento 8 Implementazione del Pannello 9 Implementazione Indipendente Ottieni l ID della Release Ottieni la lista di componenti del prodotto Installazione del Pannello Riferimento alla CLI dell Installer (Breve) Script d Installazione (Linux/Unix) Implementazione in un Ambiente di Parallels Containers Parallels Containers per Unix Parallels Containers per Windows Configurare un Mirror con l Utility Rsync Mirroring di Distribuzioni Linux/Unix Mirroring di Distribuzioni Windows Panoramica sulle Operazioni di Configurazione 32 Inizializzazione del Pannello Installazione della Chiave della Licenza Personalizzazione del Pannello Personalizzazione dei Collegamenti di Servizi Configurazione DNS Cambiare il Modello di Registro SOA Configurazione dei Modelli di Registro delle Risorse Installazione di Certificati SSL Creazione di Domini e Sottodomini Installazione di Applicazioni Importazione di un Pacchetto di Applicazioni Installazione di Applicazioni Definizione dei Cataloghi APS Disponibili File di Configurazione dei Cataloghi APS Configurazione tramite le API remote 47 Usare le API Remote Informazioni sulle API Remote Pacchetti RPC di API Creazione di Software Client Configurazione del Pannello... 86

3 Prefazione 3 Inizializzazione del Pannello Installazione della Chiave della Licenza Configurazione DNS Installazione di Certificati SSL Creazione di Domini Creazione di Sottodomini Definizione dei Cataloghi APS Disponibili Installazione di Applicazioni Configurazione mediante CLI 206 Informazioni sulla CLI del Pannello Configurazione del Pannello Inizializzazione del Pannello Installazione della Chiave della Licenza Personalizzazione del Pannello Configurazione DNS Installazione di Certificati SSL Creazione di Domini Creazione di Sottodomini Definizione dei Cataloghi APS Disponibili Installazione di Applicazioni

4 4 Prefazione Prefazione In questa sezione Convenzioni tipografiche... 4 Commenti... 5 Convenzioni tipografiche Prima d iniziare ad usare questa guida, è molto importante capire le convenzioni della documentazione usate in essa. I seguenti tipi di formattazione nel testo identificano delle informazioni speciali. Convenzione di formattazione Tipo di Informazione Esempio Grassetto Speciale Corsivo Monospazio Voci che dovete selezionare, quali opzioni di menu, pulsanti di comando o le voci in una lista. Titoli di capitoli, sezioni e sottosezioni. Usato per mettere in rilievo l importanza di un punto, per introdurre un termine o per designare un segnaposto come linea di comando, che verrà sostituito da un nome o valore vero. I nomi di comandi, file e directory. Andare sulla scheda Sistema. Leggere il capitolo Amministrazione di Base. Il sistema supporta anche la cosidetta ricerca del carattere jolly. Il file di licenza è ubicato nella directory ses.

5 Prefazione 5 Convenzione di formattazione Tipo di Informazione Esempio Preformattato Risultato del computer # ls al /files sullo schermo nelle vostre totale sessioni di linea di comando; codice sorgente in XML, C++, o altri linguaggi di programmazione. Grassetto Preformattato Ciò che verrà scritto, # cd /root/rpms/php contrastato con il risultato del computer sullo schermo. MAIUSCOLA TASTO+TASTO Nomi dei tasti sulla tastiera. Le combinazioni di tasti per cui l utente deve premere e tenere premuto un tasto e poi premerne un altro. SHIFT, CTRL, ALT CTRL+P, ALT+F4 Commenti Se avete trovato degli errori su questa guida o se avete idee o suggerimenti su come migliorarla, siete pregati di inviare i vostri commenti utilizzando il formulario online su Per favore, includere nel vostro report il titolo della guida, del capitolo e della sezione, come anche il frammento di testo in cui avete trovato l errore.

6 C A P I T O L O 1 Informazioni su questo documento Scopo Finalità Il presente documento fornisce le informazioni fondamentali per l approvvigionamento di Parallels Small Business Panel (d ora innanzi denominato il Pannello), che deve permettere alle società di HSP (service provider di hosting) di fornire ai clienti complete soluzioni di hosting. Questo documento è destinato agli sviluppatori HSP che desiderano implementare la fornitura del Pannello, ad esempio, per automatizzare la sua installazione/implementazione e la successiva configurazione in modo da soddisfare i requisiti di ogni cliente. Il presente documento contiene le raccomandazioni per un corretto utilizzo - completamente provato e garantito - nell installazione e la configurazione del Pannello nell ambito dell approvvigionamento del prodotto. Il documento non intende essere una completa descrizione funzionale delle API: le operazioni e le opzioni che esulano dall ambito non vengono descritte. I service provider attualmente preferiscono offrire servizi gestiti a valore aggiunto invece di suggerire l hosting d infrastruttura non gestita. I piani di hosting venduti ai clienti non solo comprendono l ambiente di un server fisico o virtuale con installazioni opzionali per il pannello di controllo, ma contengono anche nomi a dominio e certificati SSL. Siccome l approccio SaaS è sempre più diffuso fra i clienti, specialmente per le piccole imprese, i pacchetti di hosting cominciano anche ad includere set predefiniti di applicazioni installate nei domini dei clienti. Diverse offerte includono anche servizi ospitati, come strumenti di collaborazione e posta e la gestione del contenuto. Per le installazioni del Pannello, questo significa che subito dopo l installazione il provider dovrebbe essere in grado di procedere alla configurazione del Pannello, comprendendo le seguenti azioni: Configurazione DNS Configurazione del dominio (sito web) Approvvigionamento di certificati SSL Installazione di applicazioni APS Al fine di facilitare le introduzioni dei provider di servizi aggiuntivi, Parallels fornisce il presente documento con la descrizione sul modo in cui l implementazione e la configurazione del Pannello può essere implementata e integrata in un applicazione di approvvigionamento. Panoramica

7 Informazioni su questo documento 7 Il capitolo Note sul Flusso dell Approvvigionamento descrive i momenti importanti che incidono sulla procedura di fornitura complessiva. Il capitolo Implementazione del Pannello si centra sulla fase d Implementazione dell approvvigionamento del Pannello. Offre le informazioni sull installazione degli ambienti di Parallels Containers e sulle installazioni indipendenti e comprende anche un tema supplementare sulla creazione di mirror personalizzati dell archivio di distribuzioni di Parallels Small Business Panel. I successivi tre capitoli sono dedicati alla fase di Configurazione dell approvvigionamento del Pannello: Il capitolo Panoramica sulle operazioni di configurazione descrive il significato e il volume delle operazioni della configurazione. Il capitolo Configurazione tramite API a distanza si centra sulla realizzazione della configurazione del Pannello per mezzo di API XML a distanza. Il capitolo descrive le API a distanza: offre la panoramica del protocollo API RPC e i modelli di strumenti usati per interagire con il server del Pannello tramite il protocollo. Quindi descrive dettagliatamente i messaggi di richiesta che lo strumento di terze parti deve rendere disponibile per realizzare le operazioni di configurazione del Pannello, nonché i messaggi di risposta ricevuto dopo ogni operazione. Il capitolo Configurazione mediante CLI si centra sulla realizzazione della configurazione del Pannello per mezzo dell interfaccia a riga di comando del Pannello. Il capitolo offre prima una panoramica sulle linee di base della CLI e quindi descrive dettagliatamente i comando che si devono eseguire per realizzare le operazioni di configurazione del Pannello.

8 C A P I T O L O 2 Note sul Flusso di Approvvigionamento Nella fornitura di Parallels Small Business Panel per Windows, includi un intervallo di cinque minuti tra l implementazione e la configurazione del prodotto. Questo intervallo è necessario perché gli script successivi all installazione richiedono del tempo per registrare e configurare i componenti di terze parti. Le operazioni di approvvigionamento realizzate durante questo periodo di tempo potrebbero eventualmente non essere riuscite.

9 C A P I T O L O 3 Implementazione del Pannello Questo capitolo si centra sulla fase di Implementazione dell approvvigionamento di Parallels Small Business Panel. Offre le informazioni sull installazione degli ambienti di Parallels Containers e sulle installazioni indipendenti e comprende anche un tema supplementare sulla creazione di mirror personalizzati dell archivio di distribuzioni del Pannello. In questo capitolo: Implementazione Indipendente Implementazione in un Ambiente di Parallels Containers Configurare un Mirror con l Utility Rsync... 26

10 10 Implementazione del Pannello Implementazione Indipendente Questa sezione offre le informazioni sull automazione dell implementazione del Pannello in un ambiente diverso da quello di Parallels Containers, basato su Linux/Unix o su Windows. La sezione descrive gli aspetti di base dell installazione del Pannello e quindi offre le istruzioni sul mirroring l installazione del prodotto usando l interfaccia a riga di comando. Per maggiori informazioni sui pre-requisiti d installazione, consultare la Guida all Installazione presso la pagina sulla documentazione di Parallels Small Business Panel (http://www.parallels.com/products/small-business-panel/documentation/). L implementazione indipendente del Pannello viene realizzata con l aiuto dell utility Installer di Parallels. L utility si connette al server di aggiornamenti di Parallels Small Business Panel in cui sono archiviati i pacchetti del Pannello, recupera i pacchetti necessari e procedere alla relativa installazione. L Installer di Parallels funziona in qualsiasi modalità d interazione (mediante l interfaccia utente grafica Web o tramite la riga di comando) o in modo automatico se viene eseguito dalla riga di comando con l impostazione di determinate opzioni. L ultima opzione consente l implementazione automatica del Pannello usando gli script shell. Esistono diverse distribuzioni dell Installer di Parallels create per diversi sistemi operativi e piattaforme, quindi è necessario verificare che l Installer di Parallels ottenuto coincide con i propri sistemi operativi host. Normalmente, i binari dell Installer di Parallels sono distribuiti sotto nomi con il seguente formato: parallels_installer_v<installer version>_os_<operating system version>_<platform>. Nota: Nella descrizione della CLI dell Installer di Parallels, si intende che l utility dell Installer di Parallels ha il nome parallels_installer. Gli archivi ufficiali di Parallels Small Business Panel sono autoinstall.plesk.com (pacchetti Linux/Unix) e autoinstall-win.parallels.com (pacchetti Windows). È possibile configurare i mirror personalizzati (a pagina 26) degli archivi del Pannello nel tuo ambiente di hosting per risparmiare del tempo, traffico e proteggere l installazione. In questa sezione Ottieni l ID della Release Ottieni la lista di componenti del prodotto Installazione del Pannello Riferimento alla CLI dell Installer (Breve) Script d Installazione (Linux/Unix)... 18

11 Implementazione del Pannello 11 Ottieni l ID della Release L ID della release è un identificatore univoco della release del Pannello, ad esempio: Parallels Small Business Panel Per ottenere una lista di ID della release, esegui il successivo comando: parallels_installer show-all-releases su un server Linux/Unix parallels_installer.exe show-all-releases su un server Windows Verrà visualizzata una lista delle versioni del prodotto. Per esempio: PPSMBE_10_2_0 (Parallels Small Business Panel )

12 12 Implementazione del Pannello Ottieni la lista di componenti del prodotto Per ottenere una lista dei componenti della release, esegui il comando nel successivo formato: parallels_installer select-release-id <ID> --show-components Inteso per Parallels Small Business Panel 10.2: parallels_installer select-release-id PPSMBE_10_2_0 --show-components su un server Linux/Unix parallels_installer.exe select-release-id PPSMBE_10_2_0_WIN show-components Viene visualizzata una lista dei componenti con i nomi dei componenti nella parte sinistra e l indicazione che definisce se il componente può essere installato ([install]) o aggiornato ([upgrade]), con una breve descrizione a destra, ad esempio: base [install] - Parallels Small Business Panel pacchetti di base autoinstaller [install] - Installer di Prodotti Parallels postfix [install] - Server di posta Postfix php5 [install] - Supporto PHP5 postgresql [install] - Supporto PostgreSQL api [install] - API di Parallels Small Business Panel siteeditor [install] - Site Editor setemplates [install] - Modelli di Site Editor mod_python [install] - Modulo Apache mod_python ruby [install] - Supporto di Ruby on Rails firewall [install] - Componente aggiuntivo Firewall vpn [install] - Componente aggiuntivo VPN fileserver [install] - Componente aggiuntivo Server di file watchdog [install] - Componente aggiuntivo di monitoraggio di sistema (Watchdog) drweb [install] - Parallels Premium Antivirus spamassassin [install] - Supporto SpamAssassin backup [install] - Backup Manager backup-vz [install] - Supporto per la reinstallazione del Manager di Backup PVC de-de-locale [install] - Language Pack Tedesco ja-jp-locale [install] - Language Pack Giapponese es-es-locale [install] - Language Pack Spagnolo ru-ru-locale [install] - Language Pack Russo fr-fr-locale [install] - Language Pack Francese it-it-locale [install] - Language Pack Italiano zh-cn-locale [install] - Language Pack Cinese per Cina zh-tw-locale [install] - Language Pack Cinese per Taiwan

13 Implementazione del Pannello 13 nl-nl-locale [install] - Language Pack Olandese per l Olanda atmail [install] - Supporto per webmail Atmail

14 14 Implementazione del Pannello Installazione del Pannello Per installare Parallels Small Business Panel, esegui un comando con il seguente formato: parallels_installer <packages source options> --select-release-id <ID> <components installation options> [other options] dove packages source options definisce la posizione in cui l installer deve ottenere i pacchetti del Pannello per l installazione <packages source options> = source <URL> se usi un mirror del server di Aggiornamenti del Pannello o source <path> se usi un sistema di file locale o nessuno per l installazione dal server di Aggiornamenti del Pannello components (a pagina 12) installation options definisce i componenti del Pannello che si devono installare <components installation options> = install-everything o install-component component1 [--install-component component2 [... [--install-component componentn]]] other options comprendono quelle che definiscono le impostazioni del proxy, registrazione dell installazione, ecc. Per maggiori informazioni, consultare la sezione Riferimento alla CLI dell Installer (a pagina 15) Esempi, Linux/Unix 1. Il successivo comando installa Parallels Small Business Panel 10.2 (l ID della release è PPSMBE_10_2_0) dal mirror configurato sul server disponibile tramite HTTP nell host ppsmbe-mirror.example.com. I file d installazione verranno temporaneamente memorizzati su /tmp/ppsmbe e lo stato dell installazione verrà riportato a I componenti installati sono pacchetti di base del Pannello, il server PostgreSQL e il filtro spam di SpamAssassin../parallels_installer source --target /tmp/ppsmbe select-release-id PPSMBE_10_2_0 --install-component base install-component postgresql install-component spamassassin notify- 2. Il successivo comando realizza l installazione completa (vengono installati tutti i componenti disponibili del prodotto) di Parallels Small Business Panel 10.2 (l ID della release è PPSMBE_10_2_0) dal server di Aggiornamenti di Parallels. Tutti gli output dell installer saranno reindirizzati a un file XML../parallels_installer select-release-id PPSMBE_10_2_0 --install-everything enable-xml-output

15 Implementazione del Pannello 15 Esempi, Windows 1.Il successivo comando installa Parallels Small Business Panel 10.2 (l ID della release è PPSMBE_10_2_0_WIN) dal mirror configurato sul server disponibile tramite HTTP nell host ppsmbe-mirror.example.com. I file d installazione verranno temporaneamente memorizzati nella cartella %SystemDrive%\Parallels\ e lo stato dell installazione verrà riportato all indirizzo I componenti installati sono pacchetti di base del Pannello, il server di nomi Bind, il server di posta MailEnable, il motore di scripting PHP, Site Editor e Horde Webmail. parallels_installer.exe source --target %SystemDrive%\Parallels select-release-id PPSMBE_10_2_0_WIN install-component base install-component dns install-component mailenable install-component php5 --install-component siteeditor install-component webmail notify- 2.Il successivo comando realizza l installazione completa (vengono installati tutti i componenti disponibili del prodotto) di Parallels Small Business Panel 10.2 (l ID della release è PPSMBE_10_2_0_WIN) dal server di Aggiornamenti di Parallels. Tutti gli output dell installer saranno reindirizzati a un file XML. parallels_installer.exe select-release-id PPSMBE_10_2_0_WIN install-everything enable-xml-output Riferimento alla CLI dell Installer (Breve) Questo riferimento descrive le opzioni dell Installer di Parallels che sono rilevanti solo per l installazione del Pannello usando la CLI. Per ottenere maggiori informazioni sulle opzioni correlate all aggiornamento del Pannello già installato o sul sistema operativo host, esegui il successivo comando: parallels_installer help Opzione Descrizione e possibili argomenti --source <path> <url> Nel ripristino dei pacchetti del Pannello da un sistema di file locale, specifica l opzione source in modo che punti al file.inf3 contenente l informazione sulla versione del Pannello che desideri installare. --target <path> Nel ripristino dei pacchetti del Pannello dal server di rete, specifica l opzione source <URL> in modo che punti alla directory in cui risiede il mirror del server di aggiornamenti del Pannello. In modo predefinito, l installer salva i file ripristinati nella directory /<current user name>/psa. Ad esempio, se l installer è stato eseguito dall utente root, la directory /root/psa verrà creata e utilizzata. Se desideri usare una directory personalizzata per memorizzare i file ripristinati, usa l opzione target. Esempio: --target /opt/storage/psa o --target D:\temp

16 16 Implementazione del Pannello Opzione --proxy-host <network address> Descrizione e possibili argomenti Se usi un server proxy o un firewall, usa questa opzione per determinare il nome a dominio del server proxy o l indirizzo IP. --proxy-port <port number> Opzioni di autenticazione del proxy: --proxy-user <user-name> --proxy-password <password> --show-releases --show-all-releases --select-release-id <ID> --select-release-lat est --show-components --install-component <component-name> --install-everything --show-os-list --no-space-check --no-daemon --notify- < > Esempio: --proxy-host proxy.example.com La porta predefinita per la connessione al server proxy è Se il tuo server proxy usa un numero di porta diverso, devi specificarlo usando questa opzione. Esempio: --proxy-port 5741 Se il tuo server proxy richiede l autenticazione, devi usare queste opzioni per autenticare l installer nel server proxy. Esempio: --proxy-user smith proxy-password f1sz9anq4eno52 Indica questa opzione per ripristinare una lista delle release disponibili per il sistema operativo in cui l installer viene eseguito. Riceverai una lista di identificatori e descrizioni della release. Gli identificatori della release sono quelli necessari. Questa opzione mostra tutte le release disponibili dal server di aggiornamenti del Pannello. Usa questa opzione per indicare la versione di release che vuoi installare o per cui desideri visualizzare le relative proprietà. Usa questa opzione per selezionare l ultima release disponibile per il tuo sistema operativo. Indica questa opzione per ottenere l informazione sui componenti disponibili per la release selezionata. Verranno mostrati i nomi e le descrizioni dei componenti. I nomi dei componenti da specificare quando selezionerai i componenti aggiuntivi da installare. Usa questa opzione per indicare un componente da installare. Se vuoi installare due o più componenti contemporaneamente, ripeti questa opzione per ogni componente. Esempio: --install-component base install-component postgresql install-component spamassassin Usa questa opzione per installare tutti i componenti della release selezionata. Usa questa opzione per trovare i sistemi operativi supportati dalla versione del Pannello che hai selezionato. Installa i pacchetti anche se lo spazio su disco è basso. Realizza la procedura d installazione in primo piano. Usa questa opzione perché l installer invii dei report sullo stato per . Un report sul corretto completamento comprende una lista dei pacchetti intallati/aggiornati con un registro di dettagli.

17 Implementazione del Pannello 17 Opzione --enable-xml-output --query-status --truncate-log Descrizione e possibili argomenti Questa opzione è progettata per mantenere la comunicazione con il Pannello e può anche essere usata per l interazione con altre applicazioni. Quando specificherai questa opzione, tutti gli output dell installer saranno in XML. Tieni presente che questa opzione non consente che l installer invii dei report di errori per codice di uscita. Il codice di uscita è sempre zero e tutti gli errori vengon riportati dentro all output XML. Siccome il database RPM non consente gli accessi multipli, l installer blocca la sua funzionalità. Esegui questa opzione per sapere se l installer è attivo. Questo verificherà se è bloccato e restituirà un codice di uscita (0 - l installer è inattivo, 1 - l installer è attivo e occupato), oppure un output con formato XML. Libera il file di registro all avvio dell Installer di Prodotti Parallels. --separate-log --debug --version Usa un nuovo file di registro per ogni avvio dell Installer di Prodotti Parallels. Cambia l output dettagliato nel file di registro. Mostra la versione dell Installer di Prodotti Parallels.

18 18 Implementazione del Pannello Script d Installazione (Linux/Unix) Questa sezione offre i dettagli sull implementazione e l esecuzione di uno script d installazione e presenta anche alcuni modelli di script d installazione. Note sull Implementazione e l Esecuzione Per evitare la richiesta della password ogni volta che ti connetti via SSH ai server in cui il Pannello dovrebbe essere installato, indica la tua chiave pubblica nella lista di chiavi autorizzate di un utente per conto del quale lo script viene eseguito su ogni server (vedi la documentazione SSH per maggiori dettagli sulla procedura). Se hai un mirror locale del server di aggiornamenti del Pannello (come descritto nella sezione Configurazione dei Mirror (a pagina 26)), usa la seguente opzione: source <mirror URL> In modo predefinito, tutti i pacchetti scaricat vengono archiviati nella directory /root/psa. Per usare una directory diversa, usa la seguente opzione: target <directory-name> Modelli di Script 1.Questo modello è applicabile nei casi in cui l Installer di Parallels sia stato caricato in precedenza sul server di destinazione e il bit di esecuzione sia impostato nei suoi permessi. #!/bin/sh SERVERS_LIST= node1.example.com node2.example.com for current_server in $SERVERS_LIST; do scp parallels_installer ssh -f parallels_installer source --target /tmp/ppsmbe select-release-id PPSMBE_10_2_0 --install-component base install-component postgresql install-component asp notify- done 2. Questo modello di script è applicabile quando si ottiene il binario dell Installer di Parallels direttamente dalla posizione di rete (il modello URL deve essere sostituito con un collegamento di download dell installer valido). #!/bin/sh SERVERS_LIST= node1.example.com node2.example.com for current_server in $SERVERS_LIST; do

19 Implementazione del Pannello 19 ssh -f wget -o parallels_installer;chmod 755./parallels_installer;./parallels_installer source --target /tmp/ppsmbe select-release-id PPSMBE_10_2_0 --install-component base install-component postgresql install-component spamassassin notify- done

20 20 Implementazione del Pannello Implementazione in un Ambiente di Parallels Containers Questa sezione descrive solo i passaggi fondamentali che si devono realizzare nell utilizzo della CLI di Parallels Containers per implementare il Pannello, centrandosi nella creazione di un Container con Parallels Small Business Panel. Per maggiori informazioni sulla CLI di Parallels Containers o sulla funzionalità API di Parallels Containers (XML o SOAP), consultare la Documentazione per Sviluppatori di Parallels Containers (http://www.parallels.com/ptn/documentation/virtuozzo/). L implementazione del Pannello in un ambiente di Parallels Containers implica le successive due fasi: 1. Installazione del modello di applicazione del Pannello su un nodo hardware. 2. Creazione di un Container e implementazione dell applicazione dal modello. La prima fase viene realizzata su ogni nodo hardware solo una volta: Quando il modello di applicazione sarà installato sul nodo hardware, può essere implementato su tanti Container quanti necessari. Invece di creare un nuovo Container ogni volta che dovrai implementare un Container con il Pannello, puoi sempre clonare un Container esistente con installato il Pannello, che agirà come una sorte di Container Modello. In questa sezione Parallels Containers per Unix Parallels Containers per Windows... 24

21 Implementazione del Pannello 21 Parallels Containers per Unix Ci sono due modelli EZ disponibili per Parallels Small Business Panel 10.2: ppsmbe10 Contiene i principali componenti del Pannello. ppsmbe10-extended Contiene tutti i componenti aggiuntivi, quali il filtro spam di SpamAssassin, Ruby-on-Rails framework, Parallels Premium Antivirus, i modelli aggiuntivi di Site Editor e altri componenti. Se vuoi installare una versione ampliata del Pannello, installa entrambi i modelli. L installazione del modello del Pannello sul nodo hardware di destinazione si può realizzare in due maniere: usando l utility vzup2date. Per maggiori dettagli, consultare la Guida di Riferimento di Parallels Containers per Linux presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). scaricando il modello direttamente dal sito web di Parallels (http://www.parallels.com) e installandolo con l utility vzpkg Quando il modello viene installato sul nodo hardware, viene implementato il principale set di file, che comprende la definizione dell archivio di pacchetti dell applicazione. Dopo l installazione dell applicazione su un container, Parallels Containers entra in comunicazione con l archivio (l archivio predefinito per Parallels Small Business Panel per Linux/Unix è il server di Aggiornamenti di Parallels su che ripristina i pacchetti dell applicazione e procede alla relativa installazione sul container. I pacchetti vengono archiviati nella cache del nodo finché verrà cancellata e quindi i pacchetti vengono nuovamente ripristinati dall archivio quando l applicazione viene installata nel Container. Per risparmiare tempo e traffico, è possibile usare un mirror personalizzato dell archivio del Pannello. Per installare il modello del Pannello su un nodo hardware di Parallels Containers usando l utility vzpkg: 1. Ottieni il modello del Pannello dal sito web Parallels (http://www.parallels.com) e procedi al caricamento del modello sul nodo hardware di destinazione di Parallels Containers. 2. Installa il modello di applicazione eseguendo un comando con il successivo formato: vzpkg install template [-q <-d <number>>] <path_to_package>... dove -q disattiva il registro al display e al file di registro -d --debug <number> definisce il livello di dettaglio del registro da 0 a 10 Ad esempio, il successivo comando installa entrami i componenti principali e quelli ampliati del Pannello:

22 22 Implementazione del Pannello # vzpkg install template ppsmbe10-debian-5.0-x86-ez prl noarch.rpm ppsmbe10-extended-debian-5.0-x86-ez prl noarch.rpm Per usare un mirror personalizzato: 1. Configura un mirror come specificato nella sezione Mirroring di Distribuzioni Linux/Unix (a pagina 27). 2. Sul nodo hardware, modifica il file che dichiara l URL dell archivio: a. Apri il file per la modifica /vz/template/linux/<os-version>/<platform>/config/a pp/<app-template-name>/default/repositories. Ovvero: /vz/template/linux/<os-version>/<platform>/config/app/ppsmbe10/ default/repositories e /vz/template/linux/<os-version>/<platform>/config/app/ppsmbe10- extended/default/repositories. Modifica entrambi i file se entrambi i modelli sono installati. b. Sostituisci gli URL del server di Aggiornamenti di Parallels con quelli del tuo mirror e salva il file. 3. Deseleziona o ripristina i metadati dei pacchetti. Questo si può fare, ad esempio, con il comando vzpkg clean. Per maggiori dettagli, consultare la Guida di Riferimento di Parallels Containers per Linux presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). Per creare un nuovo Container e installare il Pannello all interno: 1. Crea un container e, facoltativamente, configuralo a seconda delle tue necessità. Esegui i successivi comandi: vzctl create <CT_ID> [options] vzctl set <CT_ID> <setting_name> <value> [--save] dove <CT_ID> definisce un numero di ID di un container arbitrario più alto di 100, unico nel nodo hardware --save switch indica a vzctl se deve salvare le modifiche nel file di configurazione del Container Nota: Per maggiori informazioni sulla creazione e le opzioni di configurazione di un Container, consultare la Guida di Riferimento di Parallels Containers per Linux presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). Ad esempio, i comandi in basso realizzano le seguenti azioni: 1. crea un Container con ID 444 con IP , in base al modello di SO predefinito nel file di configurazione globale di Parallels Containers

23 Implementazione del Pannello definisci una barriera e un limite per la memoria del kernel che non si possa modificare, memoria privata (o potenzialmente privata), numero di file aperti da tutte le procedure del Container, lo spazio su disco e un numero totale degli inodi del disco (file, directory, collegamenti simbolici) che un Container può assegnare 3. salva i valori di barriera/limite sul file di configurazione del Container 4. abilita la gestione del Container usando il browser web (evitando la gestione offile con l opzione offline_management no ) Nota: È molto importante che questa opzione venga impostata esattamente come nell'esempio. Altrimenti, il pannello non sarà accessibile attraverso il browser web. # vzctl create ipadd # vzctl set save kmemsize : privvmpages : numfile 12000: diskspace : diskinodes : offline_management no 2. Avvia il Container appena creato: # vzctl start <CT_ID> 3. Installa il modello del Pannello nel Container: vzpkg install <CT_ID> <ppsmbe_template_name>... Ad esempio, il successivo comando installa i componenti principali e aggiuntivi del Pannello: # vzpkg install 444 ppsmbe10 ppsmbe10-extended Per clonare un Container: Esegui il comando con il successivo formato: vzmlocal -C {CT List} {CT List} = <source_ct_id>:<dst_ct_id>[:[<dstct_private>][:<dstct_root>]] [...] È necessario specificare l ID del Container di origine (<source_ct_id>) e l ID del Container di destinazione (<dest_ct_id>). Specificare il percorso di area privata del Container di destinazione (<dstct_private>) e il percorso root (<dstct_root>) à facoltativo; consente di sovrascrivere i persorsi predefiniti - /vz/private/<dst_ct_id> e /vz/root/<dst_ct_id>, relativamente. Per maggiori informazioni sulle opzioni dei comandi, consultare la Guida di Riferimento di Parallels Containers per Linux presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). Ad esempio, per clonare il Container con il Pannello creto durante la procedura precedente: # vzmlocal -C 444:445

24 24 Implementazione del Pannello Parallels Containers per Windows Per installare il modello del Pannello su un nodo hardware di Parallels Containers: 1. Ottieni il modello del Pannello dal sito web Parallels (http://www.parallels.com) e procedi al caricamento del modello sul nodo hardware di destinazione di Parallels Containers. 2. Installa i modelli dell applicazione del Pannello. Per le installazioni su Microsoft Windows Server 2003, installa anche Microsoft.NET Framework v.2.0 o versioni superiori eseguendo un comando con il formato seguente: vzpkgdeploy [-q -v] -i <template-file> dove -q disattiva il registro al display e al file di registro -v definisce il livello di registro al livello massimo possibile per questa sessione vzpkgdeploy Ad esempio, >vzpkgdeploy -i ppsmbe_10.2.0_ efd >vzpkgdeploy -i dotnet2.0_frmwk efd Nota: È necessario installare il modello aggiuntivo di.net Framework solo su Windows Server 2003 (PVC 4.0, VZ 3.5.1). Non è necessario su Windows Server 2008 (PVC 4.5). Per creare un nuovo Container e installare il Pannello all interno: 1. Crea un container e, facoltativamente, configuralo a seconda delle tue necessità. Esegui i successivi comandi: vzctl create <CT_ID> --pkgset name [options] vzctl set <CT_ID> <setting_name> <value> [--save] dove <CT_ID> definisce un numero di ID di un container arbitrario più alto di 100, unico nel nodo hardware --pkgset name denota il modello di SO da usare per la creazione del Container --save switch indica a vzctl se deve salvare le modifiche nel file di configurazione del Container Nota: Per maggiori informazioni sulla creazione e le opzioni di configurazione di un Container, consultare la Guida di Riferimento di Parallels Containers per Windows presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). Ad esempio, i comandi in basso realizzano le seguenti azioni: crea un Container con ID 444 con IP , basato sul modello di SO w2k3 imposta il limite dello spazio su disco a 4+ gigabytes, il limite di memoria privata a 1 gigabyte e la password dell Amministratore a P4$$w0rd

25 Implementazione del Pannello 25 abilita la gestione del Container usando il browser web (evitando la gestione offile con l opzione offline_management no ) Nota: È molto importante che questa opzione venga impostata esattamente come nell'esempio. Altrimenti, il pannello non sarà accessibile attraverso il browser web. >vzctl create pkgset w2k3 --ipadd >vzctl set save diskspace vprvmem userpasswd Administrator:P4$$w0rd offline_management no 2. Avvia il Container appena creato: >vzctl start <CT_ID> 3. Installa Microsoft.NET framework versione 2.0 o superiori nel Container: vzpkgadd <CT_ID> <dotnet_template_name> Ad esempio, >vzpkgadd 444 dotnet2.0_frmwk / Installa il modello di Parallels Small Business Panel nel Container: vzpkgadd <CT_ID> <ppsmbe_template_name> Ad esempio, >vzpkgadd 444 ppsmbe_10.2.0_ Per clonare un Container: Esegui il comando con il successivo formato: vzmlocal -C <CT_List> <CT_List> = <source_ctid>:<dest_ctid>[:<dest_private>] [options] È necessario specificare l ID del Container di origine (<source_ctid>) e l ID del Container di destinazione (<dest_ctid>). Specificare il percorso dell area privata del Container di destinazione (<dest_private>) è facoltativo; consente di sovrascrivere il percorso predefinito di X:\vz\private\<CT_ID>. Per maggiori informazioni sulle opzioni dei comandi, consultare la Guida di Riferimento di Parallels Containers per Windows presso la Rete Tecnologica di Parallels (http://www.parallels.com/ptn/documentation/virtuozzo/). Ad esempio, per clonare il Container con il Pannello creto durante la procedura precedente: >vzmlocal -C 444:445

26 26 Implementazione del Pannello Configurare un Mirror con l Utility Rsync Questa sezione descrive il modo in cui creare un mirror locale del server di Aggiornamenti di Parallels per entrambe le distribuzioni Linux/Unix e Windows di Parallels Small Business Panel su un server Linux usando Rsync. Rsync è un utility open source che consente di creare mirror che supportino un determinato set di distribuzioni del Pannello, includendo quelle per Parallels Containers. Un mirror dell archivio di Parallels Small Business Panel per Linux può servire sia per le installazioni indipendenti che per quelle di Parallels Containers (a seconda del volume di pacchetti per cui sono stati creati dei mirror). In questa sezione Mirroring di Distribuzioni Linux/Unix Mirroring di Distribuzioni Windows... 30

27 Implementazione del Pannello 27 Mirroring di Distribuzioni Linux/Unix L archivio di Parallels Small Business Panel per Linux/Unix presente su autoinstall.plesk.com viene strutturato nel modo seguente (di seguito si riportano solo i file e le directory rilevanti per il mirroring dei pacchetti del Pannello): <PRODUCT_NAME>_<product_version>/ Diverse directory secondarie con nome a seconda delle versioni del Pannello. Nel nostro caso, le directory secondarie d interesse sono: a PPSMBE_<version>/ es., PPSMBE_ in cui si trovano i pacchetti del Pannello b SETEMPLATES_<version>/ es., SETEMPLATES_1.0.0 dove ci sono i pacchetti per oltre 200 modelli di design di siti aggiuntivi del componente Site Editor. Non è un vero prodotto ma un componente del Pannello, che si trova in una directory separata del prodotto al fine di risparmiare traffico e spazio sul disco. Ciascuna di queste directory secondarie contiene i successivi file: dist-<type>-<os-name>-<version>-<architecture>/ Contiene i pacchetti di distribuzione del Pannello o i modelli di design es., dist-deb-debian-5.0-x86_64/ or dist-deb-debian-all-all/ update-<type>-<os-name>-<version>-<architecture> Contiene gli aggiornamenti di sistema per il sistema operativo del server; <type> è il tipo di pacchetto: rpm, deb, pkg thirdparty-<type>-<os-name>-<version>-<architecture>/ Contiene i pacchetti aggiuntivi di terze parti <PRODUCT_NAME>_<parallels-panel-version>-<os-name>-<architectur e>.inf3 File di configurazione dell Installer di Parallels es, ppsmbe suse11.1-x86_64.inf3, setemplates deball-all.inf3 products.inf3 Il file di configurazione dell Installer di Parallels che descrive i prodotti del Pannello ppsmbe.inf3, setemplates.inf3 Il file di configurazione dell Installer di Parallels che descrive le differenti versioni del Pannello e i relativi componenti aggiuntivi PPSMBE10/ Metadati di Parallels Small Business Panelusati per l installazione del Pannello all interno di Parallels Containers usando modelli EZ.

28 28 Implementazione del Pannello debian/, ubuntu/ directory usate come apt-get archivi per l installazione di prodotti Parallels usando i modelli EZ e l Installer di Prodotti Parallels Per configurare un mirror del Pannello: 1. Accedi al server in cui stai per configurare un mirror. 2. Crea una directory in cui risiederanno i file. A modo di esempio, chiameremo questa directory destination_directory/. 3. In questa directory, crea due directory secondarie: debian/ and ubuntu/. 4. Per configurare un mirror, esegui i successivi comandi. Questo comando scarica la directory /PPSMBE_ sull archivio di Aggiornamenti di Parallels nella destination_directory. # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/ppsmbe_ destination_directory Questo comando scarica la directory /SETEMPLATES_1.0.0 sull archivio di Aggiornamenti di Parallels nella destination_directory. # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/setemplates_1.0.0 destination_directory Questi comando scaricano il contenuto per l installazione dei pacchetti Ubuntu e Debian di Parallels Small Business Panel tramite l Installer di Parallels. # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/debian/ppsmbe_ destination_directory/debian # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/ubuntu/ppsmbe_ destination_directory/ubuntu Questi comandi scaricano il contenuto per l installazione dei pacchetti Ubuntu e Debian per i modelli aggiuntivi di Site Editor tramite l Installer di Parallels. # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/debian/setemplates _1.0.0 destination_directory/debian # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/ubuntu/setemplates _1.0.0 destination_directory/ubuntu Questi comandi scaricano il contenuto per l installazione dei pacchetti Ubuntu e Debian del Pannello tramite i modelli EZ di Parallels Containers. Se stai configurando un mirror per un ambiente diverso da quello di Parallels Containers. salta questo passaggio. # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/debian/ppsmbe_10.2.0/ destination_directory/debian/ppsmbe10 # rsync -au delete rsync://rsync.autoinstall.plesk.com/autoinstall/ubuntu/ppsmbe_10.2.0/ destination_directory/ubuntu/ppsmbe10

29 Implementazione del Pannello 29 Questo comando crea un collegamento simbolico usato per l installazione del Pannello tramite i modelli EZ di Parallels Containers sui sistemi operativi basati su RPM. Se stai configurando un mirror per un ambiente diverso da quello di Parallels Containers. salta questo passaggio. # cd destination_directory; ln -s PPSMBE_ PPSMBE10 Questo comando scarica i file di configurazione dell Installer di Parallels. # rsync -auv delete rsync://rsync.autoinstall.plesk.com/ autoinstall/products.inf3 autoinstall/versions.inf3 autoinstall/ppsmbe.inf3 autoinstall/setemplates.inf3 destination_directory 5. Modifica i file di configurazione dell Installer di Parallels per definire i prodotti, le versioni e le piattaforme che devono essere supportate dal mirror. a. Modifica il file products.inf3 rimuovendo tutti gli elementi di product tranne quello con l'id ppsmbe. Escludi anche l'elemento di product con l'id setemplates, se vuoi che il set addizionale di modelli di design per Site Editor sia supportato. b. Modifica il file ppsmbe.inf3 rimuovendo tutti gli elementi di build tranne quelli del sistema operativo e le architetture che vuoi che siano supportate dal mirror. c. Modifica il file setemplates.inf3 rimuovendo tutti gli elementi di build tranne quelli del sistema operativo e delle architetture per cui vuoi che i modelli di design del sito di Site Editor siano supportati. Nota: Per maggiori informazioni sull utility Rsync, visitare

30 30 Implementazione del Pannello Mirroring di Distribuzioni Windows L archivio di Parallels Small Business Panel per Windows presente su viene strutturato nel modo seguente (di seguito si riportano solo i file e le directory rilevanti per il mirroring dei pacchetti del Pannello): <PRODUCT_NAME>_<product_version>/ Diverse directory secondarie con nome a seconda delle versioni del Pannello. Nel nostro caso, la directory secondarie d interesse è PPSMBE-WIN_<version>/, e.g., PPSMBE-WIN_10.2.0/ Ciascuna di queste directory secondarie contiene i successivi file: dist-<type>-<os-name>-<version>-<architecture>/ Contiene i pacchetti di distribuzione del Pannello o i modelli di design, es., dist-msi-microsoft-2003-i386/ thirdparty-<type>-<os-name>-<version>-<architecture> pacchetti aggiuntivi di terze parti ppsmbe-<parallels-panel-version>-<os-name>-<architecture>.inf3 File di configurazione dell Installer di Parallels products.inf3 Il file di configurazione dell Installer di Parallels che descrive i prodotti del Pannello ppsmbe.inf3 I file di configurazione dell Installer di Parallels che descrivono le differenti versioni dei componenti aggiuntivi del Pannello Per configurare un mirror del Pannello: 1. Accedi al server in cui stai per configurare un mirror. 2. Crea una directory in cui risiederanno i file. A modo di esempio, chiameremo questa directory destination_directory/. 3. Per configurare un mirror, esegui i successivi comandi. Questo comando scarica la directory PPSMBE-WIN_10.2.0/ sull archivio di Aggiornamenti di Parallels nella destination_directory/. # rsync -au delete rsync://rsync.autoinstall-win.parallels.com/autoinstall/ppsmbe-win _ destination_directory Questo comando scarica i file di configurazione dell Installer di Parallels. # rsync -auv delete rsync://rsync.autoinstall-win.parallels.com/ autoinstall/products. inf3 autoinstall/ppsmbe.inf3 destination_directory 4. Modifica i file di configurazione dell Installer di Parallels per definire i prodotti, le versioni e le piattaforme che devono essere supportate dal mirror.

31 Implementazione del Pannello 31 a. Modifica il file products.inf3 rimuovendo tutti gli elementi di product tranne quello con l'id ppsmbe. Escludi anche l'elemento di product con l'id setemplates, se vuoi che il set addizionale di modelli di design per Site Editor sia supportato. b. Modifica il file ppsmbe.inf3 rimuovendo tutti gli elementi di build tranne quelli del sistema operativo e le architetture che vuoi che siano supportate dal mirror. Nota: Per maggiori informazioni sull utility Rsync, visitare

32 C A P I T O L O 4 Panoramica sulle Operazioni di Configurazione Questo capitolo offre le informazioni sulle operazioni che compongono la fase di Configurazione dell approvvigionamento di Parallels Small Business Panel. Le descrizioni sulle operazioni vengono ordinate nel presente capitolo perché coincidano con l ordine della corretta realizzazione. In questo capitolo: Inizializzazione del Pannello Installazione della Chiave della Licenza Personalizzazione del Pannello Personalizzazione dei Collegamenti di Servizi Configurazione DNS Installazione di Certificati SSL Creazione di Domini e Sottodomini Installazione di Applicazioni Definizione dei Cataloghi APS Disponibili... 44

33 Panoramica sulle Operazioni di Configurazione 33 Inizializzazione del Pannello La prima cosa che si deve fare nel Pannello dopo la sua installazione è l inizializzazione. Non è consentita la realizzazione di altre operazioni, a prescindere se è sul GUI del Pannello o mediante le API. L inizializzazione configura le successive impostazioni del Pannello: dell amministratore nuova password dell amministratore invece di quella predefinita lingua del Pannello (facoltativo) Se la lingua non è configurata durante l inizializzazione del Pannello, verrà usato l Inglese Americano (en-us). L amministratore del Pannello può cambiare la lingua dell interfaccia più tardi in qualsiasi momento (purché il relativo componente (a pagina 12) di lingua sia installato). Nel caso in cui venga fornita una traduzione personalizzata del Pannello, è necessario importare un language pack personalizzato al Pannello prima dell installazione. Per maggiori informazioni, consultare la Guida alla Localizzazione di Parallels Small Business Panel: presente sulla pagina dedicata alla documetazione (http://www.parallels.com/products/small-business-panel/documentation/) del Pannello. Collegamenti Rapidi Inizializzare il Pannello usando API remote (a pagina 86) Inizializzando il Pannello usando la CLI (a pagina 209) Installazione della Chiave della Licenza Il Pannello viene distribuito con la chiave di licenza che supporta un numero limitato di account utente. Pertanto, è necessario ottenere e installare la chiave di licenza che si adatti al meglio alle necessità degli utenti. Oltre alla chiave di licenza principale che definisce la funzionalità fondamenteale del Pannello, è possibile installare delle chiavi di licenza aggiuntive, il che consente l utilizzo di componenti aggiuntivi al Pannello, come quello della soluzione antivirus di Dr.Web. Collegamenti Rapidi Installazione di una chiave di licenza usando API remote (a pagina 91) Instaazione di una chiave di licenza usando la CLI (a pagina 210)

34 34 Panoramica sulle Operazioni di Configurazione Personalizzazione del Pannello Logo I successivi aspetti di personalizzazione del Pannello sono compresi nella finalità dell approvvigionamento del Pannello: l URL e l immagine del logotipo del Pannello il collegamento al pulsante di Supporto Nota: Entrambi sono solo supportati nella CLI. Il logotipo del Pannello viene visualizzato nell angolo in alto a sinistra del Pannello. In modo predefinito, rappresenta un immagine GIF da 141*29 pixel con il logotipo del prodotto Parallels Small Business Panel. Il sito web di Parallels si apre facendo clic su questo logo. È possibile modificare l immagine e l URL del logo in modo autonomo. Supporto Il pulsante Supporto è presente nella scheda Impostazioni disponibile all amministratore del Pannello. In modo predefinito, facendo clic sul pulsante si apre un formulario di Richiesta di Supporto sul sito web di Parallels, da compilare e inviare dall amministratore. Nel caso in cui si desideri fornire supporto tecnico ai propri clienti, è possibile cambiare l URL che compare, facendo clic sul pulsante Supporto. Collegamenti Rapidi Personalizzare il Pannello usando la CLI (a pagina 210) Personalizzazione dei Collegamenti di Servizi L interfaccia utente di Parallels Small Business Panel contiene diversi collegamenti ai successivi servizi: Servizio Descizione Accesso da Predefinito Il negozio online del Pannello Vende/Aggiorna i componenti aggiuntivi e le licenze generali del Pannello. Impostazioni > Gestione delle Chiavi della Licenza: i collegamenti Vai al negozio online per acquistare componenti aggiuntivi del Pannello e Vai al negozio online per aggiornare la chiave di licenza del Pannello links Negozio Online di Parallels

35 Panoramica sulle Operazioni di Configurazione 35 Negozio online del Marketplace di Applicazioni (vedi la Nota sotto la tabella) Vende licenze per le applicazioni del Marketplace. Applicazioni & Script > Marketplace di Applicazioni: i pulsanti Acquista Negozio del Marketplace di Parallels Negozio di Pacchetti Utente Vende i Pacchetti Utente del Pannello. Utenti > Account Utente: il collegamento Acquista Pacchetti Utente aggiuntivi Procedura Guidata Introduttiva > Utenti: il collegamento Acquista Pacchetti Utente aggiuntivi Posta > Indirizzi il collegamento Acquista Pacchetti Utente aggiuntivi Impostazioni > Gestione delle Chiavi della Licenza: il collegamento Vai al Marketplace di Applicazioni per acquistare pacchetti utente Negozio del Marketplace di Parallels Negozio online di certificati CA Vende certificati SSL CA. Impostazioni > Certificati SSL > Aggiungi Certificato SSL: il pulsante Acquista Certificato SSL myplesk.com Registratore di nomi a dominio Vende i nomi a dominio. Siti Web & Domini: il pulsante Registra Nome a Dominio myplesk.com

36 36 Panoramica sulle Operazioni di Configurazione Nota: Tieni presente la differenza:il Catalogo del Marketplace di Applicazioni è un servizio che offre una lista completa delle applicazioni disponibili. Il Negozio Online del Marketplace di Applicazioni è un servizio che vende licenze per quelle applicazioni. URL dei Cataloghi di Applicazioni (compreso il Marketplace di Applicazioni) sono anche personalizzabili. Consultare la sezione Definizione dei Cataloghi APS Disponibili (a pagina 44) per ottenere maggiori informazioni. È possibile personalizzare gli URL che si aprono facendo clic sui collegamenti in questi casi: Sei un partner di Parallels che vende licenze per il Pannello e i relativi componenti aggiuntivi Sei un partner di Parallels che vende Pacchetti Utente del Pannello Si un partner di Parallels che vende licenze per le applicazioni del Marketplace Fornisci servizi di registrazione di nomi a dominio Vendi certificati CA I collegamenti vengono personalizzati modificando il file di configurazione del Pannello smb.ini. Una volta realizzata la personalizzazione richiesta nel file di configurazione, può essere caricato nella quantità necessaria d istanze del Pannello, sostituendo la configurazione predefinita. Non vengono forniti mezzi speciali per questo, quindi si consiglia di usare le chiamate alla riga di comando standard. Il File di Configurazione del Pannello Percorso: su Unix/Linux: $PRODUCT_ROOT/admin/smb/application/config/smb.ini su Windows: %plesk_dir%\admin\smb\application\config\smb.ini (%plesk_dir% è una variabile dell ambiente che denota la directory d installazione del Pannello) Configurazione di Collegamenti di Servizi: [marketplace] panelandaddonslicensesstore = url = userpacksurl = buysslcertificatesurl = registerdomainsurl = In modo predefinito, il file di configurazione non contiene questa sezione, quindi si consiglia di aggiungere manualmente il titolo della sezione ([marketplace]) e le successive stringhe a seconda delle preferenze di personalizzazione: nella modifica dell URL del negozio online che vende il Pannello e i relativi componenti aggiuntivi: panelandaddonslicensesstore =

37 Panoramica sulle Operazioni di Configurazione 37 nella modifica dell URL del negozio online che vende le licenze della applicazioni del Marketplace: url = nella modifica dell URL del negozio online che vende i Pacchetti Utente del Pannello: userpacksurl = nella modifica dell URL dei certificati CA per la vendita di servizi: buysslcertificatesurl = nella modifica dell URL del servizio di registro di nomi a dominio: registerdomainsurl = Per annullare le modifiche di qualsiasi personalizzazione e ripristinare i valori predefiniti, rimuovi la stringa appropriata da smb.ini.

38 38 Panoramica sulle Operazioni di Configurazione Configurazione DNS <SMB_panel> viene installato con il server DNS configurato come server di nomi principale per i domini creati e ospitati nel Pannello. Nella procedura di approvvigionamento del Pannello, è possibile disabilitare il servizio DNS o configurarlo nel modo che preferisci. Se hai un ambiente di lavoro con un server di nomi configurato per servire tutti i domini ospitati, probabilmente non avrai bisogno di un server DNS separato per ogni server con l istanza del Pannello.È anche da sottolineare che per un ambiente di Parallels Containers, i Container con il Pannello dove il server DNS viene eseguito consumano alcune risorse in più, il che fa diminuire moderatamente la densità dell intero ambiente di hosting. Per fare in modo che le zone DNS dei domini gestiti dal Pannello siano servite da un server DNS remoto, disabilita il servizio DNS nella procedura di approvvigionamento dell istanza del Pannello. Se i tuoi clienti preferiscono che i loro domini siano serviti da un server DNS locale, possono abilitarlo più tardi. Se vuoi che i domini gestiti dal Pannello siano serviti da un servizio DNS locale, puoi modificare le zone DNS nel modo più appropriato. Il pannello offre un modello personalizzabile di zona DNS, contenente i modelli del SOA DNS e altri record di risorse. Quando viene creato un account di dominio, la relativa zona DNS viene creata in base al modello. Quindi, per configurare le zone DNS per i domini gestiti dal Pannello, devi solo modificare il modello della zona DNS. Collegamenti Rapidi Configurazione DNS usando le API remote (a pagina 98) Configurazione DNS usando la CLI (a pagina 212) In questa sezione Cambiare il Modello di Registro SOA Configurazione dei Modelli di Registro delle Risorse... 39

39 Panoramica sulle Operazioni di Configurazione 39 Cambiare il Modello di Registro SOA Il modello del Pannnello di registro SOA consente di modificare i successivi campi di registro: ttl (durata) Aggiorna Riprova Scade Minimo (solo CLI Unix) formato sn (= numero seriale) Formato del numero seirale della zona: yyyymmdd o Indicatore Data e Ora Unix Configurazione dei Modelli di Registro delle Risorse Il modello del Pannello della zona DNS supporta i successivi tipi di registri di risorse: A NS CNAME MX PTR TXT AXFR SRV

40 40 Panoramica sulle Operazioni di Configurazione Installazione di Certificati SSL L uso del protocollo Secure Sockets Layer (SSL) su un dominio richiede prima l installazione di un certificato SSL. Nel Pannello, i certificati SSL sono connessi ai domini tramite gli inidirizzi IP: un certificato viene assegnato a un indirizzo IP e questo certificato viene usato quando si accede a un dominio ospitato su quell indirizzo IP. Infatti, il certificato verrà usato quando si cercherà di accedere trammite HTTPS a tutti i domini ospitati su quell indirizzo IP. Quindi, installare un certificato SSL significa importare un certificato al Pannello e assegnarlo a un indirizzo IP. Quando un account di dominio viene crato su quell indirizzo IP, il parametro di hosting del dominio Supporto SSL viene automaticamente attivato e il certificato installato viene usato per accedere al dominio. Collegamenti Rapidi Installazione di certificati SSL usando API remote (a pagina 127) Installazione di certificati SSL usando la CLI (a pagina 218)

41 Panoramica sulle Operazioni di Configurazione 41 Creazione di Domini e Sottodomini Domini La procedura di creazione e configurazione di domini e sottodomini è stata riprogettata in Parallels Small Business Panel, al fine di essere il più facile possibile. L idea è quella di specificare i parametri essenziali di hosting nella procedura di creazione di un dominio o un sottodominio, lasciando che le impostazioni di hosting restanti vengano automaticamente configurate nel modo più adatto. Quindi, per creare un dominio, è necessario indicare i successivi argomenti: Nome del dominio. Indirizzo IP. Se l indirizzo IP è associato ad un certificato SSL (a pagina 40), allora il supporto SSL viene automaticamente abilitato per il dominio creato su questo IP. Proprietà di hosting web richieste: login e password o account FTP da usare per il caricamento del contenuto del sito web. Una volta installata l applicazione web su un dominio, il Pannello configura automaticamente tutti i servizi richiesti per l applicazione. Ecco perché l indirizzo IP, la login FTP e la password sono le uniche impostazioni di hosting che si devono specificare durante la creazione del dominio. Collegamenti Rapidi Creazione di domini usando API remote (a pagina 134) Creazione di domini usando la CLI (a pagina 220) Sottodomini Nella creazione di un sottodominio, è necessario indicare almeno il nome del prefisso del sottodominio e il dominio principale. Normalmente, il contenuto di un sottodominio si trova nella directory /httpdocs/subdomains/subdomain-name dell host virtuale del dominio. Il Pannello per Windows supporta anche i cosiddetti sottodomini su una sottocartella - sottodomini mappati su qualsiasi directory che si trovi all interno della cartella /httpdocs. Questo è utile quando vuoi che un applicazione web installata sia accessibile come un sottodominio. Ad esempio, un applicazione WordPress normalmente è accessibile nell URL del tipo cioè, Con il sottodominio su una sottocartella, è possibile rendere l applicazione accessibile su Per creare un sottodominio regolare, è necessario specificare il nome di un dominio principale, il nome del sottodominio e le proprietà di hosting del sottodominio.

42 42 Panoramica sulle Operazioni di Configurazione Nota: In modo predefinito, il contenuto del sottodominio è accessibile sotto lo stesso account FTP che il dominio principale. Quindi, il fatto di specificare le proprietà dell account FTP è facoltativo e da realizzare solo nel caso in cui un account FTP separato sia necessario per accedere al contenuto del sottodominio. Per creare un sottodominio su una sottocartella (supportato solo in Windows), è necessario indicare il nome del dominio principale/sottodominio, il nome del sottodominio e il percorso alla cartella in cui viene creato il sottodominio. Nota: Per i sottodomini su una sottocartella, non è possibile creare un account utente FTP separato: viene sempre usato l account utente FTP di un dominio principale/sottodominio. Collegamenti Rapidi Creazione di sottodomini usando API remote (a pagina 140) Creazione di sottodomini usando la CLI (a pagina 220) Installazione di Applicazioni Parallels Small Business Panel supporta le applicazioni APS. Queste intendono le applicazioni web pacchettizzate secondo l APS - Application Provisioning Standard (http://www.apsstandard.org/), che rende disponibile il modello SaaS alle aziende di hosting. Parallels distingue in termine application package - un archivio di zip con un applicazione web pacchettizzata nel modo definito dal formato APS. Contrariamente all applicazione stessa, che viene installata dal pacchetto. L installazione di un applicazione su un dominio o un sottodominio viene realizzata in due fasi: 1. Ottenere il pacchetto dell applicazione e importarla al Pannello. 2. Installare l applicazione dal pacchetto sul dominio o sul sottodominio. Collegamenti Rapidi Installazione di applicazioni usando API remote (a pagina 149) Installazione di applicazioni usando la CLI (a pagina 223) In questa sezione Importazione di un Pacchetto di Applicazioni Installazione di Applicazioni... 43

43 Panoramica sulle Operazioni di Configurazione 43 Importazione di un Pacchetto di Applicazioni Un pacchetto di applicazioni si può ottenere e importare nelle successive modalità: Un pacchetto, probabilmente creato in modo autonomo, viene manualmente caricato all host in cui è installato il Pannello e quindi viene manualmente importato al Pannello. Un pacchetto viene scaricato e automaticamente importato al Pannello dal Catalogo APS (un servizio web che offre l accesso a pacchetti di applicazione archiviati in remoto). È possibile scaricare e importare diverse applicazioni alla volta. Il Pannello supporta il monitoraggio dello stato del download. Il Pannello può ottenere i pacchetti di applicazione da differenti istanze del Catalogo APS. I Cataloghi APS disponibili sono definiti nel file di configurazione di Cataloghi APS (a pagina 44), che si può personalizzare affinché si adatti all istanza del Pannello in un determinato ambiente di hosting. Installazione di Applicazioni Nella procedura d installazione di un applicazione, è necessario specificare i seguenti dettagli: Il pacchetto di applicazioni dal quale viene installata l applicazione. Identificato dal nome della release della versione o dall ID del pacchetto. Questi data si possono ottenere tramite l operazione di ripristino dei pacchetti disponibili. Il ripristino dei pacchetti disponibili offre una lista dettagliata dei pacchetti di applicazione importati al Pannello, includendo gli identificatori richiesti. Dominio o sottodominio di destinazione. Proprietà dell installazione. Sono specifiche relative all applicazione. Si possono trovare anche delle applicazioni senza alcune impostazioni o proprietà d installazione. Le API del Pannello non consentono di ottenere le informazioni sulle impostazioni dell applicazione, quindi è necessario farlo con l aiuto delle API del Catalogo APS (http://www.apsstandard.org/r/doc/aps-catalog-1.1-api/index.htm) oppure analizzando il file di metadati del pacchetto. Il formato APS è descritto nelle Specifiche del Formato APS su

44 44 Panoramica sulle Operazioni di Configurazione Definizione dei Cataloghi APS Disponibili La lista di Cataloghi APS definiti nel file di configurazione ha come scopo le successive azioni: 1. Le applicazioni da questi cataloghi possono essere installate direttamente su un dominio mediante le API del Pannello. Nota: L installazione di applicazioni da un Catalogo APS non definito nel file di configurazione non è possibile. 2. Questi cataloghi vengono visualizzati dagli utenti del Pannello sulla schermata Applicazioni & Script e gli utenti possono installare le applicazioni da soli. Il Catalogo APS è un nome generalizzato del servizio, che può adottare le successive forme: Catalogo APS su apscatalog.com (http://apscatalog.com). Servizio del Catalogo APS Ufficiale supportato da Parallels. Nota: È importante che apscatalog.com sia presente nella configurazione quando i siti web con applicazioni APS sono migrati al Pannello tramite il backup/ripristino. Catalogo APS Personalizzato, un mirror locale del servizio implementato nell ambiente di hosting, che garantisce l accesso a determinate applicazioni. Per maggiori informazioni su come implementare un mirror locale del Catalogo APS, consultare la documentazione sul sito ufficiale APS Standard su Potrebbe essere necessario definire i Cataloghi APS disponibili in questi casi: a Nella fornitura del Pannello, vuoi installare applicazioni dal tuo Catalogo APS personalizzato. In questo caso, devi aggiungere una voce al Catalogo nel file di configurazione. b Vuoi che gli utenti del Pannello accedano al tuo Catalogo APS personalizzato o a quelli forniti dal Pannello in modo predefinito. In tal caso, devi aggiungere una voce al tuo Catalogo nel file di configurazione e, facoltativamente, rimuovere le voci esistenti. c Vuoi che gli utenti del Pannello non accedano ad alcun Catalogo APS. In tal caso, rimuovi tutte le voci dal file di configurazione. Per cambiare la lista di Cataloghi APS disponibili, devi realizzare le seguenti operazioni: 1. Modificare il modello di Cataloghi APS (a pagina 46) a seconda delle necessità. 2. Importare il file di configurazione al Pannello usando uno dei seguenti metodi: Copiando il file di configurazione personalizzato e sostituendo quello predefinito mediante il SO standard Importandolo usando le API di approvvigionamento del Pannello

45 Panoramica sulle Operazioni di Configurazione 45 Collegamenti Rapidi Definizione dei Cataloghi APS Disponibili usando le API remote (a pagina 145) Definizione dei Cataloghi APS Disponibili usando la CLI (a pagina 222) In questa sezione File di Configurazione dei Cataloghi APS... 46

46 46 Panoramica sulle Operazioni di Configurazione File di Configurazione dei Cataloghi APS Ubicazione Su Linux/Unix: /usr/local/psa/admin/smb/application/config/aps/catalogs.ini Formato su Windows: %plesk_dir%\admin\smb\application\config\aps\catalogs.ini Il file di configurazione dei Cataloghi APS è un documento di testo con il seguente formato: [apscatalog] ;Parola chiave che funge da identificatore interno della risorsa delle applicazioni APS. type = apscatalog ;Definizione del tipo di risorsa delle applicazioni APS, può essere marketplace o apscatalog ;marketplace è una tipologia usata per definire il servizio del Marketplace di Applicazioni ;apscatalog è una tipologia comune che si dovrebbe usare per qualsiasi Catalogo APS (servizio del Catalogo APS ufficiale e mirror locali) url = ;URL della risorsa delle applicazioni APS [marketplace] type = marketplace url = protocol = all-app [APSCatalogLocalMirror] type = apscatalog name.en-us = APS Catalog (local) ;Titolo della risorsa delle applicazioni APS nel modo in cui verrà visualizzato sulla GUI del Pannello nella realativa lingua description.en-us = Local instance of APS catalog ;Descrizione della risorsa delle applicazioni APS nel modo in cui verrà visualizzata sulla GUI del Pannello nella realativa lingua url = apscatalog.example.com

47 C A P I T O L O 5 Configurazione tramite le API remote Questo capitolo si centra sulla configurazione del Pannello mediante le API remote del Pannello. La sezione Usare le API Remote (a pagina 48) comprende la panoramica sul protocollo RPC delle API e i modelli degli strumenti usati per interagire con il server gestito dal Pannello tramite il protocollo. La sezione Configurazione del Pannello (a pagina 86) descrive accuratamente i messaggi di richiesta che deve inviare uno strumento di terze parti per realizzare le operazioni di configurazione del Pannello, nonché i messaggi di risposta ricevuti dopo ogni operazione. In questo capitolo: Usare le API Remote Configurazione del Pannello... 86

48 48 Configurazione tramite le API remote Usare le API Remote Questa sezione descrive cosa sono le API remote del Pannello, come funzionano e come creare un applicazione client che comunicherà con il Pannello sulle API remote. In questa sezione Informazioni sulle API Remote Pacchetti RPC di API Creazione di Software Client... 55

49 Configurazione tramite le API remote 49 Informazioni sulle API Remote Per rendere possibile l interazione tra il Pannello e il software di terze parti, il Pannello fornisce le API basate su XML. Quest interfaccia espone un set di funzioni per la gestione di oggetti logici del Pannello. Il protocollo RPC di API è stato progettato per chiamare queste funzioni API in modo remoto. Il protocollo XML-over-HTTP scambia i dati a modo di pacchetti specificatamente formattati. L interazione tra il Pannello e il software di terze parti è basata sul modello di programmazione del server client. Figura 1:Interazione tra il Pannello e un software client di terze parti La parte del server è presentata dal server RPC di API del Pannello (d ora innnazi denominato il server) che rappresenta una parte del Pannello. Il software della parte client deve essere creato da una terza parte. Lo scenario d interazione è: 1. L applicazione client forma un pacchetto di richiesta basato su XML (d ora innanzi denominato Pacchetto RPC di API o il pacchetto), aggiunge un intestazione HTTP standard e l invia al server. 2. Il server riceve il pacchetto, lo convalida e chiama le funzioni del Pannello interne per realizzare le operazioni richieste. 3. Il server elabora il pacchetto di risposta contenente i dettagli sull operazione realizzata e procede all invio. 4. Il client riceve questo pacchetto (lo stato dell operazione e, probabilmente, un messaggio di errore o i parametri dell operazione) e recupera l informazione. L interazione finisce. Versioni di API Supportate La corrente versione del Pannello supporta solo la versione del protocollo RPC di API.

50 50 Configurazione tramite le API remote Pacchetti RPC di API Un pacchetto RPC di API è un semplice documento XML compreso nel corpo di un messaggio HTTP. Si distinguono due tipi di pacchetti: pacchetti di richiesta - formati dal software della parte client e inviati al server tramite le API remote pacchetti di risposta - formati dal server e inviati al client Un pacchetto di risposta contiene lo stato di esecuzione dell operazione richiesta e può anche contenere un messaggio di errore se l operazione non è riuscita. In questa sezione Struttura del Pacchetto Modello di Pacchetto Convalida dei Pacchetti... 54

51 Configurazione tramite le API remote 51 Struttura del Pacchetto Si distinguono le seguenti parti del pacchetto RPC di API: 1. Intestazione HTTP - parte di trasporto. Oltre ad altre informazioni standard, deve contenere i dati sul server in cui viene realizzata l operazione e le credenziali dell amministratore del Pannello. 2. Intestazione del pacchetto specificando la versione del protocollo RPC di API. 3. Corpo del pacchetto definisce le operazioni che il server deve realizzare. Il corpo del pacchetto è strutturato nel modo seguente: <[operator]> <[operation]> <[parameter1]> </[parameter1]>... <[parameter2]> </[parameter2]> </[operation]> </[operator]> Questo esempio mostra la struttura comune del corpo del pacchetto, con un elemento [operator] e un elemento [operation] all interno. In una determinata implementazione, le etichette [operator], [operation], [parameter] devono essere sostituite dagli operatatori, operazioni e parametri reali. Nota: Ci possono essere diverse sezioni di operazioni comprese in un operatore e diverse sezioni dell operatore comprese in un singolo pacchetto. D ora innanzi, chiameremo l intestazione e il corpo del pacchetto XML con un unico nome, e cioè: pacchetto.

52 52 Configurazione tramite le API remote Modello di Pacchetto Ecco un esempio di un messaggio RPC di API di richiesta inviato al server: POST /enterprise/control/agent.php HTTP/1.1 Host: :8443 Accept: / HTTP_AUTH_LOGIN: admin HTTP_AUTH_PASSWD: setup Pragma: no-cache Content-Length: 1398 Content-Type: text/xml <?xml version= 1.0 encoding= UTF-8 standalone= no?> <packet version= > <smb> <initial_setup> <password>p4$$w0rd</password> </admin_ > <locale>de-de</locale> </initial_setup> </smb> Intestazione HTTP L intestazione HTTP indica che il metodo HTTP usato è POST, l agente di gestione si trova su /enterprise/control/agent.php, e la versione HTTP è 1.1. L elemento Host indica l indirizzo IP e la porta del server del Pannello a cui viene indirizzato il messaggio. Gli elementi HTTP_AUTH_LOGIN e HTTP_AUTH_PASSWD contengono le credenziali di login dell amministratore del Pannello. Il Content-Type deve essere text/xml. La lunghezza del messaggio inviato deve anche essere specificata. Inizio della parte XML Intestazione del pacchetto L attributo versione indica la versione richiesta del protocollo RPC di API del Pannello. Corpo del pacchetto Inizia sempre dall etichetta del relativo operatore. Questo pacchetto in particolare usa l operatore smb per inizializzare un software appena installato sul Pannello. Gli elementi collegati al nodo initial_setup contengono i dati necessari per inizializzare il Pannello: L e la password dell amministratore del Pannello e la lingua del pannello. Etichetta finale per chiudere il pacchetto Entrambi i pacchetti di richiesta e di risposta sono simili nella struttura, ma i corpi e le intestazioni HTTP sono diversi. Il messaggio inviato dal server come risposta alla richiesta sopra potrebbe apparire nel modo seguente: HTTP/ OK Transfer-Encoding: chunked Content-Type: text/html Date: Fri, 03 Apr :54:56 GMT Server: sw-cp-server/1.0.0 <?xml version= 1.0 encoding= UTF-8 standalone= no?> <packet version= > Intestazione standard della risposta del server HTTP Il tipo MIME è text/xml. L elemento Server mostra che la richiesta è stata gestita dal Pannello sul lato server. Intestazione standard di un documento XML valido Intestazione del pacchetto XML

53 Configurazione tramite le API remote 53 <smb> <initial_setup> <result> <status>ok</status> </result> </initial_setup> </smb> Corpo del pacchetto Il nodo root del corpo del pacchetto è l operatore smb. Le linee inserite indicano che l inizializzazione del Pannello è riuscita. Etichetta finale per chiudere il pacchetto

54 54 Configurazione tramite le API remote Convalida dei Pacchetti Il server RPC API del Pannello è sistemato in un set di agenti - o operatori - gestiti dal Motore Agente. Ogni agente è un blocco logico responsabile della gestione un determinato gruppo di comandi e il Motore Agente funge da dispatcher dei pacchetti. Inoltre, il Motore Agente è associato a diversi set di file di schema XML. Ogni set è relazionato a una determinata versione RPC di API. Un punto d ingresso ad ogni versione è il file agent_input.xsd che fa riferimento a tutti gli schemi d input della stessa versione. Il server RPC API del Pannello funziona nel modo seguente: Prima di tutto, il pacchetto XML puro, senza la sua intestazione HTTP, arriva al Motore Agente. Il Motore Agente ottiene la versione RPC di API dall intestazione del pacchetto, sceglie il set corrispondente agli schemi XML e passa al corretto schema agent_input.xsd. Questo schema convalida il livello dell operatore del pacchetto e quindi ogni sezione dell operatore del pacchetto viene convalidata con il corretto schema risultante. Figura 2: Convalida di pacchetti sul lato server Se il pacchetto viene ritenuto non valido, il Motore Agente forma un report di errore e lo invia al client. Se tutti gli elementi del pacchetto sono correttamente convalidati, il Motore Agente verifica se sono presenti i moduli dell agente necessari per l ulteriore elaborazione e li invoca uno dopo l altro. Ogni agente invocato (operatore) riceve la propria sezione del pacchetto dell operatore, l analizza, realizza le chiamate alle funzioni interne e ritorna il risultato dei comandi eseguiti al Motore Agente.

55 Configurazione tramite le API remote 55 Creazione di Software Client L applicazione client deve implementare le successive fasi dello scambio di dati: conversione dei comandi necessari al pacchetto XML abilitato da RPC di API preparazione del pacchetto per la consegna tramite HTTP e l invio al Pannello ricevere la risposta dal Pannello ed estrarre l informazione risultante dal pacchetto Figura 3: Struttura di applicazioni lato client L immagine sopra mostra il modo in cui un applicazione client può essere strutturata e come questa struttura elabora la risposta di dati. Ogni modulo di questo modello di applicazione è responsabile di realizzare un determinato compito, ovvero: 1. Il generatore del pacchetto XML accetta un comando dal GUI di applicazioni o dal modulo di terze parti. Il generatore del pacchetto XML contiene un convertitore comando-a-xml per ogni comando conosciuto. Il formato del pacchetto XML risultante è completamente compatibile con la versione RPC di API supportata dall applicazione del client. 2. Il mittente del pacchetto HTTP accetta il pacchetto XML. Il pacchetto non contiene alcuna informazione sul server di destinazione né i dettagli di accesso, quindi il mittente del pacchetto HTTP deve archiviare queste impostazioni oppure essere in grado di ripristinarle quando richiesto. Il mittente del pacchetto HTTP forma un intestazione HTTP con le credenziali di login dell utente del Pannello e invia il paccheto al server RPC di API del Pannello tramite il protocollo RPC di API. 3. Ildestinatario del pacchetto HTTP ottiene il pacchetto HTTP risultante dal lato server, rimuove l intestazione HTTP e sposta la risposta del XML puro all analizzatore di pacchetti XML. 4. L analizzatore di pacchetti XML analizza lo stato di esecuzione del pacchetto XML di risposta e compone un messaggio di errore nel caso in cui il risultato sia negativo. Quindi invia i dati estratti e gestiti al GUI o al modulo di chiamata.

56 56 Configurazione tramite le API remote L immagine sopra mostra le operazioni HTTP come parte della libreria HTTP. Infatti, queste operazioni si possono implementare da zero, ma il modo più facile è farlo con l aiuto di una libreria HTTP preconfezionata e provata. La divisione in mittente HTTP e destinatario HTTP è condizionale: È stato fatto con l intenzione di separare le operazioni HTTP invio e ricezione in modo grafico. In questa sezione Creazione di Pacchetti di Richiesta Invio di un Messaggio di Richiesta Analisi di Risposta Gestione di Errori Modelli di Codice Client Creazione di Pacchetti di Richiesta Nel passaggio relativo alla formazione di un pacchetto RPC di API, l applicazione client ottiene il comando dal GUI o dal modulo di software per realizzare una determinata operazione (o diverse operazioni) su uno o più oggetti del Pannello. L applicazione deve convertire il comando richiesto al formato del pacchetto XML compatibile con le API XML del Pannello. Per implementare il convertitore comando-a-pacchetto-xml, tieni presente il modo in cui sono strutturati i pacchetti RPC di API e come vengono elaborati dal server del Pannello (a pagina 50). Per aggiungere la convalida del pacchetto di richiesta creato al proprio convertitore, usa il set di file di schema XML dall installazione del Pannello: PRODUCT_ROOT_D/admin/htdocs/schemas/rpc/ su Linux/Unix dove PRODUCT_ROOT_D è una variabile che definisce la directory d installazione del Pannello. %plesk_dir%\admin\htdocs\schemas\rpc\ su Windows dove %plesk_dir% è una variabile che definisce la directory d installazione del Pannello. Assicurati di usare agent_input.xsd come punto d ingresso della convalida.

57 Configurazione tramite le API remote 57 Invio di un Messaggio di Richiesta Quando il pacchetto RPC di API del Pannello è pronto, deve essere compreso all interno dell intestazione HTTP ed inviato al server specificato. Per realizzare queste operazioni, si consiglia di usare una libreria client HTTP/FTP. Questo tema descrive il modo in cui realizzare queste operazioni in PHP usando il motore CURL - una libreria di trasferimento URL lato client gratuita e aperta, supportata da PHP e versioni superiori Per formare l intestazione HTTP, il motore CURL richiede i successivi parametri: L URL del server di destinazione formato come una stringa nel formato seguente: define ( HOST, ); define ( PORT, 8443); define ( PATH, enterprise/control/agent.php ); $url = https://. HOST. :. PORT. /. PATH; La matrice degli elementi d intestazione sono: $headers = array( HTTP_AUTH_LOGIN: admin, HTTP_AUTH_PASSWD: setup, Content-Type: text/xml ); Quindi il motore CURL viene inizializzato e impostato per usare HTTPS e tutti i parametri richiesti per l intestazione HTTP sono trasferiti ad esso: // initialize the curl engine $ch = curl_init(); // set the curl options: // do not check the name of SSL certificate of the remote server curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // do not check up the remote server certificate curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // pass in the header elements curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // pass in the header elements curl_setopt($ch, CURLOPT_URL, $url);

58 58 Configurazione tramite le API remote Un altro parametro richiesto dal motore CURL è il pacchetto RPC di API del Pannello. Immaginiamo che il pacchetto è formato nel modo seguente: $packet = <<<EOP <?xml version= 1.0 encoding= UTF-8?> <packet version= > <smb> <initial_setup> <password>p4$$w0rd</password> </initial_setup> </smb> EOP; Adesso, diciamo al motore CURL che aspettiamo una richiesta dal server, di trasferire il pacchetto per la consegna e di attivare il trasferimento: // tell CURL to return the result rather than to load it to the browser curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // pass in the packet to deliver curl_setopt($ch, CURLOPT_POSTFIELDS, $packet); // perform the CURL request and return the result $retval = curl_exec($ch); // close the CURL session curl_close($ch); Una volta realizzata la richiesta, CURL ottiene il pacchetto HTTP risultante sul lato client, rimuove l intestazione HTTP e la variabile $retval ottiene la parte XML pura del pacchetto di risposta.

59 Configurazione tramite le API remote 59 Analisi di Risposta Puoi usare qualsiasi libreria client HTTP/FTP per trasferire la richiesta al Pannello e per ottenere il risultato. Normalmente, il pacchetto HTTP risultante verrà strutturato come descritto nella sezione Struttura del Pacchetto (a pagina 51). Se usi il motore CURL, il risultato verrà restituito nel formato XML puro. La struttura del pacchetto XML puro restituito dal server RPC di API del Pannello è definito da schemi XML. Il Pacchetto è un nodo root di ogni pacchetto XML di risposta, l attributo della versione restituisce la versione del protocollo RPC di API del Pannello in esecuzione sul server. Un pacchetto di risposta contiene la risposta di determinati operatori o l errore dell applicazione del Pannello restituito nel nodo system. Per maggiori informazioni sul significato dei nodi system e output, consultare la sezione Gestione di Errori (a pagina 61). Per esaminare la struttura delle risposte è necessario lo schema agent_output.xsd. Questo schema elenca i tipi di dati di risposta per tutti gli operatori supportati da una determinata versione RPC di API e indica anche gli schemi di output corrispondenti a questi operatori. All interno di ogni elemento [operator] di un pacchetto di risposta, un tipo di dati di risposta normale contiene uno o più elementi di risultato. Questo elemento viene rappresentato da un tipo complesso che normalmente comprende il tipo resulttype definito nello schema common.xsd nel modo seguente: <xs:complextype name= resulttype > <xs:sequence> <xs:element name= status type= result_status ></xs:element> <xs:element name= errcode type= unsignedint minoccurs= 0 ></xs:element>

60 60 Configurazione tramite le API remote <xs:element name= errtext type= xs:string minoccurs= 0 ></xs:element> </xs:sequence> </xs:complextype> L elemento result può anche contenere altri elementi inseriti se sono stati definiti nel tipo complesso. Nel caso più comune, il formato del pacchetto restituito dal server RPC di API del Pannello presenta questa forma: <?xml= 1.0 encoding= UTF-8?> <packet version= > <[operator]> <[operation]> [ ] <result>... </result> <result>... </result>... <result>... </result> </[operation]> </[operator]> In questo caso, [operator] rappresenta l operatore usato nel pacchetto di richiesta e [operation] rappresenta l operazione realizzata. L elemento RESULT viene sempre usato per isolare l informazione richiesta e lo stato di esecuzione dell operazione realizzata. La sezione RESULT contiene sempre l elemento STATUS che contiene lo stato dell esecuzione dell operazione realizzata. Nota: Un pacchetto XML di risposta reale può contenere più di un operazione nella sezione dell operatore se il pacchetto d input ha richiesto diverse operazioni e un pacchetto di risposta può contenere più di una sezione dell operatore se il pacchetto d input ha richiesto delle operazioni su multipli oggetti del Pannello.

61 Configurazione tramite le API remote 61 Gestione di Errori La parte del server informa su due tipi di errori al software client, che sono errori di verifica ed errori di esecuzione (nel caso dell esecuzione dell operazione richiesta). Nel rilevamento di un errore di questi tipi, la relativa descrizione restituita dal server gestito dal Pannello contiene sempre i successivi parametri: status con il valore errore errcode codice di errore, un numero unico per identificare l errore errtext messaggio di errore, una descrizione leggibile dell errore La descrizione di un errore è definita dal tipo resulttype nello schema common.xsd (nella maggior parte dei casi) o dai tipi basati su di esso (a seconda dell operatore). Errori di verifica Il pacchetto HTTP in arrivo passa attraverso diverse verifiche sul lato server prima di essere considerato valido e pronto per l esecuzione. Ecco alcune di queste verifiche: verifica dell intestazione HTTP-POST verifica per determinare se la versione del protocollo RPC di API specificata è supportata verifica del metodo di autenticazione (credenziali di login o chiave segreta) verifica dello stato del permesso remote_access_interface dell utente... verifica della validità del pacchetto verifica della disponibilita degli agenti richiesti nella corrente versione del Pannello Nel caso in cui una di queste verifiche non fosse riuscita, le ulteriori verifiche e l esecuzione di comandi sarebbero impossibili. Siccome il lato server è rimasto bloccato in uno dei passaggi di verfica precedenti (es.: non è ancora arrivato all esecuzione dell operazione richiesta), il pacchetto di risposta viene formato con i successivi elementi: system contenente la descrizione dell errore; definito dal tipo resulttype nello schema common.xsd output, un elemento opzionale contenente un messaggio preso dal stderr (se non è vuoto) del componente non riuscito; definito dal tipo garbageoutput nello schema plesk_common.xsd Ad esempio, la risposta ricevuta dal server RPC di API del Pannello nel tentativo di usare una versione non esistente del protocollo RPC di API presenta questa forma: <packet version= > <system> <status>error</status> <errcode>1005</errcode>

62 62 Configurazione tramite le API remote <errtext>api RPC protocol version not supported.</errtext> </system> <output> </output> Errori di esecuzione Se tutte le verifiche sono state realizzate correttamente, gli agenti selezionati cercano di eseguire le operazioni richieste in serie. Se un operazione non è riuscita, l agente relazionato informa sull errore di esecuzione. Tutti i report vengono raccolti dal Motore Agente che compone un pacchetto di risposta basato sugli schemi XML di output. Ad esempio, se la creazione di un dominio non è riuscita l operatore domain comporrà una risposta usando lo schema domain_output.xsd: <packet version= > <domain> <add> <result> <status>error</status> <errcode>2300</errcode> <errtext>failed to add domain.</errtext> </result> </add> </domain> Modelli di Codice Client Questa sezione presenta modelli di applicazioni client in PHP, C# e VB.NET che illustrano come utilizzare il protocollo RPC di API. In questa sezione Applicazione Client PHP Applicazione Client C# Applicazione Client VB.NET... 77

63 Configurazione tramite le API remote 63 Applicazione Client PHP Il successivo modello di codice presenta l applicazione client pronta all uso scritta in PHP. Nota: Se vuoi usare questo esempio, assicurati di avere PHP o versioni superiori. Per maggiori informazioni, visitare o Commenti class ApiRequestException function domainsinforequest() function curlinit() Amplia il tipo standard di Eccezione. Visitare per maggiori informazioni. Usa il modello DOM per comporre un pacchetto XML di richiesta. Restituisce l oggetto DOM risultante. Inizializza la sessione CURL con le opzioni necessarie, come di seguito riportato: CURLOPT_URL CURLOPT_RETURNTRANS FER CURLOPT_POST CURLOPT_SSL_VERIFYPE ER CURLOPT_SSL_VERIFYHO ST CURLOPT_HTTPHEADER specifica l URL di destinazione impostato su true significa che l output risultante verrà restituito dal server in forma di stringa. impostato su true significa che il pacchetto verrà inviato tramite HTTP POST. impostato su false evita che CURL verifichi il certificato del peer. impostato su false evita che CURL verifichi l host. specifica l ordine di campi d intestazione HTTP da impostare. Restituisce il gestore della sessione URL.

64 64 Configurazione tramite le API remote function sendrequest() function parseresponse() function checkresponse() Invia il pacchetto HTTP per via di CURL e ottiene il pacchetto di risposta XML puro (senza l intestazione HTTP). Chiude la sessione CURL e restituisce il pacchetto risultante (un testo semplice con etichette XML). Per maggiori informazioni sul motore CURL, visitare Ottiene il pacchetto di risposta (testo semplice) come un parametro. Analizza il pacchetto usando SimpleXML e restituisce l oggetto SimpleXMLElement in cui il pacchetto è strutturato come un albero. Per maggiori informazioni sull estensione SimpleXML di PHP, visitare Ottiene il pacchetto di risposta del tipo SimpleXMLEelement e verifica il nodo result. Se questo nodo contiene error, allora la funzione emette un eccezione con una stringa elaborata nel nodo errtext. La funzione principale invoca queste funzioni perché siano considerate. Innanzitutto, chiama domaininforequest() per formare un pacchetto nel modo seguente: <?xml version= 1.0 encoding= UTF-8?> <packet version= > <domain> <get> <filter/> <dataset> <limits/> <prefs/> <user/> <hosting/> <stat/> <gen_info/> </dataset> </get> </domain> Quindi curlinit() viene chiamato per inizializzare la sessione CURL con opzioni. La funzione sendrequest invia un pacchetto con l intestazione HTTP nel modo seguente: POST /enterprise/control/agent.php HTTP/1.1

65 Configurazione tramite le API remote 65 Host: :8443 HTTP_AUTH_LOGIN: login HTTP_AUTH_PASSWD: qwedsa HTTP_PRETTY_PRINT: TRUE Content-Length: 294 Content-Type: text/xml Il pacchetto XML di risposta ricevuto dal server gestito dal Pannello può apparire nel modo seguente: <?xml version= 1.0 encoding= UTF-8?> <packet version= > <domain> <get> <result> <status>ok</status> <id>1234</id> <value> <gen_info> <cr_date> </cr_date> <name>example.com</name> <display_name>example</display_name> <status>64</status> <real_size>0</real_size> <client_id>46</client_id> <dns_ip_address> </dns_ip_address> <htype>none</htype> </gen_info> </value> </result> </get> </domain> Una volta ricecuto e analizzato il pacchetto di risposta con la funzione parseresponse(), l interatore foreach rimanda l echo del contenuto del nodo result.

66 66 Configurazione tramite le API remote Modello di codice <?php /** Riporta su un errore durante la richiesta RPC di API */ class ApiRequestException extends Exception {} /** Restituisce l oggetto DOM che rappresenta la richiesta dell informazione sui domini DOMDocument */ function domainsinforequest() { $xmldoc = new DomDocument( 1.0, UTF-8 ); $xmldoc->formatoutput = true; // <packet> $packet = $xmldoc->createelement( packet ); $packet->setattribute( version, ); $xmldoc->appendchild($packet); // <packet/domain> $domain = $xmldoc->createelement( domain ); $packet->appendchild($domain); // <packet/domain/get> $get = $xmldoc->createelement( get ); $domain->appendchild($get); // <packet/domain/get/filter> $filter = $xmldoc->createelement( filter ); $get->appendchild($filter); // <packet/domain/get/dataset> $dataset = $xmldoc->createelement( dataset ); $get->appendchild($dataset); // dataset elements $dataset->appendchild($xmldoc->createelement( hosting )); $dataset->appendchild($xmldoc->createelement( gen_info )); return $xmldoc;

67 Configurazione tramite le API remote 67 } /** Prepara CURL per realizare la richiesta API del resource */ function curlinit($host, $login, $password) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, https://{$host}:8443/enterprise/control/agent.php ); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curl, CURLOPT_HTTPHEADER, array( HTTP_AUTH_LOGIN: {$login}, HTTP_AUTH_PASSWD: {$password}, HTTP_PRETTY_PRINT: TRUE, Content-Type: text/xml ) ); return $curl; /** Realizza una richiesta API del Pannello, restituisce il testo di risposta API non eleborato ApiRequestException */ function sendrequest($curl, $packet) { curl_setopt($curl, CURLOPT_POSTFIELDS, $packet); $result = curl_exec($curl); if (curl_errno($curl)) { $errmsg = curl_error($curl); $errcode = curl_errno($curl); curl_close($curl); throw new ApiRequestException($errmsg, $errcode); } curl_close($curl);

68 68 Configurazione tramite le API remote } return $result; /** Looks if API responded with correct data ApiRequestException */ function parseresponse($response_string) { $xml = new SimpleXMLElement($response_string); if (!is_a($xml, SimpleXMLElement )) throw new ApiRequestException( Cannot parse server response: {$response_string} ); } return $xml; /** Verifica i dati nella risposta ApiRequestException */ function checkresponse(simplexmlelement $response) { $resultnode = $response->domain->get->result; // check if request was successful if ( error == (string)$resultnode->status) throw new ApiRequestException( The Panel API returned an error:. (string)$resultnode->result->errtext); } // // int main() // $host = ; $login = admin ; $password = qwedsa ; $curl = curlinit($host, $login, $password); try { $response = sendrequest($curl, domainsinforequest()->savexml());

69 Configurazione tramite le API remote 69 $responsexml = parseresponse($response); checkresponse($responsexml); } catch (ApiRequestException $e) { } echo $e; die(); // Explore the result foreach ($responsexml->xpath( /packet/domain/get/result ) as $resultnode) { echo Domain id:. (string)$resultnode->id. ; echo (string)$resultnode->data->gen_info->name. (. (string)$resultnode->data->gen_info->dns_ip_address. )\n ; }?> Applicazione Client C# Il successivo modello di codice presenta l applicazione client pronta all uso scritta in C#. Commenti La classe Request implementa l invio di un pacchetto di richiesta al server gestito dal Pannello via HTTP e invia il pacchetto di risposta. Presenta i successivi componenti: public string Hostname public string Login public string Password public string Protocol public ValidationEventHandler XmlSchemaValidation public string AgentEntryPoint public string InputValidationSchema Contiene il nome host (indirizzo IP) del server gestito dal Pannello a cui è inviato il pacchetto di risposta.in modo predefinito è localhost. Contiene la login dell amministratore del Pannello. In modo predefinito è admin. Contiene la password dell amministratore del Pannello. In modo predefinito è setup. Contiene la versione del protocollo RPC di API usata per interagire con il Pannello. Un gestore usato per ricevere gli errori di convalida degli schemi. Contiene l URL dell Agente del Pannello che gestirà il pacchetto di richiesta sul lato server. Contiene l URL dello schema di convalida che verrà applicato al pacchetto di richiesta prima dell invio al lato server.

70 70 Configurazione tramite le API remote public string OutputValidationSchema public XmlDocument Send (XmlDocument) public XmlDocument Send (Stream) public XmlDocument Send (string) private HttpWebRequest SendRequest (string) private XmlDocument ParseAndValidate (TextReader, string) private XmlDocument GetResponse (HttpWebRequest) Contiene l URL dello schema di convalida che verrà applicato al pacchetto di risposta una volta ricevuto sul lato client. Ottiene il pacchetto di richiesta (nella forma di oggetto XmlDocument) nel suo parametro d input. Invia una richiesta ed ottiene la risposta nella forma dell oggetto XmlDocument. Ottiene il pacchetto di richiesta (uno stream) nel suo parametro d input. Convalida il pacchetto di richiesta usando lo schema di convalida agent_input.xsd. Invoca la funzione del componente Send(XmlDocument). Ottiene l URL del pacchetto di richiesta (file XML) nel suo parametro d input. Convalida il pacchetto di richiesta usando lo schema di convalida agent_input.xsd. Invoca la funzione del componente Send(XmlDocument). Forma una richiesta HTTP: comprende l intestazione HTTP e il pacchetto XML serializzato nell oggetto del tipo HttpWebRequest. Restituisce questo oggetto. Ottiene l URI dello schema agent_input.xsd e un lettore di stringhe (con l URI del pacchetto XML da convalidare) nei suoi parametri d input. Convalida il pacchetto e lo restituisce strutturato in modo d albero (un oggetto XmlDocument). Ottiene il pacchetto di richiesta HTTP (oggetto HttpWebRequest) nel suo parametro d input. Invia il pacchetto tramite HTTP, riceve il pacchetto di risposta dal server, lo convalida usando lo schema agent_output.xsd e restituisce un pacchetto XML di risposta strutturato in modo d albero (un oggetto XmlDocument).

71 Configurazione tramite le API remote 71 La classe Program implementa l applicazione della console client. static void Main (string[]) private static bool RemoteCertificateValidation (object, X509Certificate, X509Chain, SslPolicyErrors) private static void XmlSchemaValidation (object, ValidationEventArgs) static void PrintResult(XmlDocument) Un punto d ingresso all applicazione PanelApiRpcClient. Ottiene una matrice di argomenti (stringhe) nel suo parametro d input. Gli argomenti sono: [0] - il nome host (indirizzo IP) del server gestito dal Pannello, [1] - la login dell amministratore del Pannello, [2] - la password dell amministratore del Pannello, [3] - il protocollo RPC di API usato, [4] - un percorso del file XML con un pacchetto di richiesta XML. La funziona forma un pacchetto di richiesta del tipo Request (vedi sopra), lo convalida, invia una richiesta al Pannello e stampa il pacchetto XML risultante. La funzione verifica il certificato SSL remoto per l autenticazione del server. Se il server non viene autenticato, restituisce false. Gestore di eventi di errore di convalida. La funzione emette il pacchetto di risposta (un oggetto XmlDocument) alla console.

72 72 Configurazione tramite le API remote L applicazione client può essere avviata dalla riga di comando nel modo seguente: PanelApiRpcClient admin_login admin_passwd c:\requests\addnewdomain.xml Il pacchetto di richiesta passa al file AddNewDomain.xml: <?xml version= 1.0 encoding= UTF-8?> <packet version= > <domain> <add> <gen_setup> <name>example.com</name> <ip_address> </ip_address> </gen_setup> <hosting> <vrt_hst> <property> <name>ftp_login</name> <value>fpt16se4fdf0</value> </property> <property> <name>ftp_password</name> <value>qweqwe</value> </property> <ip_address> </ip_address> </vrt_hst> </hosting> </add> </domain> Il pacchetto di risposta ricevuto dal server può apparire nel modo seguente: <?xml version= 1.0?> <packet version= > <domain> <add> <result>

73 Configurazione tramite le API remote 73 <status>ok</status> <id>6</id> <guid>5c0e a bcc0-881d691bfdef</guid> </result> </add> </domain> Questo pacchetto restituisce il risultato dell operazione add e l ID e il GUID del dominio appena creato. Modello di codice using System; using System.Net; using System.Text; using System.IO; using System.Xml; using System.Xml.Schema; using System.Security.Cryptography.X509Certificates; using System.Net.Security; namespace PanelApiRpcClient { public class Request { // Public interface // public string Hostname = localhost ; // Panel Hostname public string Login = admin_login ; // Administrator s Login public string Password = admin_passwd ; // Administrator s Password public string Protocol = ; // API RPC Version Protocol. // Handler for receiving information about document type definition (DTD), // XML-Data Reduced (XDR) schema, and XML Schema definition language (XSD) // schema validation errors. public ValidationEventHandler XmlSchemaValidation = null; public Request()

74 74 Configurazione tramite le API remote { } public string AgentEntryPoint { get { return https:// + Hostname + :8443/enterprise/control/agent.php ; } } public string InputValidationSchema { get { return https:// + Hostname + :8443/schemas/rpc/ + Protocol + /agent_input.xsd ; } } public string OutputValidationSchema { get { return https:// + Hostname + :8443/schemas/rpc/ + Protocol + /agent_output.xsd ; } } public XmlDocument Send(XmlDocument packet) { HttpWebRequest request = SendRequest(packet.OuterXml); XmlDocument result = GetResponse(request); return result; } public XmlDocument Send(Stream packet) { using (TextReader reader = new StreamReader(packet)) { return Send(ParseAndValidate(reader, InputValidationSchema)); } } public XmlDocument Send(string packeturi) { using (TextReader reader = new StreamReader(packetUri)) { return Send(ParseAndValidate(reader, InputValidationSchema)); } // Private interface // } // Sending a request message // private HttpWebRequest SendRequest(string message) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(AgentEntryPoint); request.method = POST ; request.headers.add( HTTP_AUTH_LOGIN, Login); request.headers.add( HTTP_AUTH_PASSWD, Password); request.contenttype = text/xml ; request.contentlength = message.length; ASCIIEncoding encoding = new ASCIIEncoding(); byte[] buffer = encoding.getbytes(message); using (Stream stream = request.getrequeststream())

75 Configurazione tramite le API remote 75 { stream.write(buffer, 0, message.length); } return request; } // Parsing and validating packet // private XmlDocument ParseAndValidate(TextReader xml, string schemauri) { XmlSchemaSet schemas = new XmlSchemaSet(); schemas.add(null, schemauri); XmlReaderSettings settings = new XmlReaderSettings(); if (XmlSchemaValidation!= null) settings.validationeventhandler += new ValidationEventHandler(XmlSchemaValidation); settings.validationtype = ValidationType.Schema; settings.validationflags = XmlSchemaValidationFlags.ProcessSchemaLocation; settings.schemas = schemas; XmlDocument document = new XmlDocument(); using (XmlReader reader = XmlTextReader.Create(xml, settings)) { document.load(reader); } return document; } private XmlDocument GetResponse(HttpWebRequest request) { using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) using (Stream stream = response.getresponsestream()) using (TextReader reader = new StreamReader(stream)) { return ParseAndValidate(reader, OutputValidationSchema); } } class Program } { static void Main(string[] args)

76 76 Configurazione tramite le API remote { if (args.length < 5) { Console.WriteLine( Usage: PanelApiRpcClient <Hostname> <Login> <Password> <Protocol> <Request> ); Console.WriteLine( ); Console.WriteLine( Hostname - nome host del Pannello ); Console.WriteLine( Login - Login dell Amministratore ); Console.WriteLine( Password - Password dell Amministratore ); Console.WriteLine( Protocol - Versione del protocollo RPC di API ); Console.WriteLine( Request (*.xml) ); return; } - Percorso del file di richiesta // Verifies the remote Secure Sockets Layer (SSL) certificate // used for authentication. ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(RemoteCertificateValidation); Request request = new Request(); request.xmlschemavalidation = XmlSchemaValidation; request.hostname = args[0]; // ; request.login = args[1]; // admin ; request.password = args[2]; // setup ; request.protocol = args[3]; // ; string packet = args[4]; // request.xml ; try { XmlDocument result = request.send(packet); PrintResult(result); } catch (Exception e) { Console.WriteLine( Request error: {0}, e.message); } } // The following method is invoked by the RemoteCertificateValidationDelegate. private static bool RemoteCertificateValidation(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslpolicyerrors)

77 Configurazione tramite le API remote 77 { if (sslpolicyerrors!= SslPolicyErrors.RemoteCertificateNotAvailable) return true; Console.WriteLine( Certificate error: {0}, sslpolicyerrors); // Do not allow this client to communicate with unauthenticated servers. return false; } // private static void XmlSchemaValidation(object sender, ValidationEventArgs e) { Console.WriteLine( Validation error: {0}, e.message); } static void PrintResult(XmlDocument document) { XmlTextWriter writer = new XmlTextWriter(Console.Out); writer.formatting = Formatting.Indented; document.writeto(writer); } writer.flush(); Console.WriteLine(); } } Applicazione Client VB.NET Il successivo modello di codice presenta l applicazione client pronta all uso scritta in VB.NET. Commenti La classe Request implementa l invio di un pacchetto di richiesta al server gestito dal Pannello via HTTP e invia il pacchetto di risposta. Presenta i successivi componenti: public string Hostname public string Login public string Password public string Protocol Contiene il nome host (indirizzo IP) del server gestito dal Pannello a cui è inviato il pacchetto di risposta. In modo predefinito è localhost. Contiene la login dell amministratore del Pannello. In modo predefinito è admin. Contiene la password dell amministratore del Pannello. In modo predefinito è setup. Contiene la versione del protocollo RPC di API usata per interagire con il Pannello.

78 78 Configurazione tramite le API remote public XmlSchemaValidation Public ReadOnly Property AgentEntryPoint Public ReadOnly Property InputValidationSchema Public ReadOnly Property OutputValidationSchema Public Function Send(ByVal packet As XmlDocument) Public Function Send(ByVal packet As Stream) Public Function Send(ByVal packeturi As String) Private Function SendRequest(ByVal message As String) Private Function ParseAndValidate(ByVal xml As TextReader, ByVal schemauri As String) Private Function GetResponse(ByVal request As HttpWebRequest) Un gestore usato per ricevere gli errori di convalida degli schemi. Contiene l URL dell Agente del Pannello che gestirà il pacchetto di richiesta sul lato server. Contiene l URL dello schema di convalida che verrà applicato al pacchetto di richiesta prima dell invio al lato server. Contiene l URL dello schema di convalida che verrà applicato al pacchetto di risposta una volta ricevuto sul lato client. Ottiene il pacchetto di richiesta (nella forma di oggetto XmlDocument) nel suo parametro d input. Invia una richiesta ed ottiene la risposta nella forma dell oggetto XmlDocument. Ottiene il pacchetto di richiesta (uno stream) nel suo parametro d input. Convalida il pacchetto di richiesta usando lo schema di convalida. Invoca la funzione del componente Send(XmlDocument). Ottiene l URL del pacchetto di richiesta (file XML) nel suo parametro d input. Convalida il pacchetto di richiesta usando lo schema di convalida. Invoca la funzione del componente Send(XmlDocument). Forma una richiesta HTTP: comprende l intestazione HTTP e il pacchetto XML serializzato nell oggetto del tipo HttpWebRequest. Restituisce questo oggetto. Ottiene l URI dello schema di convalida e un lettore di stringhe (con l URI del pacchetto XML da convalidare) nei suoi parametri d input. Convalida il pacchetto e lo restituisce strutturato in modo d albero (un oggetto XmlDocument). Ottiene il pacchetto di richiesta HTTP (oggetto HttpWebRequest) nel suo parametro d input. Invia il pacchetto tramite HTTP, riceve il pacchetto di risposta dal server, lo convalida usando lo schema di convalida e restituisce il pacchetto XML di risposta strutturato in modo d albero (un oggetto XmlDocument).

79 Configurazione tramite le API remote 79 La classe Program implementa l applicazione della console client. Shared Sub Main(ByVal args As String()) Private Shared Function RemoteCertificateValidation( ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal sslpolicyerrors As SslPolicyErrors) Un punto d ingresso all applicazione PanelApiRpcClient. Ottiene una matrice di argomenti (stringhe) nel suo parametro d input. Gli argomenti sono: [0] - il nome host (indirizzo IP) del server gestito dal Pannello, [1] - login dell amministratore del Pannello, [2] - la password dell amministratore del Pannello, [3] - il protocollo RPC di API usato, [4] - un percorso del file XML con un pacchetto di richiesta XML. La funziona forma un pacchetto di richiesta del tipo Request (vedi sopra), lo convalida, invia una richiesta al Pannello e stampa il pacchetto XML risultante. La funzione verifica il certificato SSL remoto per l autenticazione del server. Se il server non viene autenticato, restituisce false. Private Shared Sub XmlSchemaValidation(ByVal sender As Object, ByVal e As ValidationEventArgs) Gestore di eventi di errore di convalida. Private Shared Sub PrintResult(ByVal document As XmlDocument) La funzione emette il pacchetto di risposta (un oggetto XmlDocument) alla console. L applicazione client può essere avviata dalla riga di comando nel modo seguente: PanelApiRpcClient admin_login admin_passwd c:\requests\request.xml Il pacchetto di richiesta passa al file request.xml: <?xml version= 1.0 encoding= UTF-8?>

80 80 Configurazione tramite le API remote <packet version= > <domain> <add> <gen_setup> <name>example.com</name> <ip_address> </ip_address> </gen_setup> <hosting> <vrt_hst> <property> <name>ftp_login</name> <value>fp16se4fdf0</value> </property> <property> <name>ftp_password</name> <value>qweqwe</value> </property> <ip_address> </ip_address> </vrt_hst> </hosting> </add> </domain> Il pacchetto di risposta ricevuto dal server può apparire nel modo seguente: <?xml version= 1.0?> <packet version= > <domain> <add> <result> <status>ok</status> <id>6</id> <guid>5c0e a bcc0-881d691bfdef</guid> </result> </add> </domain>

81 Configurazione tramite le API remote 81 Questo pacchetto restituisce il risultato dell operazione add e l ID e il GUID del dominio appena creato. Modello di codice Imports System Imports System.Net Imports System.Text Imports System.IO Imports System.Xml Imports System.Xml.Schema Imports System.Security.Cryptography.X509Certificates Imports System.Net.Security Namespace ParallelsPanelApiRpcClient Public Class Request Interfaccia pubblica Public Hostname As String = localhost Public Login As String = admin_login dell Amministratore Public Password As String = admin_setup dell Amministratore Public Protocol As String = Versione RPC di API Nome Host del Pannello Login Password Protocollo della Gestore per ricevere l informazione sulla definizione del tipo di documento (DTD), Schema XML-Data Reduced (XDR) e linguaggio XML Schema definition (XSD) errori di convalida dello schema. Public XmlSchemaValidation As ValidationEventHandler Public ReadOnly Property AgentEntryPoint As String Get Return ( https:// & Me.Hostname & :8443/enterprise/control/agent.php ) End Get End Property Public ReadOnly Property InputValidationSchema As String

82 82 Configurazione tramite le API remote Get Return String.Concat(New String() { https://, Me.Hostname, :8443/schemas/rpc/, Me.Protocol, /agent_input.xsd }) End Get End Property Public ReadOnly Property OutputValidationSchema As String Get Return String.Concat(New String() { https://, Me.Hostname, :8443/schemas/rpc/, Me.Protocol, /agent_output.xsd }) End Get End Property Public Function Send(ByVal packet As XmlDocument) As XmlDocument Dim request As HttpWebRequest = Me.SendRequest(packet.OuterXml) Return Me.GetResponse(request) End Function Public Function Send(ByVal packet As Stream) As XmlDocument Using reader As TextReader = New StreamReader(packet) Return Me.Send(Me.ParseAndValidate(reader, Me.InputValidationSchema)) End Using End Function Public Function Send(ByVal packeturi As String) As XmlDocument Using reader As TextReader = New StreamReader(packetUri) Return Me.Send(Me.ParseAndValidate(reader, Me.InputValidationSchema)) End Using End Function Private interface Sending a request message Private Function SendRequest(ByVal message As String) As HttpWebRequest

83 Configurazione tramite le API remote 83 Dim request As HttpWebRequest = DirectCast(WebRequest.Create(Me.AgentEntryPoint), HttpWebRequest) request.method = POST request.headers.add( HTTP_AUTH_LOGIN, Me.Login) request.headers.add( HTTP_AUTH_PASSWD, Me.Password) request.contenttype = text/xml request.contentlength = message.length Dim bytes As Byte() = New ASCIIEncoding().GetBytes(message) Using stream As Stream = request.getrequeststream stream.write(bytes, 0, message.length) End Using Return request End Function Parsing and validating packet Private Function ParseAndValidate(ByVal xml As TextReader, ByVal schemauri As String) As XmlDocument Dim schemas As New XmlSchemaSet schemas.add(nothing, schemauri) Dim settings As New XmlReaderSettings If (Not Me.XmlSchemaValidation Is Nothing) Then AddHandler settings.validationeventhandler, New ValidationEventHandler(AddressOf Me.XmlSchemaValidation.Invoke) End If settings.validationtype = ValidationType.Schema settings.validationflags = (settings.validationflags Or XmlSchemaValidationFlags.ProcessSchemaLocation) settings.schemas = schemas Dim document As New XmlDocument Using reader As XmlReader = XmlReader.Create(xml, settings) document.load(reader) End Using Return document End Function Private Function GetResponse(ByVal request As HttpWebRequest) As XmlDocument Using response As HttpWebResponse = DirectCast(request.GetResponse, HttpWebResponse)

84 84 Configurazione tramite le API remote Using stream As Stream = response.getresponsestream Using reader As TextReader = New StreamReader(stream) return Me.ParseAndValidate(reader, Me.OutputValidationSchema) End Using End Using End Using End Function End Class Friend Class Program Shared Sub Main(ByVal args As String()) If (args.length < 5) Then Else Console.WriteLine( Usage: PanelApiRpcClient <Hostname> <Login> <Password> <Protocol> <Request> ) Console.WriteLine( ) Console.WriteLine( Host name - The Panel s host name ) Console.WriteLine( Login - Administrator s login ) Console.WriteLine( Password - Administrator s password ) Console.WriteLine( Protocol - API RPC protocol version ) Console.WriteLine( Request - Request file path (*.xml) ) Verifies the remote Secure Sockets Layer (SSL) certificate used for authentication. ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf Program.RemoteCertificateValidation) Dim request As New Request request.xmlschemavalidation = New ValidationEventHandler(AddressOf Program.XmlSchemaValidation) ; request.hostname = args(0) request.login = args(1) admin ;

85 Configurazione tramite le API remote 85 request.password = args(2) setup ; request.protocol = args(3) ; Dim packeturi As String = args(4) request.xml ; Try Program.PrintResult(request.Send(packetUri)) Catch exception As Exception Console.WriteLine( Request error: {0}, exception.message) End Try End If End Sub The following method is invoked by the RemoteCertificateValidationDelegate. Private Shared Function RemoteCertificateValidation(ByVal sender As Object, ByVal certificate As X509Certificate, ByVal chain As X509Chain, ByVal sslpolicyerrors As SslPolicyErrors) As Boolean If (sslpolicyerrors <> SslPolicyErrors.RemoteCertificateNotAvailable) Then Return True End If Return False Console.WriteLine( Certificate error: {0}, sslpolicyerrors) Do not allow this client to communicate with unauthenticated servers. End Function Private Shared Sub XmlSchemaValidation(ByVal sender As Object, ByVal e As ValidationEventArgs) End Class Console.WriteLine( Validation error: {0}, e.message) End Sub Private Shared Sub PrintResult(ByVal document As XmlDocument) Dim w As New XmlTextWriter(Console.Out) w.formatting = Formatting.Indented document.writeto(w) w.flush Console.WriteLine End Sub End Namespace

86 86 Configurazione tramite le API remote Configurazione del Pannello Questa sezione descrive dettagliatamente il modo in cui viene realizzata ogni operazione per la configurazione del Pannello usando le API remote. In questa sezione Inizializzazione del Pannello Installazione della Chiave della Licenza Configurazione DNS Installazione di Certificati SSL Creazione di Domini Creazione di Sottodomini Definizione dei Cataloghi APS Disponibili Installazione di Applicazioni Inizializzazione del Pannello Per inizializzare il Pannello tramite il protocollo RPC di API, invia un pacchetto di richiesta XML con il nodo di operazione smb/initial_setup: <packet version= > <smb> <initial_setup>... </initial_setup> </smb> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta... 90

87 Configurazione tramite le API remote 87 Struttura del Pacchetto di Richiesta Il nodo initial_setup viene strutturato nel modo seguente: password, richiesto Indica la nuova password ell amministratore del Pannello. Tipo di dati: serverpassword (plesk_server.xsd). Stringa da 5 a 14 caratteri. admin_ , richiesto Indica il nuovo indirizzo dell amministratore del Pannello. Tipo di dati: type (common.xsd). Stringa da 3 a 255 caratteri. locale, facoltativo Indica la lingua del Pannello - codice di lingua e cultura che verrà usato nell interfaccia del Pannello.Tipo di dati: string.

88 88 Configurazione tramite le API remote Modelli di Richiesta Un pacchetto di richiesta per inizializzare il Pannello viene rappresentato nel modo seguente: <packet version= > <smb> <initial_setup> <password>p4$$w0rd</password> </initial_setup> </smb> Un pacchetto di richiesta che inizializza il Pannello e imposta il Tedesco (Germania) come lingua predefinita, presenta il successivo formato: <packet version= > <smb> <initial_setup> <password>p4$$w0rd</password> <locale>de-de</locale> </initial_setup> </smb>

89 Configurazione tramite le API remote 89 Struttura del Pacchetto di Risposta Il nodo initial_setup del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. Errori di Operazioni Concrete 1003, Errore di inizializzazione del motore agente. Il Pannello è già stato inizializzato. 1019, Valore non valido. La lingua specificata non è disponibile.

90 90 Configurazione tramite le API remote Modelli di Risposta Una risposta positiva ricevuta dal server presenta questo formato: <packet version= > <smb> <initial_setup> <result> <status>ok</status> </result> </initial_setup> </smb> Si ottiene la successiva risposta negativa se il Pannello è già stato inizializzato. <packet version= > <smb> <initial_setup> <result> <status>error</status> <errcode>1003</errcode> <errtext>initial setup already completed</errtext> </result> </initial_setup> </smb> Se la lingua specificata non è disponibile, la risposta negativa ricevuta presenta questo formato: <packet version= > <smb>

91 Configurazione tramite le API remote 91 <initial_setup> <result> <status>error</status> <errcode>1019</errcode> <errtext>locale en-us2 is not installed on server</errtext> </result> </initial_setup> </smb> Installazione della Chiave della Licenza Per installare una chiave di licenza usando RPC di API, esegui un pacchetto di richiesta XML con il nodo di operazione server/lic_install: <packet version= > <server> <lic_install>... </lic_install> </server> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta... 97

92 92 Configurazione tramite le API remote Struttura del Pacchetto di Richiesta Un pacchetto XML di richiesta che installi una chiave di licenza comprende il nodo di operazione server/lic_install e viene strutturato come riportato in basso: license, richiesto Contiene i dati della chiave di licenza. Tipo di dati: base64. additional_key, facoltativo Indica se la chiave da installare è una chiave aggiuntiva. Tipo di dati: none.

93 Configurazione tramite le API remote 93 Modelli di Richiesta Questo pacchetto installa una chiave di licenza predefinita (principale) per Parallels Small Business Panel per Linux/Unix, con cui il prodotto viene distribuito. <packet version= > <server>

94 94 Configurazione tramite le API remote <lic_install> <license>pd94bwwgdmvyc2lvbj0ims4wiiblbmnvzgluzz0ivvrgltgiid8+ia0klsa8chatc2 1iLXVuaXgtMTA6a2V5IGNvcmU6Zm9ybWF0PSJvcGVuZnVzaW9uLTMiIHhtbG5zOmNvcmU9Imh0d HA6Ly9wYXJhbGxlbHMuY29tL3NjaGVtYXMva2V5cy9jb3JlLzMiIHhtbG5zOnBwLXNtYi11bml4 LTEwPSJodHRwOi8vcGFyYWxsZWxzLmNvbS9zY2hlbWFzL2tleXMvcHJvZHVjdHMvcHAtc21iL3V uaxgvmtaumci+dqotidwhls0gvw5pcxvlihbyb2r1y3qgs2v5ig51bwjlcg0kicatlt4gdqogid xjb3jlomtles1udw1izxigy29yztp0exblpsjzdhjpbmciplnnqi4wmdawmdawmdwvy29yztprz XktbnVtYmVyPiANCi0gPCEtLSBLZXkgdmVyc2lvbg0KICAtLT4gDQogIDxjb3JlOmtleS12ZXJz aw9uignvcmu6dhlwzt0ic3ryaw5nij4wmdawpc9jb3jlomtles12zxjzaw9upianci0gpcetlsb LZXkgZGVzY3JpcHRpb24NCiAgLS0+IA0KLSA8Y29yZTpkZXNjcmlwdGlvbj4NCiAgPGNvcmU6a2 V5dHlwZT5QYXJhbGxlbHMgUGFuZWwgMTAgU01CIEVkaXRpb24gZm9yIFVuaXgvTGludXg8L2Nvc mu6a2v5dhlwzt4gdqogidwvy29yztpkzxnjcmlwdglvbj4nci0gpcetlsbqcm9kdwn0ihdoawno IHRoaXMgbGljZW5zZSBpcyBpbnRlbmRlZCB0byB3b3JrIG9uDQogIC0tPiANCiAgPGNvcmU6cHJ vzhvjdcbjb3jlonr5cgu9inn0cmluzyi+chatc21ilxvuaxg8l2nvcmu6chjvzhvjdd4gdqotid whls0gu3vwcg9ydgvkihbyb2r1y3qgdmvyc2lvbg0kicatlt4gdqogidxjb3jlonzlcnnpb24gy 29yZTp0eXBlPSJzdHJpbmciPjEwLjA8L2NvcmU6dmVyc2lvbj4gDQotIDwhLS0gRGF0ZSBhZnRl cib3agljacb0aglzigxpy2vuc2ugymvjb21lcyb1c2fibgugkgluy2x1c2l2zsknciagls0+ia0 KICA8Y29yZTpzdGFydC1kYXRlIGNvcmU6dHlwZT0iZGF0ZSI+aW5zdGFudDwvY29yZTpzdGFydC 1kYXRlPiANCi0gPCEtLSBEYXRlIGJlZm9yZSB3aGljaCB0aGlzIGxpY2Vuc2UgaXMgdXNhYmxlI ChleGNsdXNpdmUpDQogIC0tPiANCiAgPGNvcmU6ZXhwaXJhdGlvbi1kYXRlIGNvcmU6dHlwZT0i ZGF0ZSI+bmV2ZXI8L2NvcmU6ZXhwaXJhdGlvbi1kYXRlPiANCi0gPCEtLSBVUkwgb2YgdGhlIHN lcnzpy2ugzw5kcg9pbnqgdg8gdxnlihdozw4gcgvyzm9ybwluzybhbibhdxrvdxbkyxrldqogic 0tPiANCiAgPGNvcmU6bGljZW5zZS1zZXJ2ZXItdXJsIGNvcmU6dHlwZT0ic3RyaW5nIj5odHRwc zovl2thlnbhcmfsbgvscy5jb206ntiync94bwxycgm8l2nvcmu6bgljzw5zzs1zzxj2zxitdxjs PiANCi0gPCEtLSBEYXRlIHdoZW4gcHJvZHVjdCB3aWxsIHRyeSB0byBwZXJmb3JtIGFuIGF1dG9 1cGRhdGUNCiAgLS0+IA0KICA8Y29yZTp1cGRhdGUtZGF0ZSBjb3JlOnR5cGU9ImRhdGUiPmluc3 RhbnQ8L2NvcmU6dXBkYXRlLWRhdGU+IA0KICA8Y29yZTp1cGRhdGUtdGlja2V0IGNvcmU6aGlkZ GVuPSJ0cnVlIiBjb3JlOnR5cGU9InN0cmluZyI+LS0tLS0tc21iXzEwX3VuaXhfZGVmYXVsdC0t LS0tLS08L2NvcmU6dXBkYXRlLXRpY2tldD4gDQotIDwhLS0gU01CIFVzZXJzDQogIC0tPiANCiA gphbwlxntyi11bml4ltewonntyi11c2vycybjb3jlonr5cgu9imludgvnzxiipje8l3bwlxntyi 11bml4LTEwOnNtYi11c2Vycz4gDQotIDwhLS0gTnVtYmVyIG9mIGRvbWFpbnMNCiAgLS0+IA0KI CA8cHAtc21iLXVuaXgtMTA6ZG9tYWlucyBjb3JlOnR5cGU9ImludGVnZXIiPjE8L3BwLXNtYi11 bml4ltewomrvbwfpbnm+ia0klsa8is0tiefiawxpdhkgdg8gdxnlifnwyw1bc3nhc3npbg0kica tlt4gdqogidxwcc1zbwitdw5pec0xmdpzcgftyxnzyxnpbi1zdxbwb3j0ignvcmu6dhlwzt0iym 9vbGVhbiI+dHJ1ZTwvcHAtc21iLXVuaXgtMTA6c3BhbWFzc2FzaW4tc3VwcG9ydD4gDQotIDwhL S0gQVBTIEFwcGxpY2F0aW9uDQogIC0tPiANCiAgPHBwLXNtYi11bml4LTEwOmFwcy1hcHAgY29y ZTp0eXBlPSJzdHJpbmciPmh0dHA6Ly93d3cubWFnaWNzcGFtLmNvbS88L3BwLXNtYi11bml4LTE womfwcy1hcha+ia0klsa8is0tiefquybbchbsawnhdglvbg0kicatlt4gdqogidxwcc1zbwitdw 5peC0xMDphcHMtYXBwIGNvcmU6dHlwZT0ic3RyaW5nIj5odHRwOi8vd3d3LnBpbm5hY2xlY2Fyd C5jb20vPC9wcC1zbWItdW5peC0xMDphcHMtYXBwPiANCi0gPCEtLSBBUFMgQXBwbGljYXRpb24N CiAgLS0+IA0KICA8cHAtc21iLXVuaXgtMTA6YXBzLWFwcCBjb3JlOnR5cGU9InN0cmluZyI+aHR 0cHM6Ly93d3cua2VlcGl0LmNvbS91bmxpbWl0ZWQ8L3BwLXNtYi11bml4LTEwOmFwcy1hcHA+IA 0KLSA8IS0tIEFQUyBBcHBsaWNhdGlvbg0KICAtLT4gDQogIDxwcC1zbWItdW5peC0xMDphcHMtY XBwIGNvcmU6dHlwZT0ic3RyaW5nIj5odHRwOi8vd3d3LnN5bWFudGVjLmNvbS9ub3J0b24vaW50 ZXJuZXQtc2VjdXJpdHk8L3BwLXNtYi11bml4LTEwOmFwcy1hcHA+IA0KLSA8IS0tIEFQUyBBcHB sawnhdglvbg0kicatlt4gdqogidxwcc1zbwitdw5pec0xmdphchmtyxbwignvcmu6dhlwzt0ic3 RyaW5nIj5odHRwOi8vd3d3LmludGVyc3BpcmUuY29tL2VtYWlsbWFya2V0ZXIvPC9wcC1zbWItd W5peC0xMDphcHMtYXBwPiANCi0gPCEtLSBBUFMgQXBwbGljYXRpb24NCiAgLS0+IA0KICA8cHAt c21ilxvuaxgtmta6yxbzlwfwccbjb3jlonr5cgu9inn0cmluzyi+ahr0cdovl3d3dy5pbnrlcnn waxjllmnvbs9rbm93bgvkz2vtyw5hz2vylzwvchatc21ilxvuaxgtmta6yxbzlwfwcd4gdqotid xkc2lnolnpz25hdhvyzsb4bwxuczpkc2lnpsjodhrwoi8vd3d3lnczlm9yzy8ymdawlza5l3htb GRzaWcjIj4NCi0gPGRzaWc6U2lnbmVkSW5mbz4NCiAgPGRzaWc6Q2Fub25pY2FsaXphdGlvbk1l dghvzcbbbgdvcml0ag09imh0dha6ly9wyxjhbgxlbhmuy29tl3njagvtyxmva2v5cy9jb3jllzm jy2fub25py2fsaxpliiavpianciagpgrzawc6u2lnbmf0dxjltwv0ag9kiefsz29yaxrobt0iah R0cDovL3d3dy53My5vcmcvMjAwMS8wNC94bWxkc2lnLW1vcmUjcnNhLXNoYTI1NiIgLz4gDQotI Dxkc2lnOlJlZmVyZW5jZSBVUkk9IiI+DQotIDxkc2lnOlRyYW5zZm9ybXM+DQogIDxkc2lnOlRy YW5zZm9ybSBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDEvUkVDLXhtbC1jMTR ultiwmdewmze1i1dpdghdb21tzw50cyiglz4gdqogidxkc2lnolryyw5zzm9ybsbbbgdvcml0ag 09Imh0dHA6Ly9wYXJhbGxlbHMuY29tL3NjaGVtYXMva2V5cy9jb3JlLzMjdHJhbnNmb3JtIiAvP ianciagpc9kc2lnolryyw5zzm9ybxm+dqogidxkc2lnokrpz2vzde1ldghvzcbbbgdvcml0ag09

95 Configurazione tramite le API remote 95 Imh0dHA6Ly93d3cudzMub3JnLzIwMDEvMDQveG1sZW5jI3NoYTI1NiIgLz4gDQogIDxkc2lnOkR pz2vzdfzhbhvlplrruzk2ynlycepvdtvputdibkhzyuhhmtira2lpymzhrxbymc9twu5iv2m9pc 9kc2lnOkRpZ2VzdFZhbHVlPiANCiAgPC9kc2lnOlJlZmVyZW5jZT4NCiAgPC9kc2lnOlNpZ25lZ EluZm8+DQogIDxkc2lnOlNpZ25hdHVyZVZhbHVlPmZvcUxYVFErTWhRUm44Y2NzSmdoU1ZhNUJU Vi9kaUtaVGJjdk9qUnBXcW5XaDlXei9NQmFKY0pDNnFnZUNkMHJ4OFZsWERxcm0yVUYgS1I1d0d WeFM1ZSt6NWNqREFEcVUyRStGOXRaUndubXRuamZ4dHV0THZibjVyS0FYc1VtWTQ2OU1EcjNQeF RYbi9mYjZycmpvbGZOOCBOWVE1WUVtMDkyd3IrWTg2TGNIVkhKM2ZXK01sQWd3WXpua0lzdFVQS E1JMVVkYlgwZWkvWTFmcStSc0dSSnNhZ2dRNW56MzgralV5IFRvUDBRK2VrUnAxcUFVa09OWUYy M21FT1FuQ2V5eFNqQ3FrejNyZEhkaVFFQTBKcmhYMGowYWZYWDJkL2JRUnZVeU93UFBsVWhzNU4 gy3fjcndrrddmq0lsoe9udk5fafrrnfo0ogdam1zirzj2bitpvgc9ptwvzhnpzzptawduyxr1cm VWYWx1ZT4gDQotIDxkc2lnOktleUluZm8+DQotIDxkc2lnOlg1MDlEYXRhPg0KICA8ZHNpZzpYN TA5Q2VydGlmaWNhdGU+TUlJRW5EQ0NBb1FDQVJFd0RRWUpLb1pJaHZjTkFRRUZCUUF3Z2FZeEN6 QUpCZ05WQkFZVEFrSk5NUXN3Q1FZRFZRUUlFd0pJVFRFUiBNQThHQTFVRUJ4TUlTR0Z0YVd4MGI ynhhirefhqmdovkjbb1rfmu5yyzi5bwrdqklimnhryvc1bmn5qk1kr1f4sfrbykjntlzcqxnuie ZFbHVkR1Z5Ym1Gc0lFUmxkbVZzYjNCdFpXNTBNUnd3R2dZRFZRUURFeE5MUVNCeWIyOTBJR05sY 25ScFptbGpZWFJsTVJ3d0dnWUogS29aSWh2Y05BUWtCRmcxcllVQnpkM052Wm5RdVkyOXRNQjRY RFRBNU1EWXdNakEyTURrek0xb1hEVE0yTVRBeE9EQTJNRGt6TTFvdyBnWUF4Q3pBSkJnTlZCQVl UQWtKTk1Rc3dDUVlEVlFRSUV3SklUVEVSTUE4R0ExVUVCeE1JU0dGdGFXeDBiMjR4SERBYUJnTl ZCQW9UIEUxTlhjMjltZENCSWIyeGthVzVuY3lCTWRHUXhIVEFiQmdOVkJBc1RGRWx1ZEdWeWJtR nnjrvjszg1wc2izqnravzuwtvjrd0vnwuqgvlfrrev3dhdjqzf6yldjdgrxnxblrendqvnjd0rr WUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFNYzR0RWVhRFMzciBDS0sxQ1RaUm9 amtdgvzu5z0tbbtloqmt6v3zwzw9vm0lnzu5smtmrdws0my9lyw1eqknhztbtqnnwb05vwjerwd k3rxvgyzb4b2rvigg0nvgrrunizk5kme1adzvrsfljwwf1m2kxsvbbakzmdm5dce52zxc1whpxq zcwz0xlenznawxrbwxtywplsefel0evmghzyki0adkgevdxntzpcdrit1hutdvkn0nzv1jhevrs afv1mnfpbjz2y2o3q2rkb05oewhrddjtylarndlvmxfjdjmvofz3ynzrmzzhtvltvlblmsbhrk5 0MlE3RkhKUUxicW1pY1doL0JBWkpjU2FGMWlPSUhuZ2VIbG9uSGptbzdJWUEvSXcyTUZMT0dPam 82Kzg2M0dUbDJUOXA0dGxGIHZHNWhOMWFpNHkybDdOVzFTczhVT1JSclVlMENBd0VBQVRBTkJna 3Foa2lHOXcwQkFRVUZBQU9DQWdFQUgrcnFFdkhNdEFRaStWOHEgSDdFM3VSRk8xaVA1QzBVejlD QVdMZ0QyNWthWTlSaUV1K1ZNcGtyZ2RwMkRKZUxIaWd5Q3MyM3dUbkZ6SS9qMUJNRjJ1VGdKS1B 6MiBSOTA2YVcyR0tJWWpIencvd3BmUDUxck9CWTVQNlhpdXNtM2NGdk8zTnJ4Z0hJSy9WV3N5WW 1EN25mMksyZUptQmsvZU85TklaalBoIGRkS2NrYmNZRVhRN3dzd2l0dDlYcTFuckg2eFNXT1lIV UUwcHI0QW1jVXc3TDdRQVUzdDBVM0lIQzNHYmVyVE1RNERSL2xDTFV5a24gUkl3aDNKQXZkYVFJ ZnA2TW9yNkY0VWtrMWh2bzkwVTR1VHFEbXc4RFJHcVRoOCtPUEY1V1dTL0MyK0o0bThOWTNDWjZ pa3fic0fpccb5si9ur1pqu3cvdhc4n0xmwhbmmzjhrkflcgpjogc1mkzuc3yzvdlwdjrhd0q2v0 hhyu1dnuvsl21xswplse5plytptk5hbkdhbhjxihvlq1p2ukthenjrnjv4bhiyeeovtxftwdv3c WdTK3R5SE1XY3BwVFpZdmF6cXZtZFRUbllNWlhwd1M1YWxqQlAwb3FWd09wVDFLUksgY0o3bXVa YzNUWlJ1OHY0b2pWa1dWTlF2QVNUUFNsdXFkcW42RFdwV2V3UEQ0ZXg3c2ZJam52N1phWmtZV2t PL3VDam9SeE4wbmFtVSBlVk5QemZSNXJ5emVjalozb0g0L1NXTGFYeHFiQ2k0QzBjMFlVeTZBMk ZkejVKK3RwWUdFbkVFMENpcDFyRjVnMFJhMURBZXV4ZFFaIEMwang3NlNsQ1VjSWhGQ0p4RmRxM k5jmhzjvnlvntl6r2nry3e3wvzzvlj2cznvc2crb1pnrtbkbtfjptwvzhnpzzpynta5q2vydglm awnhdgu+ia0kica8l2rzawc6wduwourhdge+dqogidwvzhnpzzplzxljbmzvpg0kica8l2rzawc 6U2lnbmF0dXJlPg0KICA8L3BwLXNtYi11bml4LTEwOmtleT4=</license> </lic_install> </server> Questo pacchetto di richiesta installa una chiave di licenza aggiuntiva. Tieni presente che il contenuto del nodo license è un codice base64 ma non è una chiave di licenza. Quindi, l esecuzione di questo pacchetto di richiesta causerà l errore <packet version= > <server> <lic_install> <license>tgv0ihvzigp1c3qgchjldgvuzcb0agf0ihroaxmgaxmgysbqyxjhbgxlbhmgugfuzw wgbgljzw5zzsbrzxkuck9mignvdxjzzswgd2ugy291bgqgbm90igluy2x1zgugysbyzwfsigxpy 2Vuc2Uga2V5IGluIHRoZSBkb2N1bWVudGF0aW9uLgpUaGFuayB5b3UgZm9yIHVuZGVyc3RhbmRp bmcu</license> <additional_key/>

96 96 Configurazione tramite le API remote </lic_install> </server> Struttura del Pacchetto di Risposta Il nodo lic_install del pacchetto di risposta presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: unsignedint. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string.

97 Configurazione tramite le API remote 97 Modelli di Risposta Una risposta positiva ricevuta dal server presenta questo formato: <packet version= > <server> <lic_install> <result> <status>ok</status> </result> </lic_install> </server> Si ottiene questo errore se il pacchetto di richiesta ha provato ad installare una chiave di licenza non valida. <packet version= > <server> <lic_install> <result> <status>error</status> <errcode>1020</errcode> <errtext>the uploaded key file is not valid or does not contain a license key.</errtext> </result> </lic_install> </server>

98 98 Configurazione tramite le API remote Configurazione DNS Per configurare il servizio DNS del Pannello tramite il protocollo RPC di API, usa l operatore dns come viene descritto più avanti. In questa sezione Disattivare il Servizio DNS Cambiare il Modello di Registro SOA Configurazione dei Modelli di Registro delle Risorse Disattivare il Servizio DNS Per disattivare il servizio DNS del Pannello usando il protocollo RPC di API, esegui un pacchetto di richiesta XML contenente il nodo di operazione dns/disable: <packet version= > <dns> <disable/> </dns> In questa sezione Pacchetto di Richiesta Pacchetto di Risposta Pacchetto di Richiesta Questo pacchetto di richiesta disabilita il servizio DNS: <packet version= > <dns> <disable/> </dns>

99 Configurazione tramite le API remote 99 Pacchetto di Risposta Il nodo disable del pacchetto XML di output presenta la seguente struttura: Modello result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. Una risposta positiva presenta questo formato: <packet version= > <dns> <disable> <result> <status>ok</status> </result> </disable> </dns>

100 100 Configurazione tramite le API remote Cambiare il Modello di Registro SOA Per configurare un nuovo modello di recotd SOA, esegui un pacchetto di richiesta XML contenente il nodo di operazione dns/set: <packet version= > <dns> <set>... </set> </dns> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta Struttura del Pacchetto di Richiesta Per configurare un nuovo modello di recotd SOA, esegui un pacchetto di richiesta XML contenente il nodo di operazione dns/set e la seguente struttura:

101 Configurazione tramite le API remote 101 soa, richiesto Indica i parametri SOA. Tipo di dati: SOAType (plesk_dns.xsd). ttl, facoltativo Indica il valore del parametro ttl. Il Pannello imposta il valore predefinito per un giorno. Tipo di dati: unsignedint. refresh, facoltativo Indica il valore del parametro refresh. Il Pannello imposta il valore predefinito per tre ore. Tipo di dati: unsignedint. retry, facoltativo Indica il valore del parametro retry. Il Pannello imposta il valore predefinito per un ora. Tipo di dati: unsignedint. expire, facoltativo Indica il valore del parametro expire. (Valore a 32-bit firmato in secondi.) Il Pannello imposta il valore predefinito per una settimana. Tipo di dati: unsignedint. minimum, facoltativo Modelli di Richiesta Indica il valore del parametro minimum. Il Pannello imposta il valore predefinito per tre ore. Tipo di dati: unsignedint. Questo pacchetto aggiorna un modello di record SOA in modo che imposti l intervallo TTL a 32 ore, l intervallo Refresh a 6 ore e l intervallo Retry a 15 minuti e lasci i valori predefiniti del Pannello per gli intervalli Expire e Minimum. <packet version= > <dns> <set> </set> <soa> </dns> <ttl>115200</ttl> <refresh>21600</refresh> <retry>900</retry> </soa>

102 102 Configurazione tramite le API remote Struttura del Pacchetto di Risposta Il nodo set del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string.

103 Configurazione tramite le API remote 103 Modelli di Risposta La risposta positiva dal server presenta questo formato: <packet version= > <dns> <set> <result> <status>ok</status> </result> </set> </dns> Se viene specificato un valore troppo lungo, si riceve la successiva risposta negativa. Pacchetto di Richiesta <packet version= > <dns> <set> </set> <soa> </dns> <refresh> </refresh> </soa> Pacchetto di Risposta <packet version= > <system> <status>error</status> <errcode>1014</errcode> <errtext>parser error: Request is invalid</errtext> </system>

104 104 Configurazione tramite le API remote Configurazione dei Modelli di Registro delle Risorse Con l utilizzo del protocollo RPC di API puoi modificare i registri delle risorse nel modello della zona DNS nel modo seguente: aggiungendo nuovi registri di risorse rimuovendo registri di risorse esistenti (è possibile ripristinare la lista di RR presenti nel modello) In questa sezione Aggiungi Modelli RR Ripristino dell Informazione sul Modello della Zona DNS Rimozione di un Modello RR Aggiungi Modelli RR Per aggiungere un modello per un registro di risorsa della zona DNS, esegui un pacchetto di richiesta XML con il nodo di operazione dns/add-rec: <packet version= > <dns> <add_rec>... </add_rec> </dns> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta

105 Configurazione tramite le API remote 105 Struttura del Pacchetto di Richiesta Un pacchetto XML di richiesta che aggiunge un nuovo registro DNS al modello della Zona DNS comprende il nodo di operazione dns/add_rec, rappresentato dal tipo dnsrecord (plesk_dns.xsd) con la seguente struttura: type, richiesto Indica il tipo di registro DNS. Tipo di dati: string. Valori consentiti: A NS CNAME MX PTR TXT SOA AXFR SRV. host, richiesto Indica il nome dell host a cui viene applicata l impostazione del registro. Tipo di dati: string. value, richiesto Indica il valore che verrà collegato al valore host. Tipo di dati: string. Il valore contiene i segnaposti <domain> o <ip> che verranno sostituiti dall indirizzo IP reale/nome host quando il file della zona DNS verrà creato dopo la creazione del dominio. opt, facoltativo Contiene informazioni aggiuntive sul registro DNS. Tipo di dati: string. Nota: Nel caso di un registro SRV, il nodo opt può contenere un codice XML aggiuntivo con il seguente formato:<srv Protocol= Port= Priority= Weight= />. È possibile aggiungere registri DNS multipli usando un singolo pacchetto. Aggiungi tante operazioni <add-rec> quanti sono i registri DNS che vuoi aggiungere. <dns> <add_rec>... </add_rec>... <add_rec>... </add_rec> </dns>

106 106 Configurazione tramite le API remote Modelli di Richiesta Modello di registro NS <packet version= > <dns> </dns> <add_rec> <type>ns</type> <host/> <value>ns.<domain></value> </add_rec> La zona DNS creata dopo la creazione del dominio example.com conterrà il successivo RR: example.com. NS ns.example.com. il che rende ns.example.com lo stesso server di nomi per l host example.com. Questo pacchetto di richiesta aggiunge al modello della zona DNS un registro che rende provider-dns-server.example.com un server di nomi per un dominio. <packet version= > <dns> <add_rec> <type>ns</type> <host/> <value>provider-dns-server.example.com</value> </add_rec> </dns> Modello di registro A <packet version= > <dns> <add_rec> <type>a</type> <host>mail</host>

107 Configurazione tramite le API remote 107 </dns> <value><ip></value> </add_rec> La zona DNS creata dopo la creazione del dominio example.com (ospitato sull IP ) conterrà il successivo RR: mail.example.com. A che definisce l indirizzo IP per l host mail.example.com. Modello di registro CNAME <packet version= > <dns> <add_rec> <type>cname</type> <host>www</host> <value>ns.<domain></value> </add_rec> </dns> La zona DNS creata dopo la creazione del dominio example.com conterrà il successivo RR: www NS ns il che rende ns.example.com un alias per Modello di registro MX <packet version= > <dns> <add_rec> <type>mx</type> <host/> <value>exchange.<domain></value> <opt>0</opt> </add_rec> </dns> La zona DNS creata dopo la creazione del dominio example.com conterrà il successivo RR:

108 108 Configurazione tramite le API remote example.com. MX 0 exchange.example.com. che rende mail.example.com il server di posta principale per il dominio example.com. Modello di registro PTR <packet version= > <dns> <add_rec> <type>ptr</type> <host><ip></host> <value>community</value> <opt>24</opt> </add_rec> </dns> La zona DNS creata dopo la creazione del dominio example.com (ospitato sull IP ) conterrà il successivo RR: /24 PTR community.example.com che rende il dominio community.example.com il nome a dominio puntatore per la sottorete /24. Modello di registro TXT <packet version= > <dns> <add_rec> <type>txt</type> <host>about</host> <value>delivered by the best provider</value> </add_rec> </dns> La zona DNS creata dopo la creazione del dominio example.com conterrà il successivo RR: about TXT Delivered by the best provider che aggiunge una descrizione testuale Delivered by the best provider al dominio about.example.com.

109 Configurazione tramite le API remote 109 Modello di registro SRV <packet version= > <dns> <add_rec> <type>srv</type> <host>_ldap._tcp</host> <value> </value> <opt> </opt> </add_rec> </dns> La zona DNS creata dopo la creazione del dominio example.com conterrà il successivo RR: _LDAP._tcp SRV che fa che un client del servizio LDAP sul dominio example.com realizzi una ricerca SRV di Aggiungi record multipli Il seguente pacchetto di richiesta aggiunte tutti i record dai modelli summenzionati alla volta: <packet version= > <dns> <add_rec> <type>ns</type> <host/> <value>ns.<domain></value> </add_rec> <add_rec> <type>ns</type> <host/> <value>provider-dns-server.example.com</value> </add_rec> <add_rec> <type>a</type> <host>mail</host>

110 110 Configurazione tramite le API remote <value><ip></value> </add_rec> <add_rec> <type>cname</type> <host>www</host> <value>ns.<domain></value> </add_rec> <add_rec> <type>mx</type> <host/> <value>exchange.<domain></value> <opt>0</opt> </add_rec> <add_rec> <type>ptr</type> <host><ip></host> <value>community</value> <opt>24</opt> </add_rec> <add_rec> <type>txt</type> <host>about</host> <value>delivered by the best provider</value> </add_rec> <add_rec> <type>srv</type> <host>_ldap._tcp</host> <value> </value> <opt> </opt> </add_rec> </dns>

111 Configurazione tramite le API remote 111 Struttura del Pacchetto di Risposta Il nodo add_rec del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. id, rechiesto se l operazione è riuscita Restituisce l identificatore univoco del record DNS appena aggiunto. Tipo di dati: integer.

112 112 Configurazione tramite le API remote Modelli di Risposta Una risposta positiva presenta questo formato: <packet version= > <dns> <add_rec> <result> <status>ok</status> <id>17</id> </result></add_rec> </dns> Una risposta negativa di questo tipo ha origine nel caso in cui un pacchetto di richiesta abbia specificato dei valori non validi per il RR aggiunto (nel nostro esempio, non si capisce né viene correttamente indicato l host per il record SRV): Pacchetto di Richiesta <packet version= > <dns> <add_rec> <type>srv</type> <host>_ldap._tcp.ldap.domain-test tst.</host> <value> </value> <opt> </opt> </add_rec> </dns> Pacchetto di Risposta <packet version= > <dns> <add_rec> <result> <status>error</status>

113 Configurazione tramite le API remote 113 <errcode>1019</errcode> <errtext>incorrect DNS record values were specified.</errtext> </result> </add_rec> </dns> Ripristino dell Informazione sul Modello della Zona DNS Per ripristinare l informazione sui registri delle risorse nel modello della zona DNS, esegui il pacchetto XML con il nodo di operazione dns/get_rec: <packet version= > <dns> <get_rec> <filter/> <template/> </get_rec> </dns> In questa sezione Struttura del Pacchetto di Risposta Modelli di Risposta

114 114 Configurazione tramite le API remote Struttura del Pacchetto di Risposta Il nodo get_rec del pacchetto XML di output presenta la seguente struttura:

115 Configurazione tramite le API remote 115 result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. id, rechiesto se l operazione è riuscita Restituisce l identificatore univoco del registro DNS. Tipo di dati: integer. data, richiestose l operazione è riuscita. Contiene una raccolta dei dati dei registri delle risorse. type, richiesto Indica il tipo di registro DNS. Tipo di dati: string. Valori consentiti: A NS CNAME MX PTR TXT SOA AXFR SRV. host, richiesto Indica il nome dell host usato dal DNS. Tipo di dati: string. value, richiesto Indica il valore collegato al valore host. Tipo di dati: string. Il valore contiene i segnaposti <domain> o <ip> che verranno sostituiti dall indirizzo IP reale/nome host quando il file della zona DNS verrà creato dopo la creazione del dominio. opt, facoltativo Contiene informazioni aggiuntive sul registro DNS. Tipo di dati: string.

116 116 Configurazione tramite le API remote Modelli di Risposta Nel caso in cui il modello della zona DNS non contenga un record di una singola risorsa, si riceve la successiva risposta: Pacchetto di Richiesta <packet version= > <dns> <get_rec> <filter/> <template/> </get_rec> </dns> Pacchetto di Risposta <packet version= > <dns> <get_rec/> </dns> La successiva risposta contiene una descrizione del modello della zona DNS del Pannello in modo predefinito: Pacchetto di Richiesta <packet version= > <dns> <get_rec> <filter/> <template/> </get_rec> </dns> Pacchetto di Risposta <packet version= >

117 Configurazione tramite le API remote 117 <dns> <get_rec> <result> <status>ok</status> <id>1</id> <data> <type>ns</type> <host><domain>.</host> <value>ns.<domain>.</value> <opt/> </data> </result> <result> <status>ok</status> <id>2</id> <data> <type>a</type> <host>ns.<domain>.</host> <value><ip></value> <opt/> </data> </result> <result> <status>ok</status> <id>3</id> <data> <type>a</type> <host><domain>.</host> <value><ip></value> <opt/> </data> </result> <result> <status>ok</status> <id>4</id>

118 118 Configurazione tramite le API remote <data> <type>a</type> <host>webmail.<domain>.</host> <value><ip></value> <opt/> </data> </result> <result> <status>ok</status> <id>5</id> <data> <type>mx</type> <host><domain>.</host> <value>mail.<domain>.</value> <opt>10</opt> </data> </result> <result> <status>ok</status> <id>6</id> <data> <type>a</type> <host>mail.<domain>.</host> <value><ip></value> <opt/> </data> </result> <result> <status>ok</status> <id>7</id> <data> <type>cname</type> <host>ftp.<domain>.</host> <value><domain>.</value> <opt/> </data> </result>

119 Configurazione tramite le API remote 119 <result> <status>ok</status> <id>8</id> <data> <type>ptr</type> <host><ip> / 24</host> <value><domain>.</value> <opt>24</opt> </data> </result> </get_rec> </dns> Rimozione di un Modello RR Per rimuovere un RR dal modello della zona DNS, esegui un pacchetto XML contenente il nodo di operazione dns/del_rec: <packet version= > <dns> <del_rec>... </del_rec> </dns> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta

120 120 Configurazione tramite le API remote Struttura del Pacchetto di Richiesta Un pacchetto SML di richiesta che elimini un registro DNS comprende il nodo di operazione del_rec con la seguente struttura: filter, richiesto Specifica il ruolo del filtro. Tipo di dati: dnsselectionfiltertype (dns_input.xsd). Se lasciato in bianco (<filter/>), tutti i modelli del registro vengono eliminati. id, facoltativo Indica l ID del modello di registro della risorsa da eliminare. Tipo di dati: id_type (common.xsd). template, richiesto Indica che i modelli di un registro sono eliminati. Tipo di dati: none.

121 Configurazione tramite le API remote 121 Modelli di Richiesta Questo pacchetto di richiesta elimina il registro con ID 7 dal modello della zona DNS. <packet version= > <dns> <del_rec> <filter> <id>7</id> </filter> <template/> </del_rec> </dns> Questo pacchetto elimina i registri con ID 1-5 dal modello della zona DNS. <packet version= > <dns> <del_rec> <filter> <id>1</id> <id>2</id> <id>3</id> <id>4</id> <id>5</id> </filter> <template/> </del_rec> </dns> Questo pacchetto rimuove tutti i registri dal modello della zona DNS: <packet version= > <dns> <del_rec> <filter/>

122 122 Configurazione tramite le API remote <template/> </del_rec> </dns> Struttura del Pacchetto di Risposta Il nodo del_rec del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. id, rechiesto se l operazione è riuscita Restituisce l identificatore univoco del registro DNS rimosso. Tipo di dati: integer.

123 Configurazione tramite le API remote 123 Modelli di Risposta La risposta positiva ricevuta dal server presenta questo formato (la rimozione dei registri del modello della zona DNS è riuscita): Pacchetto di Richiesta <packet version= > <dns> <del_rec> <filter/> <template/> </del_rec> </dns> Pacchetto di Risposta <packet version= > <dns> <del_rec> <result> <status>ok</status> <id>1</id> </result> <result> <status>ok</status> <id>2</id> </result> <result> <status>ok</status> <id>3</id> </result> <result> <status>ok</status> <id>4</id> </result>

124 124 Configurazione tramite le API remote <result> <status>ok</status> <id>5</id> </result> <result> <status>ok</status> <id>6</id> </result> <result> <status>ok</status> <id>7</id> </result> <result> <status>ok</status> <id>8</id> </result> <result> <status>ok</status> <id>9</id> </result> <result> <status>ok</status> <id>10</id> </result> <result> <status>ok</status> <id>11</id> </result> <result> <status>ok</status> <id>12</id> </result> </del_rec> </dns>

125 Configurazione tramite le API remote 125 Una risposta negativa di questo tipo si verifica quando il registro specificato per la rimozione non esiste: Pacchetto di Richiesta <packet version= > <dns> <del_rec> <filter> <id>1</id> <id>2</id> <id>3</id> <id>4</id> <id>5</id> </filter> <template/> </del_rec> </dns> Pacchetto di Risposta <packet version= > <dns> <del_rec> <result> <status>error</status> <errcode>1013</errcode> <errtext>dns record does not exist.</errtext> <id>1</id> </result> <result> <status>error</status> <errcode>1013</errcode> <errtext>dns record does not exist.</errtext> <id>2</id> </result>

126 126 Configurazione tramite le API remote </result> <result> <status>error</status> <errcode>1013</errcode> <errtext>dns record does not exist.</errtext> <id>3</id> </result> <result> <status>error</status> <errcode>1013</errcode> <errtext>dns record does not exist.</errtext> <id>4</id> </result> <result> <status>error</status> <errcode>1013</errcode> <errtext>dns record does not exist.</errtext> <id>5</id> </del_rec> </dns>

127 Configurazione tramite le API remote 127 Installazione di Certificati SSL Per installare un certificato SSL, esegui un pacchetto di richiesta XML contenente il nodo di operazione certificate/install : <packet version= > <certificate> <install> </install> </certificate> In questa sezione Struttura del Pacchetto di Richiesta Modello di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta Struttura del Pacchetto di Richiesta Il nodo install del pacchetto XML di richiesta presenta la seguente struttura:

128 128 Configurazione tramite le API remote name, richiesto Indica il nome con cui il certificato verrà mostrato nel Pannello. Tipo di dati: string. admin, richiesto Indica che il certificato è stato importato all archivio del server. Tipo di dati: none. content, richiesto Contiene tutti i dati che costituiscono il certificato. Tipo di dati: none. csr, richiesto Indica il CSR del certificato (Richiesta di Firma del Certificato). Tipo di dati: string. pvt, richiesto Indica la chiave privata del certificato. Tipo di dati: string. cert, facoltativo Contiene il corpo del certificato. Tipo di dati: string. ca, facoltativo Contiene il corpo dell autorità del certificato. Tipo di dati: string. ip_address, richiesto Indica l indirizzo IP al quale verrà assegnato il certificato. Tipo di dati: ip_type (common.xsd).

129 Configurazione tramite le API remote 129 Modello di Richiesta Questo pacchetto installa un certificato CA che verrà mostrato nel Pannello sotto il nome common, e che verrà assegnato all indirizzo IP <packet version= > <certificate> <install> <name>common</name> <admin/> <content> <csr>-----begin CERTIFICATE REQUEST----- MIICwTCCAakCAQAwfDELMAkGA1UEBhMCVVMxEDAOBgNVBAgTB2dlb3JnaWExEDAO BgNVBAcTB0F0bGFudGExEjAQBgNVBAoTCURvZSwgTHRkLjEUMBIGA1UEAxMLam9o bmrvzs5vcmcxhzadbgkqhkig9w0bcqewegpkb2vaam9obmrvzs5vcmcwggeima0g CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7AQlX0pXqCs61ZUZ28zJ9PAG0yxvV 2pJnJTMqrudyi/3vV8IZrBUUWMthf7tQmMSSyZWAqM+7n4Q9Y4f5WuR+3ReM5kxC hbqnorjpdumv1+zhb9q21ufa5eeptydm/lr2jajpkjd078rh76pvzm3esjml3+ue 3Dg0DeKDelDKa4SYzW1JJnoen4UXX37lIHdBnIj+NCQbHRSiGD6w6mMyiCMOzXCp SBiGXgRRcaOVl50OeAdVKkwpJaae1K7K3q9j/LkAlOa1C8kuwdaCtKC+jFCE72I0 Q8TnIn7ahPy0yd2EgzZ42Ys8D3PziqGax8I/e6BbEOfzi0n1HD9GCzaPAgMBAAGg ADANBgkqhkiG9w0BAQQFAAOCAQEAhoSVmInXLQDJu8jrZTVvFUx6O6aHOUkUf/G8 Wnc2x7w+Qo7XHMHVDCUcP3K+bEw9oKxfpvRXP9XTVhX2jABHrxywLyjg4cXwaUgR t7ulvplq0sum5xntbypadsqzz7ktaa6q3omafndy8yg9j/l2zlcl9jjzlaunrwzn fmbn9ip3pcc8n9of9+pfpxgvhtlc1o27w9wj0rdk3hf6rg37qcujsnn6xxob41q8 ZZbX2Vbskz0WJ1IcxsfWDJ/HFdho7GrrD/wujNpwkTPc3xe2AHcfQX8c/92xyra/ kdzxsddfd7iwa5bbwgm8qwll9ywudpiz8vsgw96d/qije9uvka== -----END CERTIFICATE REQUEST-----</csr> <pvt>-----begin RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAyxfczy4HqgwOI6yxEa+dLaMLe5zC0ijcawsha8oFtJlxv/DM 9INpdKjv9HaInrR0StjG9HgqTpYrhOCJxeB07/gGsQ82xsvbcKANuCSQKInpwVim GUsisGNrfnbKIoAewN21ENCZQrufcQNWNzTx/GjVCXqa/Sy4pXJ6Jud0dzA/+Vis SBw5Oo4IqI2MDvuoDk+exQLdgM45Vgq4d3A9+ESzmRmjmdovhNxnXdvMxA5RSrF+ GZlBTFftsLQsnfnNiMR6ZTFgNCt2vdDmUAV9iix2B1PuoH94TRCJRG5tVCFtfVzS Rjo4ZzoiUs57efb3Oe56Lb64Ubi9ZRzNhdkGLwIDAQABAoIBABJdOAQr31mK+YRU SzaUMJw9z/3/cMZcF4I+YWlDvTxVW6nFdmLttw1rcTcjuLrRCmryKxtT+k9c2NaN DygrYaeJP+GmxIc5S8BlWJg8BiUEQ3TONUa4OozEkKXAzApOl3lNEuBQXGtiV8p6 SMN5MCBowkq3IWifMJsVPOJjr25Pby04HCPeeM+cnEiPnMrBjK4OGH8/pKqedf05 EcjnFKGFP2G0BUEhLX7ooMhB+AbjoIbGFXlBIzhaofs8zzSjNkKJ9i4LQMEe0GDf zcge4gehw+fdculhg1zo7fojc0ldvur4deomzainriwdwxbokvwgsenm20yxydcl t+dsreecgyea+snpkzdqc0vf6me6wo8eqmu6abpjobknw0i8+g8ndrkmcjq8fexd +D447fCMORUdqGFH8aMWDp392z4JX3+ksSN9XtyEEKB3fsknENsDZKVJvh9U+gUD DO12mC1PleQBHBjN7Wlsg4mPZNv3cxUQLhFU0qW/moQdy0JrDfv+51ECgYEAz1Ww OJolOjKhPkGxiDY9sh95E/rpuwkGjb0qiS/UFHHuLc9pDYHyKRpPggdT4nEuBz34 crpihmgxbkezuxgepvdist0aobowcqfy4haj8ps08rzupcjsk413gyei/ckxacqk byyhlkseavrcmmfc98i2fmbbnp+ckelhfzvytx8cgyeayp6x39yseihrx4sq8ivu 3j89fnPjo7GxinPZFU3kQJWtROdsKIurAmVNWFrA6lgkh3xCIEqqOVklyv+0n5k+ NsXNjaWPLYyRe0xcRcRmudtKelu+zxAJW+lSb7OR4QD6arzvAmbIFb7C8wLlGpc9 es9lf9pe88kf4jacixljpaecgyeaj4swtwlzbsjwygz3yaovkuwi8qdnxlvx+r2x XmVjokgCi2rGo5hszLIvi6mBFQwgvtjTsZJ/1Mg4z6i/g8sosONJA5OvHXXfWnIE

130 130 Configurazione tramite le API remote <ca> f9zxu4xf5q4s6cx/f+r4czahcvsph6wfrpz9txytq3fe2uk8ctxfxif3kyjnwf7o ma6yxqccgyeapqdvvr92ysyzudtkygn5rd5bajsgpywpshs5lpkbq4n/tkszzo1v Bxq2AbPRohXasWEAdfgfss1mcwX9xnKO/DhnxXE8KVFXKVehGmUth0WqA5qtL4xD h4hm3v7dcmqybvzpmlwxfz5is1fiflahlfex4h3s1rirtj+t6hodvf4= -----END RSA PRIVATE KEY-----</pvt> <cert>-----begin CERTIFICATE----- MIIDiTCCAnECBETUDecwDQYJKoZIhvcNAQEEBQAwgYgxCzAJBgNVBAYTAlJVMQww CgYDVQQIEwNOU08xDDAKBgNVBAcTA05TSzEUMBIGA1UEChMLRGFtYWdlIEluYy4x CzAJBgNVBAsTAlFBMRcwFQYDVQQDEw53d3cuc3dzb2Z0LmNvbTEhMB8GCSqGSIb3 DQEJARYScmJ1c3lndWluQHBsZXNrLnJ1MB4XDTA2MDgwNTAzMTgwMVoXDTA3MDgw NTAzMTgwMVowgYgxCzAJBgNVBAYTAlJVMQwwCgYDVQQIEwNOU08xDDAKBgNVBAcT A05TSzEUMBIGA1UEChMLRGFtYWdlIEluYy4xCzAJBgNVBAsTAlFBMRcwFQYDVQQD Ew53d3cuc3dzb2Z0LmNvbTEhMB8GCSqGSIb3DQEJARYScmJ1c3lndWluQHBsZXNr LnJ1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyxfczy4HqgwOI6yx Ea+dLaMLe5zC0ijcawsha8oFtJlxv/DM9INpdKjv9HaInrR0StjG9HgqTpYrhOCJ xeb07/ggsq82xsvbckanucsqkinpwvimgusisgnrfnbkioaewn21enczqrufcqnw NzTx/GjVCXqa/Sy4pXJ6Jud0dzA/+VisSBw5Oo4IqI2MDvuoDk+exQLdgM45Vgq4 d3a9+eszmrmjmdovhnxnxdvmxa5rsrf+gzlbtfftslqsnfnnimr6ztfgnct2vddm UAV9iix2B1PuoH94TRCJRG5tVCFtfVzSRjo4ZzoiUs57efb3Oe56Lb64Ubi9ZRzN hdkglwidaqabma0gcsqgsib3dqebbauaa4ibaqbh8mtx3q3csbujzwfy3kivobgh yelljoq87qv5rht5yktutys3ogxsdd0so/usg/akl34ctpkjl/vqytzkmsfq5pxy MlY6Q+GCd9FgL5pBn1S8HSZLpTBWZc25mNe3mXbCQzI03r4W+dQajAgAgDKpnRjg mblrg98+hwol033pvgunrwpos3lo5jia5z3f0mks8sv3x18duoslevilhj0ttz/p B7x0kIUee8A95Q00EDh+4IaPSMOqiFrVIlsHEuPV33aCAz2Dk2TxzplsoNz61BFA i3cm04gz1h9w/yzkcycqiwumizsgusbln0hbetid1u/nadtic776yguyai+/ -----END CERTIFICATE-----</cert> -----BEGIN CERTIFICATE----- MIIEjDCCA3SgAwIBAgIJAL4AGzKhkL5wMA0GCSqGSIb3DQEBBQUAMIGKMQswCQYD VQQGEwJSVTELMAkGA1UECBMCTlYxFDASBgNVBAcTC05vdm9zaWJpcnNrMRIwEAYD VQQKEwlQYXJhbGxlbHMxDjAMBgNVBAsTBVBsZXNrMQ0wCwYDVQQDEwRhYmVsMSU w IwYJKoZIhvcNAQkBFhZhYmVseWFldkBwYXJhbGxlbHMuY29tMB4XDTA5MDQyODAz NDMxMloXDTEwMDQyODAzNDMxMlowgYoxCzAJBgNVBAYTAlJVMQswCQYDVQQIEwJO VjEUMBIGA1UEBxMLTm92b3NpYmlyc2sxEjAQBgNVBAoTCVBhcmFsbGVsczEOMAwG A1UECxMFUGxlc2sxDTALBgNVBAMTBGFiZWwxJTAjBgkqhkiG9w0BCQEWFmFiZWx5 YWV2QHBhcmFsbGVscy5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQDlslx5nXTQTvoic3GgW4HH5n5PoCz95Z9XNtCykwv0M2HdhMeNvde1NYDvkipa FHzVPEH7eBgjAsHR4y1J4zVGAs2KiJF0W81vi5YAVMOJ7Ysyz8WLP0PQWTmUoMFM ae0p7m788tphl328chdpjtjlcf6w9fkzddzrvdek04ojp2cro6ffmh7wjpcajvh/

131 Configurazione tramite le API remote 131 </ca> 3EuYpc7xBNC6Wf8Gk6tB5kCCe7wpHyXsc7ve97nn30p6rUXypBNHYmLujMCtS90I K2xOCaSsCwkeUQ4mpXrr5lK7yM07b322vNZBiMTHV8DnaOWDPIcEIFl8NmOJovub dg5wdxopa6secqlaf95lvulragmbaagjgfiwge8whqydvr0obbyeflsg4v0zc0i0 prftcygaitgz5ikcmig/bgnvhsmegbcwgbsaflsg4v0zc0i0prftcygaitgz5ikc oygqpignmigkmqswcqydvqqgewjsvtelmakga1uecbmctlyxfdasbgnvbactc0 5v dm9zawjpcnnrmriweaydvqqkewlqyxjhbgxlbhmxdjambgnvbastbvbszxnrmq0w CwYDVQQDEwRhYmVsMSUwIwYJKoZIhvcNAQkBFhZhYmVseWFldkBwYXJhbGxlbHMu Y29tggkAvgAbMqGQvnAwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA dekv4dzmr7rp0dlyqdpdvigu7fe+7r5u87mz3e9ctapycbg4ktzas53b3itsaqv2 yjxnktqw2/l5xusw+oxhgpwc0z58jscyqnw/hkvheurgbyliooaks9vaayi3ma0t O1cB1vnAgmB8puV6IdEKuvUimgbJhiGIpqTiL+2/YgSnkGhRuYlxuFB6U8WPgrUN UMt0linQtUsxMJCghMA3T8cODGon4ugZ0cCJmDfpkStI3jUuoxulSX2I8xmUQtGe 2Q/sUQaWgJhe4RDoth6w7E9GE8733WGhC1mIjxyJMx4vmu4ofLAwN6XUzJJ3eC7s P34vOGq/sqxG/U+BbUu71A== -----END CERTIFICATE----- </content> <ip_address> </ip_address> </install> </certificate>

132 132 Configurazione tramite le API remote Struttura del Pacchetto di Risposta Il nodo install del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: unsignedint. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string.

133 Configurazione tramite le API remote 133 Modelli di Risposta La risposta positiva dal server presenta questo formato: <packet version= > <certificate> <install> <result> <status>ok</status> </result> </install> </certificate> Le risposte negative dal server possono presentare questo formato: <packet version= > <certificate> <install> <result> <status>error</status> <errcode>8002</errcode> <errtext>unable to set csr content to certificate : CSR field contains an improper value : openssl failed: </errtext> </result> </install> </certificate> <packet version= > <certificate> <install> <result> <status>error</status> <errcode>8006</errcode> <errtext>unable to set certificate name : </errtext> </result> </install>

134 134 Configurazione tramite le API remote </certificate> Creazione di Domini Per creare un account di dominio, esegui un pacchetto di richiesta XML contenente il nodo di operazione domain/add: <packet version= > <domain> <add> </add> </domain> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta Struttura del Pacchetto di Richiesta Un pacchetto XML di richiesta che crei un account di dominio comprende il nodo di operazione domain/add con la seguente struttura:

135 Configurazione tramite le API remote 135 gen_setup, richiesto Contiene l informazione più importante sull account di dominio. Tipo di dati: none. name, richiesto Indica il nome del dominio. Tipo di dati: domainname (plesk_domain.xsd). ip_address, richiesto Indica l IP su cui è il dominio è ospitato. Tipo di dati: ip_address (common.xsd). hosting, richiesto Indica le impostazioni di hosting per il dominio. Tipo di dati: domainhostingagentset (plesk_domain.xsd). vrt_hst, richiesto Indica le impostazioni di hosting per il dominio. Tipo di dati: domainphhostingset (plesk_domain.xsd). Viene strutturato come segue: property, richiesto Indica un parametro di hosting. Tipo di dati: PleskPhysHostingPropertyType (plesk_domain.xsd). name, richiesto Indica il nome di un parametro di hosting. Tipo di dati: string. value, richiesto Indica il valore di un parametro di hosting. Tipo di dati: any. ip_address, richiesto Indica l indirizzo IP del dominio. Tipo di dati: ip_address (common.xsd).

136 136 Configurazione tramite le API remote Modelli di Richiesta Questa richiesta crea il dominio example.com ospitato sull IP <packet version= > <domain> <add> <gen_setup> <name>example.com</name> <ip_address> </ip_address> </gen_setup> <hosting> <vrt_hst> <property> <name>ftp_login</name> <value>fp16se4fdf0</value> </property> <property> <name>ftp_password</name> <value>qweqwe</value> </property> <ip_address> </ip_address> </vrt_hst> </hosting> </add> </domain>

137 Configurazione tramite le API remote 137 Struttura del Pacchetto di Risposta Il nodo add del pacchetto di risposta presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. id, rechiesto se l operazione è riuscita Restituisce l identificatore univoco dell account di dominio appena creato. Tipo di dati:integer. guid, richiesto se l operazione è riuscita Restituisce l identificatore univoco globale dell account di dominio appena creato. Tipo di dati: string.

138 138 Configurazione tramite le API remote Modelli di Risposta Una risposta positiva ricevuta dal server dopo aver aggiunto un nuovo account di dominio presenta questo formato: <packet version= > <add> <domain> <result> <status>ok</status> <id>6</id> <guid>5c0e a bcc0-881d691bfdef</guid> </result> </add> </domain> Una risposta negativa può presentare questo formato (è possibile ottenere un codice di errore diverso a seconda della causa dell errore): <packet version= > <domain> <add> <result> <status>error</status> <errcode>1023</errcode> <errtext>operation failed.</errtext> </result> </add> </domain> Si ottiene una risposta negativa di questo tipo nel caso in cui un pacchetto di richiesta non specifichi tutte le impostazioni di hosting necessarie: Pacchetto di Richiesta <packet version= >

139 Configurazione tramite le API remote 139 <domain> <add> <gen_setup> <name>sample.com</name> <ip_address> </ip_address> </gen_setup> <hosting> <vrt_hst> <property> <name>ftp_password</name> <value>fp16sdfdfrttg0</value> </property> <ip_address> </ip_address> </vrt_hst> </hosting> </add> </domain> Pacchetto di Risposta <packet version= > <add> <domain> <result> <status>error</status> <errcode>2204</errcode> <errtext>unable to update hosting preferences. system user update is failed: Unable to check system user existence: login name is empty. Incorrect fields: login.</errtext> </result> </add> </domain>

140 140 Configurazione tramite le API remote Creazione di Sottodomini Per creare un account di sottodominio, esegui un pacchetto di richiesta XML contenente il nodo di operazione subdomain/add: <packet version= > <subdomain> <add> </add> </subdomain> In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta Struttura del Pacchetto di Richiesta Un pacchetto XML di richiesta che aggiunga un nuovo sottodominio comprende il nodo di operazione subdomain/add con la seguente struttura.

141 Configurazione tramite le API remote 141 parent, richiesto Indica il nome di un dominio/sottodominio su cui viene creato un sottodominio. (Il sottodominio principale è supportato solo su Windows) Tipo di dati: string. name, richiesto Indica il nome del sottodominio. Tipo di dati: string. home, richiesto se un sottodominio viene creato su una sottocartella (solo su Windows) Indica il percorso alla directory home del sottodominio. Tipo di dati: string. Se viene lasciata in bianco (<home/>), viene usata la directory root del dominio principale. property, facoltativo Indica un impostazione di hosting sul sottodominio creato. Tipo di dati: SubdomainPropertyType (subdomain.xsd). name, richiesto Indica il nome di un parametro di hosting. Tipo di dati: string. value, richiesto Indica il valore di un parametro di hosting. Tipo di dati: any.

142 142 Configurazione tramite le API remote Modelli di Richiesta Questo pacchetto crea il sottodominio forum.example.com: <packet version= > <subdomain> <add> <parent>example.com</parent> <name>forum</name> <property> <name>ftp_login</name> <value>john</value> </property> <property> <name>ftp_password</name> <value>sample</value> </property> </add> </subdomain> Creazione di un sottodominio su una sottocartella Questo pacchetto crea il sottodominio blog.example.com sulla sottocartella /httpdocs/blogengine: <packet version= > <subdomain> <add> <parent>example.com</parent> <name>blog</name> <home>/httpdocs/blogengine</home> </add> </subdomain>

143 Configurazione tramite le API remote 143 Struttura del Pacchetto di Risposta Il nodo add del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. id, rechiesto se l operazione è riuscita Restituisce l identificatore univoco del sottodominio creato. Tipo di dati: id_type (common.xsd). Errori di Operazioni Concrete Esiste già un sottodominio con questo nome Impossibile trovare il dominio/sottodominio principale La proprietà specificata non è valida Operazione non riuscita.

144 144 Configurazione tramite le API remote Modelli di Risposta Una risposta positiva ricevuta dal server dopo la creazione di un sottodominio presenta questo formato: <packet version= > <subdomain> <add> <result> <status>ok</status> <id>1</id> </result> </add> </subdomain> Si ottiene una risposta negativa di questo tipo nel caso in cui il sottodominio specificato esista già: Pacchetto di Richiesta <packet version= > <subdomain> <add> <parent>example.com</parent> <name>blog</name> </add> </subdomain> Pacchetto di Risposta <packet version= > <add> <subdomain> <result> <status>error</status> <errcode>1007</errcode>

145 Configurazione tramite le API remote 145 <errtext>the subdomain with such name already exists.</errtext> </result> </add> </subdomain> Definizione dei Cataloghi APS Disponibili Per importare la lista personalizzata (file di configurazione) dei Cataloghi APS al Pannello, esegui un pacchetto di richiesta XML con il nodo di operazione aps/import-config: <packet version= > <aps> <import-config>... </import-config> </aps> Il file di configurazione (a pagina 46) deve essere prima caricato sul server mediante l operatore upload (a pagina 150). In questa sezione Struttura del Pacchetto di Richiesta Modelli di Richiesta Struttura del Pacchetto di Risposta Modelli di Risposta Struttura del Pacchetto di Richiesta Il nodo import-config del pacchetto di richiesta presenta la seguente struttura: filename, richiesto Indica il nome del file di configurazione inviato al server. Tipo di dati: string. Il valore deve essere il nome di un file temporaneo restituito nella risposta upload (a pagina 159) (nell elemento upload/result/file ).

146 146 Configurazione tramite le API remote Modelli di Richiesta I pacchetti di richiesta che importano la configurazione dei Cataloghi APS inviati in precedenza al server presentano questo formato. Su Linux/Unix: <packet version= > <aps> <import-config> <filename>/usr/local/psa/tmp/li_8fzruf</filename> </import-config> </aps> su Windows: <packet version= > <aps> <import-config> <filename> C:/Program Files/Parallels/Plesk/tmp/li_9D.tmp </filename> </import-config> </aps>

147 Configurazione tramite le API remote 147 Struttura del Pacchetto di Risposta Il nodo import-config del pacchetto XML di output presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string.

148 148 Configurazione tramite le API remote Modelli di Risposta Una risposta positiva ricevuta dal server presenta questo formato: <packet version= > <install> <aps> <result> <status>ok</status> </result> </install> </aps> Si ottiene una risposta negativa di questo tipo se non è stato possibile trovare il file richiesto: <packet version= > <aps> <import-config> <result> <status>error</status> <errcode>1013</errcode> <errtext>file /usr/local/psa/tmp/li_8fzruf does not exist</errtext> </result> </import-config> </aps> Si ottiene una risposta negativa di questo tipo quando un file richiesto presenta diritti di accesso non corretti (probabilmente, nel caso in cui non venga caricato con l agente upload): <packet version= > <aps>

149 Configurazione tramite le API remote 149 <import-config> <result> <status>error</status> <errcode>1023</errcode> <errtext>unable to use specified file as config file</errtext> </result> </import-config> </aps> Installazione di Applicazioni Per installare applicazioni su domini e sottodomini, usa l operatore aps come descritto più avanti. In questa sezione Importazione di Pacchetti di Applicazioni Installazione di Applicazioni Importazione di Pacchetti di Applicazioni In questa sezione Caricamento di File al Server Importazione di Pacchetti di Applicazioni Caricati Scaricare Pacchetti di Applicazioni dal Catalogo APS Come ottenere lo stato di un task di download

150 150 Configurazione tramite le API remote Caricamento di File al Server Per caricare file al server gestito dal Pannello, viene usato l operatore upload. A differenza di altri operatori, l operatore upload non usa la struttura di un pacchetto di richiesta standard. Invece, usa il metodo POST (http://www.w3.org/protocols/rfc2616/rfc2616-sec9.html) per caricare dei file. Quando una richiesta viene elaborata dal Pannello, la risposta viene fornnita nel pacchetto XML di risposta regolare. Dopo il caricamento di un file nel Pannello, può essere usato in altre operazioni. Nota: È anche possibile caricare file usando i manager FTP, ma in tal caso, è necessario tenere presente che i permessi sui file caricati potrebbero non essere corretti per le ulteriori operazioni RPC di API sui file. Quindi, si consiglia fortemente di usare l operatore upload. In questa sezione Caricamento di File Usando curl Caricamento di File Usando PHP Caricamento di file usando.net Struttura del Pacchetto di Risposta Modelli di Risposta Caricamento di File Usando curl Per caricare un file, segui i successivi passi: 1. Crea una connessione SSH al server Unix in cui si trova il file. 2. Digita la successiva stringa nel shell Unix: curl -k -F -H HTTP_AUTH_LOGIN:admin -H HTTP_AUTH_PASSWD:password https://panel-ip:8443/enterprise/control/agent. php Argomenti curl -k Indica che curl (http://curl.haxx.se/) viene usato. È necessario installarlo sul computer Unix. Viene usata la connessione SSL. -F È necessario caricare il file install.log. È possibile caricare file multipli in un singolo pacchetto. -H HTTP_AUTH_LOGIN:admin Indica la login dell amministratore del Pannello. Sostituisci il valore admin con la login al Pannello. -H HTTP_AUTH_PASSWD:password

151 Configurazione tramite le API remote 151 Indica la password dell amministratore del Pannello. Sostituisci la tua password per accedere al Pannello con il valore della password. https://panel-ip:8443/enterprise/control/agent.php Indica l indirizzo del server del Pannello. Sostituisci il valore <panel-ip> con l indirizzo IP del server. 3. Cliccare INVIO.

152 152 Configurazione tramite le API remote Caricamento di File Usando PHP Questo è un modello di script PHP che invia dei file al Pannello. Cambia HOST, LOGIN, PASSWD e FILENAME con le credenziali del Pannello. HOST login PASSWD FILENAME L indirizzo IP o il nome del server gestito dal Pannello. Nome di login dell amministratore del Pannello. Password dell amministratore del Pannello. Nome completo del file da caricare. <?php define( HOST, ); define( PATH, /enterprise/control/agent.php ); define( LOGIN, admin ); define( PASSWD, setup ); define( FILENAME,../../data.rpm ); function write_callback($ch, $data) { echo $data; return strlen($data); } function uploadfile($filename) {$url = https://. HOST. :8443. PATH; $headers = array( HTTP_AUTH_LOGIN:. LOGIN, HTTP_AUTH_PASSWD:. PASSWD, HTTP_PRETTY_PRINT: TRUE, Content-Type: multipart/form-data;, ); // Initialize the curl engine $ch = curl_init(); // Set the curl options curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

153 Configurazione tramite le API remote 153 // this line makes it work under https curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); // Set the URL to be processed curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS, array ( sampfile )); $result = curl_exec($ch); if (curl_errno($ch)) { echo \n\n \n. curl error number:. curl_errno($ch); echo \n\ncurl error:. curl_error($ch); } curl_close($ch); //fclose($fp); return; } uploadfile(realpath(filename));?>

154 154 Configurazione tramite le API remote Caricamento di file usando.net Questo codice di risorsa.net carica i file sul Pannello. Cambia i valore delle variabili Hostname, Login, Password e Protocol nei parametri dell istanza del Pannello. Cambia il valore della variabile Filename nel nome completo del file che vuoi caricare. FILENAME Hostname login Password Protocollo Nome completo del file da caricare. L indirizzo IP o il nome del server gestito dal Pannello. Nome di login dell amministratore del Pannello. Password dell amministratore del Pannello. Versione del protocollo RPC di API. using System; using System.Net; using System.Text; using System.IO; using System.Xml; using System.Xml.Schema; using System.Security.Cryptography.X509Certificates; using System.Net.Security; namespace ConsoleApplication1 { Public Class Request { // Public interface // public string Filename =./tmp/myfile.sh ; // Upload file name; public string Hostname = localhost ; // The Panel s host name public string Login = admin ; // Administrator Login public string Password = setup ; // Administrator Password public string Protocol = ; // API RPC Version Protocol. // Handler for receiving information about document type definition (DTD), // XML-Data Reduced (XDR) schema, and XML Schema definition language (XSD) schema validation errors. public ValidationEventHandler XmlSchemaValidation = null; public Request()

155 Configurazione tramite le API remote 155 { } public string AgentEntryPoint { get { return https:// + Hostname + :8443/enterprise/control/agent.php ; } } public string InputValidationSchema { get { return https:// + Hostname + :8443/schemas/rpc/ + Protocol + /agent_input.xsd ; } } public string OutputValidationSchema { get { return https:// + Hostname + :8443/schemas/rpc/ + Protocol + /agent_output.xsd ; } } public XmlDocument UploadFile(string uploadfile) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(AgentEntryPoint); string boundary = DateTime.Now.Ticks.ToString( x ); request.headers.add( HTTP_AUTH_LOGIN, Login); request.headers.add( HTTP_AUTH_PASSWD, Password); request.contenttype = multipart/form-data; boundary= + boundary; request.method = POST ; // Build up the post message header StringBuilder sb = new StringBuilder(); sb.append( ); sb.append(boundary); sb.append( \r\n ); sb.append( Content-Disposition: form-data; name=\ ); sb.append( sampfile ); sb.append( \ ; filename=\ ); sb.append(path.getfilename(uploadfile)); sb.append( \ ); sb.append( \r\n ); sb.append( Content-Type: ); sb.append( application/octet-stream ); sb.append( \r\n ); sb.append( \r\n ); string postheader = sb.tostring(); byte[] postheaderbytes = Encoding.UTF8.GetBytes(postHeader); // Build the trailing boundary string as a byte array // ensuring the boundary appears on a line by itself byte[] boundarybytes = Encoding.ASCII.GetBytes( \r\n + boundary + \r\n ); FileStream filestream = new FileStream(uploadfile, FileMode.Open, FileAccess.Read);

156 156 Configurazione tramite le API remote long length = postheaderbytes.length + filestream.length + boundarybytes.length; request.contentlength = length; Stream stream = request.getrequeststream(); stream.write(postheaderbytes, 0, postheaderbytes.length); // Write out the file contents byte[] buffer = new Byte[checked((uint)Math.Min(4096, (int)filestream.length))]; int bytesread = 0; while ((bytesread = filestream.read(buffer, 0, buffer.length))!= 0) stream.write(buffer, 0, bytesread); // Write out the trailing boundary stream.write(boundarybytes, 0, boundarybytes.length); XmlDocument result = GetResponse(request); return result; } // Private interface // // Parsing and validating packet // private XmlDocument ParseAndValidate(TextReader xml, string schemauri) { XmlSchemaSet schemas = new XmlSchemaSet(); schemas.add(null, schemauri); XmlReaderSettings settings = new XmlReaderSettings(); if (XmlSchemaValidation!= null) settings.validationeventhandler += new ValidationEventHandler(XmlSchemaValidation); settings.validationtype = ValidationType.Schema; settings.validationflags = XmlSchemaValidationFlags.ProcessSchemaLocation; settings.schemas = schemas; XmlDocument document = new XmlDocument(); using (XmlReader reader = XmlTextReader.Create(xml, settings)) {

157 Configurazione tramite le API remote 157 } document.load(reader); return document; } private XmlDocument GetResponse(HttpWebRequest request) { using (HttpWebResponse response = (HttpWebResponse)request.GetResponse()) } } } using (Stream stream = response.getresponsestream()) using (TextReader reader = new StreamReader(stream)) { return ParseAndValidate(reader, OutputValidationSchema); class Program { static void Main(string[] args) { if (args.length < 4) { Console.WriteLine( Usage: ParalLelSpaNelapirpcclient <Hostname> <Login> <Password> <FileName> ); Console.WriteLine( ); Console.WriteLine( Hostname - The Panel s host name ); Console.WriteLine( Login - Administrator login ); Console.WriteLine( Password - Administrator password ); Console.WriteLine( FileName - Upload file name ); return; } // Verifies the remote Secure Sockets Layer (SSL) certificate used for authentication. ServicePointManager.ServerCertificateValidationCallback = Try new RemoteCertificateValidationCallback(RemoteCertificateValidation); Request request = new Request(); request.xmlschemavalidation = XmlSchemaValidation;

158 158 Configurazione tramite le API remote { XmlDocument result = request.uploadfile(filename); PrintResult(result); } catch (Exception e) } } { Console.WriteLine( Request error: {0}, e.message); // The following method is invoked by the RemoteCertificateValidationDelegate. private static bool RemoteCertificateValidation(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslpolicyerrors) { if (sslpolicyerrors!= SslPolicyErrors.RemoteCertificateNotAvailable) return true; Console.WriteLine( Certificate error: {0}, sslpolicyerrors); // Do not allow this client to communicate with unauthenticated servers. return false; } // private static void XmlSchemaValidation(object sender, ValidationEventArgs e) { Console.WriteLine( Validation error: {0}, e.message); } static void PrintResult(XmlDocument document) { XmlTextWriter writer = new XmlTextWriter(Console.Out); writer.formatting = Formatting.Indented; document.writeto(writer); writer.flush(); Console.WriteLine(); } } }

159 Configurazione tramite le API remote 159 Struttura del Pacchetto di Risposta Il pacchetto XML di output upload presenta la seguente struttura: result, richiesto Restituisce la risposta recuperata dal server. Tipo di dati: resulttype (common.xsd). status, richiesto Indica lo stato di esecuzione dell operazione. Tipo di dati: string. Valori consentiti: ok error. errcode, richiesto se l operazione non è riuscita Restituisce il codice di errore. Tipo di dati: integer. errtext, richiesto se l operazione non è riuscita Restituisce il messaggio di errore. Tipo di dati: string. name, richiesto Indica il nome del file caricato. Tipo di dati: string. file, richiesto Indica il nome completo del file temporaneo creato. Tipo di dati: string.

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 59 CH-Schaffhausen Svizzera Telefono: +41-526320-411 Fax+41-52672-2010 Copyright 1999-2011

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 49 CH8200 Schaffhausen Svizzera Telefono: +41-526-722-030 Fax+41 (-526) -722-010 Copyright

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 59 CH-Schaffhausen Svizzera Telefono: +41-526320-411 Fax+41-52672-2010 Copyright 1999-2011

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Plesk Automation. Parallels. Domande tecniche più frequenti

Plesk Automation. Parallels. Domande tecniche più frequenti Parallels Plesk Automation Primo trimestre, 2013 Domande tecniche più frequenti Questo documento ha come scopo quello di rispondere alle domande tecniche che possono sorgere quando si installa e si utilizza

Dettagli

Domini Virtual Server

Domini Virtual Server Domini Virtual Server Pannello di controllo Manuale Utente Pannello di controllo domini e virtual server - Manuale utente ver. 2.0 Pag. 1 di 18 Sommario INFORMAZIONI GENERALI... 3 Virtual Server... 3 ACCESSO

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

hottimo procedura di installazione

hottimo procedura di installazione hottimo procedura di installazione LATO SERVER Per un corretto funzionamento di hottimo è necessario in primis installare all interno del server, Microsoft Sql Server 2008 (Versione minima Express Edition)

Dettagli

Parallels Plesk Automation. Guida introduttiva a Parallels Plesk Automation

Parallels Plesk Automation. Guida introduttiva a Parallels Plesk Automation Parallels Plesk Automation Guida introduttiva a Parallels Plesk Automation Informazioni sul Copyright Parallels IP Holdings GmbH Vordergasse 59 CH-Schaffhausen Svizzera Telefono +41 526320 411 Fax +41

Dettagli

Area Clienti Tiscali Hosting e Domini

Area Clienti Tiscali Hosting e Domini Area Clienti Tiscali Hosting e Domini Manuale Utente Area Clienti Tiscali Hosting e Domini - Manuale utente Pag. 1 di 20 Sommario INFORMAZIONI GENERALI... 3 ACCESSO ALL AREA CLIENTI TISCALI HOSTING E DOMINI...

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 59 CH-Schaffhausen Svizzera Telefono: +41-526320-411 Fax+41-52672-2010 Copyright 1999-2011 Parallels

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 49 CH8200 Schaffhausen Svizzera Telefono: +41-526-722-030 Fax+41 (-526) -722-010 Copyright 1999-2011

Dettagli

FileMaker Pro 13. Guida alla configurazione dell installazione in rete

FileMaker Pro 13. Guida alla configurazione dell installazione in rete FileMaker Pro 13 Guida alla configurazione dell installazione in rete 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati Uniti

Dettagli

Parallels Panel. Guida all'installazione, aggiornamento, migrazione e trasferimento. Parallels Plesk Panel 11.0

Parallels Panel. Guida all'installazione, aggiornamento, migrazione e trasferimento. Parallels Plesk Panel 11.0 Parallels Panel Guida all'installazione, aggiornamento, migrazione e trasferimento Parallels Plesk Panel 11.0 Informazioni sul Copyright Parallels IP Holdings GmbH Vordergasse 59 CH-Schaffhausen Svizzera

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Panoramica delle novità Versione 9.2 www.parallels.com Versione 1.0 Temi chiave Parallels Plesk Panel 9.2 presenta funzionalità molto attese per service provider e utenti finali.

Dettagli

FileMaker Pro 12. Guida di FileMaker Server

FileMaker Pro 12. Guida di FileMaker Server FileMaker Pro 12 Guida di FileMaker Server 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker è un marchio di FileMaker,

Dettagli

Introduzione a Windows XP Professional Installazione di Windows XP Professional Configurazione e gestione di account utente

Introduzione a Windows XP Professional Installazione di Windows XP Professional Configurazione e gestione di account utente Programma Introduzione a Windows XP Professional Esplorazione delle nuove funzionalità e dei miglioramenti Risoluzione dei problemi mediante Guida in linea e supporto tecnico Gruppi di lavoro e domini

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Installazione del software - Sommario

Installazione del software - Sommario Guida introduttiva Installazione del software - Sommario Panoramica sulla distribuzione del software CommNet Server Windows Cluster Windows - Virtual Server CommNet Agent Windows Cluster Windows - Virtual

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright Parallels Holdings, Ltd. c/o Parallels International GMbH Vordergasse 59 CH-Schaffhausen Svizzera Telefono: +41-526320-411 Fax+41-52672-2010 Copyright 1999-2011

Dettagli

Come Installare SQL Server 2008 R2 Express Edition With Tools

Come Installare SQL Server 2008 R2 Express Edition With Tools Come Installare SQL Server 2008 R2 Express Edition With Tools Circolare CT-1010-0087, del 28/10/2010. Come Installare SQL Server 2008 R2 Express Edition sul server... 2 Introduzione... 2 Installazione

Dettagli

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE PREMESSA La presente guida è da considerarsi come aiuto per l utente per l installazione e configurazione di Atollo Backup. La guida non vuole approfondire

Dettagli

Boot Camp Beta 1.0.2 Guida di installazione e configurazione

Boot Camp Beta 1.0.2 Guida di installazione e configurazione Boot Camp Beta 1.0.2 Guida di installazione e configurazione 1 Indice 4 Panoramica 5 Punto 1: aggiornare il software di sistema e il firmware del computer 6 Punto 2: eseguire Assistente Boot Camp 9 Punto

Dettagli

Gestione del database Gidas

Gestione del database Gidas Gestione del database Gidas Manuale utente Aggiornamento 20/06/2013 Cod. SWUM_00535_it Sommario 1. Introduzione... 3 2. Requisiti e creazione del Database Gidas... 3 2.1.1. SQL Server... 3 2.1.2. Requisiti

Dettagli

Guida introduttiva. Versione 7.0.0 Software

Guida introduttiva. Versione 7.0.0 Software Guida introduttiva Versione 7.0.0 Software Installazione del software - Sommario Panoramica sulla distribuzione del software CommNet Server Windows Windows Cluster - Virtual Server Abilitatore SNMP CommNet

Dettagli

Site License Manuale dell amministratore

Site License Manuale dell amministratore Site License Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un site license per PASW Statistics 18. Questa licenza consente di installare PASW Statistics

Dettagli

Xerox 700 Digital Color Press con Integrated Fiery Color Server. Stampa da Windows

Xerox 700 Digital Color Press con Integrated Fiery Color Server. Stampa da Windows Xerox 700 Digital Color Press con Integrated Fiery Color Server Stampa da Windows 2008 Electronics for Imaging, Inc. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione

Dettagli

Manuale utente. ver 1.0 del 31/10/2011

Manuale utente. ver 1.0 del 31/10/2011 Manuale utente ver 1.0 del 31/10/2011 Sommario 1. Il Servizio... 2 2. Requisiti minimi... 2 3. L architettura... 2 4. Creazione del profilo... 3 5. Aggiunta di un nuovo dispositivo... 3 5.1. Installazione

Dettagli

Log Manager. 1 Connessione dell apparato 2. 2 Prima configurazione 2. 2.1 Impostazioni di fabbrica 2. 2.2 Configurazione indirizzo IP e gateway 3

Log Manager. 1 Connessione dell apparato 2. 2 Prima configurazione 2. 2.1 Impostazioni di fabbrica 2. 2.2 Configurazione indirizzo IP e gateway 3 ver 2.0 Log Manager Quick Start Guide 1 Connessione dell apparato 2 2 Prima configurazione 2 2.1 Impostazioni di fabbrica 2 2.2 Configurazione indirizzo IP e gateway 3 2.3 Configurazione DNS e Nome Host

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Installazione e guida introduttiva. Per WebReporter 2012

Installazione e guida introduttiva. Per WebReporter 2012 Per WebReporter 2012 Ultimo aggiornamento: 13 settembre, 2012 Indice Installazione dei componenti essenziali... 1 Panoramica... 1 Passo 1 : Abilitare gli Internet Information Services... 1 Passo 2: Eseguire

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Boot Camp Guida all installazione e alla configurazione

Boot Camp Guida all installazione e alla configurazione Boot Camp Guida all installazione e alla configurazione Indice 4 Introduzione 5 Cosa ti occorre 6 Panoramica dell installazione 6 Passo 1: verifica la presenza di aggiornamenti. 6 Passo 2: apri Assistente

Dettagli

Sophos Deployment Packager guida per utenti. Versione prodotto: 1.2

Sophos Deployment Packager guida per utenti. Versione prodotto: 1.2 Sophos Deployment Packager guida per utenti Versione prodotto: 1.2 Data documento: settembre 2014 Sommario 1 Informazioni sulla guida...3 2 Deployment Packager...4 2.1 Problemi noti e limiti del Deployment

Dettagli

Parallels Plesk Panel

Parallels Plesk Panel Parallels Plesk Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

Proteggi ciò che crei. Guida all avvio rapido

Proteggi ciò che crei. Guida all avvio rapido Proteggi ciò che crei Guida all avvio rapido 1 Documento aggiornato il 10.06.2013 Tramite Dr.Web CureNet! si possono eseguire scansioni antivirali centralizzate di una rete locale senza installare il programma

Dettagli

Aggiornamento a edizioni avanzate di Acronis Backup & Recovery 11

Aggiornamento a edizioni avanzate di Acronis Backup & Recovery 11 Aggiornamento a edizioni avanzate di Acronis Backup & Recovery 11 Si applica alle seguenti edizioni: Advanced Server Virtual Edition Advanced Server SBS Edition Advanced Workstation Server for Linux Server

Dettagli

Conceptronic C100BRS4H Guida rapida di installazione. Congratulazioni per avere acquistato un router broadband Conceptronic a 4 porte.

Conceptronic C100BRS4H Guida rapida di installazione. Congratulazioni per avere acquistato un router broadband Conceptronic a 4 porte. Conceptronic C100BRS4H Guida rapida di installazione Congratulazioni per avere acquistato un router broadband Conceptronic a 4 porte. La guida di installazione hardware spiega passo per passo come installare

Dettagli

MailStore Server 7 Specifiche tecniche

MailStore Server 7 Specifiche tecniche MailStore Server 7 Specifiche tecniche MailStore Server Lo standard nell archiviazione delle email Le aziende di ogni dimensione possono trarre vantaggi legali, tecnici ed economici dall archiviazione

Dettagli

Guida all installazione Command WorkStation 5.5 con Fiery Extended Applications 4.1

Guida all installazione Command WorkStation 5.5 con Fiery Extended Applications 4.1 Guida all installazione Command WorkStation 5.5 con Fiery Extended Applications 4.1 Informazioni su Fiery Extended Applications Fiery Extended Applications (FEA) 4.1 è un pacchetto da usare con i controller

Dettagli

http://bcloud.brennercom.it/it/brennercom-b-cloud/applicazioni/26-0.html

http://bcloud.brennercom.it/it/brennercom-b-cloud/applicazioni/26-0.html b.backup Manuale Windows Questo manuale descrive le funzionalità di base del client b.backup illustra le operazioni necessarie per installare e attivare l applicazione, e spiega come eseguire un backup

Dettagli

QUICK START GUIDE F640

QUICK START GUIDE F640 QUICK START GUIDE F640 Rev 1.0 PARAGRAFO ARGOMENTO PAGINA 1.1 Connessione dell apparato 3 1.2 Primo accesso all apparato 3 1.3 Configurazione parametri di rete 4 2 Gestioni condivisioni Windows 5 2.1 Impostazioni

Dettagli

UTILIZZO DEI COOKIES (informativa conforme al Provvedimento del Garante Privacy del 8 Maggio 2014)

UTILIZZO DEI COOKIES (informativa conforme al Provvedimento del Garante Privacy del 8 Maggio 2014) UTILIZZO DEI COOKIES (informativa conforme al Provvedimento del Garante Privacy del 8 Maggio 2014) Star Link srl, Titolare del trattamento dei dati personali, informa che questo Sito internet fa uso di

Dettagli

Novell ZENworks Configuration Management in ambiente Microsoft * Windows *

Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Guida GESTIONE SISTEMI www.novell.com Novell ZENworks Configuration Management in ambiente Microsoft * Windows * Novell ZENworks Configuration Management in ambiente Microsoft Windows Indice: 2..... Benvenuti

Dettagli

Versione 1.0 gennaio 2011. Xerox Phaser 3635MFP Extensible Interface Platform

Versione 1.0 gennaio 2011. Xerox Phaser 3635MFP Extensible Interface Platform Versione 1.0 gennaio 2011 Xerox Phaser 3635MFP 2011 Xerox Corporation. XEROX e XEROX and Design sono marchi di Xerox Corporation negli Stati Uniti e/o in altri paesi. Questo documento è soggetto a modifiche

Dettagli

Sommario. 1. Introduzione. Samba - Monografia per il Corso di "Laboratorio di Sistemi Operativi".

Sommario. 1. Introduzione. Samba - Monografia per il Corso di Laboratorio di Sistemi Operativi. Sommario SAMBA Raphael Pfattner 10 Giugno 2004 Diario delle revisioni Revisione 1 10 Giugno 2004 pralph@sbox.tugraz.at Revisione 0 17 Marzo 2004 roberto.alfieri@unipr.it Samba - Monografia per il Corso

Dettagli

Introduzione Il sistema operativo Linux è oggi una delle principali distribuzioni di Unix, in grado di portare in ogni PC tutta la potenza e la flessibilità di una workstation Unix e un set completo di

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

Manuale di Lokalize. Nick Shaforostoff Traduzione italiana: Pino Toscano

Manuale di Lokalize. Nick Shaforostoff Traduzione italiana: Pino Toscano Nick Shaforostoff Traduzione italiana: Pino Toscano 2 Indice 1 Introduzione 5 2 Editor 6 2.1 Finestra principale..................................... 6 2.2 Barre degli strumenti....................................

Dettagli

Sharpdesk V3.3. Guida all installazione push per l amministratore di sistema Versione 3.3.03

Sharpdesk V3.3. Guida all installazione push per l amministratore di sistema Versione 3.3.03 Sharpdesk V3.3 Guida all installazione push per l amministratore di sistema Versione 3.3.03 Copyright 2000-2009 di SHARP CORPORATION. Tutti i diritti riservati. È vietata la riproduzione, l adattamento

Dettagli

Licenza per sito Manuale dell amministratore

Licenza per sito Manuale dell amministratore Licenza per sito Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un licenza per sito per SPSS Statistics. Questa licenza consente di installare SPSS

Dettagli

Site License Manuale dell amministratore

Site License Manuale dell amministratore Site License Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un site license per IBM SPSS Statistics 21. Questa licenza consente di installare SPSS Statistics

Dettagli

Strumenti per lo sviluppo del software

Strumenti per lo sviluppo del software Lo sviluppo del software Strumenti per lo sviluppo del software Lo sviluppo del software è l attività centrale del progetto e ha lo scopo di produrre il codice sorgente che, una volta compilato e messo

Dettagli

Console di Amministrazione Centralizzata Guida Rapida

Console di Amministrazione Centralizzata Guida Rapida Console di Amministrazione Centralizzata Contenuti 1. Panoramica... 2 Licensing... 2 Panoramica... 2 2. Configurazione... 3 3. Utilizzo... 4 Gestione dei computer... 4 Visualizzazione dei computer... 4

Dettagli

testo easyheat Software di configurazione e analisi Manuale di istruzioni

testo easyheat Software di configurazione e analisi Manuale di istruzioni testo easyheat Software di configurazione e analisi Manuale di istruzioni it 2 Informazioni generali Informazioni generali Questo manuale contiene importanti informazioni sulle caratteristiche e sull impiego

Dettagli

Licenza di rete Manuale dell amministratore

Licenza di rete Manuale dell amministratore Licenza di rete Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un licenza di rete per IBM SPSS Statistics 19. Questa licenza consente di installare

Dettagli

Utilizzo di MioNet. 2008 Western Digital Technologies Inc. Manuale utente MioNet Versione 1.08

Utilizzo di MioNet. 2008 Western Digital Technologies Inc. Manuale utente MioNet Versione 1.08 Utilizzo di MioNet 1 Avviso di Copyright Non è consentito riprodurre, trasmettere, trascrivere, archiviare in un sistema di recupero, o tradurre in qualunque linguaggio, umano o informatico, in qualunque

Dettagli

Fiery Network Controller per DocuColor 242/252/260. Stampa da Windows

Fiery Network Controller per DocuColor 242/252/260. Stampa da Windows Fiery Network Controller per DocuColor 242/252/260 Stampa da Windows 2007 Electronics for Imaging, Inc. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato

Dettagli

TeamViewer 9 Manuale Manager

TeamViewer 9 Manuale Manager TeamViewer 9 Manuale Manager Rev 9.1-03/2014 TeamViewer GmbH Jahnstraße 30 D-73037 Göppingen teamviewer.com Panoramica Indice Indice... 2 1 Panoramica... 4 1.1 Informazioni su TeamViewer Manager... 4 1.2

Dettagli

IBM SPSS Modeler Social Network Analysis 15 - Guida all installazione e configurazione

IBM SPSS Modeler Social Network Analysis 15 - Guida all installazione e configurazione IBM SPSS Modeler Social Network Analysis 15 - Guida all installazione e configurazione Nota: Prima di utilizzare queste informazioni e il relativo prodotto, leggere le informazioni generali disponibili

Dettagli

Manuale utente 3CX VOIP client / Telefono software Versione 6.0

Manuale utente 3CX VOIP client / Telefono software Versione 6.0 Manuale utente 3CX VOIP client / Telefono software Versione 6.0 Copyright 2006-2008, 3CX ltd. http:// E-mail: info@3cx.com Le Informazioni in questo documento sono soggette a variazioni senza preavviso.

Dettagli

I.T.C.G. DE SIMONI PROGETTO ECDL

I.T.C.G. DE SIMONI PROGETTO ECDL I.T.C.G. DE SIMONI PROGETTO ECDL USO DEL COMPUTER E GESTIONE FILES Referente e tutor Prof.ssa Annalisa Pozzi Tutor lezioni Prof. Claudio Pellegrini 2.3 Utilità 2.3.1 Compressione dei files 2.3.1.1 Comprendere

Dettagli

GUIDA DI INSTALLAZIONE. AXIS Camera Station

GUIDA DI INSTALLAZIONE. AXIS Camera Station GUIDA DI INSTALLAZIONE AXIS Camera Station Informazioni su questa guida Questa guida è destinata ad amministratori e utenti di AXIS Camera Station e riguarda la versione 4.0 del software o versioni successive.

Dettagli

Manuale TeamViewer Manager 6.0

Manuale TeamViewer Manager 6.0 Manuale TeamViewer Manager 6.0 Revisione TeamViewer 6.0-954 Indice 1 Panoramica... 2 1.1 Informazioni su TeamViewer Manager... 2 1.2 Informazioni sul presente Manuale... 2 2 Installazione e avvio iniziale...

Dettagli

Installazione SQL Server 2005 Express Edition

Installazione SQL Server 2005 Express Edition Supporto On Line Allegato FAQ FAQ n.ro MAN-6S4ALG7637 Data ultima modifica 25/08/2010 Prodotto Tutti Modulo Tutti Oggetto Installazione SQL Server 2005 Express Edition In giallo sono evidenziate le modifiche/integrazioni

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

Introduzione BENVENUTO!

Introduzione BENVENUTO! 1 Introduzione Grazie per aver scelto Atlantis Antivirus. Atlantis Antivirus ti offre una protezione eccellente contro virus, Trojan, worms, dialers, codici maligni e molti altri pericoli informatici.

Dettagli

NAS 206 Usare il NAS con Active Directory di Windows

NAS 206 Usare il NAS con Active Directory di Windows NAS 206 Usare il NAS con Active Directory di Windows Collegare il NAS ad un dominio Active Directory di Windows A S U S T O R C O L L E G E OBIETTIVI DEL CORSO Al termine di questo corso si dovrebbe essere

Dettagli

Windows SteadyState?

Windows SteadyState? Domande tecniche frequenti relative a Windows SteadyState Domande di carattere generale È possibile installare Windows SteadyState su un computer a 64 bit? Windows SteadyState è stato progettato per funzionare

Dettagli

Software Intel per la gestione di sistemi. Manuale dell'utente di Intel Modular Server Management Pack

Software Intel per la gestione di sistemi. Manuale dell'utente di Intel Modular Server Management Pack Software Intel per la gestione di sistemi Manuale dell'utente di Intel Modular Server Management Pack Dichiarazioni legali LE INFORMAZIONI CONTENUTE IN QUESTO DOCUMENTO SONO FORNITE IN ABBINAMENTO AI PRODOTTI

Dettagli

Licenza per sito Manuale dell amministratore

Licenza per sito Manuale dell amministratore Licenza per sito Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un licenza per sito per IBM SPSS Modeler 15. Questa licenza consente di installare IBM

Dettagli

Guida dell Amministratore

Guida dell Amministratore Guida dell Amministratore Seqrite Endpoint Security Standalone Update Manager Quick Heal Technologies (P) Ltd. http://www.seqrite.it Copyright Information 2012 Quick Heal Technologies (P) Ltd. All Rights

Dettagli

L ambiente di sviluppo Android Studio

L ambiente di sviluppo Android Studio L ambiente di sviluppo Android Studio Android Studio è un ambiente di sviluppo integrato (IDE, Integrated Development Environment) per la programmazione di app con Android. È un alternativa all utilizzo

Dettagli

FileMaker Server 12. Guida alla configurazione dell installazione in rete

FileMaker Server 12. Guida alla configurazione dell installazione in rete FileMaker Server 12 Guida alla configurazione dell installazione in rete 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker

Dettagli

Supporto Tecnico Clienti Microsoft

Supporto Tecnico Clienti Microsoft Supporto Tecnico Clienti Microsoft Microsoft offre un ampia varietà di servizi di supporto personalizzabili per aziende, partner, professionisti IT, sviluppatori e utenti privati. Le opzioni di supporto

Dettagli

Installazione e attivazione delle licenze

Installazione e attivazione delle licenze Capitolo 1 Installazione e attivazione delle licenze L installazione del software su una singola macchina è di solito un operazione piuttosto semplice, ma quando si deve installare AutoCAD in rete è richiesta

Dettagli

FileMaker Server 14. Guida alla configurazione dell installazione in rete

FileMaker Server 14. Guida alla configurazione dell installazione in rete FileMaker Server 14 Guida alla configurazione dell installazione in rete 2007 2015 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati

Dettagli

Intel Server Management Pack per Windows

Intel Server Management Pack per Windows Intel Server Management Pack per Windows Manuale dell'utente Revisione 1.0 Dichiarazioni legali LE INFORMAZIONI CONTENUTE IN QUESTO DOCUMENTO SONO FORNITE IN ABBINAMENTO AI PRODOTTI INTEL ALLO SCOPO DI

Dettagli

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC

FileMaker 8. Installazione dei driver client FileMaker 8 ODBC e JDBC FileMaker 8 Installazione dei driver client FileMaker 8 ODBC e JDBC 2004-2005 Filemaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker

Dettagli

Parallels Panel. Manuale utente di Parallels Web Presence Builder 11.1

Parallels Panel. Manuale utente di Parallels Web Presence Builder 11.1 Parallels Panel Manuale utente di Parallels Web Presence Builder 11.1 Contenuto Prefazione 3 Convenzioni Tipografiche... 3 Commenti... 4 Introduzione 5 Acquisire familiarità con Web Presence Builder...

Dettagli

Crotone, maggio 2005. Windows. Ing. Luigi Labonia E-mail luigi.lab@libero.it

Crotone, maggio 2005. Windows. Ing. Luigi Labonia E-mail luigi.lab@libero.it Crotone, maggio 2005 Windows Ing. Luigi Labonia E-mail luigi.lab@libero.it Sistema Operativo Le funzioni software di base che permettono al computer di funzionare formano il sistema operativo. Esso consente

Dettagli

Mac OS X 10.6 Snow Leopard Guida all installazione e configurazione

Mac OS X 10.6 Snow Leopard Guida all installazione e configurazione Mac OS X 10.6 Snow Leopard Guida all installazione e configurazione Prima di installare Mac OS X, leggi questo documento. Esso contiene importanti informazioni sull installazione di Mac OS X. Requisiti

Dettagli

Fiery EXP8000/50 Color Server. Stampa da Windows

Fiery EXP8000/50 Color Server. Stampa da Windows Fiery EXP8000/50 Color Server Stampa da Windows 2007 Electronics for Imaging, Inc. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto previsto

Dettagli

Licenza di rete Manuale dell amministratore

Licenza di rete Manuale dell amministratore Licenza di rete Manuale dell amministratore Le seguenti istruzioni sono indirizzate agli amministratori di siti con un licenza di rete per IBM SPSS Modeler 14.2. Questa licenza consente di installare IBM

Dettagli

FileMaker. Guida all installazione e alle nuove caratteristiche. per FileMaker Pro 8.5 e FileMaker Pro 8.5 Advanced

FileMaker. Guida all installazione e alle nuove caratteristiche. per FileMaker Pro 8.5 e FileMaker Pro 8.5 Advanced FileMaker all installazione e alle nuove caratteristiche per FileMaker Pro 8.5 e FileMaker Pro 8.5 Advanced 2005-2006 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc., 5201 Patrick Henry Drive

Dettagli

Rete Internet ALFABETIZZAZIONE INFORMATICA. Prof. Patti Giuseppe

Rete Internet ALFABETIZZAZIONE INFORMATICA. Prof. Patti Giuseppe Rete Internet ALFABETIZZAZIONE INFORMATICA Prof. Patti Giuseppe SERVIZI OFFERTI DA INTERNET INTERNET POSTA ELETTRONICA INTERNET Internet in pratica è una rete vastissima, costituita dall interconnessione

Dettagli

NOTE TECNICHE DI CONFIGURAZIONE. Giugno 2009

NOTE TECNICHE DI CONFIGURAZIONE. Giugno 2009 NOTE TECNICHE DI CONFIGURAZIONE Giugno 2009 INDICE Configurazioni 3 Configurazioni Windows Firewall.. 3 Configurazioni Permessi DCOM. 4 Installazione Sql Server 2005 9 Prerequisiti Software 7 Installazione

Dettagli

Layout dell area di lavoro

Layout dell area di lavoro Layout dell area di lavoro In Windows, Dreamweaver fornisce un layout che integra tutti gli elementi in una sola finestra. Nell area di lavoro integrata, tutte le finestre e i pannelli sono integrati in

Dettagli

NOTA: La seguente procedura di installazione è riferita alla versione 3.0.4.1 di FileZilla

NOTA: La seguente procedura di installazione è riferita alla versione 3.0.4.1 di FileZilla FileZilla è un client Ftp facile da usare, veloce ed affidabile. Supporta molte opzioni di configurazione. Il programma offre la consueta interfaccia a due finestre affiancate, il resume automatico e la

Dettagli