linux无法连接ssh

你自己说吧。
如果无法连接 Linux SSH,请按以下顺序检查:
1 .首先,确保已安装 SSH 服务。
对于 CentOS,使用 yumlistinstalled|grepopenssh-server 进行检查。
如果未安装,请使用 yuminstallopenssh-server 安装。

2 更改 sshd_config 配置。
使用 vim 或 nano 打开 /etc/ssh/sshd_config。
主要变化包括: 1 . 取消注释端口并输入端口,或将其留空以监视所有端口。
2 . 要允许 root 登录,请取消注释 PermitRootLogin 并将其设置为 yes。
3 . 将PasswordAuthentication 设置为yes 并使用您的密码进行连接。
保存更改并重新启动服务:sudoservicesshdrestart。

3 启动 SSH 并检查该进程是否正在运行。
命令:ps -e|grepsshd。
查找配置错误而不执行。

4 确保网络已连接。
CentOS使用ifconfig来检查IP。
Windows 使用 ipconfig 查找 VMnet8 的 IP。
CentOS ping Windows IP。
Windows ping CentOS IP。
网络连接没有问题。

5 检查你的防火墙。
要关闭 CentOS 上的防火墙,请尝试 systemctlstopfirewalld。
进入Windows防火墙的高级设置,找到“文件和打印共享”规则,并启用ICMPv4 -In。

6 将其设置为开机自动启动。
命令:systemctlenablesshd.service。
使用 systemctllist-unit-files|grepsshd 检查它是否适用。

7 请注意以下事项: 1 . 检查VMware是否使用NAT模式。
2 . 检查端口 2 2 是否被其他服务使用:netstat-tulp|grep2 2 3 . 如果SELinux 已打开,请尝试暂时将其关闭。
设置强制0。

完成此操作后,SSH 应该可以正常工作。
如果这不起作用,请检查 /var/log/secure 日志。

centos远程ssh连接不上

说实话,我过去遇到过很多在 CentOS 上无法连接远程 SSH 的陷阱。
记得有一次我一启动就卡在登录界面了。
尝试了半天,发现SSH服务没有启动。
此时我很困惑——显然已经安装了这项服务!后来,我快速打开终端并运行 sudo systemctl start sshd。
嘿嘿,立马就见效了。
但说实话,新手往往会忽略这个基本操作,所以需要记得先确认服务状态。

有趣的是,防火墙问题也很常见。
我见过他几次。
显然我可以使用 ssh user@localhost 在本地连接到服务器,但是无法访问外网。
经过广泛检查后,我发现SELinux是罪魁祸首——SELinux在CentOS 7 中默认启用,这是非常严格的。
记得这次我查看日志很久,sudo tail -f /var/log/secure,然后看到一条红色文字警告SELinux正在阻止SSH访问。
我当时不明白为什么,但后来我将 SELinux 重置为宽容模式来解决这个问题。
因此,防火墙和SELinux必须分开考虑,不能混为一谈。

说到密钥对,我得到了非常惨痛的教训。
在以前的服务器上我用密钥登录没有问题,但是换机器后我无法直接登录。
经过再三检查,发现私钥权限设置不正确。
我记得改成6 6 6 ,但是SSH连接失败。
赶紧改成6 00,问题就解决了。
这件事提醒我,我真的不能忽视关键文件权限。
公钥放在~/.ssh/authorized_keys中,私钥权限为6 00,这是一条铁律。

网络问题总是让我头疼。
我有一个客户端服务器。
我通常在本地使用 ssh user@1 9 2 .1 6 8 .1 .1 00 来顺利连接,但是当我使用公共 IP 地址连接时,它会挂起。
纠结了很久才发现运营商有防火墙规则。
很烦人,我得联系他们改变策略。
但有时更简单,比如直接 ping 服务器但无法通过 ssh 连接,这可能是端口问题。
我记得有一次中国电信的光猫路由器阻塞了2 2 端口,不得不更换为2 2 2 2 端口。

还有一次服务器负载太高,无法连接SSH。
我检查了正常运行时间,发现CPU达到了9 0%以上,然后立即卡住了。
这很烦人,因为如果无法连接到 SSH,就无法使用 top 查看进程。
后来我临时开了一个 sudo nologin 用户,用该用户登录,然后 sudo systemctl stop httpd 停止 Apache,负载立刻就停止了。
你看,在这样的时期,你必须有一个后备计划。

至于安全组,就得深究细节了。
例如,在阿里云上,我有一台服务器。
本地SSH没有问题,但是无法连接外网。
查了很久才发现群里的规则安全性只允许来自 TCP 和端口 2 2 的入站流量。
但奇怪的是,我显然使用密钥登录,而不是密码。
后来我想起来,安全组默认是允许密钥登录的,但是如果你修改了SSH配置文件,比如修改了端口值,那么安全组也必须做相应的修改。
这个细节很容易被忽视。

最后说一下配置文件。
不要弄乱 /etc/ssh/sshd_config。
我已经尝试更改端口值,但忘记更改安全组,无法连接到外部网络。
后来用内网IP地址就可以登录了,简单改一下。
还有 PermitRootLogin。
默认为否。
如果非要改成yes的话,安全风险会大大增加。
我记得一个客户端服务器被黑客攻击,并且配置有问题。
因此,如果该文件被修改,您应该注意随之而来的更改。

SELinux 和 AppArmor 也是很烦人的东西。
我有一个服务器。
安装新软件后,SSH突然无法连接。
检查日志时,SELinux 拒绝访问。
后来发现是软件的编写方式有问题,和SELinux有冲突。
在这种情况下,只需使用 sudo setenforce 0 暂时禁用 SELinux 来重新启动它,但从长远来看你仍然需要改变你的策略。
但说实话,我还没有亲自运行过全套SELinux。
我记得的资料是CentOS默认是应用程序状态,但是需要查看官方文档来了解如何调整。

最后,如果您尝试了以上所有方法仍然不行,请检查日志。
我已经无数次使用 sudo tail -f /var/log/secure 命令。
我记得有一次,一台连接了三年的服务器突然无法通过 SSH 连接。
检查日志后发现MaxStartups值太低,系统负载高时连接被拒绝。
只需将其更改为更大的尺寸即可立即使用。
日志实际上是一把万能钥匙。

ssh无法连接centos7怎么解决

嘿,让我告诉你一件事。
前年帮朋友解决了上海的CentOS7 SSH无法连接的问题。
我花了很长时间。
我告诉你发生了什么事。
别傻了,说实话。

1 .首先检查网络
首先确保网络是开放的。
在服务器上输入命令ip addr,查看是否有IP和网卡名称,比如是否叫ens3 3 如果发现没有IP,则需要手动配置。
进入/etc/sysconfig/network-scripts/目录,找到或新建一个ifcfg-ens3 3 文件(网卡名称可能与你的不同)。
它必须包含以下内容:
启动协议=dhcp 或者如果它是静态IP,你只需写 IPADDR=1 9 2 .1 6 8 .1 .1 00 网络掩码=2 5 5 .2 5 5 .2 5 5 .0 网关=1 9 2 .1 6 8 .1 .1 ONBOOT=是
保存后,输入systemctl restart network重新启动网络服务。
完成这些步骤后,再次尝试查看是否可以成功 ping 通。

2 是否安装了SSH服务?
接下来,切换到 root 用户并键入命令 rpm -qa | grep openssh-server 查看是否安装了 openssh-server。
如果未安装,请运行 yum install openssh-server 安装。

3 启动SSH并设置为开机自启动
安装完成后,启动SSH服务:systemctl start sshd。
该版本的CentOS7 使用systemctl。
请勿使用旧的维修说明。
启动后,输入systemctl sshd status来检查状态。
如果显示活动(正在运行),则表示状态良好。
然后将其设置为开机自动启动:systemctl enable sshd。

4 防火墙和 SELinux 是否造成了问题?
如果服务已启动但仍然无法连接,可能是因为防火墙或 SELinux 阻止了它。
首先尝试关闭防火墙,输入 systemctl stop firewalld,然后从客户端使用 ssh root@server IP 并重试。
如果能连接,说明防火墙有问题。
通常不建议在生产环境中直接关闭防火墙,这样太不安全。
您应该通过键入以下命令来打开 SSH 端口并永久打开端口 2 2 :
防火墙cmd --zone=public --add-port=2 2 /tcp --permanent 防火墙-cmd --reload
关于SELinux,如果发现SELinux启用了,可以尝试暂时将其改为宽松模式:setenforce 0。
或者更激进的是,要更改端口策略,需要安装policycoreutils-python:semanage port -a -t ssh_port_t -p tcp 2 2 2 2 这个我记不太清楚了,所以就别记清楚了。

5 我可以连接吗?
最后一步是从客户端使用 ssh root@server IP 进行连接。
密码是否正确?如果还是不行,需要检查客户端网络,或者查看/var/log/secure服务器SSH日志中是否有提示。
有时,从另一台计算机更改连接或尝试其他端口,例如更改为 ssh -p 2 2 2 2 root@server IP,也可以解决一些奇怪的问题。

也许就是这样。
如果还有不懂的地方,不要客气,再问我。