关于 Xshell 连不上远程 CentOS7 云服务器的问题

发布时间 2023-11-28 23:31:30作者: 路有所思

前情提要:

今天收到腾讯云发来短信提示我的云服务器在17:23分时异地登录,我震惊,因为今天貌似根本没登过云服务器

于是我赶紧上腾讯云控制台查看,先修改密码,然后重启,最后关机

在接近19点时我重新开机,再次修改了密码,然后按照网上的教程关闭定时任务,查找有没有守护进程或者挖矿病毒,无果,感觉可能是虚惊一场,但可能由于我反复的关机重启,导致了一些问题,如下

1. 问题

  • 当我用 xshell 重新连接登录我的服务器时,报错显示 /bin/bash: Permission denied

  • 我只能先在网页上登录到终端

2. 解决问题

2.1 查看 SSH 服务状态

ps -e | grep ssh

  • 这个命令返回了与 sshd 相关的进程信息,那么说明 SSH 服务正在运行,没问题

2.2 检测防火墙设置

sudo firewall-cmd --list-all

  • 从防火墙规则输出看出,SSH服务的端口(22/tcp)已经被允许通过防火墙,因此防火墙设置方面似乎没有问题

2.3 检查配置文件

  • 检查 /etc/ssh/sshd_config 文件,确保配置允许 root 用户登录
sudo vim /etc/ssh/sshd_config
  • PermitRootLogin yes 应该被设置以允许 root 用户登录

  • PasswordAuthentication yes 设置为允许用密码登录

PermitRootLogin yes
PasswordAuthentication yes

  • 修改后重启SSH服务
systemctl restart sshd
  • 但还是不行,同样的报错

2.4 关闭 selinux (终于解决)

# 查看当前 SELinux 服务状态, 若返回参数为 enabled 即处于开启状态
sudo /usr/sbin/sestatus -v 

# 临时关闭 SELinux 服务
sudo setenforce 0

  • 再次尝试:终于连上了!!!

  • 最终还是在官方文档里找到的解决办法,心累,解决了3个小时才搞定