ssh免密码登录、secureCRT免密码登录详解

再放一张真机实现图:

接下来就详细讲述实现细节。
实现过程中吃了不少苦头,这个不对,那个不通。好在慢慢一点点摸索出来了,经验分享在这里。
希望能终结网上ssh免密码登录,以及SecureCRT免密码登录的问题。如有错误,欢迎指出!转载请注明出处,谢谢!
首先,明确一个目的:各主机之间免密码登录、CRT免密登录其他主机。直接输入ssh 主机名,就能直接登录到指定的主机上。为什么上述没有实现Master与其他主机间的免密码登录?是为了跟免密登录作一个对比。好,闲言少叙,先看第一个话题,各主机间的免密登录。
准备工作:
使得各主机之间可以将IP地址解析为主机名。本文所配置的严格按照上述图片所配置。一定根据需要自己改动。由于我最初的目的是搭建Hadoop集群,需要3个节点,一个master,两个slave。所有这里三台主机名就为master、slave1、slave2。
为了方便,三台主机都创建了一个Hadoop用户。
创建Hadoop用户
root用户下,centos7切换用户的命令是su。
useradd Hadoop
passwd Hadoop
输入两次密码:
123456
123456
配置主机名
root用户下
vi /etc/hostname
将原来的主机名删除,分别换成master、slave1、slave2
配置hosts文件
root用户下
vi /etc/hosts
每台主机的hosts信息下都写上
192.168.84.130 master
192.168.84.131 slave1
192.168.84.132 slave2
至此,准备工作完成!
slave1与slave2的免密码登录
当准备工作完成后,做一下两个检查。(非必须)
1.关闭防火墙。
2.开启ssh服务。
1.关闭防火墙。
CentOS7下关于防火墙的命令可能跟以前版本略有不同。
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
当显示notrunning时,即关闭成功!
2.开启ssh服务。
systemctl start sshd.service #开启ssh服务
sytemctl enable sshd.service #ssh服务随开机启动,还有个disabled
systemctl status sshd.service #查看ssh服务的状态
#systemctl restart sshd.service
当现实Active:active(running)时,ssh服务开启成功。
完成这两个检查后,接着进行下一步工作。
在slave1上生成密钥对
切换到Hadoop用户下,cd 到家目录。
~$ssh-keygen -t rsa -P “”
此时就在/home/Hadoop/.ssh 下生成了一对密钥对。
id_rsa、id_rsa.pub。分别是本机的私钥和公钥。
再把公钥增加到认证的密钥环中。
cd 到.ssh目录
$cat id_rsa.pub >> authorized_keys
注:(1)这里的.ssh文件夹是隐藏的。直接cd .ssh即可。
也可以用ls -a 查看隐藏的文件夹以及文件。
(2)这里authorized_keys 这个名字最好就这么命名,因为配置文件中默认是这个。
修改ssh配置文件
切换到root用户
vi /etc/ssh/sshd_config#修改之前可以先做一下备份。
#cp /etc/ssh/sshd_config /home/Hadoop/backup/#这里路径自己选择
找到下面5项
PermitRootLogin yes
UsePAM yes
PasswordAuthentication yes
Authentication yes
PubkeyAuthentication yes
这5项如果前面有#号注释,首先去掉注释。
接着,前三项的yes全部修改为no,后面两项的不变。修改完后的5项应该为
PermitRootLogin no
UsePAM no
PasswordAuthentication no
Authentication yes
PubkeyAuthentication yes
保存!
接着
重启ssh服务
systemctl restart sshd.service。
同理,在slave2上做相同的操作。即生成密钥对以及修改ssh配置文件。(现在是笨方法,熟悉操作步骤,熟练了之后,可以直接复制修改过的文件。)
接下来(重要):
把slave1中authorized_keys 文件内容复制到slave2中的authorized_keys中。
保险的方法是先将slave1中的authorized_keys复制到slave2中的其他文件夹中,如Downloads文件夹。之后再添加,下面就是这么做的。
scp authorized_keys Hadoop@slave2:/home/Hadoop/Downloads/
这句句命令的解释scp authorized_keys Hadoop@slave2:/home/Hadoop/Downloads/
是将salve1中的authorized_keys 文件复制到slave2中的/home/Hadoop/Downloads/文件夹。
scp 是本地与远程主机间的复制命令
authorized_keys 是本地文件
Hadoop@slave2:/home/Hadoop/Downloads/ 用户名@主机名:路径
附:scp还可以带参数。(自行查找)
切换到主机slave2中:
cd ~/.ssh
cat ~/Downloads/authorized_keys authorized_keys
第一句命令是切换到.ssh 目录
第二句是将~/Downloads 目录下的Authorize_keys文件中的内容,追加到本目录下authorized_keys文件中。
此时,slave2的authorized_keys就同时有了salve2的公钥和slave1的公钥。
将slave2中的authorized_keys以同样的方式复制到salve1中,这是就不用考虑覆盖的问题了。
scp authorized_keys Hadoop@slave1:/home/Hadoop/.ssh/
至此,slave1与slave2能够互相免密码登录。
在slave1上,切换到Hadoop用户下,直接输入ssh slave2.即可登录到slave2中。同理slave2也以相同方式可以登录到slave1中。
如果出现问题,修改.ssh以及authorized_keys 的权限。
chmod 700 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
具体见另一片博文:
链接:http://www.cnblogs.com/xubing-613/p/6844564.html
ssh免密码登录Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 的解决方案!
接下来是如何配置secureCRT的免密码登录这两台主机。先去吃饭,留着晚上或者明天更新!
如有错误,欢迎指出,不胜感激!
ssh免密码登录、secureCRT免密码登录详解的更多相关文章
- PHP cURL应用实现模拟登录与采集使用方法详解
对于做过数据采集的人来说,cURL一定不会陌生.虽然在PHP中有file_get_contents函数可以获取远程链接的数据,但是它的可控制性太差了,对于各种复杂情况的采集情景,file_get_co ...
- PHP cURL实现模拟登录与采集使用方法详解教程
来源:http://www.zjmainstay.cn/php-curl 本文将通过案例,整合浏览器工具与PHP程序,教你如何让数据 唾手可得 . 对于做过数据采集的人来说,cURL一定不会陌生.虽然 ...
- 栅栏密码(The Rail-Fence Cipher)详解
最近训练CTF的时候,发现密码学这块的知识不太系统,所以自己接下来会陆陆续续整理出来 今天学习了栅栏密码,BugkuCTF里面的一道叫做"聪明的小羊"的题就与栅栏密码相关 特点 栅 ...
- 三层登录实例VB.NET版详解---理论加实战篇
层,百度百科这样解释,首先-重叠起来的东西:重叠起来的东西中的一部分:层次|表层|大气层.其次-重叠:重复:层峦叠嶂|层出不穷.最后-量词,用于可以分出层次的事物,女孩儿强烈的第六感,三层中的层一定是 ...
- spring boot 下 spring security 自定义登录配置与form-login属性详解
package zhet.sprintBoot; import org.springframework.beans.factory.annotation.Autowired;import org.sp ...
- ubuntu16.04里如何正确添加用root用户来登录图形界面(图文详解)
不多说,直接上干货! Ubuntu版本都默认不允许使用root登录,必须要改配置文件. 第一步: 首先设置root密码,利用现有管理员帐户登陆Ubuntu,在终端执行命令:sudo passwd ro ...
- Linux单用户模式(修改密码、运行级别)方法详解
很多新手当面对"忘记 root 账户密码导致无法登陆系统"这个问题时,直接选择重新系统.其实大可不必,我只需要进入 emergency mode(单用户模式)更新 root 账户的 ...
- 这篇文章主要为大家详细介绍了jQuery密码强度验证控件使用详解的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了jQuery密码强度验证控件,供大家参考,具体内容如下 <html> <head> <meta http-equiv="Cont ...
- Mac下面的SecureCRT以及破解方案详解
今天安装SecureCRT时遇到了一些问题,解决后便想分享给大家.本人还是在校大学生,如果有说得不好的地方请多多指教. 第一步:下载:https://macabc.com/detail.htm?app ...
- SSH整合jar包分享及登陆实例详解
相关jar包分享:struts2+hibernate3+spring3 以及aop ,mysql,以及整合必须包. 链接:https://pan.baidu.com/s/1nCHmSsKU0hiV8D ...
随机推荐
- javascript原型继承中的两种方法对比
在实际的项目中,我们通常都是用构造函数来创建一个对象,再将一些常用的方法添加到其原型对象上.最后要么直接实例化该对象,要么将它作为父类,再申明一个对象,继承该父类. 而在继承的时候有两种常用方式,今天 ...
- leetcode896
class Solution { public: bool isMonotonic(vector<int>& A) { ) { return true; } bool GetDif ...
- Full Binary Tree(sdut 2882)
Problem Description: In computer science, a binary tree is a tree data structure in which each node ...
- Android 模拟MotionEvent事件 触发输入法
Android 模拟MotionEvent事件 触发输入法 android输入法layoutbutton文本编辑encoding 关键词:MotionEvent,模拟按键,模拟点击事件,主动弹出输 ...
- Redis搭建(四):Sharding集群模式
一. 方案 1. 介绍redis集群分为服务端集群(Cluster)和客户端分片(Sharding)服务端集群:redis3.0以上版本实现,使用哈希槽,计算key的CRC16结果再模16834.此处 ...
- AJAX省市县三级联动的实现
省市县数据 本例子中省市县数据保存在MySQL数据库中,部分数据截图如下: 从数据库中读取数据 导入需要的jar包 连接池配置文件 <c3p0-config> <!-- 默认配置,如 ...
- IDEA02 利用Maven创建Web项目、为Web应用添加Spring框架支持、bean的创建于获取、利用注解配置Bean、自动装配Bean、MVC配置
1 环境版本说明 Jdk : 1.8 Maven : 3.5 IDEA : 专业版 2017.2 2 环境准备 2.1 Maven安装及其配置 2.2 Tomcat安装及其配置 3 详细步骤 3.1 ...
- the install of mysql in Linux System
一.下载MySql 浏览器打开 https://www.mysql.com/downloads/mysql/#downloads 下载 我下载的版本是Red Hat 5 版本的 https://www ...
- ShopNc实例化对象
1.模型 $model_member = Model('member'); 2.接口 require_once BASE_ROOT_PATH.'/member/api/smiMember/action ...
- WIN XP蓝屏代码大全
转自:廊坊师范学院信息技术提高班---韩正阳 http://blog.csdn.net/jiudihanbing WIN XP蓝屏代码大全WIN XP蓝屏代码大全一.蓝屏含义 1.故障检查信息 *** ...