Sommario
Introduzione all'abilitazione di TLS in R12.1
- I dati tra browser Web e server Web viaggiano non crittografati nell'applicazione R12, quindi la password e altre informazioni possono essere tracciate dallo sniffer. Lo stiamo evitando implementando TLS in R12.
- Con l'implementazione TLS, i dati viaggiano nei moduli crittografati e solo il browser Web e il server Web possono decrittografarli. L'implementazione richiede il certificato SSL e la configurazione nell'ambiente R12 come da configurazione
Sicurezza del livello di trasporto (TLS)
Transport Layer Security, o TLS, è il successore di SSL. TLS, come SSL, è un protocollo che crittografa il traffico tra un client e un server. TLS crea una connessione crittografata tra due macchine consentendo la trasmissione di informazioni private senza problemi di intercettazione, manomissione di dati o falsificazione di messaggi.
Cos'è SSL?
SSL è una tecnologia che definisce le funzioni essenziali di autenticazione reciproca, crittografia dei dati e integrità dei dati per transazioni sicure. Si dice che lo scambio di dati tra il client e il server in tali transazioni sicure utilizzi il Secure Sockets Layer (SSL). Questo è stato deprecato a favore del riferimento TLS preferito in futuro.
Come funziona SSL/TLS
- Il client invia una richiesta al server utilizzando la modalità di connessione HTTPS.
- Il server presenta il proprio certificato digitale al client. Questo certificato contiene le informazioni di identificazione del server come il nome del server, la chiave pubblica dell'organizzazione e del server e la firma digitale della chiave privata della CA
- Il client (browser web) dispone delle chiavi pubbliche di tutte le CA. Decrittografa la chiave privata del certificato digitale Questa verifica dimostra che il mittente ha avuto accesso alla chiave privata, e quindi è probabile che sia la persona associata alla chiave pubblica. Se la verifica va a buon fine, il server viene autenticato come server attendibile.
- Il client invia al server un elenco dei livelli di crittografia, o cifrature, che può utilizzare.
- Il server riceve l'elenco e seleziona il livello di crittografia più potente che hanno in comune.
- Il client crittografa un numero casuale con la chiave pubblica del server e invia il risultato al server (che solo il server dovrebbe essere in grado di decifrare con la sua chiave privata); entrambe le parti utilizzano quindi il numero casuale per generare una chiave di sessione univoca per la successiva crittografia e decrittografia dei dati durante la sessione
Quindi è chiaro dai passaggi precedenti, avremo bisogno di un certificato digitale per il server web.
Nota importante
Abbiamo in precedenza letto anche l'articolo
Abilitazione di SSL o TLS in Oracle Apps R12
- L'articolo precedente fornisce i passaggi di implementazione per SSL V3 /TLS1.0 con Oracle Apps R12.0 e R12.1 Version.
- Questo articolo illustra in modo specifico i passaggi per l'implementazione di TLS 1.0/1.1/1.2 nella versione R12.1
L'abilitazione di TLS in R12.1 dipenderà dalla topologia dell'implementazione di R12. Sono qui evidenziando tutti i principali.
- Un'unica distribuzione del server web.
Questo è abbastanza semplice. Avremo bisogno del certificato digitale per il server web. I passaggi sono diretti. Il traffico tra browser web e server web sarà crittografato
- Avere un sistema di bilanciamento del carico che serve a 2 o più server web rende le cose un po' complicate
In questo caso, potremmo avere le seguenti opzioni
- Crittografia end-to-end del traffico
L'intero flusso di traffico, ovvero dal browser al sistema di bilanciamento del carico e dal sistema di bilanciamento del carico al server Web, è crittografato
Ci sono due modi per farlo
- Configurazione pass-through :Il bilanciamento del carico in questo caso non decodifica/crittografa il messaggio .it passa solo attraverso il traffico al server web
- Decrittografia/crittografia :Il bilanciamento del carico in questo caso decrittografa il traffico a livello di bilanciamento del carico e poi lo crittografa nuovamente e lo invia al server web che lo decrittografa nuovamente
- Terminatore SSL:il traffico tra il browser Web e il sistema di bilanciamento del carico è solo crittografato. Il bilanciamento del carico funge da terminatore SSL e termina l'SSL a livello di bilanciamento del carico e passa il traffico non crittografato al server web.
I passaggi per abilitare TLS in R12.1 su ciascuna topologia sono riportati di seguito
Distribuzione di un unico server web
Passaggio 0 :Prerequisito
1) Esegui l'upgrade a un minimo di Java Development Kit (JDK) 7.
A tale scopo, segui le istruzioni in My Oracle Support Document 1467892.1, Using JDK 7.0 Latest Update with Oracle E-Business Suite Release 12.0 and 12.1.
2) – Upgrade a Oracle HTTP Server (OHS) 10.1.3.5.
A tale scopo, seguire le istruzioni in My Oracle Support Knowledge Document 454811.1, Upgrade all'ultima patch Oracle AS 10g 10.1.3.x Impostato in Oracle E-Business Suite versione 12.
3) – Applica la CPU di ottobre 2015 o una CPU successiva a Oracle Fusion Middleware 10.1.3.5.
Scarica la patch 21845960 per UNIX o la patch 21845962 per Windows da My Supporto Oracle e seguire le istruzioni nel documento 2051000.1, Documento informativo sull'aggiornamento delle patch critiche per Oracle E-Business Suite 11i e 12 (ottobre 2015).
4) – Applicare gli aggiornamenti specifici della piattaforma.
Per AIX e HP Solo Itanium, applica anche la patch 21948197 a Oracle Fusion Middleware 10.1.3.5.
Solo per Windows, applica anche la patch 22251660 a Oracle Fusion Middle ware 10.1.3.5.
5) – Applicare le patch 22447165 e 22458773 a Oracle Fusion Middleware 10.1.3.5.
6) – Applicare le patch specifiche del prodotto.
•Oracle Workflow – Applicare la patch 22974534:R12.OWF.B per risolvere un problema relativo a Oracle Workflow Notification Mailer.
•Oracle iProcurement – Applicare le patch menzionate in My Oracle Support Knowledge Document 1937220.1, Punch-out in Oracle iProcurement ed Exchange non riesce dopo la migrazione del sito del fornitore da SSLv3 a Protocollo TLS (con SSL Handshake SSLIOClosedOverrideGoodbyeKiss), che corrisponde alla versione dell'applicazione appropriata.
•Oracle iPayment – Assicurati di soddisfare i requisiti elencati nel Documento 1573912.1, All About Oracle Payments Release 12 Crittografia dei dati di Wallet e Payments, per la configurazione dei pagamenti . Inoltre, applicare la patch 22724663:R12.IBY.B.
•Oracle XML Gateway – Per i requisiti di patch di Oracle E-Business Suite Release 12.1, fare riferimento al documento 1961140.1, Configurazione di Oracle XML Gateway per l'autenticazione SSL/TLS in Oracle E -Business Suite versione 12.1. Inoltre, applica la patch 22922530:R12.ECX.B.
Passaggio 1
Imposta il tuo ambiente
- Accedere al livello dell'applicazione come utente del sistema operativo proprietario dei file del livello dell'applicazione.
- Sorgente il file dell'ambiente del livello dell'applicazione (APPS
.env) che si trova nella directory APPL_TOP. - Vai a $INST_TOP/ora/10.1.3 e cerca il file
.env per impostare le tue variabili 10.1.3 ORACLE_HOME. - Vai alla directory $INST_TOP/certs/Apache
creare un file di configurazione OpenSSL specifico per l'host in quella directory come segue
cat new.cnf [req] prompt = no default_md = sha256 distinguished_name = dn req_extensions = ext [dn] CN = www.example.com O = Example Inc OU = Key Team L = San Diego ST = California C = US [ext] subjectAltName = DNS:www.example.com,DNS:example.com
Spiegazione
[req] prompt = no do not prompt default_md = sha256 the default message digest should be sha256 based distinguished_name = dn get the Distinguished Name from the [dn] section req_extensions = ext get the extensions from the [ext] section [dn] CN = www.example.com set Common Name to your full hostname O = Example Inc set the Organization to your company name OU = Key Team set Organizational Unit to any team or division within your company L = San Diego set Location to the city of your company's head quarters ST = California set State to the state or province or territory of your company's head quarters C = US set Country to the ISO country code of the county [ext] subjectAltName = DNS:www.example.com,DNS:example.com specify alternate hostnames.If the hostname of your site is WWW.<domain> also add the domain without the leading WWW. here.Otherwise just repeat the Common Name.
Nel nostro caso, il file sarebbe
cat new.cnf
[req]
prompt = no
default_md = sha256
distinguished_name = dn
req_extensions = ext
[dn]
CN = www.techgoeasy.com
O = techgoeasy
OU = tech
L = Los Angles
ST = California
C = US
[ext]
subjectAltName = DNS: www.techgoeasy.com,DNS:techgoeasy.com
Se ricordi, questo è simile a quello che facciamo nel portafoglio con SSL
Passaggio 2 Crea il file CSR per la generazione della certificazione
(a) Aggiorna PERCORSO
PATH=$<10.1.3 OH>/Apache/open_ssl/bin:$PATH
(b) Assicurati che LD_LIBRARY_PATH contenga un percorso per il tuo Oracle Fusion Middleware 10.1.3 ORACLE_HOME/lib.
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:< FMW 10.1.3 ORACLE_HOME>/lib
(c) Ora, esegui il seguente comando:
openssl req -newkey rsa:2048 -nodes -keyout server.key -sha256 -out new.csr -config new.cnf
Invia il csr all'autorità di certificazione per ottenere il certificato
Non stiamo usando Oracle wallet qui
Passaggio 3 Ricevi il certificato del server e i file della catena di certificati dalla CA.
Dalla CA riceverai quanto segue:
1)Un certificato del server firmato dalla CA
2)Il certificato della CA radice
3) I certificati delle eventuali CA intermedie richieste
Se ricevi solo un file, puoi creare questi file con il metodo seguente
Creazione del certificato dell'autorità di certificazione
Per creare ca.crt
- Copia server.crt sul tuo PC (se necessario) utilizzando uno dei seguenti metodi:
ftp (in modalità binaria) server.crt sul tuo PC
copia il contenuto di server.crt e incollalo nel blocco note sul PC. Salva il file come server.crt
- Fai doppio clic su server.crt per aprirlo con l'estensione Cyrpto Shell.
- Nella scheda Percorso di certificazione, fai clic sulla prima riga (in alto) e poi su Visualizza certificato.
- Nella scheda Dettagli, fai clic su Copia su file, verrà avviata la procedura guidata di esportazione.
- Fai clic su Avanti per continuare.
- Seleziona X.509 con codifica Base64 (.CER) e fai clic su Avanti.
- Fai clic su Sfoglia e vai alla directory di tua scelta.
- Inserisci ca.crt come nome e fai clic su OK per esportare il certificato.
- Chiudi la procedura guidata.
- Copia ca.crt nella directory del tuo portafoglio (se necessario) utilizzando uno dei seguenti metodi:
ftp (in modalità binaria) ca.crt nella directory del portafoglio del livello dell'applicazione. Copia il contenuto di ca.crt e incollalo in un nuovo file nella directory del portafoglio del livello dell'applicazione utilizzando un editor di testo. Salva il file come ca.crt
Metti i file sopra nella stessa directory che contiene la chiave privata del tuo server:server.key.
È necessario assicurarsi che il file del certificato del server si chiami server.crt, il certificato della CA radice si chiami ca.crt e che i certificati intermedi si trovino in un file chiamato intermedi.crt.
Se non si dispone di un certificato intermedio , esegui il comando seguente per creare un file intermedio.crt vuoto
echo -n > intermediate.crt
Verifica che la tua directory $INST_TOP/certs/Apache contenga i seguenti file
server.key
new.csr
server.crt
intermediate.crt
ca.crt
Crea un file di certificato per OPMN contenente il certificato del server e qualsiasi certificato intermedio eseguendo quanto segue:
cat server.crt intermedio.crt ca.crt> opmn.crt
Passaggio 4 Aggiorna il file di contesto
Utilizzare l'editor di contesto E-Business Suite – Oracle Applications Manager (OAM) per modificare le variabili relative a SSL come mostrato in questa tabella:
Variabili correlate a SSL nel file di contesto | ||
Variabile | Valore non SSL | Valore SSL |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocollo | http | https |
porta_web_attiva | come s_webport | come s_webssl_port |
s_webssl_port | non applicabile | l'impostazione predefinita è 4443 |
s_https_listen_parameter | non applicabile | come s_webssl_port |
s_login_page | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
s_external_url | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
Passaggio 5 Esegui configurazione aggiuntiva .
Copiare i file originali da
Replace this line in the template:
<ssl enabled="true" wallet-file="%s_web_ssl_directory%/opmn"/>
With the following:
<ssl enabled="true" openssl-certfile="%s_web_ssl_directory%/Apache/opmn.crt" openssl-keyfile="%s_web_ssl_directory%/Apache/server.key" openssl-password="dummy" openssl-lib="%s_weboh_oh%/lib" ssl-versions="TLSv1.0,TLSv1.1,TLSv1.2" ssl-ciphers="AES128-SHA,DES-CBC3-SHA"/>
The instructions here are to comment out one line and to add a new line to reference mod_ssl.so. Modify the following <IfDefine SSL> LoadModule ossl_module libexec/mod_ossl.so </IfDefine> To the following: <IfDefine SSL> #LoadModule ossl_module libexec/mod_ossl.so LoadModule ssl_module libexec/mod_ssl.so </IfDefine>
Step 1 - Comment out the following line in the template: #SSLWallet file:%s_web_ssl_directory%/Apache Step 2 - Add the following 3 lines into the template: SSLCertificateFile %s_web_ssl_directory%/Apache/server.crt SSLCertificateKeyFile %s_web_ssl_directory%/Apache/server.key SSLCertificateChainFile %s_web_ssl_directory%/Apache/intermediate.crt Step 3 - Replace the following: SSLCipherSuite HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM With the following: SSLCipherSuite HIGH:MEDIUM:!aNULL:!RC4:!SEED:!IDEA:!CAMELLIA:+HIGH:+MEDIUM tep 4 - Replace the following: SSLProtocol -all +TLSv1 +SSLv3 With the following: SSLProtocol all -SSLv2 -SSLv3
Passaggio 6 Esegui una configurazione aggiuntiva per abilitare TLS1.1 e TLS 1.2
La modifica seguente abiliterà i protocolli TLS 1.1 e TLS 1.2 che non sono abilitati per impostazione predefinita in Java 7.
Copia i file originali menzionati nella tabella seguente da
File modello personalizzato | Modifica |
( | Aggiungi:
https.protocols=TLSv1,TLSv1.1,TLSv1.2 |
Passaggio 7 Aggiorna i TrustStore b64InternetCertificate.txt .
Aggiungi il contenuto del file ca.crt al file b64InternetCertificate.txt che si trova nella directory 10.1.2 ORACLE_HOME/sysman/config:
$ cat ca.crt>> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt |
Passaggio 8:aggiorna il TrustStore di cacerts .
Se hai acquistato il certificato del server da una CA commerciale, molto probabilmente non dovrai eseguire questo passaggio poiché il certificato della CA radice sarà già presente in cacerts. Il comando keytool ti avviserà se tenti di aggiungere un certificato già presente in cacerts.
Segui questi passaggi per assicurarti che questi requisiti siano soddisfatti:
- Vai alla directory $OA_JRE_TOP/lib/security.
- Esegui il backup del file cacerts esistente.
- Copia i tuoi file ca.crt in questa directory ed emetti il seguente comando per assicurarti che cacerts disponga dei permessi di scrittura
$ chmod u+w cacerts
Aggiungi il tuo Apache ca.crt a cacerts:
$ keytool -importcert -alias ApacheRootCA -file ca.crt -v -keystore cacerts
Quando richiesto, inserisci la password del keystore (la password predefinita è "changeit").
Aggiungi il tuo Apache ca.crt a cacerts:
$ keytool -importcert -alias ApacheRootCA -file ca.crt -v -keystore cacerts
Quando richiesto, inserisci la password del keystore (la password predefinita è "changeit").
Aggiungi il tuo Apache ca.crt a cacerts:
$ keytool -importcert -alias ApacheRootCA -file ca.crt -v -keystore cacerts
Quando richiesto, inserisci la password del keystore (la password predefinita è "changeit").
$ chmod u-w cacerts
Passaggio 9:esegui la configurazione automatica
Autoconfig può essere eseguito utilizzando lo script adautocfg.sh nella directory del livello applicazione $ADMIN_SCRIPTS_HOME.
Passaggio 10:riavvia i servizi del livello applicazione
Utilizza lo script adapcctl.sh nella directory $ADMIN_SCRIPTS_HOME per arrestare e riavviare i servizi Apache del livello applicazione.
Passaggi da utilizzare quando si utilizza il terminatore SSL
Non è necessaria la creazione e l'installazione del certificato sul server web. In questo caso, dobbiamo solo impostare il parametro del file di contesto indicato di seguito
Modifiche quando si utilizza un acceleratore SSL | ||
Variabile | Valore non SSL | Valore SSL |
s_url_protocol | http | http |
s_local_url_protocol | http | http |
s_webentryurlprotocollo | http | https |
porta_web_attiva | come s_webport | valore della porta di interfacciamento esterna di SSL Accelerator |
s_webentryhost | come s_webhost | Nome host dell'acceleratore SSL |
s_webentrydomain | come s_nomedominio | Nome di dominio dell'acceleratore SSL |
s_enable_sslterminator | # | rimuovere '#' per utilizzare ssl_terminator.conf in ambienti con terminazione SSL |
s_login_page | URL costruito con protocollo http e s_webport | URL costruito con protocollo https, s_webentryhost, s_webentrydomain, s_active_webport |
s_external_url | URL costruito con protocollo http e s_webport | URL costruito con protocollo https, s_webentryhost, s_webentrydomain, s_active_webport |
Esegui configurazione automatica
Autoconfig può essere eseguito utilizzando lo script adautocfg.sh nella directory del livello applicazione $ADMIN_SCRIPTS_HOME.
Riavvia i servizi del livello applicazione
Utilizza lo script adapcctl.sh nella directory $ADMIN_SCRIPTS_HOME per arrestare e riavviare i servizi Apache del livello applicazione.
Passaggi per la crittografia end-to-end con configurazione Pass-through su Load Balancer
1) È necessario eseguire tutti i passaggi indicati per il singolo server web.
2) Il certificato deve essere creato con il nome del bilanciatore di carico
3) Possiamo eseguire i passaggi del certificato su un nodo e quindi copiare tutti i passaggi sugli altri nodi
Modifiche al valore del contesto
Variabili correlate a SSL nel file di contesto | ||
Variabile | Valore non SSL | Valore SSL |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocollo | http | https |
porta_web_attiva | come s_webport | come s_webssl_port |
s_webssl_port | non applicabile | l'impostazione predefinita è 4443 |
s_https_listen_parameter | non applicabile | come s_webssl_port |
s_login_page | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
s_external_url | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
Esegui configurazione automatica
Autoconfig può essere eseguito utilizzando lo script adautocfg.sh nella directory del livello applicazione $ADMIN_SCRIPTS_HOME.
Riavvia i servizi del livello applicazione
Utilizza lo script adapcctl.sh nella directory $ADMIN_SCRIPTS_HOME per arrestare e riavviare i servizi Apache del livello applicazione.
Passaggi per la crittografia end-to-end con crittografia/decrittografia su Load Balancer
1) È necessario eseguire tutti i passaggi indicati per il singolo server web.
2) Il certificato deve essere creato anche a livello di bilanciamento del carico e anche a livello di nodo web. Deve essere creato con il nome del sistema di bilanciamento del carico su entrambi i lati
3) Possiamo eseguire i passaggi del certificato su un nodo Web e quindi copiare tutti i passaggi sugli altri nodi
4) Il bilanciamento del carico dovrebbe avere il certificato SSL client per il certificato del nodo Web
Modifiche al valore del contesto
Variabili correlate a SSL nel file di contesto | ||
Variabile | Valore non SSL | Valore SSL |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocollo | http | https |
porta_web_attiva | come s_webport | come s_webssl_port |
s_webssl_port | non applicabile | l'impostazione predefinita è 4443 |
s_https_listen_parameter | non applicabile | come s_webssl_port |
s_login_page | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
s_external_url | URL costruito con protocollo http e s_webport | URL costruito con protocollo https e s_webssl_port |
Esegui configurazione automatica
Autoconfig può essere eseguito utilizzando lo script adautocfg.sh nella directory del livello applicazione $ADMIN_SCRIPTS_HOME.
Riavvia i servizi del livello applicazione
Utilizza lo script adapcctl.sh nella directory $ADMIN_SCRIPTS_HOME per arrestare e riavviare i servizi Apache del livello applicazione.
Configurazione aggiuntiva
Configurazione del livello del database
I prodotti Oracle come Oracle Configurator, Order Management, Order Capture, Quoting, iPayment, iStore e Pricing sfruttano il database come client HTTP. L'implementazione di TLS per Oracle Database Server (che funge da client che invia richieste al server Web) utilizza Oracle Wallet Manager per configurare un portafoglio Oracle.
Per abilitare la richiesta del client HTTPS dal database utilizzando UTL_HTTP, è necessario stabilire un truststore in formato portafoglio. Non è necessario un certificato del server per questo portafoglio. Devi solo importare il certificato CA radice per le CA radice che sono il trust anchor per i siti a cui hai bisogno di UTL_HTTP per connetterti.
- Dopo aver impostato l'ambiente per il livello database, vai alla directory $ORACLE_HOME/appsutil.
- Crea una nuova directory del portafoglio denominata wallet.
- Vai alla directory del portafoglio appena creata.
- Apri Oracle Wallet Manager come processo in background.
owm &
- Nel menu Oracle Wallet Manager, vai a Wallet> Nuovo .
Rispondi NO a:La directory predefinita del tuo portafoglio non esiste. Vuoi crearlo ora? La schermata del nuovo portafoglio ora ti chiederà di inserire una password per il tuo portafoglio. Fare clic su NO quando richiesto:è stato creato un nuovo portafoglio vuoto. Desideri creare una richiesta di certificato in questo momento? - Se devi importare ca.crt, nel menu Oracle Wallet Manager vai a Operazioni> Importa certificato attendibile . Fai clic su OK . Fare doppio clic su ca.crt per importarlo.
- Salva il portafoglio:nel menu Oracle Wallet Manager, fai clic su Portafoglio . Verifica il Accesso automatico la casella di controllo è selezionata. Fai clic su Salva .
Per verificare che il portafoglio sia configurato e accessibile correttamente, accedi a SQLPLUS come utente dell'app ed esegui quanto segue:
SQL>select utl_http.request('[indirizzo di accesso]', '[indirizzo proxy]', 'file:[percorso completo alla directory del portafoglio]', null) da dual;
dove:
'[indirizzo di accesso]' =l'URL del tuo portale di installazione rapida Oracle E-Business Suite.
'[indirizzo proxy] ' =l'URL del tuo server proxy o NULL se non utilizzi un server proxy.
'file:[percorso completo alla directory del portafoglio]' =la posizione della directory del tuo portafoglio (non specificare i file del portafoglio effettivi).
Il parametro finale è la password del portafoglio, che è impostata su null per impostazione predefinita.
Esempi:
SQL>select utl_http.request('https://www.oracle.com/robots.txt','http://www-proxy.com:80', 'file:/d1/oracle/db/tech_st/12.1.0/appsutil/wallet', null) from dual;
SQL>select utl_http.request('https://www.oracle.com/robots.txt',null, 'file:/d1/oracle/db/tech_st/12.1.0/appsutil/wallet', null) from dual;
Se il portafoglio è stato impostato correttamente, ti verranno restituiti i primi 2.000 caratteri della pagina HTML.
Link correlati
Abilitazione di SSL o TLS in Oracle E-Business Suite versione 12 (ID documento 2143099.1)
Come trovare la versione dei componenti R12
40 Adpatch domanda che ogni DBA dovrebbe conoscere
Comando awk
Comando Keytool