本地SSH无法连接虚拟机,关闭防火墙

1:虚拟机-网络适配器 改为 NAT模式

2:登陆虚拟机 使用root权限的账号

3:进入虚拟机 输入 ip addr 看到红框   ens33

4:接下来执行vi /etc/sysconfig/network-scripts/ifcfg-ens33,打开文件后 按 i 开始编辑文本

5:使用VI模式打开后 修改

BOOTPROTO="static"(静态IP)

ONBOOT="yes"

在末尾增加

IPADDR=192.168.1.8(你设置的IP)
NETMASK=255.255.255.0
GATEWAY=192.168.1.1(末尾1写死的,倒数第三位与 IPADDR的倒数第三位一致)

6:按下 Esc    输入  :wq!    强制保存并退出

如果出现:E45: 'readonly' option is set (add ! to override)

代表本文件是只读的你需要 查看 第二步 使用ROOT权限的账号登陆。

这里补充以下VI模式的快捷键

编辑模式
  使用vi进入文本后,按i开始编辑文本

退出编辑模式 
  按ESC键,然后:
    退出vi
   :q!  不保存文件,强制退出vi命令
    :w   保存文件,不退出vi命令
    :wq  保存文件,退出vi命令

 

7:再输入Ip addr会看见你的配置文件其作用,并且inet IP变为你设置的

8:尝试使用 SSH 链接虚拟机,通过该IP

 

 

 

 

若上述方法未成功,可以先在本地计算机 在控制台 ping 以下这个ip是否连同,若连同也有可能是虚拟机系统未打开 SSH链接 或者 未关闭防火墙

使用:

关闭linux防火墙

service iptables stop

chkconfig iptables off

启动ssh服务

service sshd start

 

 

 

PS:centOS系统 执行上述指令可能会出现 Unit iptables.service failed to load 

centos从7开始默认用的是firewalld,这个是基于iptables的,虽然有iptables的核心,但是iptables的服务是没安装的。所以你只要停止firewalld服务即可: 

systemctl stop firewalld.service && systemctl disable firewalld.service

systemctl start firewalld.service && systemctl enable firewalld.service

如果想要改用iptables的话,则需要安装 

yum install iptables-services 

systemctl stop iptables && systemctl disable iptables
systemctl start iptables && systemctl enable iptables

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是解决xshell无法连接本地CentOS 7虚拟机的可能解决方案: 1. 确保虚拟机设置了静态IP地址。在CentOS 7中,可以通过编辑网络配置文件来设置静态IP地址。打开终端并输入以下命令: ```shell sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 ``` 在文件中找到`BOOTPROTO`行,并将其更改为`static`。然后添加以下行来指定IP地址、子网掩码和网关: ```shell IPADDR=your_ip_address NETMASK=your_netmask GATEWAY=your_gateway ``` 保存并关闭文件,然后重启网络服务: ```shell sudo systemctl restart network ``` 2. 确保SSH服务已启用。在CentOS 7中,默认情况下,SSH服务是启用的。可以通过以下命令检查SSH服务的状态: ```shell sudo systemctl status sshd ``` 如果SSH服务未运行,请使用以下命令启动它: ```shell sudo systemctl start sshd ``` 如果SSH服务已运行但无法连接,请尝试重新启动它: ```shell sudo systemctl restart sshd ``` 3. 确保防火墙允许SSH连接。CentOS 7默认使用Firewalld作为防火墙管理工具。可以使用以下命令检查防火墙规则是否允许SSH连接: ```shell sudo firewall-cmd --list-all ``` 如果没有SSH服务的入站规则,请使用以下命令添加规则: ```shell sudo firewall-cmd --add-service=ssh --permanent sudo firewall-cmd --reload ``` 4. 确保主机和虚拟机在同一网络中。如果主机和虚拟机不在同一网络中,可能会导致连接问题。请确保主机和虚拟机的IP地址和子网掩码设置正确,并且它们可以相互ping通。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值