Linux系统SSH免密码登陆远程服务器的技巧

搭建Hadoop环境需要设置无密码登陆,所谓无密码登陆其实是指通过证书认证的方式登陆,使用一种被称为"公私钥"认证的方式来进行ssh登录。在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加密算法.该工具做linux系统的远程管理是非常安全的。telnet,因为其不安全性,在linux系统中被搁置使用了。

" 公私钥"认证方式简单的解释:首先在客户端上创建一对公私钥 (公钥文件:~/.ssh/id_rsa.pub; 私钥文件:~/.ssh/id_rsa)。然后把公钥放到服务器上(~/.ssh/authorized_keys), 自己保留好私钥.在使用ssh登录时,ssh程序会发送私钥去和服务器上的公钥做匹配.如果匹配成功就可以登录了。

1、确认系统已经安装了SSH。

rpm –qa | grep openssh

rpm –qa | grep rsync

-->出现如下图的信息表示已安装

假设没有安装ssh和rsync,可以通过下面命令进行安装。

yum install ssh -->安装SSH协议

yum install rsync -->rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件

service sshd restart -->启动服务

2、生成秘钥对

ssh-keygen –t rsa –P ''  -->直接回车生成的密钥对:id_rsa和id_rsa.pub默认存储在"/home/hadoop/.ssh"目录下。

3、把id_rsa.pub追加到授权的key里面去。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

4、修改授权key的权限

chmod 600 ~/.ssh/authorized_keys

5、修改SSH配置文件

su -  -->登陆root用户修改配置文件

vim /etc/ssh/sshd_config -->去掉下图中三行的注释

6、测试连接

service sshd restart -->重启ssh服务,

exit   -->退出root用户,回到普通用户

ssh localhost -->连接普通用户测试

这只是配置好了单机环境上的SSH服务,要远程连接其它的服务器,接着看下面。

7、现在秘钥对已经生成好了,客户端SSH服务也已经配置好了,现在就把我们的钥匙(公钥)送给服务器。

scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器IP:~/  -->将公钥复制到远程服务器的~/目录下

如: scp ~/.ssh/id_rsa.pub hadoop@192.168.1.134:~/

可以看到我们复制的时候需要我们输入服务器的密码,等我们把SSH配置好之后这些步骤就可以不用输入密码了。

8、

上一步把公钥发送到192.168.1.134服务器上去了,我们去134机器上把公钥追加到授权key中去。

注意:如果是第一次运行SSH,那么.ssh目录需要手动创建,或者使用命令ssh-keygen -t rsa生成秘钥,它会自动在用户目录下生成.ssh目录。特别注意的是.ssh目录的权限问题,记得运行下chmod 700 .ssh命令

在134机器上使用命令:cat ~/id_rsa.pub >> ~/.ssh/authorized_keys  -->追加公钥到授权key中rm ~/id_rsa.pub  -->保险起见,删除公钥同样在134机器上重复第四步和第五步,service sshd restart  --

上一步把公钥发送到192.168.1.134服务器上去了,我们去134机器上把公钥追加到授权key中去。

注意:如果是第一次运行SSH,那么.ssh目录需要手动创建,或者使用命令ssh-keygen -t rsa生成秘钥,它会自动在用户目录下生成.ssh目录。特别注意的是.ssh目录的权限问题,记得运行下chmod 700 .ssh命令

在134机器上使用命令:cat ~/id_rsa.pub >> ~/.ssh/authorized_keys  -->追加公钥到授权key中rm ~/id_rsa.pub  -->保险起见,删除公钥同样在134机器上重复第四步和第五步,service sshd restart  -->重启ssh服务

>重启ssh服务

9、

回到客户机来,输入:ssh 192.168.1.134   -->应该就能直接连接服务器咯。

回到客户机来,输入:ssh 192.168.1.134   -->应该就能直接连接服务器咯。

(0)

相关推荐

  • CentOS系统的服务器上设置SSH免密码登陆的教程

    为系统管理员,你计划在 Linux 上使用 OpenSSH,完成日常工作的自动化,比如文件传输.备份数据库转储文件到另一台服务器等.为实现该目标,你需要从主机 A 能自动登录到主机 B.自动登录也就是 ...

  • linux下设置ssh免密码登陆的配置步骤分享

    我有两台笔记本电脑上分别装有两个centos的虚拟机,一个IP为172.16.1.10(slave),一个IP为172.16.1.9(master)。 在slave上用root用户 vi /etc/h ...

  • linux实现ssh免密码登录的正确方法

    Linux系统作为一款安全稳定的操作系统,被广泛应用于如金融.通讯等行业的信息系统建设. 随着科技的不断创新,系统应用不断深入,实现linux ssh免密码登录也越来越多的被涉及到,其中比较典型的是h ...

  • Linux集群内SSH免密码访问的快速配置方法

    日常无论测试环境还是生产环境,在进行多台服务器(集群)安装配置的时候,经常需要对集群内服务器SSH访问做免密码设置.比如Hadoop.HBase等集群的安装配置,或者多台服务器为便于后续运维也需要做S ...

  • Linux实现密钥登陆/如何实现Linux免密码登陆?

    在工作的时候一般都建议使用密钥远程登陆Linux,一方面是为了安全起见,另外一方面也是为了工作方便,下面小编与大家分享一下如何实现Linux免密码登陆. 在上一篇的时候与大家分享了使用puttgen创 ...

  • CentOS怎么配置SSH免密码登录

    CentOS配置SSH无密码登录需要3步: 生成公钥和私钥 导入公钥到认证文件,更改权限 测试 1.生成公钥和私钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 默 ...

  • Centos6.5 中 ssh免密码登录配置教程

    0.说明 这里为了方便说明问题,假设有A和B两台安装了centos6.5的主机.目标是实现A.B两台主机分别能够通过ssh免密码登录到对方主机.不同主机的配置过程一样,这里介绍A主机的配置过程. 事先 ...

  • SSH证书让Putty免密码登陆Linux的方法

    这里介绍的不是双Linux环境下的SSH证书登陆,而是Windows下用Putty证书登陆至你的Linux服务器/VPS. 目前我用的是Putty中文版,来自GoogleCode的项目:http:// ...

  • linux下使用lftp的小结(远程服务器备份)

    今天在解决一个远程服务器备份的问题时,用到了lftp的相关知识。整理如下: lftp的功能比较强大,相比原来用ftp,方便了很多。 1、登陆: lftp ftp://yourname@site pwd ...