やっつけ不定記

好きなときに好きなことをちゃっちゃと書いてます

Kali Linux VMを作ってみた

少し前にチャレンジしたのですが、やっている間にKali Linux自体が
バージョンアップされてしまったので、一からやり直し。
歴史のあるディストリビューションなので、情報は結構ありますが、
せっかくやってみたのでメモ。それなりにクセがありそうな印象だったし。
実施にあたっては、
https://www.websec-room.com/2014/01/07/1485
がとても参考になりました。


(1)VirtualBoxでのVM作成
上記URLを参考にVMを作成する。今回は
OS:Debian(64bit), ディスク:20GB, ISOファイル:kali-linux-2018.1-amd64.iso
で実施しました。




(2)VM個別設定
パッケージをアップデートして、VirtualBox Guest Additionsを導入する。
# apt-get update && apt-get install -y linux-headers-$(uname -r)
VirtualBox のメニューの [デバイス] – [Guest Additions のCDイメージを挿入] を選択します。
このメディアには自動的に〜のダイアログで「キャンセル」する。
# cp /media/cdrom/VBoxLinuxAdditions.run /root/
# chmod 755 /root/VBoxLinuxAdditioins.run
# cd /root
# ./VBoxLinuxAdditioins.run
VMを再起動する。




(3)GUICUI
GUIが重すぎるので、CUI設定にする。
このとき、日本語ディレクトリが化けるので、英語に変更する。


・ホームディレクトリのディレクトリ名変更
→(参考)http://www.atmarkit.co.jp/flinux/rensai/linuxtips/a077changelang.html
# apt-get install xdg-user-dirs-gtk
# LANG=C xdg-user-dirs-gtk-update
ダイアログでUpdate namesを選択する。


・デフォルト言語の変更
# export LANG=C
# cp -p ~/.bashrc ~/.bashrc.org
# vi ~/.bashrc
末尾の行に
export LANG=C
を追加する。
# source ~/.bashrc
次回ログイン時から英語になる。


CUIへの変更
# systemctl get-default
graphical.target
GUIモードになっている
# systemctl set-default -f multi-user.target
# systemctl get-default
multi-user.target
CUIモードに変更されたのでVMを再起動する。




(4)一般ユーザの作成
# useradd -m (アカウント名)
/home/(アカウント名)にアカウントができる
# usermod -a -G sudo (アカウント名)
作成したアカウントがsudoコマンドを使えるようになる。
# passwd (アカウント名)
パスワードを設定する。
設定できたらログインできるかを確認する。




(5)一般ユーザのシェル変更
・現在の設定
$ echo $SHELL
/bin/sh
POSIXモードで動いてる


・利用可能なシェルの確認
$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/tmux
/usr/bin/screen
/bin/zsh
/usr/bin/zsh


・デフォルトシェルの変更
$ chsh -s /bin/bash
パスワードを入力する。
$ exit
一旦ログアウトして再ログインするとデフォルトがbashに変わる。




(6)一般ユーザの言語設定
$ vi ~/.bashrc
末尾の行に
export LANG=C
を追加する。
$ source ~/.bashrc
$ exit
次回ログイン時から英語になる。




(7)SSH接続設定
# view /etc/ssh/sshd_config
UsePAM yes
のエントリがあることを確認する。
# cd /etc/pam.d
# cp -p sshd sshd.org
# vi sshd
最下行に
account required pam_access.so
を追加する。
# vi /etc/security/access.conf
PAMのaccess.confの書式に従って、一般ユーザへのSSH接続設定を書く。
# /etc/init.d/ssh restart
SSHの接続を確認する。
なお、SSHサービスはデフォルトオフのようなので、
必要であればオンにする。
# systemctl enable ssh.service