环境说明:
打在ubuntu系统的两台计算机master和slave1
两台计算机均已安装ssh服务
两台机器上都存在用户xuyizhen
下面开始配置:
在master节点上执行以下命令:
这条命令是生成密钥对,询问其保存路径时直接回车采用默认路径。生成的密钥对:id_rsa和id_rsa.pub,默认存储在"/home/xuyizhen/.ssh"目录下。
接着在master节点上做如下命令,把id_rsa.pub追加到授权的key里面去。
修改文件"authorized_keys" 权限:
用root用户登录服务器修改文件"/etc/ssh/sshd_config"的下列内容:
将下列内容所在行的前面的#去掉
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径
设置完之后记得重启SSH服务,才能使刚才设置有效。
(/etc/init.d文件夹下放置系统的服务,ssh是一种服务)
退出root登录,使用xuyizhen普通用户验证是否成功。
从上图中得知无密码登录本级已经设置完毕.
接下来的事儿是把master公钥复制给slave1。使用下面的命令格式复制公钥:
(192.168.0.22是slave1的地址)
在slave1机器上创建.ssh文件夹,然后修改文件夹".ssh"的用户权限,
到目前为止,在slave1机器上,关于master的公钥也有了,文件夹".ssh"也有了,且权限也修改了。
下一步就是把master的公钥追加到slave1的授权文件"authorized_keys"中去。
使用下面命令进行追加并修改"authorized_keys"文件权限:
4)用root用户修改xuyizhen3computer节点的"/etc/ssh/sshd_config"
记得重启ssh服务
最后记得把"/home/xuyizhen/"目录下的"id_rsa.pub"文件删除掉。
到此为止,我们经过前5步已经实现了从master到slave1的无密码登录.(由于我们的配置工作是针对xuyizhen用户的,所以只有xuyizhen用户能实现无密码登陆,如果想实现其他用户如root用户的无密码登陆,只需要在其他用户下操作上述过程即可)
以上是配置两台计算机之间的无密码登陆,假设现在要配置3台机器之间的无密码登陆,以ABC为例,那么就得依次生成密钥对,再通知其他机器。
A生成密钥对,A配置完毕后,将公钥给BC,再分别到BC上配置,这实现A到BC的无密码登陆。
B生成密钥对,B配置完毕后,将公钥给AC,再分别到AC上配置,这实现B到AC的无密码登陆。
C生成密钥对,C配置完毕后,将公钥给AB,再分别到AB上配置,这实现C到AB的无密码登陆。
至此,才实现了ABC之间的无密码登陆。
好了,至此配置应该没有什么问题了,下面我们来说原理:
以A,B为例,以前从A登陆B,总是需要密码验证,很繁琐。那么我可以不可以使用密码登陆一次之后,就让B记住当前登陆的就是A,我们想到密钥对了,在A上生成密钥对,然后将A的公钥传给B,这样以后B就可以通过验证是否与A的公钥匹配来判断当前登陆的的是否是A了。
关于ssh协议,请看http://blog.csdn.net/macrossdzh/article/details/5691924
<!--EndFragment-->
相关推荐
### Ubuntu设置root密码 在Ubuntu系统中,为了增强安全性,默认情况下root账户是被锁定的,也就是说,用户不能直接登录作为root用户来进行系统管理操作。不过,有时候我们需要使用root权限来进行某些高级配置或管理...
在“VNC自动安装 默认无密码”的场景下,我们将探讨如何自动化安装VNC服务器,并设置默认情况下无需密码即可进行连接。 首先,VNC服务器软件是实现远程控制的关键,这里提到的是版本6.7.2。这个版本可能适用于多种...
3. **实现跨主机无密码登录**:要从主机A无密码登录到主机B,需将A的`id_rsa.pub`复制到B的`~/.ssh`目录下,并将其内容追加到B的`~/.ssh/authorized_keys`。示例操作如下: ```bash scp ~/.ssh/id_rsa.pub user@b_...
### Ubuntu 18.0.4 安装 MySQL 并设置 ROOT 用户密码 #### 安装 MySQL 在 Ubuntu 18.0.4 上安装 MySQL 首先需要更新系统包列表,然后安装 MySQL 服务器。 1. **更新系统包列表**: ```bash sudo apt-get update...
### Ubuntu下安装rsh实现无密码访问详解 #### 一、环境配置 为了实现Ubuntu系统下的无密码远程访问,我们首先需要确保实验环境已经搭建好。本案例中使用了三台Ubuntu 14.04服务器,分别命名为compute、block1和...
Linux 开发板启动需要登录密码设置方法 Linux 开发板在启动时需要设置登录密码,以确保系统的安全性。在编译 BusyBox 时,只需要选择相关的选项,就可以支持用户密码登录。下面将详细介绍设置登录密码的步骤。 ...
在Ubuntu系统中,自动登录功能可以让用户免去每次启动时输入用户名和密码的步骤,这对于个人使用或特定环境下的自动化需求极为有用。同时,配置虚拟机的自启动则能确保在主机启动时,虚拟机也能够自动运行,这对于...
标题“如何开启Ubuntu SSH远程登录”涉及到的是在Ubuntu操作系统中启用Secure Shell (SSH)服务,以便进行远程登录和管理。SSH是一种加密网络协议,用于在不安全的网络上安全地执行命令行操作。以下是关于这一主题的...
### Ubuntu安装Hadoop实现MapReduce里的WordCount #### 核心知识点概述 1. **Ubuntu环境下的基础配置**:包括VMware Tools的安装、JDK的安装与配置。 2. **Hadoop的安装与配置**:包括下载与解压、环境变量配置、...
在 Ubuntu 14.04 中,默认情况下 root 帐号是禁用的,这是为了安全考虑。但是在某些情况下,我们需要使用 root 帐号来进行系统管理和维护。下面我们将介绍如何启用 root 帐号、如何在终端模式下切换到 root 身份,...
Ubuntu root登录设置 Ubuntu root登录设置是指在 Ubuntu 操作系统中设置 root 账户的登录权限,以便在图形界面中直接登录 root 账户。下面将详细介绍 Ubuntu root 登录设置的相关知识点。 一、root 账户的重要性 ...
SSH 远程秘钥登录可以实现无密码登录的功能。下面将介绍如何在 Ubuntu 系统中设置 SSH 远程秘钥登录。 首先,需要在 `/home/test` 目录下创建一个名为 `.ssh` 的文件夹: `mkdir /home/test/.ssh` 然后,需要在 `...
如果想要实现自动登录,可以在“安全”选项页中勾选“启用自动登录”,然后选择要自动登录的用户。 五、SSH 登录远程服务器 如果远程服务器只允许 root 用户 SSH 到服务器时,在 Ubuntu 下,需要“su 到 root”...
Ubuntu默认是每次登录都是要输入用户名和密码的,这是基于安全方面的考虑,不过对于桌面版,大家都习惯自己的电脑能自动登录,类似Windows XP系统那样,通过一些设置可以实现Ubuntu自动登录。 七、开机自动运行程序...
默认情况下,Ubuntu不允许root用户直接登录图形界面,但可以通过简单的配置实现这一功能。具体步骤如下: 1. 打开终端。 2. 使用 `sudo gedit /etc/gdm3/custom.conf` 或 `sudo nano /etc/gdm3/custom.conf` 命令...
### VNC实现Windows远程访问Ubuntu自带桌面 #### 一、背景与目的 随着远程工作的日益普及,越来越多的人需要从不同的操作系统之间进行远程访问。本文旨在介绍如何利用VNC技术实现从Windows系统远程访问Ubuntu ...
这时可以使用SSH密钥对实现无密码登录: 1. **生成密钥对**:使用`ssh-keygen`命令生成公钥和私钥,通常默认为RSA类型的密钥对: ```bash ssh-keygen ``` 你可以选择为私钥设置一个口令(passphrase),增加...
在论坛上,也有人抱怨,家中的 Ubuntu 不能像 Window$ 那样 ─ ─不用输入密码就能登录。其实,这也可以实现。在“安全”选项页中,勾选“启用自动登录”,选择用户(例如“me”),这样就可以实现自动登录。然而,...
本教程将详细介绍如何在Ubuntu上安装和配置Vncserver,以便实现图形化访问。 首先,我们需要理解VNC的工作原理。VNC基于RFB协议,它创建了一个可以在网络上共享的虚拟桌面。Vncserver是这个服务的实现之一,它在...