240806-RHEL 无法通过 ssh username@ip 远程连接,报错:Connection closed by ip port 22

A. 原因排查
遇到这个错误通常意味着 SSH 服务可能在目标主机上没有正常运行,或有防火墙/网络配置问题。以下是一些排查步骤:
-
检查 SSH 服务状态:
确认 SSH 服务是否正在目标主机上运行。sudo systemctl status sshd -
重启 SSH 服务:
如果 SSH 服务没有运行,可以尝试重启它。sudo systemctl restart sshd -
检查 SSH 配置文件:
确保/etc/ssh/sshd_config文件配置正确。特别是检查以下配置:Port 22 PermitRootLogin no PasswordAuthentication yes -
检查防火墙设置:
确保防火墙允许 SSH 连接。可以使用firewalld或iptables管理防火墙设置。sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload或者对于
iptables:sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT sudo service iptables save sudo service iptables restart -
检查 SELinux 设置:
如果 SELinux 启用,它也可能阻止 SSH 连接。可以暂时将其设为宽松模式以排除问题。sudo setenforce 0 -
查看 SSH 日志:
检查/var/log/secure或/var/log/auth.log文件中的日志,以获取更多错误信息。sudo tail -f /var/log/secure -
检查网络连接:
确认本地主机到远程主机的网络连接正常。使用ping命令验证连接:ping ip_address -
端口是否被占用:
确认端口 22 没有被其他进程占用:sudo lsof -i :22
如果以上步骤仍未解决问题,请提供更多相关错误信息,以便进一步诊断。
B. 端口注释
如果 Port 22 在 /etc/ssh/sshd_config 文件中被注释了,这可能导致 SSH 服务无法正确绑定到端口 22,从而无法接受连接。你可以按照以下步骤操作:
-
编辑 sshd_config 文件:
打开/etc/ssh/sshd_config文件进行编辑。sudo nano /etc/ssh/sshd_config -
取消注释 Port 22:
找到Port 22行并取消注释(去掉行首的#)。#Port 22改为:
Port 22 -
保存并关闭文件:
保存编辑并退出编辑器。如果使用nano,可以按Ctrl + X,然后按Y再按Enter。 -
重启 SSH 服务:
重新启动 SSH 服务以应用更改。sudo systemctl restart sshd -
验证 SSH 服务状态:
确认 SSH 服务已启动并绑定到端口 22。sudo systemctl status sshd -
尝试再次连接:
尝试从客户端使用 SSH 连接到服务器。ssh username@ip
如果上述步骤未解决问题,请检查其他配置项是否正确,并确保没有防火墙或 SELinux 阻止 SSH 连接。
C. 状态显示
既然 sudo systemctl status sshd 显示 SSH 服务一切正常,但你仍然无法通过 SSH 连接远程服务器,这可能还有其他原因。请继续进行以下检查:
-
检查防火墙配置:
确认防火墙允许端口 22 的流量。你可以使用以下命令检查和修改防火墙规则。使用
firewalld:sudo firewall-cmd --list-all sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload使用
iptables:sudo iptables -L -n sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT sudo service iptables save sudo service iptables restart -
检查 SELinux 配置:
如果 SELinux 已启用,它可能会阻止 SSH 连接。可以暂时将 SELinux 设置为宽松模式以进行排除:sudo setenforce 0确认这是否解决了问题。如果解决了问题,说明 SELinux 配置需要调整。你可以将
SELINUX设置为permissive或调整 SELinux 规则以允许 SSH 连接。 -
检查服务器的网络连接:
确认服务器的网络连接正常,且可以从你的客户端访问端口 22。ping ip_address telnet ip_address 22 nc -zv ip_address 22 -
查看 SSH 日志:
查看 SSH 日志以获取更多错误信息。日志文件通常位于/var/log/secure或/var/log/auth.log。sudo tail -f /var/log/secure sudo tail -f /var/log/auth.log -
检查 SSH 客户端配置:
确保客户端的 SSH 配置正确,并尝试使用详细模式连接以获得更多调试信息。ssh -v username@ip_address ssh -vv username@ip_address ssh -vvv username@ip_address -
确保 SSH 端口没有被其他进程占用:
确认端口 22 没有被其他进程占用:sudo lsof -i :22
如果这些步骤仍未解决问题,请提供更多具体的错误消息和环境信息,以便进一步诊断。
相关文章:
240806-RHEL 无法通过 ssh username@ip 远程连接,报错:Connection closed by ip port 22
A. 原因排查 遇到这个错误通常意味着 SSH 服务可能在目标主机上没有正常运行,或有防火墙/网络配置问题。以下是一些排查步骤: 检查 SSH 服务状态: 确认 SSH 服务是否正在目标主机上运行。 sudo systemctl status sshd重启 SSH 服务ÿ…...
C语言:复读机2种写法(输入什么就输出什么)
(1)题目:输入什么内容,输出就是什么内容,遇到"#"为止。输入一个随便的字符 (2)代码: 【1】getchar()和putchar() #include "stdio.h"int main() {char ch;pr…...
PySide6/PyQT学习笔记(很杂)
QGroupBox样式:科技机甲 QGroupBox { border: 2px solid #333; /* 深色边框,类似金属质感 */ border-radius: 8px; /* 轻微的圆角 */ background-color: #222; /* 暗色背景,模拟机甲内部或科技界面 */ color: #fff; /* 字体颜色为白色&a…...
学习笔记-JWT 保持登录状态
目录 一、解析 token 1. 在 JWT 工具类添加解析 token 的方法 2. 在 Controller 添加获取用户数据的方法 二、获取用户信息 1. 发起 axios 请求用户信息 2. 在路由守卫中调用方法 3. 使用 三、token 时效性 1. 设置 token 过期时间 2. 判断 token 是否过期 3. 在拦截…...
React 性能优化
使用 useMemo 缓存数据 (类似 vue 的 computed)使用 useCallback 缓存函数异步组件 ( lazy )路由懒加载( lazy )服务器渲染 SSR用 CSS 模拟 v-show 循环渲染添加 key使用 Fragment (空标签)减少层级 不在JSX 中定义函数࿰…...
后端常见问题及深度解决方案
🐟作者简介:一名大三在校生,喜欢编程🪴 🐡🐙个人主页🥇:Aic山鱼 🐠WeChat:z7010cyy 🦈系列专栏:🏞️ 前端-JS基础专栏✨前…...
C:野指针介绍(定义、危害、规避)以及野指针与空指针的区分
目录 1、野指针 1.1 野指针的成因 1.指针未初始化 2.指针越界访问 3.指针指向的空间释放 1.2 野指针的危害 1.3 如何规避野指针 1. 指针初始化 2. 小心指针越界 3.指针变量不使用就及时赋上NULL 4. 指针使用前检查是否是空指针 5. 避免返回局部变量的地址 1.4 区…...
vue中v-html 后端返回html + script js中click事件不生效
效果图: 需求:点击加号执行后端返回的script中的代码 后端返回的html: <!DOCTYPE html> <html langzh> <head> <title>xxx</title> <style>body{font-size: 14px}p{text-indent: 30px;}textarea{width…...
介绍maven生命周期-水温
Maven生命周期是指一系列的构建阶段,包括项目的清理、编译、测试、打包、部署等。Maven通过定义生命周期来规范项目构建过程,使得开发人员可以方便地执行一系列的构建任务。 Maven的生命周期分为三个阶段: clean生命周期:主要用…...
spring boot3.x快速入门
下一篇:Spring Boot 3.x gradle脚手架工程build.gradle详解 本教程将基于gradle项目构建工具来快速构建一个spring boot 3.x的最简单的web应用,其中涉及各种构建技巧和细节,希望能帮到初学者~ 文章目录 先决条件JDK17gradle全局配置 gradle项…...
JavaWeb之servlet关于Ajax实现前后端分离
一、什么是Ajax: AJAX Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部…...
vue3表格组件formatter
有时候在网页上显示表格数据时,表格的某些列值只有有限数目(例如,启用/停用),这时候后端常常使用不同的数据值表示不同状态,前端怎么将这些数据值转化为相应的列值呢? 我们可以采用vue3表格组件…...
C# 使用NHibernate连接MySQL实现数据的增删改查
使用 NHibernate 连接 MySQL 并实现数据的增删改查操作是一个非常典型的场景。以下是一个简单的示例,演示了如何配置 NHibernate 与 MySQL 连接并进行基本的 CRUD 操作。 目录 步骤 1: 安装必要的包 步骤 2: 配置 NHibernate 配置文件方式 代码方式 步骤 3: 定…...
IDEA2024.2重磅发布,更新完有4G!
JetBrains 今天宣布了其 IDE 家族版本之 2024.2 更新,其亮点是新 UI 现在已是默认设置,并且对 AI Assistant (AI助手)进行了几项改进。 安装密道 新 UI 的设计更加简约,可以根据需要以视觉方式扩展复杂功能。值得开发…...
QWT+Qt Creator+MSVC的配置与使用
目录 一、介绍 二、QWT下载 三、QWT编译 3.1 设置构建套件 3.2 修改QWT相关文件 3.3 进行QWT编译 四、QWT配置 4.1 配置QWT的lib文件 4.2 配置QWT的dll文件 4.3 配置QWT的designer的dll文件 五、代码实验 一、介绍 QWT,全称是Qt Widgets for Technical…...
Netty高性能数据结构
文章目录 Netty高性能数据结构FastThreadLocalHashedWheelTimer时间轮Mpsc无锁队列 Netty高性能数据结构 Netty 用高性能数据结构的主要目的是为了提高网络通信的效率和系统的整体性能。 所谓的高性能数据结构是指,那些在特定场景下优化了性能和效率的数据结构&am…...
关于百度、微软语音合成的实现案例
关键词 自助机产品、排队呼叫功能、网络喇叭、百度语音合成SDK、微软TTS 阅读建议 对自助机产品功能扩展感兴趣的读者、需要实现远程语音呼叫功能的开发者、想要了解网络喇叭选型及其使用的技术人员、对百度语音合成SDK和微软TTS感兴趣的开发者 阅读时长 预计阅读时长…...
二叉树:镜像树,子结构,二叉树转链表,二叉树的倒数K个数,对称,Z型打印
1.把一棵二叉树转换为它的镜像树。 void mirror_tree(TreeNode *root) {if(rootNULL) return ;TreeNode *temproot->right;root->rightroot->left;root->lefttemp;mirror_tree(root->right);mirror_tree(root->left);}2、输入两棵二叉树A,B&…...
瑞秋,詹妮弗·安妮斯顿多年来与本·阿弗莱克保持着“调情”友谊 又一个詹妮弗
尽管所有迹象都表明本阿弗莱克和詹妮弗洛佩兹的婚姻即将走向离婚,但他尚未公开评论此事。不过,好莱坞圈内人士已经纷纷将他与另一位名人联系起来。事实上,是另一位詹妮弗。 一位消息人士向媒体透露,詹妮弗安妮斯顿和阿弗莱克一直都很有默契——无论是在银幕上还是在银幕外…...
指纹失效,忘记iPhone屏幕解锁密码怎么应对?
为保证手机的安全及隐私,我们会给手机设置屏幕锁屏密码,通过输入设置密码来解锁手机屏幕锁,但为了给大家提供快速便捷的解锁方式,苹果公司提供了指纹解锁,不仅解锁更便捷了还极大地增强了设备的安全性。但有时我们手指…...
BAAI/bge-m3新手指南:快速上手多语言文本语义分析服务
BAAI/bge-m3新手指南:快速上手多语言文本语义分析服务 1. 认识BAAI/bge-m3语义分析引擎 BAAI/bge-m3是由北京智源人工智能研究院开发的多语言通用嵌入模型,它能够将文本转换为高维向量表示,从而计算不同文本之间的语义相似度。这个模型在MT…...
开源工具Untrunc:视频文件恢复的技术实践指南
开源工具Untrunc:视频文件恢复的技术实践指南 【免费下载链接】untrunc Restore a damaged (truncated) mp4, m4v, mov, 3gp video. Provided you have a similar not broken video. 项目地址: https://gitcode.com/gh_mirrors/unt/untrunc 在数字时代&#…...
7类水面自动驾驶目标检测数据集该数据集已经包括7个类别类别名字分别是:[‘pier‘, ‘ship‘, ‘boat‘, ‘sailor‘, ‘buoy‘, ‘vessel‘, ‘kayak‘]
7类水面自动驾驶目标检测数据集 该数据集已经包括7个类别 类别名字分别是: [pier, ship, boat, sailor, buoy, vessel, kayak] 共计图片54120张,图像分辨率是1920x1080 数据集是txt格式 数据集按照7:1:2已划分为训练集/验证集和测试集 相关YOLOv5/YOLOv6…...
Rust离线部署技术方案:企业级零网络依赖实施指南
Rust离线部署技术方案:企业级零网络依赖实施指南 【免费下载链接】rustup The Rust toolchain installer 项目地址: https://gitcode.com/gh_mirrors/ru/rustup 场景痛点:网络隔离环境下的Rust部署挑战 在企业内网、高安全等级环境或网络不稳定场…...
革新性中国象棋智能辅助系统:全流程视觉识别与实时决策实战指南
革新性中国象棋智能辅助系统:全流程视觉识别与实时决策实战指南 【免费下载链接】VinXiangQi Xiangqi syncing tool based on Yolov5 / 基于Yolov5的中国象棋连线工具 项目地址: https://gitcode.com/gh_mirrors/vi/VinXiangQi 在数字化对弈场景中࿰…...
告别Calibre中文路径乱码:3步实现完美文件名保护的终极解决方案
告别Calibre中文路径乱码:3步实现完美文件名保护的终极解决方案 【免费下载链接】calibre-do-not-translate-my-path Switch my calibre library from ascii path to plain Unicode path. 将我的书库从拼音目录切换至非纯英文(中文)命名 项…...
如何用Diablo Edit2解决暗黑破坏神II角色编辑难题?完整指南
如何用Diablo Edit2解决暗黑破坏神II角色编辑难题?完整指南 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 暗黑破坏神II作为一款经典的动作角色扮演游戏,其复杂的角色养成…...
VideoAgentTrek Screen Filter作品集:处理前后对比展示多行业应用效果
VideoAgentTrek Screen Filter作品集:处理前后对比展示多行业应用效果 最近在整理一些屏幕录像素材时,我发现了一个挺有意思的工具——VideoAgentTrek Screen Filter。它不是什么复杂的视频编辑软件,核心功能很聚焦:自动识别并处…...
如何快速掌握Unity游戏模组管理:5分钟终极指南
如何快速掌握Unity游戏模组管理:5分钟终极指南 【免费下载链接】unity-mod-manager UnityModManager 项目地址: https://gitcode.com/gh_mirrors/un/unity-mod-manager 还在为Unity游戏模组安装繁琐而烦恼吗?每次想为游戏添加新功能,却…...
QueryExcel:解锁3大核心功能的多Excel文件极速查询指南
QueryExcel:解锁3大核心功能的多Excel文件极速查询指南 【免费下载链接】QueryExcel 多Excel文件内容查询工具。 项目地址: https://gitcode.com/gh_mirrors/qu/QueryExcel 直击痛点:数据查询的效率困境 场景一:财务报表核对 月底需从…...
