服务器SSH 免密码登录

1. 背景

为了服务器的安全着想,设置的服务器密钥非常长。但是这导致每次连接服务器都需要输入一长串的密码,把人折腾的很痛苦,所以我就在想,能不能在终端SSH的时候无需输入密码。

windows 可以使用 xshell 软件,会自动登录;

Mac 还是喜欢用终端,于是就得设置免密登录;

在使用 SSH 连接到远程服务器时,可以通过设置 SSH 密钥对,免去每次输入密码的步骤。以下是设置 SSH 无密码登录的步骤:

2. 生成 SSH 密钥对:

打开终端并输入以下命令生成 SSH 密钥对:

bash 复制代码
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

如果遇到需要挑选密钥保存文件夹,直接回车使用默认路径就行。

这将生成一个 4096 位的 RSA 密钥对。按照提示选择保存路径和输入密码短语(可选)。默认情况下,密钥将保存在 ~/.ssh/id_rsa 和 ~/.ssh/id_rsa.pub。

如果大家是第一次使用 SSH 执行上述命令,就会生成公钥和私钥文件。可以跳过 是否覆盖 章节。

是否覆盖

如果此前已经和我一样已经有过密钥文件,我选择 n,不覆盖。此时就会退出密钥生成。

因为一个在密码学的公私钥中,一个公钥可以对应很多私钥;所以我的很多SSH都是使用的同一个公钥;

3. 将公钥复制到远程服务器

使用以下命令将生成的公钥复制到远程服务器:

bash 复制代码
ssh-copy-id username@remote_host

替换 username 和 remote_host 为远程服务器的用户名和 IP 地址或主机名。系统会提示输入远程服务器的密码。

连接到远程服务器:

bash 复制代码
ssh username@remote_host

这样,就可以实现 SSH 无密码登录到远程服务器了。

相关推荐
A心有千千结16 分钟前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github
fengkai454524 分钟前
十三、Zabbix 监控
运维·服务器·zabbix·监控·网络设备
古法老登瞎折腾34 分钟前
大数据智能运维实战(二):准备一个可复现的运维实验环境
java·大数据·运维·spring ai·mcp
数字新视界34 分钟前
机房动环监控助力智能管理
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
算力小木42 分钟前
#标题:5090 vs 4090D 到底差多少?我拿八卡实测了一周
服务器
数据中心的那点事儿1 小时前
艾特网能:GPU算力服务器冷却系统配套设计介绍
运维·服务器·gpu算力
广州灵眸科技有限公司1 小时前
单芯片同时跑 Linux 与 RT-Thread:RV1126B的AMP异构方案完整拆解
linux·运维·服务器
2301_786756601 小时前
2026 JCR 秋季数据重载解读:影响因子为什么会变?附期刊影响力数据批量追踪方案
java·服务器·前端
Lynne3091 小时前
TSN 在变电站自动化通信网络升级中的应用价值与技术挑战
服务器·网络·数据库
xixiaoyunya1 小时前
把网站状态巡检自动化:从“每天手动刷一遍”到秒级无人值守
运维·自动化