Vagrant(CentoOS)にVPN経由でSSH接続する

プログラミング

VPNを経由した際に今まで接続できていた仮想マシンに接続できなくなった場合の対処法です。やり方は以下の通り2つあります。

  1. VirtualBoxのアプリケーションからGUIで操作
  2. vagrantfileでの設定

※2のvagrantfileでの設定の方が楽だと思います。

1. VirtualBoxアプリケーションでの設定方法

以下の手順に沿って設定してみてください。

  1. VirtualBoxのアプリケーションを立ち上げる
  2. 対象のサーバを選択して上部の「設定(S)」メニューを押下
  3. サイドバーの「ネットワーク」を選択
  4. 「割当(A):NAT」を選択後、「ポートフォワーディング(P)」を押下
  5. 「+」追加ボタンを押下
  6. ポートフォワーディングルールを以下のように設定
    「プロトコル:TCP」
    「ホストポート:50022」
    「ゲストポート:22」
  7. 何度か「OK」ボタンを押下で設定を終了する

2. vagrantfileでの設定方法

対象の仮想マシンのvagrantfileに以下の1文を追加します。

# NOTE: This will enable public access to the opened port
# config.vm.network "forwarded_port", guest: 80, host: 8080
# 27行目あたりに以下の1文を追加
  config.vm.network "forwarded_port", guest: 22, host: 50022

SSH接続の方法

ターミナルソフトで以下のように接続します。

  • ホスト:localhost
  • ポート:50022
  • アカウント:接続可能なユーザ
  • パスワード:ユーザパスワード
pocketcode

30代のWEB系企業エンジニアです。毎回同じようなことを検索してしまうので、自分の備忘録的に書いています。サイトのデザインはQiita(https://qiita.com)さんに寄せています。