Linux实现免密登录的配置方法

 更新时间:2024年04月28日 16:37:45   作者:生产队队长  
这篇文章主要介绍了Linux实现免密登录的配置方法,实现的效果是,当前服务器的test账号可以免密登陆15服务器的test账号,需要的朋友可以参考下

需求描述:
192.168.31.10服务器的yunwei账号,想要免密登陆到192.168.31.15服务器上。
直接ssh root@192.168.31.15这样登陆,不用输入密码。

实现:
1、在10机器上,创建运维账号。

[root@docker01 ~]# id yunwei				检查yunwei账号是否存在
id: yunwei: no such user
[root@docker01 ~]# useradd yunwei			创建yunwei账号
[root@docker01 ~]# su - yunwei				切换到yunwei账号
[yunwei@docker01 ~]$ pwd
/home/yunwei

2、在yunwei账号下创建密钥

[yunwei@docker01 ~]$ ssh-keygen		创建密钥,一路回车
Generating public/private rsa key pair.
Enter file in which to save the key (/home/yunwei/.ssh/id_rsa):
Created directory '/home/yunwei/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/yunwei/.ssh/id_rsa.
Your public key has been saved in /home/yunwei/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:kLXaRvzgGOqF62RyGWKGUekspD39l0pudQBt1MQp3NU yunwei@docker01
The key's randomart image is:
+---[RSA 2048]----+
|  ..   +o=.o..   |
| o.   .+=.=   E  |
|++ .  +o=.       |
|oo= .o O.o       |
|..+.+.+ So.      |
| o o =o.+ .      |
|  . Bo + .       |
|   *  +          |
|    ..           |
+----[SHA256]-----+
检查密钥是否创建成功
[yunwei@docker01 ~]$ pwd
/home/yunwei
[yunwei@docker01 ~]$ ll -a
total 12
drwx------.  5 yunwei yunwei 103 Mar 25 23:18 .
drwxr-xr-x. 16 root   root   177 Mar 25 23:17 ..
-rw-r--r--.  1 yunwei yunwei  18 Mar 31  2020 .bash_logout
-rw-r--r--.  1 yunwei yunwei 193 Mar 31  2020 .bash_profile
-rw-r--r--.  1 yunwei yunwei 231 Mar 31  2020 .bashrc
drwxrwxr-x.  3 yunwei yunwei  18 Mar 25 23:17 .cache
drwxrwxr-x.  3 yunwei yunwei  18 Mar 25 23:17 .config
drwx------.  2 yunwei yunwei  38 Mar 25 23:18 .ssh
[yunwei@docker01 ~]$ cd .ssh/
[yunwei@docker01 .ssh]$ ls
id_rsa  id_rsa.pub

3、复制密钥到15服务器

[yunwei@docker01 .ssh]$ ssh-copy-id root@192.168.31.15		复制密钥到15机器
/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/yunwei/.ssh/id_rsa.pub"
The authenticity of host '192.168.31.15 (192.168.31.15)' can't be established.
ECDSA key fingerprint is SHA256:v3zhW/rvSt+T7QfAnIDIiHhbALRLNiLzl8Hg3TAZQCA.
ECDSA key fingerprint is MD5:cf:b8:e1:f6:a5:61:60:f0:77:aa:f3:76:ab:d2:ce:9b.
Are you sure you want to continue connecting (yes/no)? yes
/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.31.15's password:
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh 'root@192.168.31.15'"
and check to make sure that only the key(s) you wanted were added.

4、验证免密登陆

[yunwei@docker01 .ssh]$ ssh root@192.168.31.15
Last login: Sun Mar 26 11:21:02 2023 from 192.168.31.1

补充:优化密钥创建方式,免交互创建密钥

[yunwei@docker01 .ssh]$ ssh-keygen -P '' -f id_rsa		免交互方式,创建密钥
Generating public/private rsa key pair.
Your identification has been saved in id_rsa.
Your public key has been saved in id_rsa.pub.
The key fingerprint is:
SHA256:hXuSBtV1o1D1PfIyG/+iC1IFnZh8Q3NGf5eiuQ8IExQ yunwei@docker01
The key's randomart image is:
+---[RSA 2048]----+
|       EoooB=+B  |
|      .. .=o=* +o|
|      ... ..o+ o*|
|       ..+ .o + +|
|       oS oo + . |
|       .o+. . *  |
|        ...o . . |
|         . .o . .|
|            o+ ..|
+----[SHA256]-----+
[yunwei@docker01 .ssh]$ ls
id_rsa  id_rsa.pub  known_hosts

参数说明:
-t 指定要创建的密钥类型
dsa | ecdsa | ecdsa-sk | ed25519 | ed25519-sk | RSA
可能的值为“dsa”、“ecdsa”、“ecdsa-sk”、“ed25519”、“ed25519-sk”或“rsa”。
当使用 RSA CA 密钥签署证书时,此标志还可用于指定所需的签名类型。可用的 RSA 签名变体是“ssh-rsa”(SHA1 签名,不推荐)、“rsa-sha2-256”和“rsa-sha2-512”(默认值)

-P 密码
提供(旧)密码。
这里的密码,是密钥的密码,不是远程主机的密码,随便设置。但是,这就失去了免密登陆的意义。因为,设置了这个后,登陆远程主机时,就必须输入密钥密码。
所以,一般这个指指定为空即可。

-f 文件名
指定密钥文件的文件名
这里的文件名,必须指定为id_rsa,不然,把密钥推送到目标机器,依然无法实现免密登陆。

总结:

就三个命令

cd							进入当前账号家目录
ssh-keygen					连续三次回车		
ssh-copy-id 192.168.31.15	复制公钥到hadoop104服务器,这样,就可以免密访问hadoop104服务器

这里用户账号省略,则使用当前账号进行免密登陆
比如,当前账号是test

ssh-copy-id 192.168.31.15 等价与 ssh-copy-id test@192.168.31.15

实现的效果是,当前服务器的test账号可以免密登陆15服务器的test账号

参考资料:https://www.cnblogs.com/dirigent/p/16636545.html 

到此这篇关于Linux实现免密登录的配置方法的文章就介绍到这了,更多相关Linux免密登录内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Centos7下编译安装配置Nginx+PHP+MySql环境

    Centos7下编译安装配置Nginx+PHP+MySql环境

    这篇文章主要介绍了Centos7下编译安装配置Nginx+PHP+MySql环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • linux(centos)下SVN服务器如何搭建

    linux(centos)下SVN服务器如何搭建

    linux(centos)下SVN服务器如何搭建?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下linux(centos)搭建SVN服务器的思路!
    2015-09-09
  • linux touch,chattr指令详解及用法

    linux touch,chattr指令详解及用法

    这篇文章主要介绍了 linux touch,chattr指令详解几用法的相关资料,需要的朋友可以参考下
    2017-02-02
  • 超详细讲解Linux DHCP服务

    超详细讲解Linux DHCP服务

    这篇文章主要介绍了Linux DHCP 服务,它可以避免IP地址冲突,提高了IP地址的利用率等优点。感兴趣的小伙伴一起来学习吧
    2021-08-08
  • linux环境配置nginx导致页面不刷新的解决方法

    linux环境配置nginx导致页面不刷新的解决方法

    这篇文章介绍了linux环境配置nginx导致页面不刷新的解决方法,有需要的朋友可以参考一下
    2013-09-09
  • 关于安装LNMP集成包后上传图片报500错误的解决方法

    关于安装LNMP集成包后上传图片报500错误的解决方法

    这篇文章主要给大家介绍了关于安装LNMP集成包后上传图片报500错误的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • Linux系统的修复模式(单用户模式)

    Linux系统的修复模式(单用户模式)

    大家好,本篇文章主要讲的是Linux系统的修复模式(单用户模式),感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Linux中查看并删除端口方式

    Linux中查看并删除端口方式

    这篇文章主要介绍了Linux中查看并删除端口方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • 在Linux系统下上传项目到码云的方法

    在Linux系统下上传项目到码云的方法

    今天小编就为大家分享一篇关于在Linux系统下上传项目到码云的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • 使用Apache ab进行http性能测试

    使用Apache ab进行http性能测试

    这篇文章主要为大家详细介绍了使用Apache ab进行http性能测试,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12

最新评论