ssh免密配置

本文详细介绍了如何在Linux系统中生成RSA密钥对,包括使用ssh-keygen命令,选择密钥类型,设置密码,以及如何配置免密登录。还解释了公钥和私钥在SSH通信中的作用。
摘要由CSDN通过智能技术生成

一. linux系统生成rsa公钥/私钥对

主要步骤如下:

  1. 打开终端。

  2. 输入命令:

    ssh-keygen -t rsa

    这将创建一个RSA类型的密钥对。你也可以选择其他类型的密钥,如ed25519ecdsa,只需将rsa替换为相应的类型即可。

  3. 按回车键接受默认的文件位置(通常是~/.ssh/id_rsa)或输入一个新的文件位置。

  4. 当提示输入密码时,你可以选择输入一个密码以增加密钥的安全性,或者直接按回车键以不设置密码。如果设置了密码,每次使用密钥时都需要输入密码。(一般直接回车,要不每次输密码也很麻烦…)

  5. 再次输入密码以确认。

  6. 密钥生成后,你可以在~/.ssh/目录(或你在步骤3中指定的目录)下找到私钥(id_rsa)和公钥(id_rsa.pub)。

  7. 你可以使用cat命令查看公钥,例如:

    cat ~/.ssh/id_rsa.pub

    这将显示你的公钥。你可以将这个公钥复制并粘贴到需要的地方。

  • 如果在第4步中设置了密码,该怎么取消?

       ssh-keygen -p

二. 如果配置免密?

两种操作方法:

1. 将客户端~/.ssh/id_rsa.pub文件里面的公钥手动复制到服务器上~/.ssh/authorized_keys中。

2. 使用   ssh-copy-id user@hostname 命令,将本地客户端的 SSH 公钥自动复制到远程服务器的 ~/.ssh/authorized_keys 文件中。执行此命令时,它首先会要求你输入远程服务器用户的密码。一旦验证通过,它就会自动将你的公钥追加到远程服务器用户的 ~/.ssh/authorized_keys 文件中。如果 ~/.ssh 目录或 authorized_keys 文件不存在,ssh-copy-id 也会自动创建它们。

三. “密钥对”概念

命令ssh-keygen -t rsa用于生成RSA类型的密钥对,这包括一个公钥和一个私钥。

公钥(Public Key):可以安全地分享给任何人的密钥。在SSH连接中,服务器存储客户端的公钥。当客户端尝试连接到服务器时,服务器使用存储的公钥来验证客户端的身份。公钥用于加密数据,但不能用于解密数据。只有对应的私钥才能解密通过公钥加密的数据。

私钥(Private Key):必须严格保密的密钥。私钥保留在用户端,不应该透露给任何人。私钥用于解密通过公钥加密的数据,或者在使用SSH连接服务器时,证明客户端的身份。私钥也可以用于对数据进行签名,以证明信息的发送者是你。

总结来说,公钥和私钥是一对,它们在加密通信和身份验证中扮演重要角色。公钥用于加密数据或验证签名,而私钥用于解密数据或生成签名。这种机制确保了数据传输的安全性和身份验证的可靠性。

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值