密码学之使用密钥登录SSH服务器

实验目的

掌握SSH密钥登录的配置与应用

实验拓扑

实验环境

两台centos服务器

一台作为SSH服务器
一台作为SSH客户端,使用密钥连接SSH服务器

实验原理

SSH登录除了传统的密码登录,可以使用密钥文件登录,结合PAM模块,也可以实现双因子登录等。

实验步骤

一、配置服务器SSH密钥登录

以下操作使用服务器进行

1、编辑SSH配置文件

vim /etc/ssh/sshd_config

2、删除#号

删除PubkeyAuthentication yes此行前面的#号

保存文件并退出

3、重启ssh服务

systemctl restart sshd

二、使用客户端生成密钥

以下操作使用客户端进行

1、生成SSH登录的密钥对

ssh-keygen -t rsa

2、查看生成的密钥

ls -l /root/.ssh/

确保以下两个文件是新生成的。

三、上传客户端公钥证书到服务器

以下操作使用客户端进行

1、使sftp连接服务器

sftp root@192.168.0.6

输入yes

输入服务器密码

2、上传公钥文件

put /root/.ssh/id_rsa.pub

3、退出sftp客户端

exit

四、配置服务器公钥

以下操作使用服务器进行

通过第三步,我们已经将公钥证书放到了/root/id_rsa.pub

这里我们将公钥文件输出到服务器配置文件中

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

五、验证密钥登录

以下操作使用客户端登录

1、指定私钥文件登录

ssh -i /root/.ssh/id_rsa  root@192.168.0.6

使用 私钥的密码短句登录。

此时我们可以看到直接登录进了服务器,并没有输入密码。因为我们使用了证书验证

总结

在使用私钥证书登录时,我们也可以给私钥证书加上密码,此时不是验证服务器的密码,而是验证私钥证书的加密密码。

同理在Windows下,也可以使用ssh工具,如xshell实现ssh的密钥登录,有兴趣同学可以自己尝试。

CentOS服务器密匙登录相关推荐

  1. ssh 使用密匙登录服务器

    2019独角兽企业重金招聘Python工程师标准>>> ssh 有2种认证方式:一种是密码认证,一种是密匙认证. 然而密码认证的方式是比较不安全的.首先如果密码强度不是很高的话很容易 ...

  2. ssh服务器配置以及密匙登录

    以操作下在root用户下进行 一以下在客户端进行. 1.进入到ssh配置文件进行编辑 命令:vim /etc/ssh/sshd_config 如图:将红色框中的 #PubkeyAuthenticati ...

  3. linux密匙登录免密码登录,另外推荐一个免费的vps网站

    设置公匙,私匙,上传等 一个免费的服务器网站需要ipv6 什么的,很麻烦 1.服务器端的操作 1.1.配置服务器sshd登录信息 vim /etc/ssh/sshd_config将PubkeyAuth ...

  4. mobaxterm ssh密匙 登录被拒绝:server refused our key

    mobaxterm版本:v20.1: 密匙使用的是阿里云生成的.pem 密匙 mobaxterm 配置ssh 登录方法很简单,网上很多,不过都不统一且过于繁琐,实际上如果服务器生成的密匙的话.只需要配 ...

  5. CentOS服务器清除用户登录记录和命令历史方法

    登录相关 Linux系统有三个标准的显示用户最近登录信息的命令: last, lastb,和lastlog. 这些命令的输出信息包括登录用户名.最近登录时间.IP地址等. 为了更好的保持匿名,你可以清 ...

  6. 腾讯云服务器使用SSH密匙对登录的方法

    腾讯云Linux服务器使用SSH管理主机是很方便的,目前SSH管理主机主要有两种,即SSH密码登录Linux服务器和SSH密匙登录服务器,腾讯云服务器网建议大家选择SSH密匙登录的方法.因为开放22号 ...

  7. 腾讯云服务器远程连接登录流程

    腾讯云服务器购买后从哪登录连接服务器?有5种方法可以登录到云服务器操作,无论是Windows还是Linux系统在云服务器管理控制台都可以登录,腾讯云百科来详细说下腾讯云服务器远程连接登录的方法流程: ...

  8. centos服务器集群配置免密登录和文件传输

    centos服务器集群配置免密登录和文件传输 1.免密登录 (哪個用戶配置哪個用戶生效) 1. ssh-keygen -t ras # 连续回车三次得到生成的公钥私钥(文件夹 .ssh)======= ...

  9. Linux中ssh基于密匙的安全验证过程是怎样的?

    在Linux中,ssh是非常重要的存在,但很多人对"ssh"这个概念很模糊,听起来也很晦涩难懂,那么Linux ssh是什么?有什么用?这篇文章为你解答一下. SSH是一种协议.S ...

最新文章

  1. 防sql注入Replace区分大小写
  2. vue 心跳监控_【笔记】vue中websocket心跳机制
  3. window cmd 端口查进程
  4. sqlite随机读取N条记录
  5. POJ 1067 取石子游戏
  6. RPM 包相关命令详解
  7. 河源电大有考计算机等级的吗,河源电大有什么专业自考也有?
  8. 【程序设计】流程图的规范和绘制
  9. 白嫖GPU!Kaggle大神带你打比赛!
  10. CentOs7安装Oracle11g中的坑
  11. Google Cloud Fundamentals简介
  12. 山西职业技术学院计算机宿舍怎么样,山西职业技术学院宿舍条件、住宿好吗、寝室情况...
  13. 题164.pta数据结构题集-04-树7 二叉搜索树的操作集 (30 分)
  14. PLC -- 可编程逻辑控制器
  15. java开源论坛系统Mango BBS源代码下载
  16. 3航空公司客户价值分析
  17. 2年修完6个清华CS硕士学位第3周反思报告
  18. 微信小程序checkbox的全选以及所有checkbox选中之后的全选
  19. linux中rabbitmq服务启动失败,linux系统RabbitMQ启动错误记录
  20. 通过freemarker模板,使用jsoup将html转换为word,包含图片

热门文章

  1. 10年研发总结和期许
  2. CAD中插入外部参照字体会变繁体_CAD外部参照无法绑定怎么办?
  3. home credit default risk(捷信违约风险)机器学习模型复现(论文_毕业设计_作业)
  4. 嵌入式系统和物联网中的软件安全
  5. 【踩坑专栏】feign.codec.EncodeException: Error converting request body
  6. 8305天距离梦想还有8,352 千米 2012-03-31 23:18:53 柏林勃兰登堡门 再过两天就是我22周岁生日了,我在生命网站上摁下自己的出生年月,上面显示我已经度过了8305天,走
  7. turn out用法
  8. android cursor关闭,android在异步任务中关闭Cursor的代码方法
  9. debug基本命令及全称
  10. DirectX12(D3D12)基础教程(六)——多线程渲染