ssh 远程pc如何不用每次都输入密码

使用 SSH 密钥对认证

生成 SSH 密钥对,将公钥上传到远程服务器,实现免密码登录。在本地终端运行以下命令生成密钥对:

bash 复制代码
ssh-keygen -t rsa -b 4096

生成的密钥默认保存在 ~/.ssh/id_rsa(私钥)和 ~/.ssh/id_rsa.pub(公钥)。将公钥复制到远程服务器:

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

配置 SSH 配置文件

在本地 ~/.ssh/config 文件中添加服务器配置,简化登录命令。示例配置:

bash 复制代码
Host myserver
    HostName remote_host
    User username
    IdentityFile ~/.ssh/id_rsa

配置后只需运行 ssh myserver 即可登录,无需输入密码。

使用 ssh-agent 管理密钥

启动 ssh-agent 并添加私钥,避免每次使用密钥时输入密码短语:

bash 复制代码
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

检查远程服务器配置

确保远程服务器的 /etc/ssh/sshd_config 文件包含以下配置:

bash 复制代码
PubkeyAuthentication yes
PasswordAuthentication no

修改后重启 SSH 服务:

bash 复制代码
sudo systemctl restart sshd

调试连接问题

如果仍然需要输入密码,检查权限设置。确保本地 .ssh 目录权限为 700,密钥文件权限为 600:

bash 复制代码
chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
相关推荐
wflynn1 小时前
GitHub 周榜趋势速报 | 2026-11-01
开源·github
u1301302 小时前
GitHub 热榜项目:周榜(2026-11-01)
人工智能·github
怕浪猫2 小时前
Super-agent 在各大模型厂商的应用情况
算法·面试·github
timegogo4 小时前
Emoji 语义化搜索
程序员·github
miofly5 小时前
Jepsen 作者 Kyle Kingsbury:LLM 正在削弱软件文档和项目的可信度
开源·github
逛逛GitHub5 小时前
我在 GitHub 上搜罗了 6 个高质量数据集,看看哪些会用到。
github
程序员清风5 小时前
LLM Wiki 实战:用 MCP 构建会自我维护的个人知识库
开源·github
miofly5 小时前
GitHub 今日推荐|floorplan:AI 读代码自动画交互式架构地图
javascript·开源·github
miofly7 小时前
GitHub 日榜趋势速报 | 2026-11-02
开源·github