ubuntu系统使用SSH免密码登陆
ubuntu系统使用SSH免密码登陆
- |
- 浏览:5160
- |
- 更新:2014-02-13 19:15
1
2
3
4
5
6
7
我们通常使用Ubuntu系统远程登陆时,一般使用 PASSWORD【用户名+密码】 的方式进行验证登陆,但是这种方式在使用的过程中需要频繁的输入用户名和密码,显得很繁琐,我们可以更具安全性的RSA密钥认证来避免这种登陆方式。
应用场景:
我们需要从Client机器上远程登陆Server机器。登陆方式采用RSA密钥免密码登陆方式。其中Client端与Server端都为Ubuntu系统。
Client与Server端用户名都选用phenix(可以不相同)
百度经验:jingyan.baidu.com
工具/原料
Server端需要安装并开启SSH服务
Client端需要支持ssh-keygen命令
确认两台机器能够连接到Internet
百度经验:jingyan.baidu.com
步骤/方法:
- 1
安装ssh服务
在Ubuntu服务器上安装ssh
安装方法:
apt-get install ssh
安装完成后验证是否SSH安装成功
验证方法:
在命令行模式下执行命令:ssh -V
结果显示ssh版本证明成功
- 2
查看Server端phenix用户家目录下是否存在隐藏目录".ssh"
在安装ssh完成后,进入phenix用户家目录,使用命令:ls -al 查看目录结构中是否存在隐藏目录“.ssh”
若存在,则操作正确,若不存在,解决方法如下:
1,按照步骤一,重新安装一遍ssh服务
2,若安装成功后还不存在".ssh"目录,则使用mkdir .ssh 在家目录下新建一个.ssh目录
一般来说,多数系统在安装完ssh服务后,默认都会自动建立“ssh”隐藏目录,只有少数需要手动创建。
- 3
Client端生成公钥和密钥
我们使用RSA密钥认证的目的是:从Client端登陆Server端时,不需要密码认证。
所以,我们在进行认证时首先需要在Client端建立属于Client端自己的一对密钥(公钥和私钥),建立方法如下:
在命令行下执行:ssh-keygen
执行过程中,它先要求你确认保存公钥的位置(默认为:.ssh/id_rsa),
然后它会让你重复输入一个密码两次,如果不想在使用公钥的时候输入密码,可以留空
执行完毕后,就会生成数据Client端的一对密钥。
执行过程如下图:
SSH 密钥默认储存在账户的家目录下的 ~/.ssh 目录中
关键是看有没有用 xxx_rsa 和 xxx_rsa.pub 来命名的一对文件,有 .pub 后缀的文件就是公钥,另一个文件则是密钥。
生成的一对公私钥,顾名思义:
公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。
生成的密钥截图如下:
- 4
将Client端的公钥添加到用于认证的Server端的公钥文件中
首先检查Server端需要认证的phenix用户的家目录下,隐藏目录“ssh”目录下是否存在一个名为“authorized_keys”的文件,
若不存在,使用命令:touch authorized_keys 创建一个空文件
创建完成后,则可以执行如下步骤:
执行步骤如下:
1,将Clinet端公钥的内容复制
2,将复制到的Client端公钥内容,粘贴至Server端刚才创建的 authorized_keys 文件中,保存文件。
3,更改 authorized_keys 文件的权限
执行命令:chmod 600 authorized_keys
Client公钥内容格式大概如下:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzKGjCrHNCPCT96TTl8j1UtJ10V9a3fLIdx6R0upKP2N7FJP82Nni/vmAx7UVDhUNCgyfyG5Y6wK8AK2hOGjKLfLdfyYPojwmx3MF8KTspZBmmYKbHWh6Aem4TskRmsHOSpWeqns7o3tle0Ln1GMmPpdFph/owa7vj5/JYSOCBX8c+gGFyJeAMHGTs1fnHhGZRl5mzu8mWIv+qJnDxRmE/jBtuNXzSrPeZ2Cz86U+DfWtXVRyEl9XoIotX+GZ/zPxvPoMoItWD3UL6aA8McCX/PE7BLFA4B1Nl+mefTVpHH39AqcyqkcAJxntoqeNU3IwaM7sx/J7ONrFxp9Z3fjVR phenix@Client
实例公私钥截图如下:
- 5
验证无密码登陆
在Client端命令行执行如下命令:
ssh -p12 phenix@10.2.31.33 (本例ssh服务开在了12端口,默认为22)
直接登陆至Server端,表示验证成功。
登陆截图如下:
END
百度经验:jingyan.baidu.com
注意事项
ssh-keygen执行完毕后一定要检查下phenix用户家目录下.ssh目录中是否有一对密钥
在将公钥粘贴至Server端后,一定要修改authorized_keys文件的权限为600,否则认证会失败
Server端需要开启SSH服务,不然客户端使用ssh连接不上
软件基本信息

ubuntu系统使用SSH免密码登陆的更多相关文章
- SSH免密码登陆详解
为了更好的理解SSH免密码登陆原理,我们先来说说SSH的安全验证,SSH采用的是”非对称密钥系统”,即耳熟能详的公钥私钥加密系统,其安全验证又分为两种级别. 1. 基于口令的安全验证 这种方式使用用户 ...
- ssh免密码登陆
Ssh免密码登陆设置 准备工作:1.确保两个主机里没有id_rsa.pub和authorized_keys的文件(这两个文件会影响实验的结果)# find / -name id_rsa.pub可查看是 ...
- ssh免密码登陆远程服务器
ssh免密码登陆远程服务器 在使用windows下的cygwin或者在linux下使用Terminal进行远程服务器登陆测试的时候总是会要求输入账号密码,对于此我们可以使用ssh将公钥放在服务器上的方 ...
- hadoop搭建杂记:Linux下ssh免密码登陆
关于ssh免密码登陆的问题 关于ssh免密码登陆的问题 linux下可以用ssh-keygen来生成公钥/私钥对 ①生成id_rsa和id_rsa.pub公钥/私钥对,自动在~/.ssh下生成文件(亦 ...
- [转] SSH免密码登陆以及穿越跳板机
原文链接:http://www.cnblogs.com/lucantang/p/3315329.html SSH免密码登陆以及穿越跳板机 1. 免密码直连 [user@hostA ~] $ssh ...
- Hadoop localhost ssh 免密码登陆
配置本地ssh免密码登陆,遇到很奇怪的问题,原来在公司电脑上,是按照 http://blog.csdn.net/hackerwin7/article/details/28109073 这里说的配置的, ...
- ssh免密码登陆(集群多台机器之间免密码登陆)
1. 首先在配置hosts文件(每台机器都要) 进入root权限 vi /etc/hosts 添加每台机器的ip + 主机名,例如: 172.18.23.201 hadoop1 172.18.23.1 ...
- 5.SSH 免密码登陆
SSH 免密码登陆 serverA 机器上 userA 用户,想要免密钥登陆到serverB机器上 1.集群中的所有机器 安装ssh 服务端sudo apt-get updatesudo apt-ge ...
- ssh 免密码登陆设置不成功
记一次centos6设置免密码登陆设置不成功的解决.自己挖的坑自己填. ssh 免密码登陆设置( 正常情况下是这样的,设置成功后登陆主机是不需要密码的) [root@master .ssh]# ssh ...
随机推荐
- ADPCM编码和解码
原文:http://www.znmcu.cn/znx_51_alltest_shell_fj_adpcm1.html ADPCM音频解码,其实放在这里有些不太合适. 在编写ZN-X开发板整板测试程序的 ...
- eclipse 中执行 main 函数如何添加参数
我们通常执行 main 函数都是直接在类界面 右键 选择 Run As --> Java Application 但是如何 执行时带有参数呢? 右键 --> Run As --> R ...
- 部署php项目
1.不写端口号,即127.0.0.1,其隐含一个默认端口号80 2.查看当前占用的端口号 3.nginx修改工作路径,nginx修改端口号 4.查看端口号是否可访问telnet命令 在dos界面输入命 ...
- 图像相似度计算之哈希值方法OpenCV实现
http://blog.csdn.net/fengbingchun/article/details/42153261 图像相似度计算之哈希值方法OpenCV实现 2014-12-25 21:27 29 ...
- Django:之传递数据给JS、Ajax和Ajax CSRF认证
Django传递数据给JS 有时候我们想把一个list或者dict传递给javascript,处理后显示到网页上,比如要用js进行可视化到数据. 请注意:如果是不处理,直接显示在网页上,用Django ...
- NSBundle的用法
bundle是一个目录,其中包含了程序会使用到的资源. 这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in). 对应bundle,cocoa提供了类NSBu ...
- 浅谈测试rhel7新功能时的感受及遇到的问题【转载】
半夜起来看世界杯,没啥激情,但是又怕错误意大利和英格兰的比赛,就看了rhel7 相关新功能的介绍. rhel7的下载地址: https://access.redhat.com/site/downloa ...
- AOP与动态代理有什么联系
曾遇到“AOP与动态代理有什么联系”的问题,现把个人观点整理如下: 我觉得,动态代理是AOP的主要实现手段之一,AOP是动态代理的一种应用深化 AOP是一种思想,或者是方法论,类似OOP,是OOP的有 ...
- 命名空间“Microsoft”中不存在类型或命名空间名称“Office”(是缺少程序集引用吗?)
通过引用这个解决,不同的的office版本,中间的版本号可能不同,如图所示:
- 编译 wl18xx驱动源码
在做beagleboneblack移植的时候,wl18xx的驱动源码是自动编译的.但是移植到其他平台优越平台不一样,所以就不能自动编译 所以用其他方式编译.http://e2e.ti.com/supp ...
步骤阅读
步骤阅读
步骤阅读
步骤阅读
步骤阅读
步骤阅读
步骤阅读
步骤阅读