インポートされたgpgキーをyumで使用するにはどうすればよいですか?

インポートされたgpgキーをyumで使用するにはどうすればよいですか?

yum.repos.dディレクトリに外部ストレージを追加しようとしています。リポジトリのパッケージとメタデータはgpgキーを使用して署名されます。関連がある場合は、CentOS 7.2を使用しています。

私が知っている限り、リポジトリを設定する伝統的な方法は、リポジトリファイルにgpgキーへのリンクを含めることです。

つまり、example.repo内部ファイルには/etc/yum.repos.d次の行が含まれています。

gpgkey = https://example.com/repo/key

その後、実行するとGPGキーをインポートするように求められyum update[y/N]実行するとyum -y update自動的にキーをインポートします。これまでは普通でした。

実験的に、リポジトリファイルからgpg-keyダウンロードリンクを削除し、代わりに手動でキーを追加してみました。

wget -O key https://example.com/repo/key
rpm --import key
確認して
rpm -qa gpg-pubkey*

yum update私の期待は、これはプロンプトなしで実行できることです[y/N]。しかし、うまくいきません。すでにインポートされているキーをインポートするように求められます。また、gpgkeyリポジトリファイルからエントリを削除しようとしましたが、この場合はエラーが発生します(およびyum updateもあるため)。gpgcheck = 1repo_gpgcheck = 1

これはなぜ重要ですか?さて、このプロセスを自動化するには、キーダウンロードのためにhttps転送を信頼する必要があるようです。大丈夫ですが、GPGキーはパッケージが正しくダウンロードされたことを確認する以外に、実際にセキュリティを追加しません。

簡単に言えば、私の考えでは誰でもキーをインポートしたことをyumに認識させるトリックはありません。またはGPGキーは実際には既存のhttps以外に多くを追加しません。どんな手がかりがありますか?

答え1

これ主要輸入品の自動化に効果があると思われる貨物カルトの解決方法は次のとおりです。

yum -q makecache -y --disablerepo='*' --enablerepo=THENEWREPO

答え2

rpm --importYUMリポジトリではなくRPMパッケージを確認するためにのみインポートされたキーを使用してください。yum内部に自分のキーを隠します/var/lib/yum/repos。各リポジトリごとに個別のキーリングを維持します。

リポジトリのインストール時にリモートキーを本当に信頼したくない場合は、キーを個別にダウンロードしてリポジトリフィールドへのgpgkeyローカルパスを設定します。次に、リポジトリ(信頼できる)キーでいっぱいのローカルファイルを使用します。キーが循環する場合は、手動で新しいキーをインポートする必要があることに注意してください。

関連情報