2020年8月28日金曜日

powershellでログを記録する

powershellのバッファリングを増やす(1回)

mode con: lines=32766

バッファリングの設定を確認する

mode con:


powershellでログを取得する

Start-Transcript 出力ファイル -append

ログの取得を停止する

Stop-Transcript

2020年8月27日木曜日

Kali Linuxのセットアップ

Windows 10のWSL 2でKali Linuxを利用する(2004)の記事の続き。

Kali Linuxの公式サイトにドキュメントがありましたので、
Optional Steps手順にてセットアップをしていきたいと思います。
公式サイト:Win-KeX | Kali Linux Documentation

ツールのインストール

 kali-linux-defaultもあるようですが、largeにてインストールします。
# ツールのインストール
sudo apt install kali-linux-large

Windows Terminalのインストール

必須ではありませんが、Windows Terminalを使用することで、便利になりますのでMicrosoft StoreからWindows Terminalをインストールします。

続いて、下記画像の設定からショートカットを作成します。

設定を開いたら、以下を追加して完了。

{
"guid": "{55ca431a-3a87-5fb3-83cd-11ececc031d2}",
"hidden": false,
"icon": "file:///c:/users/<windows user>/pictures/icons/kali-menu.png",
"name": "Win-KeX",
"commandline": "wsl kex wtstart",
"startingDirectory" : "//wsl$/kali-linux/home/<kali user>"
},



以上でWindows TerminalのショートカットからWin-KeXを選ぶだけで、Kaliが立ち上がるようになりました。

2020年8月25日火曜日

WSL 2とVirtual Boxの共存

背景

元々VirtualBox上にWindowsやLinuxを構築していましたが、WSL 2でKali Linuxの利用が便利だと聞いたため、Windows 10のWSL 2でKali Linuxを利用する(2004)の記事にてWSL 2を有効化しました。

WSL 2の仮想化支援機能

WSL 2のHyper-Vハイパーバイザーが仮想化支援機能を使用するため、VirtualBoxは共存出来ないという背景があったようです。
現在はHyper-VハイパーバイザーはHypervisor Platform APIを設けて、Hyper-Vを介してCPU仮想化支援機能を使えるようになり、VirtualBoxも6.0.0からそれに対応したため、共存出来るようです。

共存を試した結果

WSL 2のKali Linuxは起動も楽で良い感じでしたが、元々利用していたVirtualBox上のWindowsが使い物にならないくらい遅くなりました。
(今まで起動に1分掛からないものが、10分以上経過しても操作出来ない状態)

解決案

解決案として、以下の2パターンが考えられます。

  1. WSL 2を無効にしVirtualBoxメインにする
  2. VirtualBoxに構築している仮想マシンをHyper-Vに移行する

1は今まで通りとなりますが、KeXが便利であることと、Hyper-Vも利用した事が無く使ってみたいため、2の方向で進めようと思います。

試行

Hyper-VにWindows10をインストールして動作を見たところ、そこそこ動いたので本格的に移行していこうと思います。

2020年8月23日日曜日

Windows 10のWSL 2でKali Linuxを利用する(2004)

今まで、Kali Linux等を構築する際は、Virtual Box上にOSのisoファイルでインストールしていました。
WSL 2を利用するとKali Linuxのインストールが楽だと聞いたことや、日経Linux 2020 7月号で特集を読んだこともあり、この機に構築しようと思います。


WSL2の導入

参考にしたのは以下のページ。
Windows 10 用 Windows Subsystem for Linux のインストール ガイド

powershellを管理者権限で起動して以下を実行します。
# WSLの有効化 
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
 # "仮想マシン プラットフォーム" のオプション コンポーネントを有効化
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart 
# 再起動
Restart-Computer 
# WSL 2 を既定のバージョンとして設定
wsl --set-default-version 2


Kali Linuxの導入

Microsoft StoreからKali Linuxをインストールします。

インストールが完了したら起動します。

usernameとpasswordを求められるため、入力します。

別のpowershellを立ち上げ、インストールされたKali LinuxがWSL 2か確認します。
# 割り当てられているバージョンの確認
wsl --list --verbose
VERSIONが2となっていれば、WSL 2です。

Win-KeXの導入

Kali Linuxのバージョン 2020.3から導入された、Win-KeXを導入します。
# パッケージを最新
sudo apt update
sudo apt upgrade

# kali-win-kexインストール
sudo apt install kali-win-kex

# 起動
kex
Kali LinuxのGUI画面が表示されれば成功です。

ハマったポイント

wsl --set-default-version 2でエラー

WSL 2の導入中に以下のエラーが発生した。
wsl --set-default-version 2
エラー: 0x1bc
WSL 2 との主な違いについては、https://aka.ms/wsl2 を参照してください

WSL 2のLinuxカーネルを更新しない時に発生するようなので、以下のページの「Linux カーネル更新プログラム パッケージをダウンロードする」から更新を実施しました。

WSL 2 Linux カーネルの更新


kexで起動すると黒い画面しか表示されない

GUI画面でLog Outしたら、以降黒い画面しか表示されなかった。
kex stopでプロセスを落とし、再度kexで起動することで解消した。


所感

聞いた通り、Virtual Boxで構築していた時に比べ、非常に楽で時間も掛かりませんでした。
ネットワーク周りがどう動いているのか把握出来ていませんが、ここは追々調べたいと思います。

他にもUbuntuやCentOS等を使用するので、WSL 2で導入したいと思いました。