Linux
linux下的yum命令报错
【实用】精简Commands(更新)
生信软件安装前配置
NewMechine-Linux
捡了一台垃圾-蜗牛星际单网口
群晖系统升级攻略
群晖的一些工具
群晖中玩脚本【实践可行才记录】
群晖套件迁移(从存储2到存储4)
移动吉比特光猫 SK-D746 获取动态超级管理员帐号与密码
移动光猫SG338Z
linux使用crontab命令指定时间段内随机执行任务
【实用】局域网数据共享之王-gohttpserver
飞牛NAS
飞牛NAS读取群晖的硬盘
Navidrome+MusicTagWeb+音流
飞牛备份及同步
硬盘故障问题
飞牛NAS搭建私人图书馆,实现网页、手机看电子书
docker学习
SSH密钥免密登录详细教程
SSH登录Linux系统提示信息"There were xxxx failed login attempts since the last successful login."
本文档使用 MrDoc 发布
-
+
up
down
首页
SSH密钥免密登录详细教程
# SSH密钥免密登录详细教程 ## 一、原理简介 SSH 密钥免密登录是用一对密钥(公钥和私钥)来代替密码登录。只要本地有私钥,远程服务器有公钥,就可以自动登录,无需每次输入密码。 --- ## 二、操作步骤 ### 1. **在本地生成 SSH 密钥对** #### Windows 用户 - **推荐用 WSL(如 Ubuntu)或 Git Bash**,也可以用 PowerShell(新版 Windows 也支持 ssh-keygen)。 打开命令行(WSL、Git Bash 或 PowerShell),输入: ```bash ssh-keygen ``` - 出现提示时,直接按回车(默认路径即可,通常是 `~/.ssh/id_rsa`)。 - 如果问你要不要设置密码,直接回车(不设置)。 **输出示例:** ``` Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/yourname/.ssh/id_rsa): [直接回车] Enter passphrase (empty for no passphrase): [直接回车] Enter same passphrase again: [直接回车] Your identification has been saved in /c/Users/yourname/.ssh/id_rsa Your public key has been saved in /c/Users/yourname/.ssh/id_rsa.pub ``` --- ### 2. **将公钥上传到 Linux 服务器** #### 方法A:用 ssh-copy-id(推荐,Linux/WSL/Mac) 在命令行输入: ```bash ssh-copy-id user@remote_host ``` - `user`:你的服务器用户名 - `remote_host`:服务器IP或域名 **如果提示输入密码,输入你服务器的登录密码即可。** #### 方法B:手动上传(适合 Windows 原生 PowerShell) 1. 打开 `id_rsa.pub` 文件(公钥),复制内容。 - 路径一般在 `C:\Users\你的用户名\.ssh\id_rsa.pub` 或 `~/.ssh/id_rsa.pub` 2. 用 WinSCP、MobaXterm、Xftp 等工具登录服务器,把内容粘贴到服务器的 `~/.ssh/authorized_keys` 文件里(没有就新建)。 - 进入服务器后,执行: ```bash mkdir -p ~/.ssh chmod 700 ~/.ssh nano ~/.ssh/authorized_keys ``` - 粘贴公钥内容,保存退出。 - 设置权限: ```bash chmod 600 ~/.ssh/authorized_keys ``` --- ### 3. **测试免密登录** 在本地命令行输入: ```bash ssh user@remote_host ``` 如果直接登录进去了,不再提示输入密码,说明配置成功! --- ### 4. **用 scp 免密传输文件** ```bash scp user@remote_host:/path/to/remote/file C:/local/path/ ``` 或 ```bash scp C:/local/path/file user@remote_host:/path/to/remote/ ``` **不会再要求输入密码!** --- ## 常见问题排查 1. **服务器 `~/.ssh/authorized_keys` 权限不对** - 必须是 600 (`chmod 600 ~/.ssh/authorized_keys`) - `~/.ssh` 目录权限必须是 700 (`chmod 700 ~/.ssh`) 2. **公钥内容有多余空格或换行** - 必须一行,不能有多余空格 3. **服务器 `sshd_config` 配置不允许密钥登录** - 检查 `/etc/ssh/sshd_config`,确保有: ``` PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys ``` - 改完后重启 ssh 服务:`sudo systemctl restart sshd` 4. **本地私钥路径不对** - 默认是 `~/.ssh/id_rsa`,如有特殊路径需用 `-i` 指定 --- ## 总结 - 本地生成密钥对(ssh-keygen) - 上传公钥到服务器(ssh-copy-id 或手动) - 检查权限 - 测试 ssh/scp 免密登录 --- 如有任何一步出错,欢迎把报错信息发给我,我帮你具体定位!
laihui126
2025年10月22日 08:55
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅道文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅道文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅道文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
下载Markdown文件
分享
链接
类型
密码
更新密码