linux 虚拟机再能ping通的情况下连接不了SSH怎么解决

一:首先查看虚拟机防火墙是否关闭?

我一般为了省事情,直接把防火墙模块给删掉了 也就是用第二个命令把iptables给卸载。

1.关闭ubuntu的防火墙 ufw disable
2.卸载了iptables         apt-get remove iptables

  iptables -F 

   总之,当你要在你的服务器上做任何变更时,最好有一个测试环境做过充分的测试再应用到你的服务器.除此之外,要用好iptables,那就要理解 iptables的运行原理,知道对于每一个数据包iptables是怎么样来处理的.这样才能准确地书写规则,避免带来不必要的麻烦.

2.

默认情况下ubuntu无firewall,除非你自己安装了,怎么装的就怎么删呗。。
如果是已启用的自备的iptables 删了就行了

sudo apt-get remove iptables

不记得apt-get 要移除是不是 remove 吧,有些日子没用ubuntu了

 iptables是内核模块删除不了滴
现查看一下你iptables的规则
sudo iptables -L
sudo iptables -t nat -L
如果都是空的就不是iptables的问题
如果有许多规则的话就清空规则并修改默认策略
sudo iptables -F
sudo iptables -t nat -F
sudo iptables -P ACCEPT
sudo iptables -t nat -P ACCEPT



二:如果防火墙关闭后还连不上SSH,那么现在就要坚持一下虚拟机SSH是否已经安装好了。(我的是新系统所以一开始并没有安装好SSH)

SSH分客户端openssh-client和openssh-server

如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo 
apt-get install openssh-client),如果要使本机开放SSH服务就需要安装openssh-server
sudo apt-get install openssh-server
然后确认sshserver是否启动了:
ps -e |grep ssh
如果看到sshd那说明ssh-server已经启动了。
如果没有则可以这样启动:sudo /etc/init.d/ssh start 或者 service ssh start
ssh-server配置文件位于/etc/ssh/sshd_config,在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。
然后重启SSH服务:
sudo 
/etc/init.d/ssh stop
sudo /etc/init.d/ssh start
然后使用以下方式登陆SSH:
ssh  username@192.168.1.112  username为192.168.1.112 机器上的用户,需要输入密码。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值