gpg:キーサーバーの受信に失敗しました:サーバーの表示に失敗しました

gpg:キーサーバーの受信に失敗しました:サーバーの表示に失敗しました

gnsリポジトリを追加して次のコマンドを使用しようとすると、このエラーが発生します。

#sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F88F6D313016330404F710FC9A2FD067A2E3EF7B

エラーは次のとおりです。

gpg: keyserver receive failed: Server indicated a failure

答え1

ファイアウォールの背後では、デフォルトのポート11371の代わりにポート80を使用する必要があります。

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9A2FD067A2E3EF7B

出力例:

Executing: /tmp/apt-key-gpghome.mTGQWBR2AG/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv 9A2FD067A2E3EF7B
gpg: key 9A2FD067A2E3EF7B: "Launchpad PPA for GNS3" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1

答え2

この問題は私にとって本当に難しかったです。この問題を発見するまで、提案された解決策のどれも効果がありませんでした。クレジットに投稿してください。 次の行を追加しました/etc/resolv.conf

nameserver 8.8.8.8 # Google DNS

他のDNSを試して、どちらがあなたに適しているかを確認できます。

nameserver 1.1.1.1 # Cloudflare

答え3

デフォルトのDNS解決を介して実行されるシステムの場合と同様に、resolv.conf問題はnull(今経験したように)が原因で発生する可能性があります。systemd-resolvednsswitch

gpg私の考えでは、対応するlibc関数を使用せずに、何らかの理由でそれ自体をnsswitch読む場合のようです。resolv.conf

兆候:

  • gpg: keyserver receive failed: Server indicated a failure

  • /etc/resolv.conf空ですが、ホスト名の確認などは大丈夫getent hosts google.comですping google.comdigdrillおよびnslookupすべてが直接読み取られるため、機能しない可能性がresolv.confあります。

  • /etc/nsswitch.confsystemdが提供するモジュールhosts: files mymachines myhostname resolve [!UNAVAIL=return] dnsに似たものがあります(詳細を参照)。resolveman 8 libnss_resolve.so.2

解決する:

resolv.conf現在のパーサー設定を反映したシステム自動生成シンボリックリンクのシンボリックリンクを作成しようとしています。man 8 systemd-resolved正確に何をするのかを詳しく知るには、「/ETC/RESOLV.CONF」セクションを読んでください。以下は、シンボリックリンクの生成に推奨されるコマンドと出力です。

$ # you should check this has reasonable contents before using it
$ cat /run/systemd/resolve/stub-resolv.conf
# This file is managed by man:systemd-resolved(8). Do not edit.
#
# This is a dynamic resolv.conf file for connecting local clients to the
# internal DNS stub resolver of systemd-resolved. This file lists all
# configured search domains.
#
# Run "resolvectl status" to see details about the uplink DNS servers
# currently in use.
#
# Third party programs should typically not access this file directly, but only
# through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
# different way, replace this symlink by a static file or a different symlink.
#
# See man:systemd-resolved.service(8) for details about the supported modes of
# operation for /etc/resolv.conf.

nameserver 127.0.0.53
options edns0 trust-ad

$ rm /etc/resolv.conf
$ ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

答え4

dirmngr 2.2.4を実行しているUbuntu 18.04で同じ問題が発生しました。私のDNS設定を確認することを選択し、ローカルDNSサーバー「ネームサーバー1.1.1.1」とGoogleの「ネームサーバー8.8.8.8」を追加しました。それからうまくいきました。

関連情報