<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

本文涉及的产品
转发路由器TR,750小时连接 100GB跨地域
简介: 1, 实现无密码公钥认证的目的是为了使Slave无密码链接(DATa Node | Tasktracker)服务器达成共识:2, 检查是否安装ssh和rsync服务(一般情况下是有的,若没有的话,可通过 命令【yu...

1, 实现无密码公钥认证的目的是为了使Slave无密码链接(DATa Node | Tasktracker)服务器达成共识:


2, 检查是否安装ssh和rsync服务(一般情况下是有的,若没有的话,可通过 命令【yum install ssh 】安装ssh协议,命令【yum install rsync】 rsync:远程数据同步工具,可以通过LAN/WAN  快速同步多台 主机间同步多台主机间的文件.命令【service sshd restart】启动服务)

 命令【rpm -qa | grep  openssh

 显示如下:

openssh -clients-5.3p1-20.e16.i686

openssh-server-5.3p1-20.e16.i686

openssh-5.3p1-20.e16.i686


命令【rpm -qa | grep rsync】

rsync-3.0.6-5.e16.i686

3,SSH无密码登录的原理

 MasterNameNode |JobTracker)作为客户端,要实现无密码公钥认证,连接到服务器 SalveDataNode | Tasktracker)上时,需要在 Master 上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到所有的 Slave 上。当 Master 通过 SSH 连接 Salve 时,Salve 就会生成一个随机数并用 Master 的公钥对随机数进行加密,并发送给 MasterMaster 收到加密数之后再用私钥解密,并将解密数回传给 SlaveSlave 确认解密数无误之后就允许 Master 进行连接了。这就是个公钥认证过程,其间不需要用户手工输入密码。重要过程是将客户端 Master 复制到 Slave 上。

4,在master上执行(过程中一直回车即可)

命令:【ssh-keygen -t rsa】

Generating public/private rsa key pair.
Enter file in which to save the key (/home/haifeng/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/haifeng/.ssh/id_rsa.
Your public key has been saved in /home/haifeng/.ssh/id_rsa.pub.
The key fingerprint is:
7b:75:98:eb:fd:13:ce:0f:c4:cf:2c:65:cc:73:70:53 haifeng@haifeng-EX38-DS4
The key's randomart image is:
+--[ RSA 2048]----+
|                E|
|                .|
|              ...|
|             + =.|
|        S   + +.*|
|         . . + Bo|
|        . . . = =|
|         . . . * |
|            . ..=|
+-----------------+



4,查询是否产生的ssh文件

命令【ll -a | grep .ssh】

drwx-------. 2 root root 4069 5月 30 14:45 .ssh



5 查看钥匙

命令【 ls ~/.ssh/

-rw--------. 1 root root 4069 5月 30 14:45 .id_rsa

-rw-r--r--.  1 root root 4069 5月 30 14:45 .id_rsa.pub


6,把自己的公钥放在authorized_keys ,(注意其命令的 >>前为 本机的公钥的位置)

命令【cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys】

7,查询

命令【ll】

显示


-rw-rw-r---. 2 root root 4069 5月 30 14:50 authorized_keys

-rw--------. 1 root root 4069 5月 30 14:45 .id_rsa

-rw-r--r--.  1 root root 4069 5月 30 14:45 .id_rsa.pub

8,更改authorized)keys的权限

命令【 chmod 77 authorized_keys】

 再次查询

命令【ll】


-rw-rw-rw--. 2 root root 4069 5月 30 14:50 authorized_keys

-rw--------. 1 root root 4069 5月 30 14:45 .id_rsa

-rw-r--r--.  1 root root 4069 5月 30 14:45 .id_rsa.pub

-rw-r--r--.  1 root root 4069 5月 30 14:45 .known_hosts


9,检查并更改ssh的配置,检查以下的三行是否是yes的启动状态

RSAAuthentication yes #启动RSA认证

PukeyAuthentication yes #启动公钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径

10,直接使用root用户进行检查是否可以无密码登录本地

命令【ssh localhost】


11。 把主机点的公钥复制至所有节点的机器上。

  命令格式:【scp ~/.ssh/id_rsa.pub】:远程用户名@172.21.3.73:~/

 

12.在节点的机器上分别执行在在主机上执行的2-10的步骤

 并把节点产生的节点一个一个的加入主机节点的Authorized_keys


13,在节点上执行

命令【cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys


15,所有节点配置完成。开始检查(不要忘记检查防火墙的状态

命令【ssh  主机名(或ip)】

不用使用密码登录即ssh配置成功。

16,吃饭了!!!!!!!



目录
相关文章
|
SQL Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
在运行一个group by的sql时,抛出以下错误信息: Task with the most failures(4):  -----Task ID:  task_201411191723_723592_m_000004URL:  http://DDS0204.
977 0
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
异步通信 对于BS(Browser-Server 浏览器)架构,很多情景下server的处理时间较长。 如果浏览器发送请求后,保持跟server的连接,等待server响应,那么一方面会对用户的体验有负面影响; 另一方面,很有可能会由于超时,提示用户服务请求失败。
771 0
|
Web App开发 监控 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Hbase依赖的datanode日志中如果出现如下报错信息:DataXceiverjava.io.EOFException: INFO org.apache.hadoop.hdfs.server.datanode.DataNode: Exception in receiveBlock for block  解决办法:Hbase侧配置的dfs.socket.timeout值过小,与DataNode侧配置的 dfs.socket.timeout的配置不一致,将hbase和datanode的该配置调成大并一致。
802 0
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Every Programmer Should Know These Latency Numbers 1秒=1000毫秒(ms) 1秒=1,000,000 微秒(μs) 1秒=1,000,000,000 纳秒(ns) 1秒=1,000,000,000,000 皮秒(ps) L1 cache reference .
649 0
|
Web App开发 前端开发 Java
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
java链接MongoDB处理大量数据时经常碰到cursor not found 的异常,其实是超时所致 Exception in thread "main" com.
832 0
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
zookeeper watch的定义如下:watch事件是一次性触发器,当watch监视的数据发生变化时,通知设置了该watch的client,即watcher。
941 0
|
Web App开发 存储 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
1.HBase依赖于HDFS,HBase按照列族将数据存储在不同的hdfs文件中;MongoDB直接存储在本地磁盘中,MongoDB不分列,整个文档都存储在一个(或者说一组)文件中 (存储) 2.
735 0
|
Web App开发 监控 前端开发
|
Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
从hadoop移除机器把需要移除的机器增加到exclueds文件中,强制刷新datanode列表,等待decommission 状态正常后,即可停机下架,如有必要在namenode执行balancer操作。
686 0
|
Web App开发 前端开发 Linux
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
 频繁的文件访问会导致系统的Cache使用量大增   $ free -m   total used free shared buffers cached   Mem: 3955 3926 28 0 55 3459   -...
650 0