apt-transport-https - Trasporto APT per il download tramite il protocollo HTTP Secure (HTTPS)
Questo trasporto APT consente l'uso di repository a cui si accede tramite il protocollo HTTP Secure (HTTPS), noto anche come HTTP su TLS. È disponibile per impostazione predefinita da apt 1.5 ed era disponibile prima nel pacchetto apt-transport-https. Si noti che un trasporto non viene mai chiamato direttamente da un utente ma utilizzato dagli strumenti APT in base alla configurazione dell'utente.
HTTP è di per sé un protocollo di trasporto non crittografato (confronta apt-transport-http(1)), che, come indicato dalla S aggiunta, è racchiuso in un livello crittografato noto come Transport Layer Security (TLS) per fornire la crittografia end-to-end. Un utente malintenzionato sufficientemente capace può ancora osservare i partner di comunicazione e un'analisi più approfondita della comunicazione crittografata potrebbe ancora rivelare dettagli importanti. Una panoramica sui metodi di trasporto alternativi disponibili è fornita in sources.list(5).
Il protocollo HTTPS è basato sul protocollo HTTP, quindi tutte le opzioni supportate da apt-transport-http(1) sono disponibili anche tramite Acquire::https e per impostazione predefinita saranno gli stessi valori specificati per Acquire:: http. Questa manpage documenterà solo le opzioni uniche di https.
Per impostazione predefinita, tutti i certificati attendibili dal sistema (vedere il pacchetto ca-certificates) vengono utilizzati per la verifica del certificato del server. È possibile configurare un'autorità di certificazione (CA) alternativa con l'opzione Acquire::https::CAInfo e la relativa opzione specifica dell'host Acquire::https::CAInfo::host. L'opzione CAInfo specifica un file composto da certificati CA (in formato PEM) concatenati insieme per creare la catena che APT dovrebbe utilizzare per verificare il percorso dal certificato root autofirmato. Se il server remoto fornisce l'intera catena durante lo scambio, il file deve contenere solo il certificato radice. Altrimenti, è necessaria l'intera catena. Se devi supportare più autorità, l'unico modo è concatenare tutto.
È possibile configurare un elenco di revoche di certificati (CRL) personalizzato con le opzioni Acquire::https::CRLFile e Acquire::https::CRLFile::host. Come con l'opzione precedente, è necessario specificare un file in formato PEM.
Durante l'autenticazione del server, se la verifica del certificato fallisce per qualche motivo (scaduto, revocato, man in the middle, ecc.), la connessione fallisce. Questo è ovviamente ciò che si desidera in tutti i casi e ciò che fornisce il valore predefinito (vero) dell'opzione Acquire::https::Verify-Peer e la sua variante specifica dell'host. Se sai esattamente cosa stai facendo, impostando questa opzione su "false" puoi ignorare la verifica del certificato peer e fare in modo che lo scambio abbia successo. Ancora una volta, questa opzione è solo a scopo di debug o test in quanto rimuove tutta la sicurezza fornita dall'uso di HTTPS.
Allo stesso modo l'opzione Acquire::https::Verify-Host e la sua variante specifica per l'host possono essere utilizzate per disattivare una funzione di sicurezza: il certificato fornito dal server include l'identità del server che dovrebbe corrispondere al nome DNS utilizzato per accedervi. Per impostazione predefinita, come richiesto da RFC 2818, il nome del mirror viene confrontato con l'identità trovata nel certificato. Questo comportamento predefinito è sicuro e non dovrebbe essere modificato, ma se sai che il server che stai utilizzando ha un nome DNS che non corrisponde all'identità nel suo certificato, puoi impostare l'opzione su "false", che impedirà il confronto dall'essere eseguito.
Oltre a supportare l'autenticazione basata su password (vedere apt_auth.conf(5)) HTTPS supporta anche l'autenticazione basata su certificati client tramite Acquire::https::SSLCert e Acquire::https::SSLKey. Questi dovrebbero essere impostati rispettivamente al nome file del certificato client X.509 e alla chiave privata associata (non crittografata), entrambi in formato PEM. In pratica si raccomanda vivamente l'uso delle varianti specifiche dell'host di entrambe le opzioni.
Acquire::https { Proxy::example.org "DIRECT"; Proxy "socks5h://apt:pass@127.0.0.1:9050"; Proxy-Auto-Detect "/usr/local/bin/apt-https-proxy-auto-detect"; No-Cache "true"; Max-Age "3600"; No-Store "true"; Timeout "10"; Dl-Limit "42"; Pipeline-Depth "0"; AllowRedirect "false"; User-Agent "My APT-HTTPS"; SendAccept "false"; CAInfo "/path/to/ca/certs.pem"; CRLFile "/path/to/all/crl.pem"; Verify-Peer "true"; Verify-Host::broken.example.org "false"; SSLCert::example.org "/path/to/client/cert.pem"; SSLKey::example.org "/path/to/client/key.pem" };
apt-transport-http(1) apt.conf(5) apt_auth.conf(5) sources.list(5)
Pagina bug APT[1]. Se desideri segnalare un bug in APT, consulta /usr/share/doc/debian/bug-reporting.txt o il comando reportbug(1).
team APT
1. Pagina bug di APT: http://bugs.debian.org/src:apt