2024 Jan. 21.
2023 Aug. 12.
2023 Jul. 07.
2023 Jul. 06.
概要
SSHクライアント : LAN内のリモートデバイス
SSHサーバー : ゲストOS
LAN内の別デバイスからホストOSに入ってきたSSHパケットをゲストOSに転送する。
VMware WorkstationのネットワークアダプタはNAT機構を有するVMnet8を利用する。
ホストOSの、VMwareインストール前から存在するネットワークアダプタに入ってきたSSHパケットをVMwareのVMnet8ネットワークアダプタに転送する。
転送設定はVMware Workstationの設定ファイルに書き込む。
ホストOSとゲストOSの当該SSHポートを開放する。
環境
VMware Workstation 17 Player
ホストOS : Windows 11 Home Edition
ゲストOS : Xubuntu 22.04
LAN : 192.168.1.0/24
ゲストOSのSSHポート : 49202(ホストOSのSSHポートとは異なる任意のプライベートポート)
ホストOSのネットワーク構成
Wireless LAN adapter Wi-Fi(VMwareインストール前からのネットワーク)
Connection-specific DNS Suffix . : IPv4 Address. . . . . . . . . . . : 192.168.1.150(LAN内の任意の固定アドレス) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . : 192.168.1.1
Ethernet adapter VMware Network Adapter VMnet1(VMwareインストールにより設置されるもの)
Connection-specific DNS Suffix . : IPv4 Address. . . . . . . . . . . : 192.168.193.1 Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . :
Ethernet adapter VMware Network Adapter VMnet8(VMwareインストールにより設置されるNAT機能を有するアダプタ)
Connection-specific DNS Suffix . : IPv4 Address. . . . . . . . . . . : 192.168.85.1(85はVMwareインストール毎に異なる) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Default Gateway . . . . . . . . . :
ゲストOSのネットワーク構成
次の記事を参考にしてVMnet8ネットワークアダプタを固定IPアドレスにする。
VMware Workstation 17 Player : ネットワーク構成 - rokkonet
ゲストOSの固定IPアドレス設定状況
ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 altname enp2s1 inet 192.168.85.15/24 brd 192.168.85.255 scope global noprefixroute ens33 valid_lft forever preferred_lft forever
SSH設定手順
鍵の作成と設定
参考 : OpenSSH SSHサーバー、SSHクライアント インストール、鍵生成・配置 - rokkonet
ゲストOS上でSSHキーペア(公開鍵と秘密鍵)を作成する。
公開鍵をゲストOSの ${HOME}/.ssh/authorized_keysに追記する。
クライアントとなるLAN内の別デバイスの${HOME}/.ssh/等の適当なディレクトリに秘密鍵を転送する。
ホストOSが受信したSSHパケットをゲストOSに転送するポートフォワード設定
(出典 : 【2021 最新版】VMwareのサーバーをホストネットワークに公開する方法(意外と簡単) - トウフ.log)
"C:\ProgramData\VMware\vmnetnat.conf"を編集する。
[incomingtcp]セクションに転送設定を記述する。
[incomingtcp] # SSH # ssh -p 8889 root@localhost # ホストに入ってきたパケットのポート番号 = VMのアドレス:VMのポート番号 #8889 = 192.168.27.128:22 49202 = 192.168.85.15:49202
services.mscを起動し、"VMware NAT Service"を再起動する。
ポート開放設定
WindowsホストOSのポート開放
設定 -> プライバシーとセキュリティ -> Windosw セキュリティ -> ファイアウォールとネットワーク保護 -> 詳細設定 -> 受信の規則 -> 新しい規則
規則の種類 : ポート
規則の適用 : TCP
特定のローカルポート : 49202
「接続を許可する」を有効にする。
ドメイン・プライベート・パブリック(LAN外からの接続も考慮)の全てを有効にする。
XubuntuゲストOSのポート開放
# ufw enable # ufw allow from any to any port 49202 proto tcp # ufw reload
SSH接続
$ ssh -i SecretKeyFile -p 49202 USER@192.168.1.150