私はyumを使ってパッケージをインストールすることに慣れていません。私は前生にaptを使用しました。
現在、いくつかの実行手順を見ています。
# yum install http://example.com/package.rpm
より多くのパッケージをダウンロードできる特定のリポジトリを購読しているようです。これは安全な習慣ですか?
比較のために、私はaptパッケージにgpg署名があることを知っています。これは、httpを介してダウンロードすることが問題にならないことを意味します。ここで述べたように。 apt を使用してデフォルトのリポジトリの外部からパッケージをダウンロードする場合は、apt の gpg キーを手動で追加して、非標準パッケージが同じ信頼できるソースを持つことを許可できます。
上記のコマンドを実行すると、インストールを開始する前にgpgキーを受け入れるように求められますか、それとも何もインストールできますか?
該当する場合、私のファイルはそのセクションに/etc/yum.conf
含まれます。gpgcheck=1
[main]
答え1
あなたの質問には説明が必要です。
まず、一緒に作業する方法を理解するYUM
ことが重要ですrpm
。
rpm
RPMはソフトウェアパッケージ形式であり、個々のRPMパッケージをインストールできる同様の名前のコマンドラインツールがあります。コマンドラインツールは、両方とも依存関係なしに別々のパッケージをインストールするという点で、コマンドラインツールrpm
と似ていると考えることができます。dpkg
yum
RPMパッケージとその依存関係をインストールする上位レベルのプログラム。yum
このコマンドは、と似ていると考えると、両方ともapt-get
パッケージとすべての依存関係をインストールします。- ランタイムは
yum install
URLではなくパッケージ名を使用する必要があります。例:yum install package
、実行方法に似ていますapt-get install package
。 - パッケージURLがある場合は機能します
rpm -i https://url
が、パッケージの依存関係がインストールされていない場合rpm -i
(苦痛)、またはyum
構成されたリポジトリを使用して1つずつインストールする必要があります。
GPGに関する限り、DebianおよびRPMパッケージングシステムに適用されるいくつかの知っておくべきことがありますが、最も重要なことは次のとおりです。
- どちらのシステムにも、2セットのGPG署名、つまりパッケージ自体のGPG署名とリポジトリのGPG署名があります。
- Debian パッケージでは GPG 署名が確認されず、Ubuntu および Debian プロジェクトリポジトリの公式パッケージには GPG 署名はありません。
- どちらのシステムもプレーンテキストHTTPを介して使用されると、さまざまなGPG再生攻撃に対して脆弱です。パッケージは必ずHTTPS経由でインストールする必要があります。いいえ可能であればプレーンテキストHTTPです。
RPMおよびYUM GPG署名の場合:
gpgkey=https://example/gpg.key
まず、次のコマンドを使用して設定ファイル内のGPGキーのパスまたはURLを指定できますgpgkey=/usr/share/example/gpg.key
。 GPGキーが2つ以上必要な場合は、複数を指定できます。- 第二に、2つのオプションがあります:
gpgcheck=1
とrepo_gpgcheck=1
。最初のオプションはyum install
パッケージ自体のGPG署名を確認し、2番目のオプションはリポジトリのGPG署名を確認します。理想的には両方を使用する必要がありますが、多くのストレージが両方をサポートするように正しく構成されていません。 - 最初に実行されたときに
yum install
リストされたGPGキーをまだインポートしていない場合は、インポートしよyum
うとします。gpgkey
承認または拒否するよう求められます。 pygpgme
GPG署名を確認するには、システムにこのパッケージをインストールする必要があります。 RHELとCentOSの最新バージョンでは、pygpgme
依存関係は自動的にインストールされますが、yum
システムにインストールされていることを確認する必要があります。- デフォルトでは、Can Talk over HTTPS
apt-transport-https
に対応する機能はありませんが、使用しているバージョンでデフォルトでオプションが有効になっていることを確認する必要があります。ご使用のバージョンにこの機能がない場合は、有効にする必要があります。 SSL証明書を確認することが重要です。yum
yum
sslverify
yum
パッケージとリポジトリの両方にGPG署名がある場合でも、リポジトリはまだ再生攻撃に対して脆弱です。可能であれば、HTTPSを介してリポジトリにアクセスする必要があります。 1つの攻撃の簡単な説明は、悪意のある攻撃者が特定の時点でリポジトリメタデータと関連するGPG署名のスナップショットを撮り、そのメタデータと署名を要求するクライアントで再生し、クライアントが更新されたパッケージを表示できないようにすることを可能にしますあるということです。メタデータは触れないため、GPG署名は有効です。その後、攻撃者はアップデートされていないソフトウェアの既知のバグを悪用してコンピュータを攻撃する可能性があります。パッケージマネージャへの攻撃について詳しく読むことができます。この紙。
私は2つの広範なブログ投稿を書きましたGPGおよびYUM/rpmまたGPGとAPT。
他に質問がある場合はコメントを残してください。パッケージ管理は正しく実行するのが非常に困難です。