centos配置集群机器之间ssh免密码登录

云旗 云旗     2022-08-06     474

关键词:

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。

在Hadoop集群或其他集群中广泛应用用,可用于机器之间免密码登录和执行脚本,如的Hadoop集群中NameNode启动的时候会远程执行脚本把集群中DataNode的也一起启动起来。

这里主要介绍SSH的配置和登录失败的情况

SSH配置

集群中的每台主机上打开配置

sudo vim /etc/ssh/sshd_config

开启下面的选项

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

 

生成SSH密钥

集群中的每台主机上执行下面命令,一路回车,可生成本机的rsa类型的密钥。

ssh-keygen -t rsa

执行完之后在~/.ssh/目录下会生成一个保存有公钥的文件:id_rsa.pub

 

把公钥写入authorized_keys文件

把自己的公钥拷贝到集群中的Master机

ssh-copy-id hadoop@HadoopMaster

最终在Master机上生成如下的内容的~/.ssh/authorized_keys文件:

 
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArYU2kMXsu75Gzwvuby7OoGzC7GVwxVo+ol/7nJVD    BpKpJLRHRe/d2HSNe9ZZRWLK2tU0e41baMxrYRoAKJA2ujcWfy7t57c3ArO9hA7KJy7MqMiT8WHQ    M3I2Afsx6sVKeQU/czDLXHn+KjwKbR8z0tuycgtxgkaWx1PCpCKeFDAXDVvxYcurSUNaIGL5Egzu    Iy97N52ld/WxUZnRRsTPdpW88JkhWdOV1Bdo4O67rNv5tSYKHXfPwqi8NekqoHIExgVRsHLvM8fe    xvV4mo8lXYdQPRCyrtM9/V+4kSW8eaBO7w6hM9YVZIspSqx0+OqibWTvqSmiAVh0JmUT0MCeVQ==     hadoop@HadoopMaster
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA7n27x4qSzRQNGQAL+rT1+91IQnM9cwZYFeSUzrJD    GDfwCTJMKnRBYxrDMxTAM6MKjfwwkPzXnbKHLQnDiJKUSdF8H2xcgDMBJLssVQjOc2jSEg/VppQN    hJwObbIL3k1FbU2KxkOp7yW5PIodZrgUwlH5wdXtfsPKimvv72uA1KUiqPbYA3ZJqXw9Bt87K6Sv    IAkvUjshnfaS+wNEBVwW1dhXyz6DHuY+Tn9330+1oYfdmgSjS4ZqvZVothhhV58DNwzAYwINCpBA    tkjFbk/SOf0q/4rSJRpe2yH9xOuZdwqXMfk3dkp0UFZkV2EVSLyaCNKwTbSuKN75FWhgl8QB7w==     hadoop@HadoopSlave1
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAw91O/1NWnbr6/vop+xwnqR/XYNpwkWselzyHNqgD    PYgXXsDHsvOZbpTX7pgOTgVSmlZetCdX4C1lsc/PO8IitvvBS/qWU216lXaqlW61RcliCrYH/RwN    f8XTLx/Ga04w2qEIFlLOiuH6x/KA22muOLYaSIefXv38xj0Hj41iE5ZIseaLuJogn7iqJ6Fq0wQH    i6ueF9BasSWnOHhn6CJamYz3FC9r2m3vwPMkgagPp1FdYyDxodK+MZlwu6TxqP6QQ7BY/Wh5DZK8    C8zpDOZGQgWOrghF58TlZSmJYmukv1NqsY8PCFuoj7vfoUzVKQkyKcEiohwBcTb50vGPl06bMQ==     hadoop@HadoopSlave2
 

把HadoopMaster的authorized_keys拷贝到HadoopSlave1和HadoopSlave2

scp ~/.ssh/authorized_keys hadoop@HadoopSlave1:~/.ssh/
scp ~/.ssh/authorized_keys hadoop@HadoopSlave2:~/.ssh/

 

重启SSH服务

sudo service sshd restart

 

测试连接

ssh HadoopSlave1

 

常见免密码登录失败分析

配置问题

  1. 检查配置文件/etc/ssh/sshd_config是否开启了AuthorizedKeysFile选项
  2. 检查AuthorizedKeysFile选项指定的文件是否存在并内容正常

目录权限问题

  1. ~权限设置为700
  2. ~/.ssh权限设置为700
  3. ~/.ssh/authorized_keys的权限设置为600
sudo chmod 700 ~
sudo chmod 700 ~/.ssh
sudo chmod 600 ~/.ssh/authorized_keys

 

设置完了记得重启ssh服务

 

转载请注明出处:http://www.cnblogs.com/keitsi/p/5653520.html

linuxssh免密码登录设置

...pubauthorized_keys免密码登录现在只是本机免密码,接下来要集群之间免密码ssh-copy-id-ispark2(机器hostname)每个机器和其他机器之间各自拷贝一份 ctrl+d可以退出远程 查看详情

hadoop集群配置免密ssh登录方法(代码片段)

Hadoop集群配置免密SSH登录方法 Hadoop集群包含1个主节点和3个从节点,需要实现各节点之间的免密码登录,下面介绍具体的实现方法。一、Hadoop集群环境二、免密登录原理每台主机authorized_keys文件里面包含的主机(ssh密钥),... 查看详情

配置免密码登录

.配置免密码登录免密码登录可以在任意一台机器上输入命令,可以启动所有机器上的进程如果不做免密码登录,需要在每一台机器上输入启动进程命令配置201上的免密码登录在201上生成秘钥 ssh-keygen-tdsa-P‘‘-f~/.ssh/id_dsa ... 查看详情

centos系统多台机器免密互相可以登录

CentOS7系统3台机器免密互相可以登录(基于密钥)思路:1.用一套密钥对(公钥私钥对)。2.首先以一台机器生成一对密钥。在把这对密钥放到想要(这三台机器上就可以实现)3.缺陷稍微有些不安全第一步在一台机器上生成一对... 查看详情

centos配置免密登录(代码片段)

生成ssh免登录密钥`ssh-keygen-trsa(四个回车)`执行完这个命令后,会生成id_rsa(私钥)、id_rsa.pub(公钥)查看生成的id_rsa和id_rsa.pub文件cd~/.ssh将公钥拷贝到要免密登陆的目标机器上ssh-copy-idnode-02根据提示输入正确用户名以及密码 查看详情

centos6.9ssh配置用户免密码登录

1、 演示环境:192.168.1.144:CentOS6.9x86_64192.168.1.146:CentOS7.4x86_642、 演示目标:192.168.1.144通过密钥认证的方式免密码直接登录192.168.1.1463、 192.168.1.144安装软件包,并首次连接192.168.1.146:#yum-yinstallopenssh-clients 查看详情

linux下配置远程免密登录方法教程

...定的多用户网络操作系统。本文主要描述了CentOs6.3系统下配置免密登录的详细过程。非常不错,具有参考借鉴价值,需要的朋友可以参考下  方法步骤  ssh远程登录,两种身份验证:  1.用户名+密码  密钥验证  机器1... 查看详情

ssh免密码登录配置

部署hadoop集群,都需要配置SSH免密码登陆,为什么要设置SSH免密码登录,其原因是我们在开启hadoop的时候需要多次输入yes和root密码,这是我们所不能忍受的,我们迫切需要实现免登录的功能。这里以三个节点node0,node1,node2为例配... 查看详情

ssh配置无密码登录,免密钥登录

前提,机器A,B,均为RedHatLinux操作系统,均有用户user1、以用户名user登录,在A机器上执行ssh-keygen-trsa一路回车,不需要输入密码执行该操作将在/home/user/.ssh下生成id_rsa,id_rsa.pub文件,其中id_rsa.pub是公钥。2、在B机器上做步骤1或... 查看详情

ssh配置免密码登录

...管理,一般都是用ssh进行连接,为了防止密码外泄,可以配置下ssh的免密码登录。首先服务器两台:A:43.224.34.*B:104.238.161.*配置的结果是B机器可以免密码登录到A服务器。首先在B服务器上生成本机的公私密钥:ssh-keygen-trsa-P‘... 查看详情

centos6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen命令常用参数

...钥);2、放置公钥到服务器~/.ssh/authorized_key文件中;3、配置ssh客户端使用密钥登录。--------------------- 查看详情

centos配置ssh免密登录

...远程连接102可以通过ssh命令来实现ssh192.168.199.102如果没有配置免密登录的话每次登录到102这台服务器都要输入密码1、在本地机器(192.168.199.101)生成私钥和公钥cd~/.ssh/#若没有该目录,请先执行一次sshlocalhostssh-keygen- 查看详情

ssh免密码登录机器(使用公钥和秘钥进行加密来实现)

...钥对,下面我以CentOS为例。登录的原理:   有机器A(192.168.1.155),B(192.168.1.181)。现想A通过ssh免密码登录到B。首先以root账户登陆为例。1.首先我们需要在A机器上生成一对公钥和密钥对,生成的方法如下:1[[email prot 查看详情

ssh免密码登录

...以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例。有机器A(192.168.1.155),B(192.168.1.181)。现想A通过ssh免密码登录到B。 1.在A机下生成公钥/私钥对。[[email protected] ~]$ ssh-keygen -t rsa&n 查看详情

ssh免密码登录配置

1.生成pub.key:在.ssh目录下运行命令ssh-keygen-trsa按三个回车,密码为空2.如果希望ssh公钥生效需满足至少下面两个条件: 可手动创建authorized_keys文件,然后把需要登录的pub.key加入其中1).ssh目录的权限必须是700 2).ssh/authorized_k... 查看详情

centos7配置ssh免密码登陆

我只有一台机器,是因为要配置hadoop分布式环境用,需要配置ssh两个用户:  zhangxs,  root首先在切换到zhangxs用户下执行【 ssh-keygen-trsa】[[email protected]Desktop]$ssh-keygen-trsaGeneratingpublic/privatersakeypair.Enterfileinwhichtosave 查看详情

centos配置ssh免密码登录后,仍提示输入密码------[接-(准备完全分布式主机的ssh)]

CentOS配置SSH免密码登录后,仍提示输入密码------[接-(准备完全分布式主机的ssh)]CentOS配置SSH无密码登录需要3步:生成公钥和私钥导入公钥到认证文件,更改权限测试1.生成公钥和私钥ssh-keygen-tdsa-P‘‘-f~/.ssh/id_dsa默认在~/.ssh目录生成... 查看详情

如何在centos/rhel上设置ssh免密码登录

...会告诉你怎样在CentOS/RHEL上设置SSH免密码登录。自动登录配置好以后,你可以通过它使用SSH(SecureShell)和安全复制(SCP)来移动文件。SSH是开源的,是用于远程登录的最为可靠的网络协议。系统管理员用它来执行命令,以及通... 查看详情