目录
1.启动虚拟机,进入root权限(我这里是Red Hat9.0)编辑
什么是SSH?
SSH为Secure Shell(安全外壳协议)的缩写,简单说,SSH只是一种网络协议,用于计算机之间的加密登录。
很多ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人很容易就可以截获这些口令和数据。而SSH就是专为远程登录会话和其他网络服务,提供安全性协议
SSH由“客户端”和“服务端”的软件组成的
服务端是一个守护进程(sshd),它在后台运行并响应,来自客户端的连接请求。
客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
注意:谁被连接,就把谁看成服务端
我们这里是用我们电脑主机的MobaXterm免密远程连接我们安装的虚拟机,所以我们电脑主机端是客户端,虚拟机是服务端
SSH认证机制
从客户端来看,SSH提供两种级别的安全验证。
1.基于口令的安全验证
只要你知道对方帐号和口令(密码),就可以登录到远程主机。但是搭建集群的时候,需要进行多台虚拟机之间的传输,假如每次都要输入口令(密码),显得很麻烦。
2.基于秘钥的安全验证
为什么要用免密登录
配置免密后,执行ssh或者scp时不需要输密码,方便快捷。 这点不是必要的原因。 安装集群完成后,通常在master侧执行start-all.sh脚本来启动整个集群,脚本会ssh到各个slave来执行启动命令。 如果没有配置免密,那么启停集群时要手动输入很多密码,这是致命的。
免密登录原理
免密登录原理通过RSA公开密钥算法的一种应用。RSA是公开密钥密码体制的一种使用不同的加密密钥与解密密钥,“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制(非对称加密) 。在公开密钥密码体制中,加密密钥(即公开密钥)PK是公开信息,而解密密钥(即秘密密钥)SK是需要保密的。加密算法E和解密算法D也都是公开的。虽然解密密钥SK是由公开密钥PK决定的。
通俗的来说就是同时生成公钥和私钥,私钥己保存,公钥发给其他人
开始实操:
生成MobaXterm密钥:
1.启动虚拟机,进入root权限(我这里是Red Hat9.0)![](https://img-blog.csdnimg.cn/direct/de4c52cb089543b6896025b1749d8e5d.png)
2.进入MobaXterm,生成密钥
打开左上角的tools,可以看到下面有一个MobakeyGen(SSH key generator),这就是我们密钥的出处
打开之后界面是这样的,点击下面Actions中的Generate,这样他就可以开始生成密钥了
"该过程左右滑动鼠标可以加快生成速度"
这里我们已经成功的将密钥弄出来了
3.创建文件夹
在桌面创建一个文件夹,Linux(文件夹命名可随意设置设置)
鼠标右击,点击新建,建一个文件夹
公钥
点击Save public key(保存),保存此部分为公钥,命名为key.pub
私钥
点击该选项,导出私钥到该文件夹下,命名为key.pri
该过程会再次询问你,选择是
选择刚刚的key.pub文件,复制直接粘贴,得到key.pub-副本
按F2重命名该副本文件为authorized_keys
进入虚拟机,点击进入./.ssh/目录里面,点击该图标上传文件
选择该文本,保存
修改权限,删除用户组的写权限
进入虚拟机,进入root目录下,修改权限,删除用户组的写权限
chmod 700 ./.ssh