SSH连接失败connection reset解决办法

第一层:云控制台【安全组】

入站规则添加:

复制代码
协议:TCP
端口:22
源地址:0.0.0.0/0(你本机公网IP优先,方便更安全)
策略:允许

第二层服务器内部防火墙

复制代码
# 1.清空全部iptables规则,恢复默认放行
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# 2.关闭nftables(Ubuntu22.04原生防火墙,会覆盖iptables)
systemctl stop nftables
systemctl disable nftables

执行完立刻本机自测:

复制代码
ssh root@127.0.0.1

第三层:SSH 服务本身配置(sshd)

复制代码
# 确认服务运行
systemctl status ssh
# 必须看到 active (running)

# 确认22端口正在监听
ss -tlnp | grep :22
#输出必须有 0.0.0.0:22 LISTEN

# 修改ssh配置允许root密码登录
nano /etc/ssh/sshd_config

确保下面配置开启:

复制代码
PermitRootLogin yes
PasswordAuthentication yes

保存退出 Ctrl+O 回车,Ctrl+X

复制代码
systemctl restart ssh

检查 /etc/hosts.deny(tcp_wrappers 黑名单)

复制代码
cat /etc/hosts.deny
cat /etc/hosts.allow

如果/etc/hosts.deny写了ALL:ALL或者sshd: ALL,所有来源(含 127.0.0.1)全部拒绝

如果有内容,清空:

bash

复制代码
> /etc/hosts.deny

重点确认:

复制代码
PermitRootLogin yes
PasswordAuthentication yes
# 不能有 DenyUsers root  DenyGroups root
# 不能有 Match Address 把127.0.0.1拒绝

把你本机公网 IP 加入服务器远程连接白名单

Windows 浏览器打开,搜索:我的公网IP,拿到你电脑的公网 IP

编辑 hosts.allow

复制代码
nano /etc/hosts.allow

写入,替换为你自己的公网 IP:

复制代码
sshd:130.12.180.41  你的本机公网IP

保存退出 Ctrl+O 回车,Ctrl+X

systemctl restart ssh

相关推荐
Rsingstarzengjx2 小时前
stm32m157 U-boot 测试
linux·运维·服务器
月落汀兰2 小时前
Linux Nginx全套实战通关|静态站点/虚拟主机/HTTPS/PHP/反向代理/七层负载均衡,每行命令逐参数拆解
linux·nginx·https
头茬韭菜2 小时前
功能点 1:项目骨架与启动流程 —— 源码阅读笔记
运维·笔记·debian·fluss
workflower2 小时前
智能无人机成低空经济核心赛道
运维·人工智能·机器学习·机器人·云计算·无人机
ShineWinsu3 小时前
对于C++:缓冲区管理的详细解析
linux·c++·面试·编程·笔试·io·缓冲区
张小姐的猫3 小时前
【Linux】网络编程 —— 传输层协议 TCP(下)
linux·运维·服务器·网络·tcp/ip·http·php
程序员AlbertTu3 小时前
第2章 上手 Linux:环境与文件操作
linux·运维·服务器
☆凡尘清心☆4 小时前
CentOS Stream 9 源码编译搭建 Zabbix7.0.29 完整部署方案(部署成功)
linux·运维·centos
Escalating_xu4 小时前
【Linux】进程间通信:从匿名管道、FIFO 到共享内存、消息队列与信号量
java·linux·面试