方法一,

有的时候经常需要登录ssh,每次都需要输入密码,会比较繁琐。所以设置了一下使用RSA公钥认证的方式登录Linux。

首先需要在服务器端设置/etc/ssh/sshd_config

# vim /etc/ssh/sshd_config

修改如下两行为yes。其实大多数情况下不用修改,默认就是yes。

RSAAuthentication yes

PubkeyAuthentication yes

(1) 如果客户机和服务器都是Linux机器,那么我们使用下面的方法:(后面第2节会提到怎么在Windows下使用Putty生成密钥对)

我们需要在客户端生成RSA密钥对。使用ssh-keygen命令:

# ssh-keygen -t rsa

参数t的意思是type,后面跟着加密类型,这里我们是rsa。

然后会提示你输入密钥保存完成文件名,这里我们需要使用默认的id_rsa,之后才能正常才能登录。如果你生成的密钥作为其他用处,那么可以命名为其他名称:

Generating public/private rsa key pair.

Enter file in which to save the key (/home/cake/.ssh/id_rsa):

之后会提示你输入一个passphrase,我们这里可以留空,这样我们登录的时候就不许输入密码。

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

然后会提示你密钥生成成功。这是你的私钥保存为~/.ssh/id_rsa,你的公钥是~/.ssh/id_rsa.pub

我们现在需要做的是,把id_rsa.pub的内容,添加的服务器端的~/.ssh/autherized_keys文件最后。

你可以把这个文件上传到服务器端,然后使用命令:

# cat id_rsa.pub >> ~/.ssh/autherized_keys

到这里就完成了。

(2) 在Windows下使用Putty生成密钥对:

Putty的安装目录下有个puttygen.exe程序,我们运行这个程序。

之后点击Generate,开始生成密钥对。我们需要根据提示,在指定方框内随机滑动鼠标。这是为了根据鼠标轨迹,产生一些随机数据。

之后生成结束,我们点击Save Private Key将私钥存放在某个目录中。然后赋值最上面文本框中的全部内容,粘贴到Linux服务器端的autherized_key的最后。

我们现在可以关闭这个小程序。

现在打开Putty,在左边的选项中,选择Conneciton–SSH–Auth,在Private key file for authentication中,选择刚才保存的私钥路径就可以了。

到此位置,Putty也可以不用密码登录了。

方法二

使用Linux主机生成的密匙

1、生成密匙

[root@www.111com.net .ssh]#ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/root/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /root/.ssh/id_rsa.

Your public key has been saved in /root/.ssh/id_rsa.pub.

The key fingerprint is:

e4:9a:47:a7:b4:8a:0b:98:07:b8:70:de:6b:16:2c:0croot@www.111com.net

2、将 /root/.ssh/id_rsa.pub改名为/root/.ssh/authorized_keys

[root@www.111com.net .ssh]#mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys

3、将私钥id_rsa拷贝到远程客户端

1)、如果远程客户端是linux,拷贝到远程客户端/root/.ssh/即可

2)、putty作为远程客户端在

putty不能识别直接从服务器拷贝来的私钥,需要使用puttygen.exe进行格式转换

(1)、打开puttygen.exe --> Conversions --> Import Key

(2)、选择拷贝过来的私钥文件id_rsa

(3)、Save private key->id_rsa.ppk(保存私钥)

4、打开putty.exe

1)、Session --> Host Name (填写服务器地址或者域名)

2)、Connection --> SSH --> Auth (点Browse选择刚生成的id_rsa.ppk)

3)、open

成功打开后出现如下提示:

login as: root

Authenticating with public key "imported-openssh-key"

----------------------------------------------------------------------------------

当然你有可能会遇到这个错误 [因为我遇到了,呵呵]:

Permissions 0755 for '你配置的公钥文件路径' are too open.

这个是因为这几个文件权限设置的有点问题

执行命令: chmod 600 你的文件

linux rsa登录改密码登录_LINUX中RSA认证登录SSH(不需要输入密码登录)2种方法相关推荐

  1. ssh密钥登录 改密码登录_如何使用密钥对通过SSH登录而不使用密码

    ssh密钥登录 改密码登录 In last post we saw how to use Expect Script for login to remote server using SSH. The ...

  2. 【Linux】30.ssh不用手动输入密码登录终端sshpass 和 shell脚本后跟参数自动匹配case的用法

    ssh不用手动输入密码登录终端sshpass 和 case的组合用法 1.sshpass 的用法 在第一次手动输入密码ssh mdc@172.16.34.17 登陆上终端后,可以把下面两条语句做成sh ...

  3. python比较两个数的和_Python中的is和==比较两个对象的两种方法

    Python中的is和==比较两个对象的两种方法 在Python中有两种方式比较两个对象是否相等,分别是is和==,两者之间是不同的 ==比较的是值(如同java中的equals方法) is比较的是引 ...

  4. 在java中的交换方法有哪些_java中交换两个变量的值有哪几种方法,交换两个变量a和b的值...

    java中交换两个变量的值有哪几种方法在Java中,有哪些方法可以交换两个变量的值, 方法: 1.定义临时变量 2.没有必要定义临时变量 3.使用位运算符 (学习视频分享:java课程) 代码示例: ...

  5. 在 C# 中,(int) ,Int32.Parse() 和 Convert.toInt32() 三种方法的区别

    在 C# 中,(int),Int32.Parse() 和 Convert.toInt32() 三种方法有何区别? int 关键字表示一种整型,是32位的,它的 .NET Framework 类型为 S ...

  6. TIA博途S7-1200中实现高低字节或高低字调换的几种方法介绍

    TIA博途S7-1200中实现高低字节或高低字调换的几种方法介绍 例如S7-1200与某些上位机进行通信时,读写的浮点数的存储方式与上位机不同,即高低字或字节是相反的,此时读取的数据是不对的,需要将高 ...

  7. attrib批量显示文件夹_电脑中病毒,文件夹全部变成快捷方式?3种方法轻松解决!...

    原标题:电脑中病毒,文件夹全部变成快捷方式?3种方法轻松解决! 最近有位朋友去打印店的时候,u盘一不小心就带回了1KB快捷方式病毒,导致电脑u盘里的文件以及文件夹全部变成了快捷方式,不知道如何解决. ...

  8. 机器学习中的矩阵求导的一点总结(三种方法求线性回归最佳参数)

    机器学习中的矩阵求导的一点总结(三种方法求线性回归最佳参数) 转载于:https://blog.csdn.net/promisejia/article/details/80159619?ops_req ...

  9. html点击空白处关闭,vue中实现点击空白区域关闭弹窗的两种方法

    1. 第一种做法 首页在外层容器里面取一个名字为main,即ref="main",当bankSwitch为true的时候,弹窗出现 你好我是弹窗里面的内容部分 所触发的事件如下: ...

  10. MFC中主副屏窗口全屏最大化的几种方法

    MFC中主副屏窗口全屏最大化的几种方法 1.根据鼠标位置判断全屏位置 枚举所有窗口 CArray<MONITORINFO, MONITORINFO&> g_arrMonitorIn ...

最新文章

  1. postgresql中COPY的用法
  2. PHP clone() 函数克隆对象
  3. NestedScrollView平滑滑动嵌套 Fling
  4. win10下如何设置开机自启动
  5. c语言编写程序数一下 1到100的所有整数中出现多少次数字9
  6. Python之禅 by Tim Peters
  7. JavaWeb笔记:CSS总结
  8. 2020诺奖预测出炉!“引文桂冠”奖今日公布,华人学者戴宏杰入选
  9. mysql行转列函数_一个小知识点-Hive行转列实现Pivot
  10. 2680 Problem F: Coin Game
  11. C++ C++基础语法入门总结(一)命名空间-输入输出-缺省参数-函数重载
  12. 在dotnetnuke中去掉显示姓名中的空格
  13. 《SQL高级应用和数据仓库基础(MySQL版)》作业 ·007
  14. 操作系统实验及代码(全)
  15. native APP,hybrid APP,web APP, 小程序的区别
  16. linux 安装串口驱动安装失败,z-tek(求救Z-TEK串口安装失败,提示:该设备的驱动程序未被安装(代码28)这个inf中的服务安装段落无效?)...
  17. 图像语义分割-CVPR2020-CPNet:结合不同类别的上下文信息先验--场景语义分割--注意力机制--Context Prior for Scene Segmentation--关键创新点代码复现
  18. 图表可视化配色学习——自动提取图片主色调与配色方案(python、pillow、haishoku和seaborn),并生成十六进制颜色编码
  19. 利用UltrISO将gho文件制作可引导iso
  20. 显卡检测神器 GPU-Z v2.30.0 简体中文汉化版

热门文章

  1. 轨道车辆垂向振动Matlab建模与仿真,基于matlab/simulink的车辆建模与故障分析
  2. skywalking使用方法_SkyWalking 源码分析—— Collector Server Component 服务器组件
  3. 5 获取当前访问的控制名称_LabVIEW编程技巧:网络通信中如何获取计算机名称、IP地址等信息...
  4. 关闭后天 树莓派_陪你一起玩树莓派-系统安装
  5. 在服务器上远程使用tensorboard查看训练loss和准确率
  6. 改造MIP获得搜索青睐,轻松完成SEO
  7. linux一键安装node+npm
  8. Redis详解(三)
  9. 二叉搜索树(BST树)的简单实现
  10. HTTPS 能否避免流量劫持?