Làm cách nào để cài đặt khóa gpg từ phía sau tường lửa?


13

Tôi hiểu rằng các trình điều khiển khóa đang sử dụng cổng 11371 nhưng trong nhiều trường hợp bạn không được phép kết nối với cổng này và bạn không thể thêm

Có nhiều trường hợp khi bạn không thể sửa đổi cấu hình tường lửa.

Lệnh ví dụ thất bại

 gpg --keyserver keyserver.ubuntu.com --recv-keys 0A5174AF

Làm thế nào để bạn giải quyết vấn đề này?

Câu trả lời:


15

Một số máy chủ chính cũng trả lời cổng 80:

gpg --keyserver hkp://wwwkeys.de.pgp.net:80 --recv-keys 0A5174AF

Và vì hkp phụ thuộc vào http, bạn cũng có thể sử dụng nó qua máng web proxy.


2
Ubuntu giải quyết vấn đề này và bây giờ máy chủ cũng phản hồi trên cổng 80.
sorin

3
wwwkeys.de.pgp.net:80Không làm việc nữa.
BuZZ-dEE

1
hkp: //p80.pool.sks-keyservers.net: 80 tác phẩm.
cáu

cũnghkp://keys.gnupg.net:80
Trevor Boyd Smith

11

Cái gì đó như

gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 \
    --keyserver-options "timeout=10 http-proxy=$http_proxy" \
    --recv-keys B0F4253373F8F6F510D42178520A9993A1C052F8

Phần quyết định là http-proxy=$http_proxy, có thể được thay thế bằng http-proxy=http://corporate.proxy.test:8765ví dụ.


2
Điều quan trọng cần lưu ý rằng thứ tự của các cờ là quan trọng ở đây. Nếu bạn đặt --recv-keystrước --keyserver-options, bạn sẽ gặp một lỗi giống như:gpg: Note: '--keyserver-options' is not considered an option gpg: "--keyserver-options" not a key ID: skipping gpg: "timeout=10 http-proxy=http://fooproxy:8080" not a key ID: skipping
Mani

1
Trang thủ công nói rằng các tùy chọn máy chủ khóa có thể được phân cách bằng dấu phẩy hoặc dấu cách, nhưng tôi thấy dấu phẩy cần thiết trong khi phân định không gian dẫn đến lỗi sử dụng gpg. phiên bản gpg 2.0.22. Giống như:--keyserver-options "timeout=10,http-proxy=${http_proxy}"
Ed Randall

2

thử cái này

sudo apt-key adv --keyserver-options http-proxy="http://<username>:<password>@<proxy_server_addr>:<proxy_port>" --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys <key_to_import>

1
Chào mừng bạn đến với Lỗi Máy chủ! Trong khi điều này về mặt lý thuyết có thể trả lời câu hỏi, vui lòng cung cấp ngữ cảnh xung quanh các lệnh để những người khác sẽ có một số ý tưởng về những gì nó phải làm và tại sao đó là một giải pháp. - Sử dụng proxy thường là một giải pháp tốt mặc dù.
HBruijn

1

Chỉ muốn thêm một vài ghi chú ở đây.

Trang hướng dẫn cho gpg lưu ý rằng --keyserver-options "http-proxy=foo"sẽ ghi đè http_proxybiến môi trường, nhưng ít nhất là cho ...

gpg --version gpg (GnuPG) 2.1.15 libgcrypt 1.7.9

Nó không nhận được http_proxybiến môi trường (hoặc HTTP_PROXY) nhưng không chấp nhận --keyserver-optionsgiải pháp.


Bạn có thể vui lòng cung cấp một liên kết đến trang web này? Tôi nghi ngờ rằng các tùy chọn chuyển đổi ghi đè biến proxy, nhưng chỉ cho một lệnh này. Biến http_proxy sau đó không thay đổi so với biến cũ. Tuy nhiên, nó không được lập trình hoàn hảo nếu các biến http_proxy và no_proxy bị bỏ qua.
uav

Tôi không hiểu tại sao apt, Java và gpg cần định nghĩa proxy riêng của họ. Theo tôi, họ nên sử dụng các biến môi trường mặc định! Có một mẹo cho apt. Chỉ cần tạo một /etc/apt/apt.conf trống. LOL, ai làm điều này?
uav
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.