だから私の質問は次のとおりです。を使用してwslストアからKali Linuxをインストールしました
$wsl --install -d kali-linux
。以下がインストールされました。
PRETTY_NAME="Kali GNU/Linux Rolling"
NAME="Kali GNU/Linux"
ID=kali
VERSION="2019.2"
VERSION_ID="2019.2"
ID_LIKE=debian
ANSI_COLOR="1;31"
HOME_URL="https://www.kali.org/"
SUPPORT_URL="https://forums.kali.org/"
BUG_REPORT_URL="https://bugs.kali.org/"
これを行うと、$sudo apt-get update
次のエラーが発生します。
Get:1 http://kali.download/kali kali-rolling InRelease [30.6 kB]
Err:1 http://kali.download/kali kali-rolling InRelease
The following signatures were invalid: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository <[email protected]>
Fetched 30.6 kB in 1s (40.9 kB/s)
Reading package lists... Done
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://kali.download/kali kali-rolling InRelease: The following signatures were invalid: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository <[email protected]>
W: Failed to fetch http://http.kali.org/kali/dists/kali-rolling/InRelease The following signatures were invalid: EXPKEYSIG ED444FF07D8D0BF6 Kali Linux Repository <[email protected]>
W: Some index files failed to download. They have been ignored, or old ones used instead.
その後、手動でインストールしました。カリー - アーカイブ - keyring_2020.2_all.debその後、$sudo dpkg -i kali-archive-keyring_2020.2_all.deb
これを実行し、期待どおりに$sudo apt-get update
リポジトリを更新しました。
それから私はこれをし、$sudo apt-get upgrade
今まで働きました。 Kaliを次にアップグレードしました。
PRETTY_NAME="Kali GNU/Linux Rolling"
NAME="Kali GNU/Linux"
ID=kali
VERSION="2021.4"
VERSION_ID="2021.4"
VERSION_CODENAME="kali-rolling"
ID_LIKE=debian
ANSI_COLOR="1;31"
HOME_URL="https://www.kali.org/"
SUPPORT_URL="https://forums.kali.org/"
BUG_REPORT_URL="https://bugs.kali.org/"
コマンドを実行すると、スケジュールされた$sudo apt-get upgrade
パッケージがあると表示されます。
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
apt apt-utils bind9-host bsdmainutils bsdutils coreutils cron curl dnsutils dpkg e2fsprogs fdisk findutils iproute2
iptables isc-dhcp-client libbind9-161 libbsd0 libc-bin libc6 libcryptsetup12 libcurl4 libdevmapper1.02.1 libext2fs2
libgnutls30 libiptc0 libirs161 libisccc161 libisccfg163 libldap-2.4-2 liblocale-gettext-perl liblwres161 libmount1
libp11-kit0 libpam-modules libpam-modules-bin librtmp1 libselinux1 libsemanage-common libslang2 libstdc++6
libsystemd0 libtext-charwidth-perl libtext-iconv-perl libudev1 libxml2 libxtables12 login logrotate mawk mlocate
mount net-tools passwd perl-base procps rsyslog sed sudo systemd tar udev util-linux vim-common vim-tiny wget whois
0 upgraded, 0 newly installed, 0 to remove and 67 not upgraded.
この時点から何をインストールしようとしても、常に次のエラーが発生し、kaliが破損してOSを使用できなくなります。
/usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
dpkg: error processing package libc6:amd64 (--configure):
installed libc6:amd64 package post-installation script subprocess returned error exit status 127
Errors were encountered while processing:
libc6:amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)
たとえば、$sudo apt-get update
後で試してみると、結果は次のようになります。
sudo: account validation failure, is your account locked?
エラーを見つけましたが、合理的な解決策を見つけるほど幸運ではありませんでした。この問題にご協力いただきありがとうございます。よろしくお願いします!
答え1
私はこれを再現でき、実際に彼らがこれを逃したことに驚きました。説明された問題この回答残念ながら、Kali文書は手動インストールバージョン。
wsl --install
残念なことに、この場所は私たちがKaliでやっている仕事に使っているようです。
キーリングアップデート(試したように)問題を解決するのに十分でしたが、それ以上ではありません。より多くの署名および/またはパッケージが廃止されました。
私たち可能また、問題を解決する方法を見つけてください。ただし、最も簡単な解決策は、コマンドの代わりにMicrosoft Storeインストールを使用することですwsl --install
。 Microsoft StoreはWSLにKaliをインストールしましたが、2021.3としてすぐにインストールされました。
wsl --unregister kali-linux
Microsoft Store のバージョンをインストールする前に、他の作業を行う必要があります。
代替
Microsoft Storeからインストールできない場合(レビューによると、会社のポリシーのためにインストールできない場合)、いくつかの選択肢があります。これらのタスクはすべて、Kali Tarballをインポートしてwsl --import
コンパイルするプロセスを含みます。
私は個人的にKaliを使用して正常にテストしました。
オプション1:Microsoft Storeにアクセスできる他のコンピュータからWSL Kaliをコピーする
これがあなたに効果があるなら、おそらく最も信頼できる方法でしょう。作業コンピュータにStoreパッケージをインストールしないため、違反しないでください。それ少なくともそれが方針です。
仕事用以外のPC(アクセス権を持っていると仮定)を使用して、アプリストアからWSLとKaliをインストールしてください。
ユーザー名とパスワード(お使いのコンピュータのWindowsに存在するかどうかにかかわらず、最終的にビジネスコンピュータで使用するパスワード)を使用して設定します。
(オプション)続行してください
sudo apt get update && sudo apt get upgrade
。カリ出口
PowerShellまたはCMDで:
wsl --export kali-linux kali_clean.tar`
USBドライブを使用して、結果のtarballを作業用コンピュータに転送します(ポリシーで許可されていると仮定)。 USBが許可されていない場合は、結果のtarballにアクセスできるクラウドのどこかに配置し、ワークコンピュータにダウンロードします。とにかく、代替として仮想マシンをインストールする場合は、これは私の考えでは、そのプロセスと同じくらい安全でポリシーに準拠しています。結局ダウンロードします何仕事用コンピュータにKali(または他のディストリビューション)をインストールしてください。
今仕事用コンピュータで...
以下の「タールボールからのKaliのインストールと設定」の手順に進んでください...
オプション2:Kali WSLビルドスクリプトからビルド
Kaliは、WSLビルドプロセスを実装する数少ないディストリビューションの1つです。非常に簡単に見つけることができます。に直接記載されています。カリーを入手ページ。
まず、別々のWSLインスタンスが必要です。私たちはUbuntuが最初から動作することを知っているので、
wsl --install -d Ubuntu
それから始めましょう。完了したら削除できます。Ubuntuでは...
sudo apt install -y debootstrap git clone https://gitlab.com/kalilinux/build-scripts/kali-wsl-chroot.git cd kali-wsl-chroot sudo ./build_chroot.sh # The build should complete for x64 but fail for ARM. That's okay as long as `./x64/install.tar.gz` is created. sudo mv ./x64/install.tar.gz /mnt/c/somewhere/on/c/kali.install.tar.gz`
Ubuntuの終了
wsl --unregister Ubuntu
必要に応じてUbuntuディストリビューション()を削除します。以下の「タールボールからのKaliのインストールと設定」の手順に進んでください...
オプション3:Kali Dockerイメージを使用してtarballを作成する
マイクロソフトが指示を提供します。ここほぼすべてのディストリビューションを手動でインポートする方法について説明します。あなたが必要とする:
まず、Ubuntu(する
wsl --install
もちろんパスはうまくいくでしょう)Docker Desktopをインストールします(ポリシーとライセンスが許可する場合)。 Docker Desktopを使用するには、会社の規模に応じて企業向け有料ライセンスが必要です。あるいは、UbuntuディストリビューションにDockerエンジンをインストールすることもできます(まだ無料/OSSです)。
docker pull kalilinux/kali
またはdocker pull kalilinux/kali-rolling
(参照カリドッカー画像。実行画像(
docker run kalilinux/kali:latest
)画像名をご覧ください
docker ps -a
コンテナをtarballにエクスポート
docker export <name_or_id_from_above> kali.tar
「タールボールからKaliをインストールして構成する」以下の手順に進んでください...
tarballでのKaliのインストールと設定
WindowsでKali用のディレクトリを作成します。私は
%userprofile%\WSL\instances\kali
私のようなものを使う傾向があります。cd
PowerShellでこのディレクトリに移動します。wsl --import Kali . path\to\kali.tar --version 2
(またはkali.tar.gz
オプション2)その後、tarballを使用してKaliインスタンスが作成されます
wsl -d kali
。を使用してデフォルトに設定することもできます
wsl --set-default kali
。2番目の(ビルドスクリプト)および3番目の(Dockerイメージ)オプションの場合は、
adduser
WSLユーザーが必要であり、対応するパスワードを設定します。adduser <username> usermod <username> -aG adm,cdrom,sudo,dip,plugdev
これらすべての場合、WSLは
root
ユーザーとして自動的に開始されます。これは/etc/wsl.conf
、党を作成することによって変更することができます。このスーパーユーザーの答え。
答え2
私はこう言うでしょうあなたはそれを逃しましたapt dist-upgrade
。単に代わりに使用してくださいapt upgrade
。残念ながら、Kaliが破損している可能性があるため、消去して再インストールする必要があります。
答え3
これはローリングリリースディストリビューションの一般的な問題です。更新を多少頻繁に維持する場合、長期間の更新がない後に「追いつく」を試みると、更新が失敗します。
これまでのローリングリリースディストリビューションは、過去のバージョンを現在の最新バージョンに更新できると主張していません。これを行うには、次のものが必要です。本当に厳しい変更管理は、新機能の導入を遅らせ、古いバグを排除したり、それに依存するすべてのパッケージとパッケージ自体が依存するすべての新しいパッケージのすべての以前のバージョンですべての新しいパッケージをテストし、それに応じてアイテムメタデータに依存する設定します。後者は多くの作業を必要とし、新しい更新が行われるたびに作業量が指数関数的に増加する可能性があります。
したがって、実際には、ローリングリリースリリースを更新するために常に「スライドウィンドウ」時間があります。このウィンドウを見逃すと、問題が発生する可能性が高くなります。
Kaliのドキュメントには次のように記載されています。(強調は私のもの)
Kaliをいつ更新する必要がありますか?
Kaliがデフォルトでインストールされている場合、数週間ごとに更新を確認する必要があります。新しいバージョンのツールが必要な場合、またはセキュリティ更新プログラムのニュースを聞くと、スケジュールが速くなる可能性があります。ただし、参加する前にすべてのツールが正しく機能していることを確認し、参加中に更新しないことをお勧めします。 Kaliはローリングリリースなので、時々問題が発生し、必要なツールがクラッシュする可能性があります。
Kaliを使用している場合、
last-snapshot
その年の次のKaliバージョンがリリースされるまで更新を受け取ることはできません。したがって、TwitterでKaliをフォローするか、数ヶ月に一度Kaliのウェブサイトをチェックすることをお勧めします。 Kaliは年に4回リリースされ、快適な四半期ごとのスケジュールに従います。
last-snapshot
したがって、このバージョンの代わりにそのバージョンを使用しても、四半期ごとのrolling
リリースは2019.2から2021.4にジャンプすると、その間に合計9つの異なるリリースがスキップされることを意味します。それが使用されていてもapt dist-upgrade
、私はそれが成功するとは言わないでしょう。
マイクロソフトが今日2021年12月にWSLにKali 2019.2を提供している場合、この時点では完全に凍結され、アップグレードが不可能となる可能性があります。要件を満たしている場合は、そのまま使用できます。最新バージョンのWSLが必要な場合は、WSL用に特別にパッケージ化された最新バージョンを見つける必要があります。
答え4
これは私にとってうまくいきます。
wsl --unregister kali-linux
wsl --install kali-linux --web-download
ここでは--web-download
、Microsoft Storeではなくインターネットからディストリビューションをダウンロードするという意味です。