プログラム関係の備忘録。技術系記事1000記事以上を目指すブログ

【VirtualBox】ゲストPCへの接続(ポートフォワーディング)

  • 2019年10月31日
  • 2020年6月14日
  • その他
  • 3774view
  • 0件

はじめに

以前も、VirtualBoxのゲスト
OS に対しホストOS から接続する方法を残してありました。
https://weblion303.net/1571/

上記の記事ではブリッジを使った方法ですが、NATでポートフォワーディングの設定をしたほうがより簡単でしたので、以下に残しておきます。

こんなとき

1.仮想マシンで立ち上げたwebサーバーにホストOSからアクセスしたい
2.ゲストOSのmysqlサーバーに対しホストOSからアクセスしたい

今回は2番をメインに紹介します。
着地点はmysqlクライアントのA5SQLを使ってゲストOSのmysqlに接続するところまで。

ポートフォワーディングの設定

VirtualBoxマネージャーの設定を開く

ネットワーク→ポートフォワーディングへ

ルールを作成する

上記の場合、ホストの3336ポートにアクセスすると、ゲストの3306ポートに流す。ホストの3000ポートにアクセスすると、ゲストの3000ポートへ。ホストの2222ポートだと…という感じ。

この状態で保存し、例としてゲストOS内でlocalhost:3000でnodeのアプリケーションサーバーを起動すると、ホストOSのブラウザでlocalhost:3000でも見ることができるようになる。

A5SQLでの設定

まずはゲストOS側でmysqlに接続するときと同様の設定を「基本」に入力


「SSH2トンネル」タブに、先ほどポートフォワーディングのルールで設定したポートを入力し、ゲストPCへのログイン情報を入力

テスト接続に成功すると、データベースの選択ができるようになる。

mysqlに接続できない場合、権限エラーがまず考えられるのでmysqlユーザーのGRANTの設定を見直すといいです。
https://www.dbonline.jp/mysql/user/index6.html#section7

そもそもSSHに失敗してしまう場合は、ゲストPCのubuntu側でssh接続ができるようになっているか確認。
sshできるようにするには以下のコマンド

sudo ufw allow 22
sudo ufw reload
sudo apt install openssh-server