Linux服务器设置免密登录

Linux服务器设置免密登录

1. 在服务器上生成"密钥对"

shell 复制代码
# 以RSA算法生成密钥对,然后一路回车就行了(如果你没啥讲究的话)
ssh-keygen -t rsa

加密方式

加密算法类型 安全性特点 典型密钥长度 兼容性
Ed25519 高安全性,性能最佳,抗侧信道攻击 256 较新的系统和SSH实现
ECDSA 安全性高,密钥短,效率高 256 主流现代系统
RSA(最常用) 经典可靠,应用广泛 至少 2048位(推荐3072或 4096) 最佳,几乎所有系统都支持
DSA 已不安全,密钥过短 1024

读者可以选择前三个任意一个,我觉得选用RSA最为稳妥

在用户家目录下会生成两个文件id_rsa、id_rsa.pub,这里的id_rsa是私钥,千万不能分发给任何设备。id_rsa.pub是公钥,可以分发给受信任的设备

2. 主机设置

2.1 Windows

用Windows的CMD执行以下命令(快捷键win+R,输入CMD)

shell 复制代码
# 拷贝远程服务器上的公钥文件到本地,格式为 scp [登录用户名]@[服务器IP]:[公钥所存放的绝对路径] [本地路径]
scp pi@192.168.10.23:/home/pi/.ssh/id_rsa.pub ~/.ssh
# 拷贝到本地后,你可以在本地用户下的.ssh文件夹下找到id_rsa.pub文件,然后在.ssh文件夹下创建一个名为config的文件,文件内容如下
Host custom_server_name # 一个易于记忆的别名
 HostName server_ip  # 服务器的实际 IP 地址或域名
 User username       # 用于登录服务器的用户名
 IdentityFile ~/.ssh/id_rsa  # 指定私钥文件在 Windows 上的路径

保存文件!重新打开CMD,不出意外的话就可以顺利免密登录服务器了

2.2 Linux 或 Mac

用终端执行以下命令

shell 复制代码
# 拷贝远程服务器上的公钥文件到本地,格式为 scp [登录用户名]@[服务器IP]:[公钥所存放的绝对路径] [本地路径]
scp pi@192.168.10.23:/home/pi/.ssh/id_rsa.pub ~/.ssh
# 创建authorized_keys文件,并把id_rsa.pub中内容追加进去
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 修改权限
chmod 600 ~/.ssh/authorized_keys
# 修改sshd_config配置文件
vim /etc/ssh/sshd_config
# 修改内容如下
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
# 保存退出后,重启ssh服务
systemctl restart sshd

3.测试

使用CMD或终端连接远程服务器,如果不需要输入密码,则成功了

shell 复制代码
ssh pi@192.168.10.23
相关推荐
扫地的小何尚1 天前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
数据皮皮侠AI2 天前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
开开心心就好3 天前
系统清理工具清理缓存日志,启动卸载管理
linux·运维·服务器·神经网络·cnn·pdf·1024程序员节
Evan东少5 天前
[踩坑]笔记本Ubuntu20.04+NvidiaRTX5060驱动+cuda+Pytorch+ROS/Python实现人脸追踪(环境准备)
1024程序员节
不爱编程的小陈7 天前
C/C++每日面试题
面试·职场和发展·1024程序员节
开开心心就好7 天前
右键菜单管理工具,添加程序自定义名称位置
linux·运维·服务器·ci/cd·docker·pdf·1024程序员节
码农三叔8 天前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk
西幻凌云12 天前
初始——正则表达式
c++·正则表达式·1024程序员节
启芯硬件12 天前
电源XL6009E1的dieshot细节分析-芯片设计干货
大数据·经验分享·硬件工程·1024程序员节
一颗青果14 天前
单例模式 | 死锁
linux·服务器·单例模式·1024程序员节