広告

VirtualBoxにCentOS8を入れてSSH接続する(Mac)2019年12月版

新規作成 Mac
この記事は約7分で読めます。

環境

ホスト:macOS Mojava バージョン 10.14.6

ゲスト:CentOS 8.0

VirtualBox:バージョン 6.0.14

VirtualBoxで仮想マシンを作る

新規作成

新規のボタンをクリックします。

名前

名前を入力します。

CentOS〜〜〜と入力すると、自動的に、タイプ、バージョンが切り替わります。

切り替わり後

タイプとバージョンを確認して、続きをクリック

メモリーサイズ

メモリーサイズは適当に設定しておきます。少ないと、動作がモッサリ・・・

最低でも2GB以上にしましょう。

そのまま継続

仮想ハードディスクを作成します。

選ぶ

VDIを洗濯します。

可変サイズ

可変サイズを洗濯しましょう。

サイズ設定

それなりのサイズにしておかないと、後々面倒なことに。

余裕を持たせてください。

次にネットワークを設定していきます。

VirtualBoxネットワークの設定

VirtualBoxで一番、面倒なのがネットワーク設定です。

色々と試した結果、ブリッジアダプターかNAT+ポートフォワーディング+ホストオンリーアダプターがオススメです。

この記事では、NAT+ポートフォワーディング+ホストオンリーアダプターで進めていきます。

NAT

NATは下記の接続ができます。

ゲストOS→VirtualBox(ルータの働き)→ホストOS

ゲストOS(CentOS)から、ホストOS(Mac)にアクセスできます。

ゲストOS(CentOS)から、インターネットに接続できるということ(Macがインターネットに接続されている前提)

ただし、ホストOS(Mac)からゲストOS(CentOS)にアクセスできないので、MacのブラウザでCentOSで作ったWordPressなどを操作することができません。

ポートフォワーディング

NATにポートフォワーディングという機能を追加すると、ホストOS(Mac)からゲストOS(CentOS)にアクセスできるようになります。

VirtualBoxの設定・アダプター1

アダプター1に、NAT+ポートフォワーディングを設定します。

アダプター1

先ほど、作成した仮想マシンを選択して、設定をクリック。

ネットワークを選択し、アダプター1を選択。

ネットワークアダプターを有効化して、割り当てがNATであることを確認。

高度の三角マークをクリック。

ポートフォワーディング

ポートフォワーディングをクリック。

+ボタン

プラスボタンをクリック

設定

名前:Rule 1(任意の名称)

プロトコル:TCP

ホストIP:0.0.0.0(全ての条件にマッチするので、localhost、ホストの IP、127.0.0.1 などでもアクセスできるようになります)

ホストポート:2222

ゲストIP:空欄

ゲストポート:22

ホストオンリーアダプターの設定

ツール

ツールを選択。

作成

作成をクリックすると、自動的に作成されます。

「アダプターを手動で設定」を選択したら、

IPv4アドレスに192.168.58.1

IPv4ネットマスクに255.255.255.0

と自動で設定されました。変更しようとしても変更できませんでした。

DHCPサーバーは有効にしません。

IPv4ネットマスクに255.255.255.0というのは、サブネットマスクのことです。
255.255.255.0にすると、IPv4アドレスの末尾が〜〜〜/24となります。
・・・後ほどCentOS上でIPアドレスの設定で〜〜〜/24が出てきます。
合わせるようにしましょう。

VirtualBoxの設定・アダプター1

ホストネットワークマネージャーの設定が終わったら、アダプター2の設定をします。

アダプター2

仮想マシンを選択。

設定を選択。

ネットワークを選択。

アダプター2を選択。

ネットワークアダプターを有効化にチェック。

割り当てを「ホストオンリーアダプター」にする。

名前を、先程作成したもの(今回はvboxnet2)を選ぶ。

OKをクリック。

CentOSをインストール

CentOSをインストールします。(別記事)

CentOSをインターネットに接続する

CentOSを立ち上げます。

ログイン

ログインします。最初にユーザー名を入れて、パスワードを入力します。

パスワードは表示されません。

nmtui

コマンドで、nmtuiと入力すると、下記の画面が表示されます。

# nmtui
nmtui

上下左右のキー、スペースキー、Enterキーを使って設定していきます。

Edit a connectionを選択。

enp0s3

enp0s3から設定していきます。

enp0s3

enp0s3

IPv6 の所を Ignore に設定。

Automatically connect の所にカーソルを合わせて、スペースキーを押して有効(xマークを表示させる)にします。

enp0s8

enp0s8を設定します。

enp0s8

「IPv4 CONFIGURATION」を「Manual」に設定し、「Show」を選択し詳細を表示させます。

「Addresses」の所に、ホストオンリーアダプターで設定したIPアドレスと同じネットワークになるように設定します。

VirtualBoxのホストオンリーアダプターのIPアドレス:191.168.58.1

VirtualBoxのホストオンリーアダプターのIPv4ネットマスク:255.255.255.0

CentOS 8.0 の enp0s8 の IPv4 アドレス:192.168.58.101/24

(CentOS 8.0 の enp0s8 の IPv4 アドレスの末尾から6から4桁の101は任意の数字でOKです)

CentOS 8.0 の enp0s8 の IPv4 アドレス末尾の/24はホストオンリーアダプターIPv4ネットマスクで設定した値に対応した値になります。

Active a connection

画面を戻して、Active a connection を選ぶ。

Active a connectionの設定

名前の前に*が付いていることを確認します。

*があるとアクティブです。上記の画像は全てアクティブになっています。

Quit

Quitで終了します。

NetworkManagerをリスタート

NetworkManagerをリスタート

NetworkManagerを下記のコマンドでリスタートします。

# systemctl restart NetworkManager

エラーが表示されなければOKです。

CentOS7.6の時は、networkの再起動も必要でしたが、CentOS8.0で # systemctl restart networkと入力すると、Failedになりました。

接続確認

接続されているか確認します。

nmcli device
# nmcli device

と入力し、緑色で表示されていれば、接続できています。

グーグルへのpingも確認しておきましょう。

# ping google.com

pingを終了するには「controlキー+cキー」です。

ファイヤーウォール停止

ローカルなので、ファイヤーウォールを停止してしまいます。

disable firewalld

ファイヤーウォール停止コマンド

# systemctl stop firewalld

ファイヤーウォール無効化コマンド

# systemctl disable firewalld

CentOSをシャットダウン

下記のコマンドでシャットダウンします。

# shutdown -h now

macを再起動

ホストpcであるmacを再起動をしておきましょう。

私の場合、再起動しないと、接続できませんでした。

macのターミナルでSSH接続をしてみる

ターミナルを起動して、

$ ssh root@192.168.58.101

と打ち込みます。@の後は、CentOSでenp0s8、IPv4の所に192.168.58.101と入力した値と同じものにします。

macターミナルから

Yes,Noと聞いてくるので、「yes」

CentOSのパスワードを聞いてくるので、入力します。

これでSSH接続ができました!