Làm cách nào để bỏ qua / bỏ qua kiểm tra chữ ký gpg của apt?


47

Tất cả các máy chủ khóa tôi truy cập đã hết thời gian. Tôi cần cài đặt các gói mà không cần kiểm tra chữ ký của các khóa công khai. Có cách nào để bỏ qua tất cả các kiểm tra chữ ký / bỏ qua tất cả các lỗi chữ ký hoặc đánh lừa apt nghĩ rằng chữ ký được thông qua?

Tôi nhận thức rất rõ rằng thật nguy hiểm khi làm điều này


1
Thông thường bạn sẽ cài đặt khóa cục bộ cùng lúc với khi bạn thêm một kho lưu trữ, vậy tại sao bạn cần truy cập vào các máy chủ khóa?
JanC

Câu trả lời:


68

Vượt qua --allow-unauthenticatedtùy chọn apt-getnhư trong:

sudo apt-get --allow-unauthenticated upgrade

Từ trang hướng dẫn tha của apt-get:

--allow-không xác thực
Bỏ qua nếu các gói không thể được xác thực và không nhắc về nó. Điều này rất hữu ích cho các công cụ như pbuilder. Mục cấu hình: APT :: Get :: AllowUnauthenticated.

Bạn có thể đặt cài đặt này vĩnh viễn bằng cách sử dụng tệp cấu hình của riêng bạn tại /etc/apt/apt.conf.d/thư mục. Tên tệp có thể 99myownvà nó có thể chứa dòng này:

APT::Get::AllowUnauthenticated "true";

Theo cách này, bạn không cần sử dụng tùy chọn mỗi lần bạn muốn cài đặt phần mềm. Lưu ý: Tôi không khuyên bạn nên đặt tùy chọn này theo mặc định, nó bỏ qua kiểm tra chữ ký có thể cho phép kẻ thù xâm phạm máy tính của bạn.


4
Để biết thông tin: Điều này làm việc với apt-getnhưng không phải với aptlệnh đơn giản .
Tor Klingberg

2
Ubuntu 16.0 LTS. Điều này không hoạt động / không ảnh hưởng đến bất cứ điều gì
wvxvw

7

Nếu bạn đang cố gắng lấy một gói từ kho lưu trữ nơi họ đã đóng gói các khóa và đưa chúng vào kho lưu trữ và không ở đâu khác, thì có thể rất khó chịu khi tải xuống và cài đặt gói khóa / khóa bằng dpkg và rất khó thực hiện một cách dễ dàng kịch bản và lặp lại.

Kịch bản dưới đây không được khuyến nghị nếu bạn có thể cài đặt khóa từ máy chủ khóa hoặc tải xuống từ nguồn đáng tin cậy qua https, nhưng nếu bạn không có BẤT K way cách nào khác, bạn có thể sử dụng cách này.

echo "deb http://your.repo.domain/repository/ $(lsb_release -c -s) universe" | sudo tee /etc/apt/sources.list.d/your-repo-name.list

sudo apt -o Acquire::AllowInsecureRepositories=true \
-o Acquire::AllowDowngradeToInsecureRepositories=true \
update

## if the 'apt update' above fails it is likely due to previously
## having the GPG key and repository on the system, you can clean
## out the old lists with `sudo rm /var/lib/apt/lists/your.repo.domain*`

apt-get -o APT::Get::AllowUnauthenticated=true install repo-keyring-pkgname

## If you ever run `sudo apt-key del your-repos-keyID`
## you may have to `sudo apt remove --purge repo-keyring-pkgname`
## Update should run without the GPG warnings now that the key is installed

apt-get update
apt-get install somepkg-from-repo

Ban đầu tôi kết hợp điều này bởi vì i3 trong repo sur5r của họ thực hiện điều này, nhưng sau đó tôi phát hiện ra các khóa của họ nằm trong danh sách keyerver.ub Ubuntu.com, vì vậy tôi có thể vừa sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E3CA1A89941C42E6và tránh tất cả các rắc rối gói bổ sung.


Đến đây vì vấn đề i3 - đã sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E3CA1A89941C42E6giải quyết nó! Cảm ơn rất nhiều!
Benedikt Köppel

6

Có lẽ bạn có thể thử tạo tệp /etc/apt/apt.conf (nó sẽ được đọc nếu bạn tạo nó) và chèn mã này:

APT{Ignore {"gpg-pubkey"; }};

5
Nó không làm việc cho tôi. Nhưng hoạt động khi tôi thêm vàoAPT { Get { AllowUnauthenticated "1"; }; };
php-coder

ubfox 16.0 LTS: không ảnh hưởng đến bất cứ điều gì apt-get làm.
wvxvw

1

Tạo /etc/apt/apt.conf.d/99allow_unauthvới nội dung này:

APT { Get { AllowUnauthenticated "1"; }; };

Cảm ơn bình luận của php-coder .


0

Tôi đã chạy trong cùng một vấn đề với một máy chủ debian cũ. Tôi không thể làm một sự kiện

apt-get update

Điều này cho tôi lỗi sau:

E: Release file expired, ignoring http://archive.debian.org/debian/dists/squeeze-lts/Release (invalid since 1183d 0h 2min 51s)

Cuối cùng, giải pháp là thêm điều này:

Acquire::Check-Valid-Until false;

to /etc/apt/apt.conf (tạo nó nếu nó không tồn tại). Sau này, lỗi trở thành một cảnh báo đơn giản.

Tôi đoán nó cũng có thể hoạt động trên Ubuntu.

Xin lưu ý rằng nó hoàn toàn không an toàn.


Nếu nó không an toàn, thì tôi khuyên bạn không nên đăng nó.
Yufenyuy Veyeh Dider

Cách an toàn để làm điều này là nâng cấp bản phân phối. Trong một số trường hợp khách hàng phức tạp, bạn không có cách nào để nâng cấp. Và vì toàn bộ câu hỏi được bắt đầu với tuyên bố từ chối trách nhiệm này: 'Tôi nhận thức rất rõ rằng thật nguy hiểm khi làm điều này' tôi nghĩ rằng sự đóng góp của tôi đã bị chiếm đoạt. Nếu không, tôi có thể loại bỏ nó.
Gnusam
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.