想要搞清楚ssh无法连接的原因 首先要先排查SSH基础的配置是否完整以及服务是否安装

1.首先查看centos7上是否装了openssh-server,如果你是卸载的openssh然后重新安装,可能卸载的时候把openssh-server给卸载了但是安装openssh时却没有安装openssh-server。所以导致ssh连接出错,如果你是源码包安装的openssh,卸载的时候可能将openssh-server一起卸载了。(yum install -y xxx只能安装系统自带的openssh-7.4p1的版本)。事实上系统自带的openssh-7.4p1版本的带有openssh-7.4p1、openssh-clients-7.4p1、openssh-server-7.4p1

检查系统本地有没有openssh-clients和openssh-server可以使用如下命令查看

rpm -qa|grep opensshyum list installed |grep openssh

如果显示没有安装可以使用yum install -y openssh-server或yum install -y openssh-clients进行安装

2.编辑/etc/ssh/sshd_config配置文件,将文件中的ssh监听的22端口、监听地址前的注释#去掉,然后开启允许root账户远程登录、以及开启用户名密码作为连接验证。然后保存退出

然后开启sshd服务,查看ssh进程和端口号

sudo service sshd start   #开启sshd服务ps -ef |grep sshd         #检查sshd进程netstat -an |grep 22      #检查22端口号是否开启监听systemctl status sshd     #查看ssh服务状态是否开启

设置开机自启动ssh服务

systemctl enable sshd.service    #设置开机自启动服务systemctl list-unit-files |grep sshd    #查看是否开启sshd服务自启动chkconfig sshd on  #设置ssh服务为开机启动命令chkconfig sshd off  #设置ssh服务禁止开机自启动命令service sshd stop   #停止ssh服务命令

3.如果以上两项都检查过了没问题那可能就是配置的静态地址的问题

首先看一下centos系统的ip地址

ip add
或
ifconfig

然后检查配置的静态地址是否跟ifconfig的ens33网卡地址一样

vi /etc/sysconfig/network-scripts/ifcfg-ens33

如果配置的静态地址跟系统显示的地址不一样,可能是配置完成是没有重启网络,需要重启一下网络,这样地址就对上了。

systemctl restart network

4.如果上面三点都尝试过了不行,就要打开虚拟网络编辑器,然后点击还原默认配置

然后等待初始化,初始化完成后,打开网络和internet设置

查看VMware Network Adapter VMnet8虚拟网卡,右击然后查看状态-详细信息

或者win+r输入cmd进入命令行,ipconfig查看VMware Network Adapter VMnet8虚拟网卡地址

然后重新配置静态IP跟VMware Network Adapter VMnet8虚拟网卡地址在同一个网段,网关为查看VMware Network Adapter VMnet8虚拟网卡,右击然后查看状态-详细信息的IPv4 WINS服务器地址为xxx.xxx.xxx.2,我这里是192.168.124.2

然后保存退出,重启网络systemctl restart network

然后centos系统ping VMware Network Adapter VMnet8虚拟网卡IPv4地址,然后windows 命令行ping centos地址,确保都能ping通

然后再重启sshd服务

systemctl restart sshd

再发起ssh连接这个时候就可以连接了

5.检查/etc/hosts.deny和/etc/hosts.allow文件中有没有限制sshd协议,如果有删除sshd协议在某个IP范围内在/etc/hosts.deny跟/etc/hosts.allow中的配置

vi /etc/hosts.deny

vi /etc/hosts.allow

6.有可能是sshd_config配置文件限制了root用户登录

echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
或
sed -i 's/#PermitRootLogin yes/PermitRootLogin yes/g' /etc/ssh/sshd_config
#将PasswordAuthentication置为yes
echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config
或
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config

7.配置认证

#可能升级ssh后,/etc/pam.d.sshd配置文件覆盖了,可以从没升级ssh之前的机器拷贝该文件内容到该目录下,拷贝前先备份现在的sshd文件
cat /etc/pam.d/sshd
cd /etc/pam.d
mv sshd sshd.bak

8.更改etc/ssh下的文件的ssh_host_dsa_key、ssh_host_ecdsa_key、ssh_host_ed25519_key
、ssh_host_rsa_key等key文件的权限 这些目录下的这些key文件权限太高了 把这些key文件权限改为600

cd /etc/ssh
chmod 600 ssh_host_dsa_key
chmod 600 ssh_host_ecdsa_key
chmod 600 ssh_host_ed25519_key
chmod 600 ssh_host_rsa_key

9.关闭selinux

setenforce 0   #临时关闭selinux
#找到SELINUX=enforcing,按i进入编辑模式,将参数修改为SELINUX=disabled即可(永久关闭)
vi /etc/selinux/config
SELINUX=disabled
或
sed -i -e "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
#查看selinux是否关闭,显示Disabled为关闭
getenforce

10.使用ssh连接的xshell版本太低

如果升级ssh版本之后无法连接,请更新xshell版本到5版本以上,再发起ssh连接应该就可以了

CentOS系统SSH无法连接相关推荐

  1. 解决华为云CentOS 7 SSH 远程连接不上的问题

    买了华为云的多台ECS,使用的CentOS 7.5 x64系统,对系统做了网络优化,优化的参数在公司LAN和阿里云服务器上均试验无问题. 问题描述: 1. 使用一段时间后,会出现不定期的公司办公室内s ...

  2. centos 实现ssh远程连接docker

    为什么80%的码农都做不了架构师?>>>    一.查看当前镜像 [root@iZ25av9xi4hZ ~]# docker images REPOSITORY TAG IMAGE ...

  3. centos系统服务器怎么连接不上去,Xftp如何连接Centos服务器?

    在之前的教程中我们也介绍到了,要使用Xftp传输文件需要先新建会话,在新建会话属性里我们需要填入一些关于服务器的信息,以此连接服务器.那么,Xftp如何连接Centos服务器呢?下面,我们就一起往下看 ...

  4. mysql ssh隧道连接内网mysql

    通过SSH隧道连接MySQL数据库 一.背景 问题所在:MySQL被运用于越来越多的业务中,在关键业务中对数据安全性的要求也更高,数据安全如果只靠MySQL应用层面显然是不够的,虽然说MySQL实现的 ...

  5. 局域网如何通过SSH 2连接上VMware 10虚拟机新装的centOS系统远程登录

    局域网如何通过SSH 2连接上VMware 10虚拟机新装的centOS系统远程登录 本机学习linux时候发现一个纠结问题,如何模拟用软件如Xshell5,secureCRT软件进行远程登录,搞了我 ...

  6. CentOS 初体验五: SSH远程连接

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78960751 本文出自[赵彦军的博客] 一:数据传输 数据传输有两种方式,分别是 ...

  7. centos树莓派版本安装ssh_树莓派安装系统+ssh登录

    一.准备工作: (1)树莓派3b (2)官网下载系统 (3)SD卡 (4)网线 (5)SDFormatter.exe (6)win32diskimager.exe (7)putty (7)笔记本 二. ...

  8. Centos 7无法SSH远程连接及解决方法

    Centos 7无法SSH远程连接及解决方法 小土豆Linux学习随笔 -- 清听凌雪慕忆 ​ 以前运维中,服务器或者虚拟机安装完Centos 7系统,配置网络设置后即可利用SSH远程.昨夜,怪哉,不 ...

  9. 用MobaXterm远程连接Centos系统_使用技巧---Linux工作笔记047

    MobaXterm,这个软件,可以直接连接Centos系统,类似的还有xshell,这个工具也行,以前都是 用xshell,但是用了用MobaXterm,发现这个软件也挺好用的. 推荐了. 点击ses ...

最新文章

  1. iOS 9应用开发教程之ios9的视图
  2. 解决fixed在苹果手机抖动问题/头部底部固定布局
  3. 产品经理不得不知的APP数据分析及报表设计基础
  4. Linux安装Redis服务
  5. CentOs7 无可用“Chinese Support“
  6. java方法区对象类型_浅谈Java内存区域与对象创建过程
  7. 进程线程区别,和线程初识
  8. java的define,关于预处理器:Java中的#define
  9. Doc2Bow简介与实践Demo
  10. about semget
  11. java定时器小程序_【微信小程序】使用setTimeout试试定时器
  12. Java新职篇:一维数组
  13. web 开发之js---js 实现文本高亮
  14. SpringMVC 统一异常处理
  15. 郭天祥《新概念51单片机C语言教程》序言
  16. 数组输出c语言程序,C语言输出数组的三种方法
  17. split 分割 字符串(分隔符如:* ^ : | , .) 及注意点
  18. ESP8266通过arduino IED连接巴法云(TCP创客云)
  19. 邓俊辉算法训练营第三期(带完整课件)
  20. Stimulsoft.Report的代码实现功能自学整理(一)

热门文章

  1. ReSharper智能插件,ReSharper分析代码质量
  2. 女生用电脑的基本常识
  3. 使用Vue.js在WordPress中创建单页面应用SPA
  4. java设置鼠标轮滑,Win10专业版的鼠标滑轮速度怎么设置?Win10专业版鼠标轮滑设置教程...
  5. 图标绘制原理与案例解析-百度UE讲堂-专题视频课程
  6. axios get请求 post请求 多个并发请求 传值 后端接值
  7. gunicorn与args命令行参数共用会报错(gunicorn 出现不能识别的参数)
  8. JAVA读取xls文件和xlsx文件
  9. 大数据时代政府部门间信息资源共享策略探讨
  10. 品牌打假,假货治理,有什么好的方法