本文共 970 字,大约阅读时间需要 3 分钟。
我们在一台Linux机器上利用SSH登陆其他Linux机器时,需要我们输入PassWord,以及搭建集群时,节点之间相互通信,都需要输入PassWord。第一,长时间SSH登陆需要反复输入密码;第二,集群之间通信需要自动化。这时,免密钥登陆就显得尤为重要,接下来我们将要介绍如何设置免密钥登陆。
我们以3台Linux机器为例说明免密钥登陆的步骤,以此类推,可以扩展到n台Linux机器中。
3台主机的用户名、主机名为: shaomingliang@xcloud162 shaomingliang@xcloud163 shaomingliang@xcloud164这条命令可以在任意路径下运行,其目的在/home/shaomingliang/.ssh路径下生成私钥和公钥(分别为id_rsa、id_rsa.pub),我们只使用id_rsa.pub做免密钥登陆。
运行这条命令会把当前机器上的id_rsa.pub内容拷贝到xcloud162机器下/home/shaomingliang/.ssh/authorized_keys文件里。
正常情况下执行此指令会正常把3台机器上的id_rsa.pub内容拷贝到xcloud162机器上的authorized_keys文件中,但是在我这里报错了,不能正常进行拷贝,解决办法就是我们自己人工把id_rsa.pub内容拷贝到xcloud162机器上的authorized_keys中。
下图为执行完此指令后,在authorized_keys文件中的内容。
在/home/shaomingliang/.ssh目录下运行此指令,把xcloud162机器上的authorized_keys文件分发到xcloud163和xcloud164机器上,如下图所示。
notice:括号中为另外的主机名。
到此为止,整个配置过程已经完成,现在让我们享受一下免密钥登陆的便利。