在配置nutch的时候,我是采用三台服务器来实现的,现在详细讲述一下如何配置在ssh时不用密码来登录,这个也是配置nutch运行起来的前提。
现在linux1是主节点,它需要主动发起SSH连接到linux2和linux3,对于SSH服务来说,linux1就是SSH客户端,而linux2、linux3则是SSH服务端,因此在linux2,linux3上需要确定sshd服务已经启动。简单的说,在linux1上需要生成一个密钥对,即一个私钥,一个公钥。将公钥拷贝到linux2,linux3上,这样,比如当linux1向linux2发起ssh连接的时候,linux2上就会生成一个随机数并用linux1的公钥对这个随机数进行加密,并发送给linux1;linux1收到这个加密的数以后用私钥进行解密,并将解密后的数发送回linux2,linux2确认解密的数无误后就允许linux1进行连接了,这样就完成了一次公钥认证过程。
首先,在三台机器上同时加上nutch用户:
[root@linux1/2/3 nutch]# useradd nutch -d /nutch/home -g users
对于本文中的三台机器,在linux1上生成密钥对:
[nutch@linux1:~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/nutch/home/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /nutch/home/.ssh/id_rsa.
Your public key has been saved in /nutch/home/.ssh/id_rsa.pub.
The key fingerprint is:
40:b8:e9:8f:0a:f6:ce:e0:73:a8:6a:7e:52:b4:45:ca nutch@linux1
这个命令将为linux1上的用户nutch生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphrase的时候,直接回车,也就是将其设定为空密码。生成的密钥对id_rsa,id_rsa.pub,默认存储在/nutch/home/.ssh目录下。然后将id_rsa.pub的内容复制到每个机器(也包括本机)的/nutch/home/.ssh/authorized_keys文件中,如果机器上已经有authorized_keys这个文件了,就在文件末尾加上id_rsa.pub中的内容,如果没有authorized_keys这个文件,直接cp或者scp就好了,下面的操作假设各个机器上都没有authorized_keys文件。
对于linux1
[nutch@linux1:.ssh]$ cp id_rsa.pub authorized_keys
对于linux2和linux3
[nutch@linux2:~]$ mkdir .ssh
对于linux1
[nutch@linux1:.ssh]$ scp authorized_keys linux2:/nutch/home/.ssh/
此处的scp就是通过ssh进行远程copy,此处需要输入远程主机的密码,即linux2机器上nutch帐户的密码
[nutch@linux2:.ssh]$ chmod 644 authorized_keys
这一步非常关键,必须保证authorized_keys只对其所有者有读写权限,其他人不允许有写的权限,否则SSH是不会工作的
[nutch@linux2:.ssh] ls –la
drwxr-xr-x 2 nutch users 4096 11月 5 13:31 .
drwx------ 3 nutch users 4096 11月 5 13:27 ..
-rw-r--r-- 1 nutch users 222 11月 5 13:31 authorized_keys
注意每个机器上的.ssh目录的ls -la都应该和上面是一样的
测试一下:
[nutch@linux1 .ssh]$ ssh linux3
[nutch@linux3 ~]$
很爽啊,不用再输入烦人的密码了
Nutch十八掌,打完收工!
分享到:
相关推荐
关于SSH免密配置,这是实现服务器之间远程无密码登录的关键步骤。配置过程中,需要在每台服务器上生成一对密钥对,并将公钥复制到所有参与免密登录的服务器的授权文件中。具体操作包括使用ssh-keygen命令生成密钥对...
Linux服务器SSH访问工具,主要指的是SecureCRT,这是一个广泛使用的终端模拟器软件,尤其在IT行业中,对于远程管理和控制Linux服务器,SSH(Secure Shell)是一种安全的网络协议,它提供了加密的网络通信,确保数据...
### Linux配置SSH免密码登录详解 #### 一、引言 在进行分布式系统如Hadoop集群的搭建过程中,为了提高效率并确保数据的安全性,通常需要实现节点间的免密码登录。这种方式通过使用SSH (Secure Shell) 的公钥/私钥...
在日常运维工作中,经常需要在多台Linux服务器之间进行频繁的登录操作。为了提高效率并减少输入密码的繁琐步骤,可以通过配置SSH免密登录的方式来实现这一需求。本文将详细介绍如何在两台Linux机器之间设置SSH免密码...
标题中的“登录Linux服务器ssh软件”指的是使用SSH协议的客户端应用程序,允许用户从本地计算机连接到远程Linux服务器。这些客户端软件通常在Windows等非Linux操作系统上使用,因为这些系统原生并不包含SSH客户端。 ...
通过 SSH 连接到 Linux 服务器,可以像控制自己的机器一样控制远程服务器。下面是 SSH 登陆 LINUX 服务器命令的详细知识点: 一、基本命令 * ssh [hostname] -u user:连接到远程 Linux 服务器,输入用户名和密码...
本文档介绍如何配置 SSH 服务以使用证书登录 Linux 服务器,包括生成私钥、公钥、配置 SSH 服务器、authorized_keys 文件的设置、PuTTY 生成密钥对、Linux 和 Windows 下的 SSH 客户端配置等方面的内容。 一、生成...
RSA密钥对在Linux系统中的制作和配置用于SSH客户端或服务器免密码访问的知识点包括以下内容: ### 一、制作RSA密钥对 1. **生成密钥对命令**:在Linux系统中,制作RSA密钥对的命令为`ssh-keygen`。该命令的参数`-t...
在Hadoop集群服务器节点之间,为了方便管理和提高效率,我们通常会配置SSH无密码登录,这样可以在不同节点间进行快速切换而无需每次都输入密码。下面我们将详细讲解如何实现这一配置。 1. **生成SSH密钥对** 首先...
本文将详细介绍如何通过SSH密钥对的方式,在多台Linux服务器之间实现无密码访问。 #### SSH密钥对原理 在了解具体操作步骤之前,我们首先需要明确SSH密钥对的工作原理。SSH(Secure Shell)是一种加密网络协议,...
完成所有配置后,尝试使用之前创建的测试用户通过SSH登录Linux服务器。如果一切正常,你应该能够成功登录,并且所有的登录尝试都将记录在RADIUS服务器上。 总结来说,通过在Linux系统上配置SSH服务与RADIUS服务器...
在两台Linux服务器之间进行数据传输之前,我们首先需要配置SSH免密码登录,以提高传输效率并减少人工干预。具体步骤如下: 1. **生成SSH密钥对**:在源服务器上执行命令`ssh-keygen -t rsa`生成RSA类型的公钥和私钥...
在连接之前,需要确保测试机和 Linux 之间能够 ping 通,然后使用客户端软件连接到 Linux 服务器,输入用户名和密码后,即可远程登录到 Linux 服务器。 四、 SSH 的安全性 SSH 的安全性体现在多方面,包括身份验证...
本教程将详细讲解Linux的安装过程以及如何配置SSH以实现免密码登录。 一、Linux安装 1. **选择发行版**:Linux有许多发行版,如Ubuntu、CentOS、Fedora等。根据你的需求和熟悉程度,可以选择适合的版本。这里以...
在Linux服务器上,你需要进行以下步骤来启用SSH密钥对认证: 1. 创建`.ssh`目录:在用户的主目录下,使用`mkdir -p .ssh`创建一个隐藏的`.ssh`目录。 2. 设置权限:确保`.ssh`目录具有适当的权限,运行`chmod 700 ....
SSH免密码登录是Linux管理员常用的便捷功能,它允许用户在不同主机间进行身份验证时无需每次都输入密码,提高效率并减少手动输入密码带来的安全风险。本文将详细解释如何在Linux系统中设置SSH免密码登录。 首先,...
### Linux 下 Telnet 和 SSH 服务的配置与使用详解 #### 一、Telnet 服务配置及使用 **1. Telnet 安装** 在 Linux 系统中配置 Telnet 服务之前,需要确保系统已经安装了 Telnet 的客户端和服务端组件。一般情况下...
1. 在Linux服务器上生成SSH密钥对:使用`ssh-keygen`命令生成公钥和私钥,通常默认存储在`~/.ssh`目录下。 2. 将公钥复制到Linux服务器:使用`ssh-copy-id`命令将本地的公钥复制到远程服务器的`~/.ssh/authorized_...
3. 将公钥复制到Linux服务器:使用`clip`命令(Windows的剪贴板工具)和SSH的`cat`命令将公钥内容复制到剪贴板,然后登录到Linux服务器,将公钥内容添加到`~/.ssh/authorized_keys`文件中,以实现无密码登录。...
Linux SSH 使用ssh公钥密钥自动登录Linux服务器是一种常见的安全远程访问方法,它避免了每次登录时手动输入用户名和密码的繁琐过程。这种方法基于非对称加密,通过一对密钥——公钥和私钥——来确保只有拥有相应私钥...