Linux命令之ssh
一、 配置ssh
1. 命令
ssh-keygen [选项]
2. 说明
用于为“ssh”生成、管理和转换认证密钥,它支持RSA和DSA两种认证密钥
3. 选项
-C:添加注释
-f:指定用来保存密钥的文件名
-l:显示公钥文件的指纹数据
-q:静默模式
-t:指定要创建的密钥类型,密钥类型包括rsa和 dsa两种。如果没有指定则默认生成用于SSH-2的RSA密钥
4. 示例
1、在hadoop1上为hadoop用户配置ssh
1) 切换到hadoop用户,并进入hadoop用户的家目录
2) 输入“ssh-keygen -t rsa”,生成秘钥
3) 进入到.ssh目录,使用“cp id_rsa.pub authorized_keys”命令,把公钥复制到认证文件(authorized_keys)中,如下所示
4) 确保.ssh目录的权限是700(使用chmod 700 .ssh命令修改),确保.ssh目录下所有文件(authorized_key、id_rsa、id_rsa.pub)的权限是600(使用chmod 600 .ssh/*命令修改),如下所示
5) 在这里已经配置了IP与主机名的关系,所以直接输入“ssh hadoop1”登录就可以,第一次登录需要输入密码,第二次登录就不需要输入密码啦
备注:
配置ip与主机名的关系,请参考“配置hosts文件”
2、现在配置两台主机无密码互相访问
下面在hadoop1、hadoop2两台主机上,使用hadoop用户无密码互相访问两台主机。前提条件,在hadoop1、hadoop2两台主机上都创建hadoop用户,并且在hadoop1、hadoop2两台主机上都配置了hadoop1与hadoop1主机ip的关系,hadoop2与hadoop2主机ip的关系
1、参考示例1的步骤,在hadoop1上为hadoop用户配置ssh
2、参考示例1的步骤,在hadoop2上为hadoop用户配置ssh
3、将hadoop2中的公钥id_ras.pub拷贝到hadoop1中的authorized_keys文件中,在hadoop2上执行“cat ~/.ssh/id_rsa.pub | ssh hadoop@hadoop1 'cat >> ~/.ssh/authorized_keys'”命令即可,如下所示
4、将hadoop1中的authorized_keys文件分发到hadoop2中.ssh目录下,在hadoop1上执行“scp -r authorized_keys hadoop@hadoop2:~/.ssh/”,如下所示
5、在hadoop1上访问hadoop1、hadoop2;在hadoop2上访问hadoop2、hadoop1,效果如下
表示配置成功
service sshd restart
1. 命令
ssh [选项] [参数]
2. 说明
ssh命令是openssh套件中的客户端连接工具,可以给予ssh加密协议实现安全的远程登录服务器
3. 选项
-t:指定密钥类型,密钥类型包括rsa和 dsa两种。如果没有指定则默认生成用于SSH-2的RSA密钥
-P:指定密码
4. 参数
远程主机:指定要连接的远程ssh服务器
指令:要在远程ssh服务器上执行的指令。
5. 示例
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【刘超★ljc】。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。