次wget gpgキーGPG |

次wget gpgキーGPG |

Tor中間リレーを実行するためにKali Linuxを準備しています。 Torプロジェクトのリポジトリ構成に従います。このウェブサイト

私は1段階と2段階をしました。 3番目のステップは、次のコマンドを実行してパッケージ署名に使用されるgpgキーを追加することです。

sudo wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null

問題は、権限を持って実行しても、このコマンドが何をしているのか、なぜ失敗するのか理解できないということですsudo

┌──(michal㉿kali)-[/usr/share/keyrings]
└─$ sudo wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null
[sudo] password for michal: tee: /usr/share/keyrings/tor-archive-keyring.gpg: Permission denied

この部分はwget理解しています。しかし、Torリポジトリが私のvpsにダウンロードされた後に何が起こるのかわかりません。

┌──(michal㉿kali)-[/usr/share/keyrings]
└─$ ls -lah
total 176K
drwxr-xr-x   2 root root 4.0K Jan 28  2022 .
drwxr-xr-x 135 root root 4.0K Jan  3 18:09 ..
-rw-r--r--   1 root root 8.5K Feb 25  2021 debian-archive-bullseye-automatic.gpg
-rw-r--r--   1 root root 8.6K Feb 25  2021 debian-archive-bullseye-security-automatic.gpg
-rw-r--r--   1 root root 2.4K Feb 25  2021 debian-archive-bullseye-stable.gpg
-rw-r--r--   1 root root 8.0K Feb 25  2021 debian-archive-buster-automatic.gpg
-rw-r--r--   1 root root 8.0K Feb 25  2021 debian-archive-buster-security-automatic.gpg
-rw-r--r--   1 root root 2.3K Feb 25  2021 debian-archive-buster-stable.gpg
-rw-r--r--   1 root root  55K Feb 25  2021 debian-archive-keyring.gpg
-rw-r--r--   1 root root  37K Feb 25  2021 debian-archive-removed-keys.gpg
-rw-r--r--   1 root root 7.3K Feb 25  2021 debian-archive-stretch-automatic.gpg
-rw-r--r--   1 root root 7.3K Feb 25  2021 debian-archive-stretch-security-automatic.gpg
-rw-r--r--   1 root root 2.3K Feb 25  2021 debian-archive-stretch-stable.gpg
-rw-r--r--   1 root root 2.3K Jan 25  2022 kali-archive-keyring.gpg
┌──(michal㉿kali)-[/usr/share/keyrings]
└─$ lsb_release -a                                                                                                                                         1 ⨯
No LSB modules are available.
Distributor ID: Kali
Description:    Kali GNU/Linux Rolling
Release:        2022.4
Codename:       kali-rolling

答え1

まず、何が起こったのかを分析しましょう。 sudo実行にのみ使用され、wget残りのコマンドには使用されません。現在実行中の作業は機能的には次のとおりです。

# 1. Download a file and save as 'file.asc'
sudo wget -qO- https://d...E886DDD89.asc > file.asc

# 2. Dearmor that file (generates file.asc.gpg)
gpg --dearmor file.asc

# 3. Copy that file to /usr/share/keyrings
tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null <file.asc.gpg 

ご覧のとおり、sudoこのファイルをダウンロードしたことがあります。この場合、file.ascこれはmake own byを除いて多くのことを行いませんroot。あなたの場合、ファイルはstdoutにパイプされます。sudo 本物何も起こりません。

次に、を使用しましたが、gpg --dearmor大丈夫です。

最後に、teeファイルの内容をシステムにコピーします。 - が所有するディレクトリrootに書き込むため、権限が必要な部分です。root

答えはtee実行することですsudo。機能的には次のとおりです。

# 1. Download a file and save as 'file.asc'
wget -qO- https://d...E886DDD89.asc > file.asc

# 2. Dearmor that file (generates file.asc.gpg)
gpg --dearmor file.asc

# 3. Copy that file to /usr/share/keyrings
sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null <file.asc.gpg 

1-linerでは次のようになります。

wget -qO- \
  https://deb...6DDD89.asc | \
  gpg --dearmor | \
  sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null

または

wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null

実際、私たちがより簡単な方法を使用| tee /usr/share... >/dev/nullしない理由>/usr/share...は。teesudo

関連情報