(Windows環境) VirtualBoxで仮想マシンにCentOS7.6をインストール (NAT + ホストオンリーアダプタで接続)

仮想マシンとの接続はNAT + ホストオンリーアダプタで設定します｡
ゲストOSには固定IPアドレスを割り当てます｡
最後にTeratermにてsshで接続確認します｡

■1. VirtualBoxの設定
　VirtualBoxで仮想マシンを新規作成
　ホストオンリーアダプタの追加
　CentOSのインストール
■2. ホストOS側(Windows)の設定
　ホストPCのイーサネットを共有
　ホストオンリーアダプタのIPアドレスを変更(変えたい場合のみ)
■3. ゲストOS側(CentOS7.6)の設定
　ネットワークの設定
　(固定IPの割り当て､ゲートウェイ､自動接続など)
　ssh接続の設定(DNS無効化)

以上が大まかな設定となります｡

#■1. VirtualBoxの設定
###仮想マシンの新規作成
Oracle VM VirtualBoxを起動し､新規ボタンにて作成を開始します｡
![1.png](https://qiita-image-store.s3.amazonaws.com/0/226021/72cc3279-e5a9-b684-684b-685a7f9a7224.png)
Name: CentOS7.6
タイプ: Linux
バージョン: Red Hat(64-bit)

特に必要がなければ､すべてデフォルト設定のままで良いと思います｡
![2.png](https://qiita-image-store.s3.amazonaws.com/0/226021/fbec4328-a19b-d4d8-d19e-254a0aef6a79.png)
![3.png](https://qiita-image-store.s3.amazonaws.com/0/226021/9e4dfda8-5b12-e196-82c1-daea4b77c75f.png)
![4.png](https://qiita-image-store.s3.amazonaws.com/0/226021/01e26f34-2aad-5ecf-36cb-10a1feaf13d9.png)
![5.png](https://qiita-image-store.s3.amazonaws.com/0/226021/e675b276-d933-95e1-7ae2-2019641a73b8.png)
![6.png](https://qiita-image-store.s3.amazonaws.com/0/226021/03d32c20-667d-618b-1277-298924afada1.png)
![7.png](https://qiita-image-store.s3.amazonaws.com/0/226021/717bb46d-6e61-4026-9847-0774f55a868e.png)
###仮想マシンの設定変更(ホストオンリーアダプタの追加)
作成したCentOS7.6を選択して設定ボタンで仮想マシンの設定を開き､ネットワークを選択｡
![9.png](https://qiita-image-store.s3.amazonaws.com/0/226021/cb11f755-d8fa-e8dc-4e43-371f86fd8b00.png)
アダプター1､NATはそのままの設定でOK
![10.png](https://qiita-image-store.s3.amazonaws.com/0/226021/b152b76d-c2dd-a320-a41e-c651e6ee59c9.png)
アダプター2のタブを選択し､有効化にチェックを入れ､｢ホストオンリーアダプタ｣｢VirtualBox Host-Only Ethernet Adapter｣を選択します｡
![8.png](https://qiita-image-store.s3.amazonaws.com/0/226021/ea303415-bd5a-bd18-26ed-e3ac474049db.png)
Graphics Controllerを｢VBoxVGA｣に変更します｡(変えないと起動途中にエラーが一瞬表示されます)

###CentOS7.6のインストール
設定が終わったら仮想マシン(CentOS7.6)を起動させます｡
![11.png](https://qiita-image-store.s3.amazonaws.com/0/226021/c536c6bd-3645-a556-ab00-95921c0b2c32.png)
ダウンロードしておいたCentOSのイメージファイルを指定して起動させます｡
![12.png](https://qiita-image-store.s3.amazonaws.com/0/226021/6b1f8fdb-7a41-edf7-e9c7-8c19250a6a39.png)
インストーラ画面が出るので､画面に従って進めます｡
![13.png](https://qiita-image-store.s3.amazonaws.com/0/226021/0a75e70b-0815-cda1-fabd-195fe198db66.png)
![14.png](https://qiita-image-store.s3.amazonaws.com/0/226021/2b2c2016-5f46-434c-b3e4-61bfca7c1abe.png)
SYSTEMのところに警告マークがでているのでクリックします｡
![15.png](https://qiita-image-store.s3.amazonaws.com/0/226021/082eb4dc-18fc-e6e0-d2fb-e7c456a0aa59.png)
そのまま何も変えずにDoneをクリック
![16.png](https://qiita-image-store.s3.amazonaws.com/0/226021/3e8653c0-884e-5617-5840-9878c9ee690e.png)
警告マークが消えて｢Begin Installation｣ボタンで進めるようになります｡
![17.png](https://qiita-image-store.s3.amazonaws.com/0/226021/b57b680a-b6d9-d2cd-2ea8-b913b79a8a1d.png)
インストール中にROOTパスワードの設定とユーザの作成をします｡
![18.png](https://qiita-image-store.s3.amazonaws.com/0/226021/f7272abc-62b7-0186-b53f-7439436d49a3.png)
インストールが終了したらRebootで再起動させます｡

#■2. ホストOS側(Windows)の設定
![19.png](https://qiita-image-store.s3.amazonaws.com/0/226021/35313e2f-c829-1c6c-c0e8-75c2dc06c405.png)
![20.png](https://qiita-image-store.s3.amazonaws.com/0/226021/9b419a47-461a-01ad-35c7-bdf102145ae9.png)
イーサネットの状態を開き､プロパティを開く｡
![21.png](https://qiita-image-store.s3.amazonaws.com/0/226021/dd2d2694-283e-b70f-72a8-9b2c3d713b64.png)
共有タブを開き､チェックを入れて接続を許可する｡
![22.png](https://qiita-image-store.s3.amazonaws.com/0/226021/56049efd-0837-c9ec-c3f6-18767c7085b8.png)
上記のように警告がでる｡ ホストオンリーアダプタにIP(192.168.137.1)が勝手に割り当てられます｡

###ホストオンリーアダプタのIPアドレスを変更
※この設定は特に必要なければ不要です｡
私はサブネットをホストPCと合わせたかったので変更しました｡
![23.png](https://qiita-image-store.s3.amazonaws.com/0/226021/344423fe-cd83-1260-fa98-abba203e257c.png)
｢VirtualBox Host-Only Network｣のプロパティを開く
![24.png](https://qiita-image-store.s3.amazonaws.com/0/226021/030f7422-b8b5-45ca-629a-bded681b5d9f.png)
｢インターネットプロトコル バージョン4(TCP/IPv4)｣のプロパティを開く
![25.png](https://qiita-image-store.s3.amazonaws.com/0/226021/da1afd84-c132-36b2-22f4-5ee040d5a23f.png)
IPアドレスを[192.168.11.250]に変更｡

※ここで変更したIPアドレスが､ゲストOSのGatewayとなります｡
　変更しなかった場合は｢192.168.137.1｣

ipconfigコマンドにて設定を確認

```
> ipconfig
Windows IP 構成

イーサネット アダプター VirtualBox Host-Only Network #3:

   接続固有の DNS サフィックス . . . . .:
   リンクローカル IPv6 アドレス. . . . .: fe80::7999:c782:e18a:eae7%17
   IPv4 アドレス . . . . . . . . . . . .: 192.168.11.250
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   デフォルト ゲートウェイ . . . . . . .:

イーサネット アダプター イーサネット:

   接続固有の DNS サフィックス . . . . .:
   リンクローカル IPv6 アドレス. . . . .: fe80::101f:a328:7352:eeaa%3
   IPv4 アドレス . . . . . . . . . . . .: 192.168.11.2
   サブネット マスク . . . . . . . . . .: 255.255.255.0
   デフォルト ゲートウェイ . . . . . . .: 192.168.11.1
```

以上でWindows側の設定は終了です｡

#■3. ゲストOS側(CentOS7.6)の設定
ゲストOS(CentOS7.6)を起動してログインします｡
※以下の設定の変更はroot権限が必要です｡

nmcli deviceコマンドでネットワークデバイスを確認

```console
# nmcli device
DEVICE   TYPE       STATE         CONNECTION
enp0s3   ethernet   disconnected  --
enp0s8   ethernet   disconnected  --
```

小さい方(enp0s3)がNAT､大きい方(enp0s8)がホストオンリーアダプタになっていると思います｡
どちらも切断状態にあるので自動接続を有効にして､enp0s8に固定IPを割り当てる｡

###nmtui を使ってネットワークの設定を変更

```
# nmtui
```

![26.png](https://qiita-image-store.s3.amazonaws.com/0/226021/082ae06e-5dc1-a5a1-17f8-f76d32bd8120.png)
![27.png](https://qiita-image-store.s3.amazonaws.com/0/226021/4033e23a-013b-1acb-2dda-f25155ed44ee.png)
![28.png](https://qiita-image-store.s3.amazonaws.com/0/226021/7c294db6-8a8d-1a96-3648-21729fd73866.png)
enp0s3を開き､｢Automatically connect｣にチェックを入れてOKする｡

![29.png](https://qiita-image-store.s3.amazonaws.com/0/226021/d2c68a4a-60c7-5a01-a1d2-7a5a28705971.png)
次にenp0s8を開き､まずは上記のように｢Automatically connect｣にチェックを入れ､
CONFIGURATION を｢Manual｣ に変更して以下のように設定する
![30.png](https://qiita-image-store.s3.amazonaws.com/0/226021/cd71e3b4-9573-1bfd-7ead-930741402f5a.png)
IPv4 Address: ｢192.168.11.101/24｣
　※サブネット(192.168.11の部分)はGatewayと同じにする｡ /24の指定も忘れずに! 
Gateway: ｢192.168.11.250｣
　※先に割り当てた､ホストオンリーアダプタのIPアドレスを指定する
DNS servers: ｢192.168.11.250｣
　Gatewayと同じにする
変更したらネットワークを再起動します｡

```
# systemctl restart network
```

nmcli deviceにてconnectedになっている事を確認する
![31.png](https://qiita-image-store.s3.amazonaws.com/0/226021/e13c1340-d808-601a-1b0f-553d04589fef.png)

ip addr でも確認してみる

```
# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:ab:8f:e1 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global noprefixroute dynamic enp0s3
       valid_lft 85263sec preferred_lft 85263sec
    inet6 fe80::169e:33ca:6d0f:8994/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:bd:e5:d7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.11.101/24 brd 192.168.11.255 scope global noprefixroute enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::ed56:9457:8861:cbb4/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
```

###ssh接続の設定(DNS無効化)
※DNSへの問い合せのタイムアウト待ちが発生して接続に時間がかかってしまうのでDNS使用を無効化します

```
# vi /etc/ssh/sshd_config
```

次の1行を追記して保存します｡

```
UseDNS no
```

sshdを再起動する

```
# systemctl restart sshd
```
以上でCentOS側の設定は完了です｡

### TeraTermにて接続を確認する｡
![32.png](https://qiita-image-store.s3.amazonaws.com/0/226021/e74d45d2-97ef-76e5-9a85-a5c5fb50f98b.png)
![33.png](https://qiita-image-store.s3.amazonaws.com/0/226021/4fcb360e-5287-e723-c8ca-aa223fe29adc.png)
![34.png](https://qiita-image-store.s3.amazonaws.com/0/226021/0adbbc36-3125-6d1b-e19c-a22094eb0a66.png)

コマンドラインがでたら接続完了です｡

外部に接続できるかpingで確認｡　(Yahoo.co.jp 98.137.246.7)

```
# ping 98.137.246.7 -c 5
PING 98.137.246.7 (98.137.246.7) 56(84) bytes of data.
64 bytes from 98.137.246.7: icmp_seq=1 ttl=42 time=150 ms
64 bytes from 98.137.246.7: icmp_seq=2 ttl=42 time=142 ms
64 bytes from 98.137.246.7: icmp_seq=3 ttl=42 time=151 ms
64 bytes from 98.137.246.7: icmp_seq=4 ttl=42 time=131 ms
64 bytes from 98.137.246.7: icmp_seq=5 ttl=42 time=149 ms

--- 98.137.246.7 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4019ms
rtt min/avg/max/mdev = 131.971/145.065/151.155/7.296 ms```