LoginSignup
4
4

More than 3 years have passed since last update.

個人的なWindows10の環境構築

Posted at

メインのマシンを久しぶりにWindowsにしたので、Windows上での開発や学習の環境を構築する際にとったメモ

方針

最近はRustの学習とUdemyでセキュリティ関連のコースを受講するのがメインのなので、下の2つができる状態にする

  • Rustのコンパイルおよびデバッグができる
  • Kali linuxが動く

RustについてはWindowsに直接インストールして開発するのではなく、WSLやVMにインストールしてVSCode Remoteで開発をおこなう

インストールするもの

ここに記載のものは公式ページからインストーラを入手してインストールしたりストアから入手する

  • Rust関連
    • VSCode
    • Ubuntu(WSL)
  • Rust,Kali共通
    • VirtaulBox
    • Vagrant

手順

Ubuntu(WSL)

WSL上でRustのコンパイルができるようにするまでの手順

  1. build-essentailをインストール
  2. Rustをインストール

なおWSLでは、デバッグに利用するLLDBで利用するシステムコールが実装されていないことが原因で、LLDBが正常に動作しないようなので、WSLでRustの環境構築はあまり得策ではなさそう
https://github.com/vadimcn/vscode-lldb/issues/177
WSL2ではLLDBも正常に動作するようなので、WSL2の安定板がリリースされた場合にはそちらを利用したほうが良いと思われる
https://github.com/Microsoft/WSL/issues/2028#issuecomment-502289733

build-essentailをインストール

gccやgcdを利用できるようにするためにbuild-essentailをインストールする

$ sudo apt install build-essentail

Rustをインストール

  1. Rustの公式サイト に従ってWSL上で以下のコマンドを実行
$ curl https://sh.rustup.rs -sSf | sh
$ source $HOME/.cargo/env

VirtualBox

VirtualBoxをインストールして諸々の仮想環境を整える。

Kali Linux

Udemyのコースで指定されているためKali linuxのイメージは↓のページから入手する
https://www.offensive-security.com/kali-linux-vm-vmware-virtualbox-image-download/

Ubuntu

イメージをダウンロードしてきてOSのインストールをするのが面倒なのでVagrantを利用する

WSL上のUbuntuが18.04のため、バージョンを合わせるためにVirtualBox上のUbuntuについても18.04とする
VagrantCloudのページに従い、Windowsのコマンドプロンプトにて以下のコマンドを実行

> vagrant init ubuntu/bionic64
> vagrant up

起動したVMにSSHで接続し、Ubuntu(WSL)で記した手順と同様に"build-essentail"と"Rust"をインストールする
併せてLLDBもインストールしておく

$ sudo apt install lldb

また、VSCodeからSSH接続するために、VirtualBoxへの接続に利用する秘密鍵を確認する
おそらく、ユーザディレクトリ下の".vagrant/machines/default/virtualbox/"の中に"private_key"が存在するはずだが、存在しない場合はコマンドプロンプトで以下のコマンドを実行して表示される"IdentityFile"が秘密鍵のパスとなる

> vagrant ssh-config

VSCode

VSCode RemoteでWSLやVirtualBox上のUbuntuに接続できるようにする

WSL

  1. VSCodeに拡張のRemote-WSLを追加
  2. Remote-WSLでWSLに接続(VScodeの左下の><となっている箇所をクリックして"Remote-wsl: New Window"をクリック)
  3. Rust(rls)をインストール(この時、install in wslをクリックする)
  4. WSL上にrlsに必要なものをインストールするか聞かれるのでyesとする

※ WSL上ではLLDBが正常に動作しないためLLDBの導入はしない

VirtualBox

  1. VSCodeに拡張のRemote-SSHを追加
  2. VirtualBox上のUbuntuに接続するために設定ファイルを編集する
    1. WSLに接続するときと同様にVScode左下の><となっている箇所をクリック
    2. "Remote-SSH: open configuration file"をクリック
    3. 下のような内容を入力して保存
  3. VirtualBox上のubuntuに接続
    1. VScode左下の><となっている箇所をクリック
    2. "Remote-SSH: Connect to Host"をクリック
    3. 設定ファイルの"Host"に記載したホスト名が表示されるはずなので、それをクリック
  4. VSCodeに拡張のRust(rls)を追加(この時、install in wslをクリックする)
  5. WSL上にrlsに必要なものをインストールするか聞かれるのでyesとする
  6. VSCodeに拡張のCodeLLDBを追加
Host Local-Ubuntu
    HostName 仮想マシンのIP(127.0.0.1)
    Port 仮想マシンの22番ポートにフォーワーディングしているポート(2222)
    User vagrant
    IdentityFile 秘密鍵のフルパス

以上でRustの環境構築とKali linuxの準備は完了

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4