0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

異なるホストOSのゲストOSへSSH接続

Last updated at Posted at 2025-08-11

表題を実現する手順をまとめました。

★やりたいこと
デスクトップPCのホストOS→ゲストOSのSSH接続はteratermマクロを通じてできている状態だが、これをノートPCからもデスクトップPC内の同じリソースにSSHでアクセスできるようにしたい。

ここではLAN内での接続になります。ゆくゆくはLAN外、すなわちカフェや図書館などからでも家のPCのリソースにアクセスできるようにしていきたい所存。

目次

  1. 構成
  2. ファイアウォールの許可設定
  3. ping疎通確認
  4. teratermマクロの変更

1. 構成、前提条件

構成は以下。

image.png

teratermマクロのコード内容は以下。一つのPC内でのホストOSからゲストOSへのSSH接続の処理。

;; 接続先情報
HOSTADDR = '127.0.0.1'  ; localhost
USERNAME = 'username'        ; ユーザー名
PASSWORD = 'password'        ; パスワード(要変更)
SUDO_PASSWORD = 'sudopassword'   ; sudo用のパスワード
PORTNUM = '2222'        ; SSHポート番号;; コマンド組み立て
COMMAND = HOSTADDR
strconcat COMMAND ':'
strconcat COMMAND PORTNUM
strconcat COMMAND ' /ssh /2 /auth=password /user='
strconcat COMMAND USERNAME
strconcat COMMAND ' /passwd='
strconcat COMMAND PASSWORD;; SSH接続
connect COMMAND;; 接続後のプロンプト待機
wait '$';; sudo su コマンド実行
sendln 'sudo su';; パスワードプロンプトを待機
wait '[sudo] password for'
wait ':';; sudoパスワード送信
sendln SUDO_PASSWORD

ゲストOS(Virtual Box)のネットワーク設定は以下。

インタフェース名 割り当て IPアドレス
enp0s3 NAT 10.0.2.15/24
enp0s8 ホストオンリーアダプタ 192.168.56.103

enp0s3にて、以下ポートフォワーディングルールを適用している。
image.png

2. ファイアウォールの許可設定

デスクトップPC(ゲストOSを持つPC)からPowerShellを管理者権限で開き、以下コマンドでポート2222(ssh用のポート)を許可させるよう設定する。

New-NetFirewallRule -Name "Allow SSH 2222" -DisplayName "Allow SSH 2222" -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 2222

3. ping疎通確認

Windowsの場合、デフォルトでOSにファイアウォールの設定があるため通常はPC間はpingは届かない。かつ、平常時はpingは届かなくて問題ないが、データが届く状態にあるかを確認するために行う。

以下にて、ファイアウォールを無効化し、ping疎通を確認(ping疎通確認後に有効に戻す)
image.png

4. teratermマクロの変更

接続先のIPアドレスをループバックアドレスから接続先PCのIPアドレスに変更。

;; 接続先情報
HOSTADDR = '192.168.0.11'  ; 

以上。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?