pip install droopescanに失敗する【ハッキング・ラボ編】
はじめに
いつもブログをご覧いただきありがとうございます。
コーストFIRE中のIPUSIRONです😀
皆さんからの報告
問題が起こる環境
・ParrotOS 6.0(ISOファイルでインストール)
そもそもDroopescanがデフォルトインストールされていれば問題になりませんが、ParrotOS 6.0ではデフォルトインストールされていません。
問題
『ハッキング・ラボのつくりかた 完全版』P.417-419では、Droopescanのインストール方法を解説しています。
仮想環境であるため、(少々乱暴ですが)pip installコマンドを用いたインストール方法を紹介しました。
ところが、最新のParrotOS(検証時は6.0)ではpip installコマンドでインストールしようとすると、"externally-managed-environment"エラーが発生します。
解決法
今回の問題を解決する方法はいろいろあります。
なお、エラーが発生した場合の対処法のヒントは以下にまとめてあるので、時間のある際に一読ください。
pipx installを用いる方法【比較的簡単】
最大のヒントはエラーメッセージにあります。
ヒントにはいくつかの方法が紹介されていますが、ここではpipx installを用いる方法を紹介します。
1:APTでpipxをインストールする
ここではaptコマンドを用いていますが、パッケージマネージャーを使っても構いません。
最初と最後のpipx listコマンドは、pipxがインストールされているかどうかを確認しているだけです。
┌─[✗]─[ipusiron@parrot]─[~]
└──╼ $pipx list
bash: pipx: コマンドが見つかりません
┌─[✗]─[ipusiron@parrot]─[~]
└──╼ $sudo apt update
(略)
(複数回設定のワーニングが出ても無視)
┌─[ipusiron@parrot]─[~]
└──╼ $sudo apt install pipx -y
(略)
┌─[ipusiron@parrot]─[~]
└──╼ $pipx list
nothing has been installed with pipx 😴
2:pipxでDroopescanをインストールする
┌─[ipusiron@parrot]─[~]
└──╼ $pipx install droopescan
installed package droopescan 1.45.1, installed using Python 3.11.2
These apps are now globally available
- droopescan
done! ✨ 🌟 ✨
┌─[ipusiron@parrot]─[~]
└──╼ $pipx list
venvs are in /home/ipusiron/.local/pipx/venvs
apps are exposed on your $PATH at /home/ipusiron/.local/bin
package droopescan 1.45.1, installed using Python 3.11.2
- droopescan
pipx listコマンドの出力により、pipxの管理下でDroopescanがインストールされていることがわかります。
3:Droopescanのコマンドを使えることを確認する
※もしパスが通っておらずコマンドが使えない場合はステップ4を参考にしてください。
ヘルプオプションをつけてコマンドを実行し、ヘルプが表示されているので、Droopescanの実行に成功しています。
Droopescanはスペルミスしやすいので注意してください。
“droopscan"ではなく、"droopescan"が正しいです。
私もたまに入力ミスします。
4:パスを通す
Warningに記載のあるパスにカレントディレクトリを移動してから、pipx ensurepathコマンドを実行します。
$ pipx ensurepath
なお、手動でPATHを設定しても構いません。