Questo è il comando gpgwrap che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS
PROGRAMMA:
NOME
gpgwrap - un piccolo involucro per gpg
SINOSSI
gpgwrap -V
gpgwrap -P [-v] [-i] [-a] [-p ]
gpgwrap -F [-v] [-i] [-a] [-c] [-p ] [-O ] [--] [ ...]
gpgwrap [-v] [-i] [-a] [-p ] [-O ] [--] gpg [opzioni gpg]
DESCRIZIONE
Il GNU Privacy Guard (gpg) fornisce l'opzione --passphrase-fd. Questo istruisce gpg a
leggere la passphrase dal descrittore di file specificato. Di solito questo descrittore di file è aperto
prima gpg viene eseguito tramite execvp(3). Esattamente questo è quello che gpgwrap sta facendo. Il
la passphrase può essere passata a gpgwrap in modi 4:
* come percorso del file, dove la passphrase viene memorizzata come testo normale nel file
* viene reindirizzato da un altro programma allo stdin di gpgwrap
* tramite la GPGWRAP_PASSPHRASE variabile d'ambiente
* gpgwrap lo richiede
Senza precauzioni il primo punto mina l'infrastruttura sicura gpg fornisce. Ma
in ambienti puramente batch oriented questo potrebbe essere quello che vuoi. Altrimenti se lo sei
disposto a inserire le passphrase una volta e non vuole che vengano archiviate come testo normale in un file
gpg-agente è quello che stai cercando. Un'altra obiezione di sicurezza potrebbe essere l'uso del
variabile d'ambiente GPGWRAP_PASSPHRASE che contiene la passphrase e può essere letto da
altri processi dello stesso utente.
VERSIONI
-V, --versione
Stampa la versione ed esci.
-P, --stampa
Ottieni la passphrase e stampala mutilata su stdout.
-F, --file
Leggi gpg comandi dai file dati. Se is - viene letto da stdin.
È previsto esattamente un comando per riga. La riga data è gestita in
modo seguente:
* In primo luogo la passphrase è storpiata. Ciò significa che personaggi insoliti
sono sostituiti dai loro numeri ottali sfuggiti alla barra rovesciata.
* In secondo luogo la passphrase alterata viene memorizzata nella variabile d'ambiente
GPGWRAP_PASSPHRASE.
* "exec gpgwrap -- " viene anteposto a ciascuna riga, prima che il risultato venga passato come
argomento a "sh -c".
-h, --aiuto
Stampa le informazioni sull'utilizzo.
-v, --verboso
Aumenta il livello di verbosità.
-i, --interattivo
Richiedi sempre la passphrase (ignora -p e la variabile d'ambiente).
-a, --ask-due volte
Chiedi due volte se ti viene richiesta una passphrase.
-c, --check-exit-code
Durante la lettura dei comandi gpg da un file, gpgwrap ignora per impostazione predefinita il codice di uscita
dei suoi processi figli. Questa opzione abilita la verifica del codice di uscita. Se un bambino
termina in modo anomalo o con codice di uscita diverso da 0 gpgwrap si ferma subito e
ritorna con questo codice di uscita. Vedi anche la sezione BUG.
-p , --file-passphrase
Leggi la passphrase da . Se is - viene letto da stdin. La passphrase
dovrebbe essere in testo normale. Se questa opzione non viene fornita, la passphrase sarà
essere preso o dalla variabile d'ambiente GPGWRAP_PASSPHRASE o sarà
richiesto sul tty di controllo se la variabile di ambiente non è impostata.
-o , --nome-opzione
Specificare il nome dell'opzione "--passphrase-fd" intesa dal programma come
eseguito. Questo è utile se vuoi usare gpgwrap in combinazione con altri
programmi che gpg.
LIMITAZIONI
La passphrase fornita è soggetta a diverse limitazioni a seconda del modo in cui è stata passata
a gpgwrap:
* C'è un limite di dimensione: la passphrase non deve essere più grande di alcune
kilobyte (esaminare il codice sorgente per il limite esatto).
* gpgwrap ti permette di usare tutti i caratteri in una passphrase anche \000, ma questo lo fa
non significa questo gpg lo accetterà. gpg può rifiutare la tua passphrase o può solo leggere
una parte di esso, se contiene caratteri come \012 (in C noto anche come \n).
* Se imposti la variabile d'ambiente GPGWRAP_PASSPHRASE dovresti prendere speciale
attenzione con il carattere barra rovesciata, perché gpgwrap usa la barra rovesciata per sfuggire all'ottale
numeri, (vedi opzione -F). Quindi scrivi la barra rovesciata stessa come numero ottale: \134.
ESEMPI
1.
gpgwrap -p /percorso/di/un/file/segreto \
gpg -c -z 0 --batch --no-tty \
--cipher-algo blowfish < infile > outfile
Leggi la passphrase da /percorso/a/a/segreto/file ed esegui gpg fare simmetrico
crittografia di infile e scriverlo su outfile.
2.
gpgwrap -io -a \
gpg -c -z 0 --batch --no-tty \
--cipher-algo blowfish < infile > outfile
Come sopra tranne che gpgwrap richiede due volte la passphrase.
3.
gpgwrap -F -i - <
gpg --decrypt --batch --no-tty < "$HOME/infile1" > "$HOME/outfile1"
gpg --decrypt --batch --no-tty < "$HOME/infile2" > "$HOME/outfile2"
gpg --decrypt --batch --no-tty < "$HOME/infile3" > "$HOME/outfile3"
gpg --decrypt --batch --no-tty < "$HOME/infile4" > "$HOME/outfile4"
EOL
gpgwrap richiede la passphrase ed esegue quattro istanze di gpg decifrare
i file dati.
4.
GPGWRAP_PASSPHRASE="mysecretpassphrase"
export GPGWRAP_PASSPHRASE
gpgwrap -F -c -v /tmp/cmdfile1 - /tmp/cmdfile2 <
gpg --decrypt --batch --no-tty < "$HOME/infile1" > "$HOME/outfile1"
gpg --decrypt --batch --no-tty < "$HOME/infile2" > "$HOME/outfile2"
gpg --decrypt --batch --no-tty < "$HOME/infile3" > "$HOME/outfile3"
gpg --decrypt --batch --no-tty < "$HOME/infile4" > "$HOME/outfile4"
EOL
Come sopra tranne che gpgwrap ottiene la passphrase tramite l'ambiente
variabile, legge i comandi in aggiunta da altri file e controlla il codice di uscita di
ogni gpg esempio. Questo significa che se uno gpg il comando ha un codice di uscita diverso da zero, no
vengono eseguiti ulteriori comandi. per di più gpgwrap produce un output dettagliato.
5.
GPGWRAP_PASSPHRASE="$(gpgwrap -P -i -a)"
export GPGWRAP_PASSPHRASE
Find . -profondità massima 1 -tipo f |
mentre leggi FILE; fare
FILE2="$FILE.bz2.gpg"
bzip2 -c "$FILE" |
gpgwrap gpg -c -z 0 --batch --no-tty \
--cipher-algo pesce palla > "$FILE2" &&
toccare -r "$FILE" "$FILE2" &&
rm -f "$FILE"
fatto
Leggere la passphrase, comprimere tutti i file nella directory corrente, crittografarli e
mantieni la data dal file originale.
6.
Find . -maxdepth 1 -type f -name '*.bz2.gpg' |
awk '{
printf("gpg --decrypt --batch --no-tty --quiet ");
printf("--no-secmem-warning < %s\n", $0);
}' |
gpgwrap -F -i -c - |
bzip2 -d -c - |
grep -i 'dati'
Decifra tutti i file *.bz2.gpg nella directory corrente, decomprimili e stampa
fuori tutte le occorrenze dei dati. Se invii il risultato a meno ti metti nei guai
perché gpgwrap ed meno prova a leggere dal TTY allo stesso tempo. In tal caso
è meglio usare la variabile d'ambiente per dare la passphrase (l'esempio
sopra mostra come farlo).
7.
GPGWRAP_PASSPHRASE="$(gpgwrap -P -i -a)"
export GPGWRAP_PASSPHRASE
gpgwrap -P |
SSH -C -x -P -l host utente "
GPGWRAP_PASSPHRASE=\"\$(gatto)\"
...
"
Richiedi due volte una passphrase e scrivila al GPGWRAP_PASSPHRASE ambiente
variabile.
8.
eco -n "Password: "
sty -eco
read GPGWRAP_PASSPHRASE
eco
sty eco
export GPGWRAP_PASSPHRASE
Un altro modo per richiedere manualmente la passphrase. Era necessario in combinazione
con versioni precedenti di gpgwrap, perché non hanno sostenuto -P. Sii consapevole che con
questo metodo non richiede alcuna conversione automatica in numeri ottali con escape backslash
posto.
9.
eco "mysecretpassphrase" |
gpg --batch --no-tty --passphrase-fd 0 \
--output file di uscita --decrypt file di ingresso
Metodo economico per dare la passphrase a gpg senza gpgwrap. Nota che non puoi usare
stdin per passare un file a gpg, perché stdin è già utilizzato per la passphrase.
10
gpg --batch --no-tty \
--passphrase-fd 3 3< /percorso/di/un/file/segreto \
< infile > outfile
Questo è un metodo più avanzato per fornire la passphrase, è equivalente a Option
-p di gpgwrap. Questo esempio dovrebbe funzionare almeno con la bash.
11
gpg --batch --no-tty --passphrase-fd 3 \
3< <(echo "mysecretpassphrase") \
< infile > outfile
Come sopra, ma la passphrase viene fornita direttamente. Questo esempio dovrebbe almeno
lavorare con la bash.
Usa gpgwrap online usando i servizi onworks.net