linux公钥 还需要密码,centos配置ssh免密码登录后仍要输入密码的解决方法

前言

在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手动启动,集群内服务器几台还好,要是像阿里1000台的云梯Hadoop集群的话,轨迹启动一次集群就得几个工程师一两天时间,是不是很恐怖。如果使用免密登录,主服务器就能通过程序执行启动脚步,自动帮我们将从服务器的应用启动。而这一切就是建立在ssh服务的免密码登录之上的。所以要学习集群部署,就必须了解Linux的免密码登录。

第一步:在本机中创建秘钥

1、执行命令:

ssh-keygen -t rsa -C "[email protected]"

(随便编个字符串,一般用邮箱)

2、之后一路回车就行啦;会在~(home)目录下中产生.ssh(隐藏)文件夹;

3、里面有两个文件id_rsa(私钥)、id_rsa.pub(公钥)文件

注意事项:

①在liunx环境下,要想复制公钥或是私钥,不要使用vim等编辑器打开文件来复制粘贴;

因为它会产生不必要的回车。

②应该使用cat把内容打印到终端上再来复制粘贴;

第二步:用 ssh-copy-id 把公钥复制到远程主机上

把秘钥拷贝到远程服务器

用这种方式拷贝使用的端口是Linux默认的22,如果你想指定端口,可以使用:

ssh-copy-id -i /用户名/.ssh/id_rsa.pub '-p 端口号 [email protected]'

ssh-copy-id -i /root/.ssh/id_rsa.pub '-p 222

你可能感兴趣的:(linux公钥,还需要密码)