Shell脚本配置账户免密登录

本文介绍了如何通过Shell脚本实现SSH密钥生成和同步,从而达到服务器之间的免密登录。详细讲解了`ssh-keygen`命令的用法,并提供了脚本示例,适用于批量自动化操作。
摘要由CSDN通过智能技术生成

/ 前言 /

       通过密钥的方式来使服务器之间免密登录无疑是很重要的, 设想一下你要在N台服务器上面搭建MySQL主从又或者是ES集群, 此时你需要先在其中一台机器上面搭建之后将文件拷贝打其它服务器上面, 而最简单的方式就是直接通过脚本来一次性拷贝完成, 如果每拷贝一台机器你都需要输入一次服务器密码那绝对不叫自动化, 最多就是帮你省去了curl + ccurl + v罢了

/ 1 / SSH

1 . 1 生成密钥

想要实现免密登录我们就需要通道SSH中的一个命令来生成密钥

ssh-keygen -t rsa -P '' -f /home/es/.ssh/id_rsa
  • -t : 指定要生成的密钥类型,有rsa1(SSH1),dsa(SSH2),ecdsa(SSH2),rsa(SSH2)等类型,较为常用的是rsa类型
  • -P : 指定私钥, 可以选择空, 如果不带-P指令的话系统会要求你确认私钥
    ssh-keygen -t rsa -f /home/es/.ssh/id_rsa
    # 这里可以输入emtpy
    Enter passphrase (empty for no passphrase): 
    
  • -f : 指定生成密钥的文件名称, 如果不带-f指令的话系统会要求你输入文件名称
    ssh-keygen -t rsa
    Enter file in which to save the key (/home/es/.ssh/id_rsa):
    
  • -b : 指定密钥长度 ,单位是bit
  • -q :静默模式
  • -i :读取未加密的ssh-v2兼容的私钥/公钥文件,然后在标准输出设备上显示openssh兼容的私钥/公钥

密钥生成展示

[es@node-1 root]$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa.pub
Generating public/private rsa key pair.
/home/es/.ssh/id_rsa.pub already exists.
Overwrite (y/n)? y
Your identification has been saved in /home/es/.ssh/id_rsa.pub.
Your public key has been saved in /home/es/.ssh/id_rsa.pub.pub.
The key fingerprint is:
SHA256:tE9hU+EAFptvllQDwyIzurD2yZIKQnrunfWk4Ci1KPw es@node-1
The key's randomart
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值