ssh使用密钥远程连接问题排查

ssh使用密钥远程连接时,会因为各项原因导致无法连接

本文以本机(windows), 连接目标机(Ubuntu) 为例, 列出应该逐项排查的问题, 确保能够正确连接

1. 确保两机器能够相互ping通
  1. windows和linux都有防火墙, 双方ping不同大概率是因为防火墙的问题
  2. 还有一种可能是网卡IP设置不对。 有三种情况
    第一, 与目标机通过网线连接, 那么就要检查windows以太网卡IP配置与目标机是同一网段
    第二, 与目标机通过无线网连接, 那么就检查两边IP在同一网段
    第三, 与目标机通过虚拟网卡连接, 一般虚拟网卡由虚拟机创建, 那么就在虚拟机中检查虚拟的以太网卡和windows主机的以太网卡配置在同一网段。
2. 密钥权限
  1. windows主机密钥的权限不能太open, 设置windows主机密钥的方式见我另一篇文章:
    《windows下CMD中使用ssh登录远程服务器报Permissions for 'xxx' are too open.》
  2. Linux 主机要检查用户家目录权限, 必须为755 或者644 用户家目录权限太高,会导致openssh连接失效, 这很重要, 也很容易被忽略。
  3. Linux主机其他目录权限主项检查:
    .ssh : 700
    authorized_keys: 600
3. 检查目标机sshd_config的如下几个配置项

Port 22 # 默认就是这个端口

PubkeyAuthentication yes # 打开公钥认证

AuthorizedKeysFile .ssh/authorized_keys # 指定认证公钥文件

4. 确保sshd正在运行

netstat -tln 看ipv4端口里有没有22端口

相关推荐
考虑考虑10 小时前
docker compose V2版本新属性
运维·后端·自动化运维
小小的木头人11 小时前
Ubuntu Samba修改端口绕过445封禁挂载
运维·ubuntu
wdfk_prog13 小时前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros
SEO_juper13 小时前
Java 并发编程实战:从线程基础到高并发架构
运维·人工智能·爬虫·chatgpt·seo
szephyr14 小时前
Docker + Compose 实战:把本地项目一键搬到云服务器,附完整配置
运维·docker·容器·部署·云服务器
wdfk_prog14 小时前
ros教程02:创建 catkin Workspace、Package 与第一个 ROS1 C++ Node
运维·缓存·docker·容器·ros
亚川楼宇自控系统数据中心厂家15 小时前
高校 / 医院 / 政务云数据中心 IBMS 系统怎么落地?
运维
陈陈CHENCHEN15 小时前
【Linux】服务器根目录磁盘扩容操作记录
linux·运维·服务器
见闻小天地17 小时前
从晶片工艺到可靠性验证:晶威特TF-3215型RTC晶振全面解析
运维·业界资讯
名字还没想好☜18 小时前
Docker 网络实战:bridge/host/none/自定义网络、容器互通与端口映射踩坑
运维·docker·kubernetes