【解决 Windows 下 SSH “Bad owner or permissions“ 错误及端口转发问题详解】
使用 Windows 连接远程服务器出现 Bad owner or permissions
错误及解决方案
在 Windows 系统上连接远程服务器时,使用 SSH 可能会遇到以下错误:
Bad owner or permissions on C:\Users\username/.ssh/config
这个问题通常是由于 SSH 配置文件 .ssh/config
的文件权限设置不正确导致的。SSH 配置文件应具有受限权限,以防止未经授权的访问。因此,需要确保只有当前用户对该文件具有读取权限。本文将结合 icacls
命令修复此问题,并进一步介绍如何通过 SSH 进行端口转发,以及如何处理常见的 “过程试图写入的管道不存在” 错误。
问题分析
-
Bad owner or permissions on C:\Users\username/.ssh/config:
- 该错误提示表明
.ssh/config
文件的权限设置不正确。SSH 客户端会严格检查此文件的权限设置,如果发现该文件对其他用户开放了写权限,则会拒绝使用该文件以防止潜在的安全威胁。
- 该错误提示表明
-
过程试图写入的管道不存在:
- 该错误通常发生在使用 SSH 隧道或端口转发时,表示 SSH 连接中的某个数据通道未能正确建立,可能是由于权限、网络问题或端口冲突导致的。
文件权限修复方案
1. 移除文件的继承权限
首先,需要移除 C:\Users\username\.ssh\config
文件的继承权限,以确保文件不再继承其父文件夹的权限。
执行以下命令:
icacls C:\Users\username\.ssh\config /inheritance:r
/inheritance:r
:移除该文件从父文件夹继承的权限,确保权限设置仅适用于当前文件。
2. 授予用户读取权限
接着,为当前用户授予 .ssh/config
文件的只读权限。
命令如下:
icacls C:\Users\username\.ssh\config /grant:r username:(R)
username:(R)
:这里的username
是你的 Windows 用户名,(R)
表示授予只读权限。
3. 重启系统或重启 SSH 服务
完成以上权限修改后,建议重启系统或 SSH 客户端,以确保修改生效。
通过 SSH 进行端口转发
在修复 .ssh/config
文件的权限后,许多开发者还需要使用 SSH 进行端口转发。SSH 端口转发可以在本地机器与远程服务器之间建立安全的隧道,从而在本地访问远程服务。下面是一个 SSH 端口转发的示例。
端口转发命令示例
ssh -CNg -L 7860:127.0.0.1:7860 root@10.***.***.*** -p 5322
- 解释:
-C
:启用 SSH 压缩。-N
:不执行远程命令,仅建立连接和端口转发。-g
:允许其他主机连接到本地端口。-L 7860:127.0.0.1:7860
:将本地计算机的7860
端口与远程服务器的127.0.0.1:7860
端口进行绑定。root@10.***.***.***
:登录远程服务器的root
用户,10.***.***.***
是远程服务器的 IP 地址。-p 5322
:指定远程服务器的 SSH 端口号为5322
。
通过此命令,可以在本地访问远程服务器上的端口 7860
上运行的服务,如 Jupyter Notebook 或 Web 应用。
处理“过程试图写入的管道不存在”错误
在使用 SSH 进行端口转发时,可能会遇到如下错误:
过程试图写入的管道不存在。
解决方案:
-
检查本地和远程的端口占用情况:
- 确保本地端口
7860
未被其他程序占用。可以通过以下命令检查端口占用情况:netstat -ano | findstr :7860
- 确保本地端口
-
确认远程服务器的服务是否在监听:
- 确保远程服务器上的服务正在监听
127.0.0.1:7860
。可以通过以下命令在远程服务器上检查:netstat -tuln | grep 7860
- 确保远程服务器上的服务正在监听
-
网络连接和 SSH 端口:
- 确保本地和远程的 SSH 连接正常,检查 SSH 端口是否开放。如果远程服务器的 SSH 端口号不是默认的
22
,请使用正确的端口号。
- 确保本地和远程的 SSH 连接正常,检查 SSH 端口是否开放。如果远程服务器的 SSH 端口号不是默认的
-
重启 SSH 服务:
- 尝试重启 SSH 服务或关闭后重新启动端口转发连接。
总结
在本文中,我们详细介绍了如何通过 icacls
命令修复 .ssh/config
文件权限的错误,确保安全性,并通过 SSH 进行本地端口转发。同时,我们还介绍了如何处理 “过程试图写入的管道不存在” 错误。
关键命令总结:
-
移除文件继承权限:
icacls C:\Users\username\.ssh\config /inheritance:r
-
授予只读权限:
icacls C:\Users\username\.ssh\config /grant:r username:(R)
-
SSH 端口转发:
ssh -CNg -L 7860:127.0.0.1:7860 root@10.***.***.*** -p 5322
如果你在处理 SSH 配置和端口转发时遇到问题,以上步骤和解决方案应该可以帮助你快速修复常见错误。
如果你觉得本文对你有帮助,别忘了给我点赞、收藏或者关注哦!你也可以在评论区分享你的经验,大家一起讨论!
相关文章:

【解决 Windows 下 SSH “Bad owner or permissions“ 错误及端口转发问题详解】
使用 Windows 连接远程服务器出现 Bad owner or permissions 错误及解决方案 在 Windows 系统上连接远程服务器时,使用 SSH 可能会遇到以下错误: Bad owner or permissions on C:\Users\username/.ssh/config这个问题通常是由于 SSH 配置文件 .ssh/con…...

使用预训练的BERT进行金融领域问答
获取更多完整项目代码数据集,点此加入免费社区群 : 首页-置顶必看 1. 项目简介 本项目旨在开发并优化一个基于预训练BERT模型的问答系统,专注于金融领域的应用。随着金融市场信息复杂性和规模的增加,传统的信息检索方法难以高效…...
ReactOS系统中MM_REGION结构体的声明
ReactOS系统中MM_REGION结构体的声明 ReactOS系统中MM_REGION结构体的声明 文章目录 ReactOS系统中MM_REGION结构体的声明MM_REGION MM_REGION typedef struct _MM_REGION {ULONG Type;//MEM_COMMIT,MEM_RESERVEULONG Protect;//PAGE_READONLYY,PAGE_READ_WRITEULONG Length;…...
web相关知识学习笔记
一, web安全属于网络信息安全的一个分支,www即全球广域网,也叫万维网,是一个分布式图形信息系统 二, 1.①安全领域,通常将用户端(浏览器端)称为前端,服务器端称为后端 ②…...

App测试环境部署
一.JDK安装 参考以下AndroidDevTools - Android开发工具 Android SDK下载 Android Studio下载 Gradle下载 SDK Tools下载 二.SDK安装 安装地址:https://www.androiddevtools.cn/ 解压 环境变量配置 变量名:ANDROID_SDK_HOME 参考步骤: A…...

【论文阅读】Tabbed Out: Subverting the Android Custom Tab Security Model
论文链接:Tabbed Out: Subverting the Android Custom Tab Security Model | IEEE Conference Publication | IEEE Xplore 总览 “Tabbed Out: Subverting the Android Custom Tab Security Model” 由 Philipp Beer 等人撰写,发表于 2024 年 IEEE Symp…...

2025 - AI人工智能药物设计 - 中药网络药理学和毒理学的研究
中药网络药理学和毒理学的研究 TCMSP:https://old.tcmsp-e.com/tcmsp.php 然后去pubchem选择:输入Molecule Name 然后进行匹配:得到了smiles 再次通过smiles:COC1C(CC(C2C1OC(CC2O)C3CCCCC3)O)O 然后再次输入:http…...

iwebsec靶场 XSS漏洞通关笔记
目录 前言 1.反射性XSS 2.存储型XSS 3.DOM型XSS 第01关 反射型XSS漏洞 1.打开靶场 2.源码分析 3.渗透 第02关 存储型XSS漏洞 1.打开靶场 2.源码分析 4.渗透 方法1: 方法2 方法3 第03关 DOM XSS漏洞 1.打开靶场 2.源码分析 3.渗透分析 3.渗透过程…...

设计模式-单例模型(单件模式、Singleton)
单例模式是一种创建型设计模式, 让你能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。 单例模式同时解决了两个问题, 所以违反了单一职责原则: 保证一个类只有一个实例。 为什么会有人想要控制一个类所拥有的实例…...

笔记本双系统win10+Ubuntu 20.04 无法调节亮度亲测解决
sudo add-apt-repository ppa:apandada1/brightness-controller sudo apt-get update sudo apt-get install brightness-controller-simple 安装好后找到一个太阳的图标,就是这个软件,打开后调整brightness,就可以调整亮度,可…...

零基础Java第十一期:类和对象(二)
目录 一、对象的构造及初始化 1.1. 就地初始化 1.2. 默认初始化 1.3. 构造方法 二、封装 2.1. 封装的概念 2.2. 访问限定符 2.3. 封装扩展之包 三、static成员 3.1. 再谈学生类 3.2. static修饰成员变量 一、对象的构造及初始化 1.1. 就地初始化 在声明成员变…...
NumPy包(下) python笔记扩展
9.迭代数组 nditer 是 NumPy 中的一个强大的迭代器对象,用于高效地遍历多维数组。nditer 提供了多种选项和控制参数,使得数组的迭代更加灵活和高效。 控制参数 nditer 提供了多种控制参数,用于控制迭代的行为。 1.order 参数 order 参数…...
极狐GitLab 17.5 发布 20+ 与 DevSecOps 相关的功能【一】
GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。 学习极狐GitLab 的相关资料: 极狐GitLab 官网极狐…...
Oracle 第1章:Oracle数据库概述
在讨论Oracle数据库的入门与管理时,我们可以从以下几个方面来展开第一章的内容:“Oracle数据库概述”,包括数据库的历史与发展,Oracle数据库的特点与优势。 数据库的历史与发展 数据库技术的发展可以追溯到上世纪50年代…...

7、Nodes.js包管理工具
四、包管理工具 4.1 npm(Node Package Manager) Node.js官方内置的包管理工具。 命令行下打以下命令: npm -v如果返回版本号,则说明npm可以正常使用 4.1.1npm初始化 #在包所在目录下执行以下命令 npm init #正常初始化,手动…...
网络地址转换——NAT技术详解
网络地址转换——NAT技术详解 一、引言 随着互联网的飞速发展,IP地址资源日益紧张。为了解决IP地址资源短缺的问题,NAT(Network Address Translation,网络地址转换)技术应运而生。NAT技术允许一个私有IP地址的网络通…...
问:数据库存储过程优化实践~
存储过程优化是提高数据库性能的关键环节。通过精炼SQL语句、合理利用数据库特性、优化事务管理和错误处理,可以显著提升存储过程的执行效率和稳定性。以下是对存储过程优化实践点的阐述,结合具体示例,帮助大家更好地理解和实施这些优化策略。…...

C++ vector的使用(一)
vector vector类似于数组 遍历 这里的遍历跟string那里的遍历是一样的 1.auto(范围for) 2.迭代器遍历 3.operator void vector_test1() {vector<int> v;vector<int> v1(10, 1);//初始化10个都是1的变量vector<int> v3(v1.begin(), --…...
深入浅出:ProcessPoolExecutor 处理异步生成器函数
深入浅出:ProcessPoolExecutor 处理异步生成器函数 什么是 ProcessPoolExecutor?为什么要使用 ProcessPoolExecutor 处理异步生成器函数?ProcessPoolExecutor 处理异步生成器函数的基本用法1. 导入模块2. 定义异步生成器函数3. 定义处理函数4…...
elementUI表达自定义校验,校验在v-for中
注意:本帖为公开技术贴,不得用做任何商业用途 <el-form :inline"true" :rules"rules" :model"formData" ref"formRef" class"mt-[20px]"><el-form-item label"选择区域" prop&qu…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...