web-dev-qa-db-ja.com

aptキーのブロックされた送信hkpポートを回避する方法

私はUbuntu 9.10を使用していて、いくつかのaptリポジトリを追加する必要があります。残念ながら、Sudo apt-get updateを実行すると、次のようなメッセージが表示されます。

W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5A9BF3BB4E5E17B5
W: GPG error: http://ppa.launchpad.net karmic Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1DABDBB4CEC06767

したがって、これらのリポジトリのキーをインストールする必要があります。 9.10では、これを行うオプションがあります。

Sudo add-apt-repository ppa:nvidia-vdpau/ppa

詳細は このUbuntuヘルプ記事 を参照してください。

これは素晴らしいことですが、WindowsとIEを実行している秘書が必要とするポート以外のほとんどすべてのポートへの送信接続をブロックするファイアウォールの背後にあるワークステーションで実行しています。

ここで問題となっているポートはhkpサービス、ポート11371です。

手動でキーをダウンロードして、aptのキーリングにインストールする方法があるようです。 add-apt-repositoryやwgetなどを使用して、代替サーバーからキーをダウンロードし、ポート80で使用できるようにする方法もあります。

ただし、そのための簡潔な手順はまだわかりません。私が探しているのは:

  1. Apt-packageの公開鍵を見つける方法(これらを含むリソースの推奨事項、および/または検索のヒント。キーハッシュの検索は、今のところそれほど効果的ではないようです。)
  2. キーを取得する方法(gpgまたはadd-apt-repositoryを使用して自動的に実行できますか?)
  3. Aptのキーリングにキーを追加する方法

前もって感謝します。

35
Kief

これはUbuntuの次のNattyバージョンで修正されました: https://launchpad.net/ubuntu/natty/+source/software-properties/0.78.1

古いバージョンを使用している場合は、ppa.pyを編集する必要があります。

Sudo gedit /usr/lib/python2.6/dist-packages/softwareproperties/ppa.py

それが言うところ:

keyserver.ubuntu.com

への変更:

hkp://keyserver.ubuntu.com:80

保存して終了すると、うまくいけばうまくいくでしょう。

39
Phil Bradley
Sudo apt-key adv --keyserver keyserver.ubuntu.com --keyserver-options http-proxy=http://proxy:port --recv-keys KEYID
19
user46707

ここに私が使用した1つの回避策があります:

私は企業のファイアウォールを越えて自由な世界でLinuxサーバーにログオンし、これを行いました:

gpg --keyserver keyserver.ubuntu.com --recv 1DABDBB4CEC06767 && gpg --export --armor 1DABDBB4CEC06767

次に、私のワークステーションでこれを実行し、上記のコマンドの出力(公開キー)をstdinに貼り付け、続いてcontrol-Dを貼り付けました。

Sudo apt-key add -

その後、実行できましたSudo apt-get update 問題なく。

私はまだ、より良い方法、理想的には私がスクリプトを書くことができる何かがあるはずだと思います。

13
Kief

ここに別の回避策があります。ネットワーク外にプロキシとして別のLinuxサーバーが見つからない場合に便利です。件名を「get 0x1DABDBB4CEC06767」のように「[email protected]」にメールで送信してください。しかし、おそらくまだこれを自動化する簡単なスクリプトを書くことはできません。

8
Roger Choi

キーサーバーのWebサイトにアクセスできます。 http://wwwkeys.eu.pgp.net/ 調号を検索します(16進署名に0xを追加する必要があります)、つまり0x1DABDBB4CEC06767。

できればリンクをクリックして、テキストをマシンのファイルに貼り付けます。

cat > <filename>

[PASTE]

[Ctrl-C]

その後

apt-key add <filename>

これは私にとってはうまくいきました。ワークプロキシが多くの「非標準」ポートをブロックしているようです。

5
CJBrew

私は常にwwwトラフィック用に開いているポート80を介して単一のコマンドでそれを行うためのきちんとした方法を見つけました。

http://gurrier.wordpress.com/2010/10/02/downlolading-repo-keys-from-behind-a-corporate-firewall/

4
tony

簡単な解決策は次のとおりです。

Sudo add-apt-repository --keyserver hkps://keyserver.ubuntu.com:443 some_ppa

安全なhttps(送信443)はファイアウォールによってブロックされません。

2
Thien Pham

Sshを使用してポートを外部ホストに転送し、apt-add-repoコマンド。

ssh -fqTnN -D 11371 <user@Host>
1
Thermionix