Linux无密登陆
2016-01-09 20:08
295 查看
基本原理
通过加密解密的认证过程,获取远程机的信任,远程机相信你是安全的之后,就会让你不输入密码就登陆了.认证过程
本机生成公钥和私钥,将公钥交给远程机.本机开始登陆远程机,远程机检测到登陆请求.
远程机随机生成一个字符串,并利用本机的公钥加密,将加密的结果返回给本机.
本机获取加密结果,利用私钥解密,并将解密结果发送给远程机.
远程机对比本机解密结果,如果发现答对了.则允许登陆,否则拒绝.
公钥与私钥
公钥: 公开发放,谁都可以获取.私钥: 仅有一份,私有存储.
公钥加密只有私钥可以解密,私钥加密只有公钥可以解密.
上例中,如果是有害机器是解密不了远程机的加密密文的.因此远程机就可以判断当前请求登陆的机器是否是安全的.
Linux系统操作实例操作
假如有两台机器主机名是NameNode与DataNode.现在NameNode想登陆DataNode.两台机器上都有用户hadoop,用户目录(/home/hadoop)
NameNode主机上执行命令: ssh-keygen -t rsa
执行上述命令后,NameNode主机/home/hadoop/.ssh下至少有两个文件.
id_rsa 私钥,不能外泄
id_rsa.pub 公钥,随意放.等下把这个交给远程机器
登陆DataNode主机,将公钥追加到/home/hadoop/.ssh/authorized_keys 中.
.ssh文件夹权限必须700, authorized_keys 文件权限必须600
更改文件权限 : chmod 600 authorized_keys
追加公钥到文件中 : cat id_rsa.pub >> authorized_keys
远程操作完毕.在NameNode主机上可以试试可不可以无密登陆了.
相关文章推荐
- Linux简单的开始结束重启脚本
- How to set JAVA environment variables in Linux or CentOS
- linux AIO (异步IO) 那点事儿
- linux下异步RPC的阶段性总结-非阻塞SOCKET客户端
- Linux下socket异步通讯聊天程序
- linux c socket之异步IO
- Linux下openoffice+swftools安装教程
- Linux错误代码含义/Linux return Error Code
- Linux printk and log level
- linux设备驱动makefile入门解析
- 2016年关于 Linux 发展趋势的八大预测
- Linux Core dump
- Linux学习之查看是否安装软件
- su sudo gksudo-转
- Linux调试 call trace dump_stuck
- linux中终端复用工具screen的介绍
- 搭建linux上的Eclipse+PHP编程环境
- linux定时执行任务
- CentOS 7 静态IP配置
- aliyun Centos7安装vsftpd服务