apt-transport-https - instrukcja obsługi, opcje, przykłady poleceń


NAZWA

apt-transport-https - Transport APT do pobierania przez protokół HTTP Secure (HTTPS)

OPIS

Ten transport APT umożliwia korzystanie z repozytoriów dostępnych za pośrednictwem bezpiecznego protokołu HTTP (HTTPS), określanego również jako HTTP przez TLS. Jest dostępny domyślnie od apt 1.5 i był dostępny wcześniej w pakiecie apt-transport-https. Należy zauważyć, że transport nigdy nie jest wywoływany bezpośrednio przez użytkownika, ale używany przez narzędzia APT na podstawie konfiguracji użytkownika.

HTTP sam w sobie jest niezaszyfrowanym protokołem transportowym (porównaj apt-transport-http(1)), który, jak wskazuje dołączona litera S, jest opakowany w zaszyfrowaną warstwę znaną jako Transport Layer Security (TLS) w celu zapewnienia szyfrowania typu end-to-end. Wystarczająco sprawny atakujący może nadal obserwować partnerów komunikacyjnych, a głębsza analiza zaszyfrowanej komunikacji może nadal ujawnić ważne szczegóły. Przegląd dostępnych alternatywnych metod transportu znajduje się w sources.list(5).

OPCJE

Protokół HTTPS jest oparty na protokole HTTP, więc wszystkie opcje obsługiwane przez apt-transport-http(1) są również dostępne przez Acquire::https i domyślnie mają te same wartości, co Acquire:: http. Ta strona podręcznika dokumentuje tylko opcje unikatowe dla https.

Poświadczenia serwera

Domyślnie wszystkie certyfikaty zaufane przez system (patrz pakiet ca-certificates) są używane do weryfikacji certyfikatu serwera. Alternatywny urząd certyfikacji (CA) można skonfigurować za pomocą opcji Acquire::https::CAInfo i jej opcji specyficznej dla hosta Acquire::https::CAInfo::host. Opcja CAInfo określa plik składający się z certyfikatów CA (w formacie PEM) połączonych ze sobą w celu utworzenia łańcucha, którego APT powinien użyć do zweryfikowania ścieżki z twojego samopodpisanego certyfikatu głównego. Jeśli zdalny serwer zapewnia cały łańcuch podczas wymiany, plik musi zawierać tylko certyfikat główny. W przeciwnym razie wymagany jest cały łańcuch. Jeśli potrzebujesz obsługiwać wiele organów, jedynym sposobem jest połączenie wszystkiego.

Niestandardową listę unieważnionych certyfikatów (CRL) można skonfigurować za pomocą opcji Acquire::https::CRLFile i Acquire::https::CRLFile::host. Podobnie jak w przypadku poprzedniej opcji należy określić plik w formacie PEM.

Wyłączanie zabezpieczeń

Jeśli podczas uwierzytelniania serwera weryfikacja certyfikatu z jakiegoś powodu nie powiedzie się (wygasł, został odwołany, człowiek w środku itp.), połączenie nie powiedzie się. Jest to oczywiście to, czego chcesz we wszystkich przypadkach i co zapewnia domyślna wartość (true) opcji Acquire::https::Verify-Peer i jej wariant specyficzny dla hosta. Jeśli dokładnie wiesz, co robisz, ustawienie tej opcji na „fałsz” umożliwia pominięcie weryfikacji certyfikatu równorzędnego i pomyślną wymianę. Ponownie ta opcja służy wyłącznie do celów debugowania lub testowania, ponieważ usuwa wszystkie zabezpieczenia zapewniane przez użycie protokołu HTTPS.

Podobnie opcji Acquire::https::Verify-Host i jej wariantu dla danego hosta można użyć do dezaktywacji funkcji bezpieczeństwa: Certyfikat dostarczony przez serwer zawiera tożsamość serwera, która powinna być zgodna z nazwą DNS używaną do uzyskiwania do niego dostępu. Domyślnie, zgodnie z wymaganiami RFC 2818, nazwa serwera lustrzanego jest porównywana z tożsamością znalezioną w certyfikacie. To domyślne zachowanie jest bezpieczne i nie powinno być zmieniane, ale jeśli wiesz, że używany serwer ma nazwę DNS niezgodną z tożsamością w jego certyfikacie, możesz ustawić opcję na „fałsz”, co uniemożliwi porównanie od wykonania.

Uwierzytelnianie klienta

Oprócz obsługi uwierzytelniania opartego na haśle (patrz apt_auth.conf(5)) HTTPS obsługuje również uwierzytelnianie na podstawie certyfikatów klienta za pośrednictwem Acquire::https::SSLCert i Acquire::https::SSLKey. Powinny one być ustawione odpowiednio na nazwę pliku certyfikatu klienta X.509 i powiązany (nieszyfrowany) klucz prywatny, oba w formacie PEM. W praktyce wysoce zalecane jest stosowanie wariantów obu opcji specyficznych dla gospodarza.

PRZYKŁADY

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"
};

ZOBACZ TEŻ

apt-transport-http(1) apt.conf(5) apt_auth.conf(5) sources.list(5)

BŁĘDY

Strona błędu APT[1]. Jeśli chcesz zgłosić błąd w APT, zobacz /usr/share/doc/debian/bug-reporting.txt lub polecenie reportbug(1).

AUTOR

zespół APT

UWAGI

1. Strona błędu APT: http://bugs.debian.org/src:apt