LoginSignup
6
2

More than 1 year has passed since last update.

【ハッキング・ラボ③】Kali Linuxのネットワークを構築する

Last updated at Posted at 2021-08-09

Kali Linuxのネットワークを構築していきます。

構成は以下のようになります。
アダプター1はハッキング実験用のホストオンリーアダプター、アダプター2はインターネット接続用のNATです。
hacking-lab-part3-1

また、Kali Linuxに新しいユーザーを追加します。


まとめ記事(①〜⑯をまとめてます)
【ハッキング・ラボのつくりかた】をやってみた

システム環境

仮想化ソフト:VirtualBox 6.1.0
ホストOS:Windows10
ゲストOS:Kali Linux 2020.1

ネットワークの構築

仮想LANアダプターの追加

仮想LANアダプターを追加します。
VirtualBoxの「設定」→「ネットワーク」から追加します。

ホストオンリーネットワークの設定

ホストオンリーネットワークの設定を行います。
「ファイル」→「ホストネットワークマネージャー」から以下の画像のようにIPアドレスやDHCPサーバ等の設定をします。
hacking-lab-part3-2
hacking-lab-part3-3

静的IPアドレスの設定

今の設定のままでは、Debian特有のnetwork-managerの仕様により、2つのアダプターを認識することができず、片方にしかIPアドレスが割り振られていません。

この問題を解決するために/etc/network/interfacesファイルに設定を直接書き込んでいきます。

# vi /etc/network/interfaces
interfaces
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 10.0.0.2
netmask 255.255.255.0

# The secondary network interface
allow-hotplug eth1
iface eth1 inet dhcp

再起動して、ifconfigコマンドで確認すると、2つのアダプター両方ともIPアドレスが割り振られていることがわかります。
ここでは、アダプター1には10.0.0.2、アダプター2には10.0.3.15が割り振られています。
hacking-lab-part3-4

ユーザー追加

新しくユーザーを追加します。
今回はnakatatsuというユーザーを追加します。
さらにパスワードを変更、sudoコマンドの使用権限の付与、ログインシェルをbashに設定します。
以下のコマンドを入力します。

# useradd -m nakatatsu
# passwd nakatatsu
# usermod -a -G sudo nakatatsu
# chsh -s /bin/bash nakatatsu

また、passwdコマンドでrootユーザーのパスワードを変更しておきましょう。

SSH環境の構築

SSH環境を構築します。
SSHを使うと、セキュアな通信でリモートアクセスすることができます。

接続される側(ゲストOS)にはSSHサービスを提供するsshdを起動し、接続する側(ホストOS)にはSSHクライアントとしてTera Termを使用します。

SSHホスト鍵を再生成

SSHホスト鍵はあらかじめ生成されていますが、ここでは再生成しておきます。
過去のSSHホスト鍵をバックアップしてからSSHホスト鍵を再生成します。

# cd /etc/ssh
# mkdir default_keys
# mv ssh_host_* default _keys/
# dpkg-reconfigure openssh-server

生成した鍵とデフォルトの鍵のハッシュ値を比較して、別のものであることを確認します。

# md5sum ssh_host_*
# md5sum ./default_keys/ssh_host_*

sshdを起動

sshdを起動します。
合わせてブート時も起動するように設定します。

# service ssh start
# update-rc.d ssh enable

ホストOSからSSHでアクセス

ホストOSからSSHでアクセスします。
Tera Termを起動し、ホストにKaliのIPアドレスを指定します。
初回は警告が出ますが、信頼できるホストなのでそのまま「続行」ボタンを押します。
hacking-lab-part3-5

次に認証画面が表示されるので、ユーザー名とパスフレーズを入力し、「OK」ボタンを押します。
hacking-lab-part3-6

ログインできれば、プロンプトが返ってきます。
hacking-lab-part3-7

rootユーザーのログインを許可する

ホストOSからSSHでアクセスできるようにしましたが、今のままではrootユーザーのログインができないようになっています。
そこでrootユーザーで直接ログインできるようにしていきます。

Kali Linuxを起動し、/etc/ssh/sshd_configファイルを編集します。

sshd_config(編集前)
#PermitRootLogin prohibit-password
sshd_config(編集後)
PermitRootLogin yes

以下のコマンドを入力し、sshdを再起動すれば、rootユーザーでログインできるようになります。

# systemctl restart ssh

公開鍵認証の設定

これでパスワード認証によりログインできるようになりましたが、セキュリティを高めるため公開鍵認証を採用することにします。
公開鍵認証ではユーザー名、パスフレーズ、秘密鍵の3つが揃わないとログインすることができません。

公開鍵認証の原理は以下のようになっています。
hacking-lab-part3-8

まずTera Termで公開鍵と秘密鍵を生成します。
「設定」→「SSH鍵生成」と進み、生成します。
hacking-lab-part3-9

次にKali Linuxに公開鍵を転送します。
パスワード認証でログイン後、「ファイル」→「SSH SCP」と進み、公開鍵を転送します。
hacking-lab-part3-10

Kali Linux側で公開鍵認証を有効にします。
まず公開鍵(id_rsa.pub)をauthorized_keysファイルにコピーし、さらに権限を変更します。

# cat id_rsa.pub >> ./.ssh/authorized_keys
# chmod -R 700 ./.ssh/
# chmod -R 600 ./.ssh/authorized_keys

そして、/etc/ssh/sshd_configファイルにて以下のようにコメントアウトし、公開鍵認証を有効にします。

sshd_config
PubkeyAuthentication yes
AuthorizedKeysFile    .ssh/authorized_keys .ssh/authorized_keys2

sshdを再起動すれば、公開鍵認証でログインできるようになります。

# systemctl restart ssh

hacking-lab-part3-11

パスワード認証は必要ないので無効にしておきます。
/etc/ssh/sshd_configファイルを編集します。

sshd_config(編集前)
#PasswordAuthentication yes
sshd_config(編集後)
PasswordAuthentication no
6
2
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
6
2