Linux 免密钥登陆

本贴最后更新于 2415 天前,其中的信息可能已经事过景迁

核心思路: 利用 ssh-keygen -t rsa 在每台机器上产生密钥,然后把所有密钥都集中在 authorized_keys 中 把这个文件拷贝到所有的机器上

1. 每台机器都生成公共密钥

[root@guyu-hadoop .ssh]# ssh-keygen -t rsa
[root@guyu-hadoop opt]# cd ~/.ssh
[root@guyu-hadoop2 .ssh]# ssh-keygen -t rsa
[root@guyu-hadoop2 opt]# cd ~/.ssh

执行这步操作会在 ~\.ssh 下生成密钥

[root@guyu-hadoop app]# ll
-rw-------. 1 root root 1671 Dec 10 03:34 id_rsa
-rw-r--r--. 1 root root  398 Dec 10 03:34 id_rsa.pub   #只需要关心这个
-rw-r--r--. 1 root root  400 Dec 10 03:24 known_hosts

2. 记录公共密钥

[root@guyu-hadoop .ssh]# cd ~/.ssh
[root@guyu-hadoop .ssh]# cat id_rsa.pub >> authorized_keys
[root@guyu-hadoop .ssh]# chmod 600 authorized_keys 

3. 拷贝到其他机器 重复这步操作

[root@guyu-hadoop .ssh]# scp authorized_keys root@h2:~/.ssh

4. 其他机器都把这个密钥存入这个文件

[root@guyu-hadoop2 .ssh]# cat id_rsa.pub >> authorized_keys

5. 把存着所有密码的文件分发到每台机器上

[root@guyu-hadoop2 .ssh]# scp authorized_keys root@h1:~/.ssh

6. 此时他们就可以免密钥登陆啦

最后总结:

其中只要 ssh 有密钥大集合 authorized_keys 的机器是不需要密码

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    923 引用 • 936 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...