MAC | linux | SSH 密钥验证

SSH密钥登陆过程

  1. 客户端通过ssh-keygen生成自己的公钥和私钥。
  2. 手动将客户端的公钥放入远程服务器的指定位置。
  3. 客户端向服务器发起 SSH 登录的请求。
  4. 服务器收到用户 SSH 登录的请求,发送一些随机数据给用户,要求用户证明自己的身份。
  5. 客户端收到服务器发来的数据,使用私钥对数据进行签名,然后再发还给服务器。
  6. 服务器收到客户端发来的加密签名后,使用对应的公钥解密,然后跟原始数据比较。如果一致,就允许用户登录。

在服务器中配置远程用户公钥(即客户端需要将自己的公钥配置在Linux服务器中)

  1. 查看本地是否已经生成了公钥

    ls ~/.ssh/id_*.pub

  2. 客户端生成本地公钥

    ssh-keygen

  3. 将客户端公钥手动上传到Linux服务器中

    ssh-copy-id 用户名@服务器IP地址

    • ssh-copy-id 命令用于将本地用户的公钥添加到远程服务器的 ~/.ssh/authorized_keys 文件中,从而实现 SSH 免密码登录。这样,您就可以通过私钥和公钥的方式进行身份验证,而无需输入密码。
    • 如果该文件不存在,它会自动创建该文件并将公钥添加到其中。
相关推荐
Doro再努力10 小时前
Vim 快速上手实操手册:从入门到生产环境实战
linux·编辑器·vim
wypywyp10 小时前
8. ubuntu 虚拟机 linux 服务器 TCP/IP 概念辨析
linux·服务器·ubuntu
Doro再努力11 小时前
【Linux操作系统10】Makefile深度解析:从依赖推导到有效编译
android·linux·运维·服务器·编辑器·vim
senijusene11 小时前
Linux软件编程:IO编程,标准IO(1)
linux·运维·服务器
忧郁的橙子.11 小时前
02-本地部署Ollama、Python
linux·运维·服务器
醇氧11 小时前
【linux】查看发行版信息
linux·运维·服务器
No8g攻城狮11 小时前
【Linux】Windows11 安装 WSL2 并运行 Ubuntu 22.04 详细操作步骤
linux·运维·ubuntu
XiaoFan01212 小时前
免密批量抓取日志并集中输出
java·linux·服务器
souyuanzhanvip12 小时前
ServerBox v1.0.1316 跨平台 Linux 服务器管理工具
linux·运维·服务器
HalvmånEver13 小时前
Linux:线程互斥
java·linux·运维