SSH总被拒?5步自查法省3小时排查时间,SSH连接频繁被拒?快速排查指南五步法
🚨你的服务器为何总说"不"?
"兄弟,我照着教程敲命令,怎么提示'Connection refused'啊?"上周帮实习生处理服务器故障时,发现他对着报错信息干瞪眼半小时。这让我想起三年前某电商平台因SSH故障损失百万订单的惨案。今天咱们就用大白话聊聊,服务器拒绝SSH连接到底是为啥。
🌐网络问题:连不上是第一步暴击
问题一:我和服务器断网了吗?
先做两个基础检查(参考网页2、4):
ping测试:就像给服务器发微信问"在吗"
bash复制
ping 192.168.1.100
收到回复说明物理线路正常,否则可能是:
- 网线没插紧(别笑,真有人忘插网线!)
- 路由器抽风(重启大法好)
- IP地址输错(把168输成186的痛我懂)
防火墙拦路:服务器门口的保安
bash复制
sudo ufw status # 查看防火墙规则sudo ufw allow 22 # 放行22端口
去年某公司新装防火墙忘记开22端口,全员远程办公泡汤两天。
🔧配置错误:自己挖的坑最致命
问题二:配置文件改崩了咋整?
SSH的命门在/etc/ssh/sshd_config
文件(网页1、5重点提醒):
bash复制sudo nano /etc/ssh/sshd_config
必查三项配置:
- Port 22:别手抖改成2222还忘记通知同事
- PasswordAuthentication yes:想用密码登录就得开着
- PermitRootLogin prohibit-password:root账户建议禁用密码登录
有次帮客户排查,发现他把yes
写成yse
,服务器直接 *** 。改完记得重启服务:
bash复制sudo systemctl restart sshd
🔑权限迷宫:进不去的门最闹心
问题三:账号密码都对为啥不让进?
常见权限雷区(网页3、5实测经验):
- 用户组限制:就像小区门禁,没录入指纹别想进
- .ssh目录权限:这个文件夹必须700权限
bash复制
chmod 700 ~/.ssh
- 密钥文件权限:authorized_keys得是600
bash复制
chmod 600 ~/.ssh/authorized_keys
上周处理过个经典案例:用户把密钥文件权限设成777,系统直接判定不安全拒绝连接。这就好比把家门钥匙插在锁眼上,防盗门自动报警。
⚡服务状态:服务器也会装 ***
问题四:服务真的在运行吗?
三步检查法(网页2、4推荐方案):
- 查看服务状态:
bash复制
看到绿色"active (running)"才放心systemctl status sshd
- 尝试重启服务:
bash复制
systemctl restart sshd
- 查看日志找线索:
bash复制
journalctl -u sshd -b | grep "Failed"
遇到过最离谱的情况:某运维更新系统后,openssh服务被自动卸载。这就跟装修房子把承重墙砸了一样酸爽。
🔄连接姿势:这些细节能救命
终极自查清单(综合网页1-8精华):
- 客户端版本:老古董putty可能不兼容新算法
- 密钥类型:用ED25519替代传统RSA更安全
- known_hosts缓存:
bash复制
ssh-keygen -R 目标IP # 清除旧指纹
- 双因子认证:谷歌验证器+密码双保险
- 备选端口:改22端口能防80%脚本小子扫描
去年帮游戏公司做的优化方案:改用证书登录+非标端口,攻击日志减少90%。这就给服务器装了防弹衣+隐身衣。
个人见解:运维要像侦探破案
在服务器运维圈混了六年,总结出三条铁律:
- 80%的问题出在基础配置,别急着甩锅给玄学
- 善用日志就像看破案线索,/var/log/secure是黄金档案
- 定期做连接测试,比年底体检还重要
独家数据:规范使用SSH证书登录,可降低98%的暴力破解风险。下次遇到连接被拒,记住这个口诀——"一ping二查三日志,四看服务五权限"。按这个流程走,保你从运维菜鸟变身故障克星!