关于Linux的免密登录总结(转载+总结)(操作向)

Linux之间ssh登录原理

日常我们要实现从服务器节点A与节点B之间的登录方便通常就是要实现免密登录。所谓的免密登录整个操作过程
1 在本地节点A生产一对(公钥+私钥)
2 通过命令把A的公钥拷贝节点B的认证文件authorized_keys文件中,实现A无需密码访问节点

简单命令行实现

1 在节点A生产密钥对的命令:
ssh-keygen -t rsa 解释:就是在用户的~/.ssh目录下生成两个文件:公钥+私钥
2 然后把生成的公钥copy到节点B上
命令如下:
ssh-copy-id root@ip(节点B的ip/hostname) 解释:这个命令实现A的公钥copy到B的认证文件中,完成免密登录。

深入1:本地生成多个密钥对

以下指定了公钥生成的类型(-t)/ 长度/生成的文件前缀(work/personal)

以下指定了公钥生成的
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_work -C "work"
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_personal -C "personal"

关于ssh-keygen的命令的参数解释如下

-t:指定要使用的密钥类型,可以是 rsa、dsa、ecdsa 或 ed25519。
-b:指定密钥长度,通常为 2048、3072 或 4096。
-f:指定要创建的密钥文件名(包括路径),默认为 ~/.ssh/id_rsa。
-C:提供注释,用于识别该密钥,通常为您的电子邮件地址或其他标识信息。
-N:提供密钥口令短语,用于保护私钥。
深入2:copy命令也可以选择不同的公钥进行copy
$ ssh-copy-id username@remote_host
如果你有多个密钥对,则可以使用 -i 参数指定要使用的密钥文件:
$ ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_host

copy命令的参数解释

-i:指定要使用的密钥文件,默认为 ~/.ssh/id_rsa.pub。
-p:指定 SSH 服务器的端口号。
-o:指定一个或多个 ssh(1) 配置选项,例如 -o "Port=2222",如果你需要覆盖默认的连接参数。
-h:显示帮助文档。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值