VMware内で動いているゲストOSであるFreeBSDへ、sshでログインする方法についてです。
ささいなことですが、VMware toolsをインストールしていないと、ゲストOSとホストOSとの間で、コピー&ペーストができなかったりで、何かと不便ですが、ホストOS側でputtyのようなsshクライアントを実行すれば、puttyからテキストのコピー&ペーストができます。
VMwareでイーサネットをブリッジにしている場合は、ゲストOSに割り振られたIPアドレスを指定して、sshでログインできます。
イーサネットをNATに設定している場合は、ホストOS側でNATの設定が必要になります。
昨日の話にもあったように、VMware Playerがインストールされたフォルダ(「C:\Program Files\VMware\VMware Player」とか)のなかに、vmnetcfg.exeというアプリケーションがあるので、これを起動します。
「NAT」というタブを開いて、[編集]ボタンをクリック。
[ポートの転送]ボタンをクリック。
「受信TCPポート」の[追加]ボタンをクリック。
ホストOSのIPアドレスあてにsshしたら、ゲストOSにsshすることになるように、指定します。sshのポート番号は22です。転送先のIPアドレスは、ゲストOSに割り振られたIPアドレスになります。ここでは、192.168.217.130だったので、それを指定しました。場合によって異なります。たぶん。DHCPのときはどうするんだろう?
ついでなので、同様に、HTTPのポートも転送されるようにしてみます。
こんなかんじです。最後にOKボタンをクリックした時点で、ここでの設定が反映されるようです。
これでOKですが、うまくいかない場合のチェックポイントをいくつか。
(1) ちゃんと、ゲストOS側までパケットが届いているかtcpdumpコマンドなどで確認してみる。
とどいていない場合は以下を確認。
(2) ホストOS側のファイアウォール機能でブロックされていないか確認する。とくにWindows XP SP2では、標準でファイアウォール機能が働いてしまって、ホストOSのポート22番の時点ではじかれてしまっている場合があります。一時的にファイアウォール機能を無効にしてみて、うまくいくようなら、ポート22番を許可するように設定します。もちろん、危険性を十分理解したうえで。ポート80番のHTTPも同様。
(3) ゲストOS側のファイアウォール機能でブロックされていないか確認する。とくにゲストOSが最近のリナックスだと、ほとんどのポートがブロックされていたりするので、そのへん、設定変更する必要があります。
(4) そもそもsshデーモンや、ウェブサーバー(httpd)が動いているか?動いていなきゃ、アクセスできませんねぇ。たまにそういうしょうもないミスをすることもあるので、念のため確認。