ssh访问vmware虚拟机(打通本地主机与虚拟机的网络)

本文详细介绍了如何通过SSH访问VMware虚拟机,包括将虚拟机设置为NAT模式,配置虚拟机和本地IP,修改虚拟机的网络配置,以及关闭防火墙以确保连接通畅。主要针对CentOS-7系统,强调了专业版VMware的SSH远程连接功能。

通过ssh访问虚拟机还是挺简单的,不过如果不熟悉的话,会耽误很多时间,我第一次搭建网络就耽误我很久,今天突然心血来潮记录一次如何配置使本地能访问vmware虚拟机。

这是我的虚拟机:

想要ssh连上大概需要五步:

第一步,设置虚拟机与本地使用NAT模式

第二步,设置检查本地ip,设置虚拟机网络首选项的配置(建议固定ip,不然每次都要配置,很痛苦,方式在文中)

第三步,修改虚拟机ip

第四步,设置或者关闭防火墙。

以我的centos-7为例,注意,只有vmware专业版才能实现ssh远程连接(非专业版我不会):

第一步:设置虚拟机网络模式为桥接模式:

第二步:查看本地ip,对虚拟机网络首选项进行配置

 打开运行(可以在搜索框中搜索“运行”),进入cmd,输入ipconfig,查看vmware network adapter vmnet8的ip和子网掩码:

 插叙:

可以进入控制面板->网络和internet->网络和共享中心->更改适配器设置->右击VM8->点击属性->在属性的网络中找到`internet 协议版本4(TCP/IPv4)属性`(可能是英文的),然后设置网络ip,固定虚拟网卡ip,一次性不用下次再修改ip

使用虚拟网络编辑器设置好虚拟机的网络:

 第三步,修改虚拟机ip:

查看网卡:

发现是ens33 

修改 /etc/sysconfig/network-scripts/ifcfg-ens33文件:

ip和网关需要在同一个子网下。 

 重启网络:systemctl restart network

再次查看网络(ip addr),发现ens33的ip是我们期望的ip

第五步 关闭防火墙

systemctl stop firewalld

然后我们发现在物理机上ping我们的期望ip(如图所示是192.168.64.4)能ping通

 

 

 

<think> 我们需要通过设置SSH密钥对来实现免密码登录。步骤如下: 1. 在本地机器(运行VSCode的机器)上生成SSH密钥对(如果还没有的话)。 2. 将公钥复制到VMware虚拟机中的Linux系统的~/.ssh/authorized_keys文件中。 3. 确保权限设置正确。 详细步骤: 步骤1:生成SSH密钥对(在本地机器上) 打开终端(Windows可以使用PowerShell或CMD,但建议使用Git Bash;Mac和Linux使用系统终端)。 输入以下命令: ssh-keygen -t rsa -b 4096 按提示操作(可以直接按回车使用默认路径和空密码,这样就能实现完全免密码登录,但为了安全也可以设置密码,不过VSCode连接时每次需要输入密码)。 步骤2:将公钥复制到虚拟机 方法1:使用ssh-copy-id命令(最简单) 在终端输入:ssh-copy-id username@虚拟机IP地址 然后输入虚拟机密码,即可完成复制。 方法2:手动复制 首先,在本地机器上查看公钥(默认在~/.ssh/id_rsa.pub),复制其内容。 然后,登录到虚拟机(使用密码登录),在用户主目录下,确保有.ssh目录(如果没有则创建,并设置权限700)。 在.ssh目录下,创建或编辑authorized_keys文件,将公钥内容追加到该文件中。 设置authorized_keys文件的权限为600。 步骤3:检查虚拟机上的SSH配置 确保虚拟机的/etc/ssh/sshd_config文件中以下设置是启用的: PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys 修改后需要重启SSH服务:sudo systemctl restart sshd 步骤4:在VSCode中使用SSH连接 安装Remote-SSH扩展。 在SSH配置文件中添加虚拟机连接信息: Host my-vm HostName 虚拟机IP地址 User 用户名 IdentityFile ~/.ssh/id_rsa # 私钥路径 然后连接即可。 注意:如果虚拟机使用的是NAT网络,确保端口转发正确(比如将宿主机的某个端口转发到虚拟机的22端口),然后连接时使用localhost和转发的端口。 如果按照以上步骤操作,应该可以实现免密码登录。 现在,根据规则,在回答末尾提出3-5个相关问题。 </think> 要实现VSCode通过SSH免密码登录VMware虚拟机中的Linux,需设置SSH密钥认证。步骤如下: ### 步骤1:在本地生成SSH密钥 ```bash ssh-keygen -t rsa -b 4096 ``` * 连续按回车使用默认路径(`~/.ssh/id_rsa`)和空密码 * 生成两个文件:`id_rsa`(私钥)和`id_rsa.pub`(公钥) ### 步骤2:将公钥复制到虚拟机 ```bash # 方法1:使用ssh-copy-id(推荐) ssh-copy-id -i ~/.ssh/id_rsa.pub username@虚拟机IP # 方法2:手动复制 cat ~/.ssh/id_rsa.pub | ssh username@虚拟机IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys" ``` ### 步骤3:虚拟机权限设置 登录虚拟机执行: ```bash chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys ``` ### 步骤4:配置VSCode 1. 安装 **Remote - SSH** 扩展 2. 按`F1`打开命令面板 → 选`Remote-SSH: Open SSH Configuration File` 3. 添加配置: ```config Host MyVM HostName 虚拟机IP User 用户名 IdentityFile ~/.ssh/id_rsa ``` ### 步骤5:测试连接 ```bash ssh MyVM # 应直接登录无需密码 ``` 在VSCode的远程资源管理器中选择`MyVM`连接 ### 常见问题排查 1. 确保虚拟机SSH服务运行:`sudo systemctl status sshd` 2. 检查虚拟机防火墙:`sudo ufw allow 22` 3. 确认VMware网络设置为桥接/NAT,IP可互通 4. 私钥权限:`chmod 600 ~/.ssh/id_rsa`(本地)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值