リポジトリ(キーリング、ソースリストなど)を追加するときは、セキュリティのために何に注意する必要がありますか?

リポジトリ(キーリング、ソースリストなど)を追加するときは、セキュリティのために何に注意する必要がありますか?

こんにちは、これは非常に基本的で一般的な質問のように思えるかもしれません。 (しかし)

ソフトウェアをインストールするときは、多くの場合、新しいリポジトリを追加することをお勧めします。私は次のようにインターネットで見つけた指示に従いました。

curl -s https://example-browser-apt-release.s3.example.com/example-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/example-browser-release.gpg add -

source /etc/os-release

echo "deb [arch=amd64] https://example-browser-apt-release.s3.example.com/ $LINUXDISTRO_CODENAME main" | sudo tee /etc/apt/sources.list.d/example-browser-release-${LINUXDISTRO_CODENAME}.list

sudo apt update

sudo apt install example-browser

しかし、私はそれがどこに保存されているのか本当に理解していません。

  1. すべて一箇所に保存されていますか?

  2. 時間の経過とともにどのリポジトリをいつ追加したかを確認できますか?

  3. キーが保存される場所

  4. 時間の経過とともに私が何を追加したのか、いつ追加したのかを確認する方法はありますか?

  5. ソフトウェアが気に入らない場合は、削除することが重要ですか?

私は私が多くの質問をしたことを知っています。おそらくこれらは基本的な質問です。おそらく、外部リポジトリをインストールするときに知っておくべきコンポーネントがここにありません。どんな洞察力でも歓迎します。

とても感謝しています。

答え1

これは適切なシステムでのみ機能し、他のパッケージマネージャは異なる場合があります。

すべて一箇所に保存されていますか?

パッケージアーカイブを意味しますか、それともリポジトリを指すファイルを意味しますか?パッケージのアーカイブは /var/cache/apt/archives に保存されます。特定のストレージファイルまたはエントリは、/etc/apt/sources.listまたは/etc/apt/sources.list.d/*.listに保存されます。リポジトリーがリストされている場所とリストを含むファイルとの間に必要な接続はありません。たとえば、/etc/apt/sources.listにはほとんどのリポジトリがあり、実際にDebianはデフォルトでこれらのリポジトリを使用していました。または、Opera.listファイルにGoogleのリポジトリがある可能性があります。ファイル名は重要ではありません。重要なのは.listです。しかし、状況をより予測可能で維持しやすくするために、リポジトリファイル名を指す実際のリポジトリと一致させることは悪い考えではありません。

時間の経過とともにどのリポジトリをいつ追加したかを確認できますか?

どのリポジトリが利用可能かを確認できます。シンプルなのでinxiを使用します。

inxi -r
Repos:
  Active apt repos in: /etc/apt/sources.list 
  1: deb http://mirrors.kernel.org/debian unstable main contrib non-free
  2: deb http://mirrors.kernel.org/debian/ buster main non-free contrib
  3: deb http://security.debian.org/debian-security buster/updates main contrib non-free
  4: deb https://liquorix.net/debian unstable main
  5: deb http://www.deb-multimedia.org/ buster main non-free
  Active apt repos in: /etc/apt/sources.list.d/google-chrome.list 
  1: deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main
  Active apt repos in: /etc/apt/sources.list.d/opera-stable.list 
  1: deb https://deb.opera.com/opera-stable/ stable non-free #Opera Browser (final releases)

次のようにすることもできます。

cat /etc/apt/sources.list /etc/apt/sources.list.d/*.list

しかし、読みにくく、入力が難しく、どのファイルに何が含まれているのかは不明です。 inxiの目的は、この情報を明確に表示することです。

追加するときに確認できる唯一の方法は、個々のストレージファイルを追加してからファイル生成タイムスタンプを確認することです。他の方法があるかもしれませんが、私はよくわかりません。

キーが保存される場所

良い質問なのに考えたことがないですね。その人を見つけることができるかどうかを見てみましょう。

によると:https://wiki.debian.org/SecureApt

/etc/apt/trusted.gpg.d および /etc/apt/trusted.gpg ファイルにあります。

ls /etc/apt/trusted.gpg.d -w 1
debian-archive-buster-automatic.gpg
debian-archive-buster-security-automatic.gpg
debian-archive-buster-stable.gpg
debian-archive-jessie-automatic.gpg
debian-archive-jessie-security-automatic.gpg
debian-archive-jessie-stable.gpg
debian-archive-stretch-automatic.gpg
debian-archive-stretch-security-automatic.gpg
debian-archive-stretch-stable.gpg
deb-multimedia-keyring.gpg

私が持っているリポジトリをこれと比較すると、少なくともそれらのいくつかは実際には/etc/apt/trusted.gpgに保存されているように見え、ファイルサイズはゼロではありません。

時間の経過とともに私が何を追加したのか、いつ追加したのかを確認する方法はありますか?

同じ質問、同じ答え。

ソフトウェアが気に入らない場合は、削除することが重要ですか?

混乱を避け、実際には必要ないときはいつでも、apt-get updateからデータを取得することを避けるためにこれを行う必要があります。また、ランダムなリポジトリが時々消えたり、変更されたり破損したりする可能性があり、この時点で迷惑な適切な更新失敗のデバッグの問題が発生します。また、不要なソフトウェアの設定ファイルをシステムに残さないようにするには、apt-get Remove --purge を使用します。 --purge オプションがない場合、設定ファイルはそのまま残ります。

しかし、Michael Hornerがコメントで言ったことを参考にしてください。セキュリティが主な関心事であれば、これは実際に正しい答えだと思います。

答え2

@MichaelHomerのコメントで一般的な質問に答えます。なぜなら、彼は頭に釘を打ったと思うからです。

正直なところ、インターネットで理解できないコードをコピーして貼り付けないでください(sudo!)。これはセキュリティのために注意すべき最も重要なことです。

「リポジトリ(キーリング、ソースリストなど)を追加するとき(セキュリティのために)注意すべきことは何ですか?」と尋ねます。

すべては結局お使いのコンピュータでソフトウェアを実行しているストレージマネージャを信頼していますか?。リポジトリを追加すると、リポジトリに含まれるすべてのソフトウェアとパッケージが承認され信頼されます。これは公式ディストリビューション(Debian、CentOSなど)の基本リポジトリだけでなく、よく知られているリポジトリ(EPEL、Atlassianなど)にも有効です。不明で曖昧に保守されているリポジトリに注意して追加しないでください。このビューでは、そのコンポーネントがどこに保存されているかはまったく重要ではありません。

関連情報