質問: ssh経由でvmware仮想マシンにアクセスできません centos5.6ホストにvmwareserver2があります。ホストマシンから仮想マシンにアクセスできますが、他のマシンからはアクセスできません。natポートフォワーディングを構成しました。しかし、どういうわけか、sshを使用してvmにアクセスできません。すべてのファイアウォール設定を確認しました。正しいようです。この問題の原因は何ですか?
回答: リモートからホストにsshできる場合は、sshポート(22)がvmに転送されているかどうか、ホストのファイアウォールを確認する必要があります。同様の質問があります ここ 。そこでは、ufwファイアウォールがあります。これには次のようなルールが必要です。ufw route allow 2222/tcp to 192.168.130.128 port 22 ポート2222でホストへの接続を許可し、ip 192.168.130.128:22でtcpをvmゲストに転送しますそして このユーザー 言及されたように、ufwはiptablesのフロントエンドなので、フロントエンドに移動するか、その種類のiptablesを編集します。iptables -t nat -a prerouting -m tcp -p tcp --dport 2222 -j dnat --to-destination 192.168.130.128:22 足りない部分短いバージョンiptablesにpreroutingルールをnat tableに追加するように指示しました。不足している部分は次のとおりです。#--------------------------------------------------------------- # after dnat, the packets are routed via the filter table's # forward chain. # connections on port 22 to the target machine on the private # network must be allowed. #--------------------------------------------------------------- # the `\` masks the `linebreak` in the `bash command` # you can `copy & paste` all the lines at once # from the manual # changing to specific ip and interfaces # being: # `eth0` your host adapter and # `vmnet8` your guest adapter これは、ターゲットマシンへの接続です。iptables -a forward -p tcp -i eth0 -o vmnet8 -d 192.168.130.128 \ --dport 22 --sport 2222 -m state --state new -j accept そして、これらはhost interfaceからguest interfaceへのフィルターです。iptables -a forward -t filter -o eth0 -m state \ --state new,established,related -j accept iptables -a forward -t filter -i vmnet8 -m state \ --state established,related -j accept