本地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