ssh创建密钥对验证
ssh创建密钥对认证
[root@localhost ~]# useradd hehe #创建普通用户张三
[root@localhost ~]# su - hehe #进入张三用户
[hehe@localhost ~]$ ssh-keygen -t rsa #创建密钥对,rsa算法
#创建密钥对时会让你输入密码密码可写可不写
[hehe@localhost ~]$ ls
[hehe@localhost ~]$ ls -a
. .. .bash_logout .bash_profile .bashrc .cache .config .mozilla .ssh
[hehe@localhost ~]$ cd .ssh
[hehe@localhost .ssh]$ ls
id_rsa id_rsa.pub #出现.ssh目录 私钥公钥都在里面id_rsa 私钥 id_rsa.pub 公钥
[hehe@localhost .ssh]$ scp id_rsa.pub root@192.168.100.181 #把公钥以root的身份传给服务器
[hehe@localhost .ssh]$ scp id_rsa.pub root@192.168.100.181:/tmp/
The authenticity of host '192.168.100.181 (192.168.100.181)' can't be established.
ECDSA key fingerprint is e6:6a:1c:35:a0:ce:55:49:f8:3a:fd:72:9b:11:aa:0d.
Are you sure you want to continue connecting (yes/no)? y
Please type 'yes' or 'no': yes
Warning: Permanently added '192.168.100.181' (ECDSA) to the list of known hosts.
root@192.168.100.181's password:
id_rsa.pub 0% 0 0.0KB/s --:-- ETA
id_rsa.pub 100% 408 0.4KB/s 00:00 #百分百显示成功
------------------------------------------------------------------------------------------------------------------------以上是客户端操作,以下是服务器操作
ls /tmp/
id_rsa.pub #公钥已经导入成功了
ks-script-lH7Zsq
systemd-private-5b39a8ad25264afea8d50d43f68e2b47-chronyd.service-vomwxB
vmware-root_5994-725844256
vmware-root_6127-1949772731
vmware-root_6422-994228579
yum.log
[root@localhost tmp]# mkdir /home/test3/.ssh #在test3用户下创建一个.ssh的文件夹
[root@localhost tmp]# cat id_rsa.pub #看一下公钥里面的铭文
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCcdhbE3ZbFYsyPg5TMHHNxU/1bU8
[root@localhost tmp]# cat id_rsa.pub > /home/test3/.ssh/authorized_keys #把公钥覆盖到authorrized_keys下 这个目录一个方公钥的数据库
[root@localhost tmp]# ll /home/test3/.ssh/authorized_keys #看一下里面的权限 644
-rw-r--r--. 1 root root 408 8月 16 09:37 /home/test3/.ssh/authorized_keys
--------------------------------------------------------------------------------------------------------------------------------
然后我们去客户端中测试
[hehe@localhost .ssh]$ ssh test3@192.168.100.181 #远程连接test3
Enter passphrase for key '/home/hehe/.ssh/id_rsa':
[test3@localhost ~]$ ip a #可以看到用户名编程test3了此时连接成功了
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:18:21:6d brd ff:ff:ff:ff:ff:ff
inet 192.168.100.181/24 brd 192.168.100.255 scope global noprefixroute dynamic ens33 #ip地址也变成服务器的了
valid_lft 4550sec preferred_lft 4550sec
inet6 fe80::d1f4:2e18:af6b:f8b8/64 scope link noprefixroute
valid_lft forever preferred_lft forever
总结(一共四个步骤)
1.创建密钥对(私钥公钥、公钥给服务器私钥自己留着,私钥不能泄露)
2.把公钥给服务器 scp
3.把公钥放到指定用户的公钥数据库中.ssh/authorized_keys
4.客户端进行测试远程连接测试
转载于:https://www.cnblogs.com/zcdhhh/p/11362078.html
ssh创建密钥对验证相关推荐
- SSH远程管理,构建密钥对验证的SSH体系,设置SSH代理功能。
SSH服务及配置文件 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录,对通信双方的数据实行了加密处理,提供了更好的安全性.OpenSSH是实现SSH协议的开源软件 ...
- 实战证明LINUX系统下密钥对验证的安全性
实战证明LINUX系统下密钥对验证的安全性 密钥对验证:要求提供匹配的密钥信息才能通过验证,首先在客户端创建一对密钥文件(公钥.私钥),后把公钥文件放到需要远程连接的服务器中.远程登录时,系统将使用 ...
- 五:openSSH服务的密钥对验证
密钥对验证整过细节包含四步: 1.首先要在SSH客户端以 root用户身份创建密钥对 2.客户端将创建的公钥文件上传至SSH服务端临时位置 3.服务端将公钥信息导入用户root的公安数据库文件 4.客 ...
- java jwt 验证_教程:用Java创建和验证JWT
java jwt 验证 "我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多 ...
- 教程:用Java创建和验证JWT
"我喜欢编写身份验证和授权代码." 〜从来没有Java开发人员. 厌倦了一次又一次地建立相同的登录屏幕? 尝试使用Okta API进行托管身份验证,授权和多因素身份验证. Java ...
- 服务器间通过ssh使用密钥对实现无密码登录
脚本如下: #该脚本为生成SSH密码对 rm -rf .ssh mkdir .ssh echo "创建证书,默认回车即可" ssh-keygen -t rsa chmod 600 ...
- 【应用安全】 使用Java创建和验证JWT
Java对JWT(JSON Web Tokens)的支持过去需要大量的工作:广泛的自定义,几小时的解析依赖关系,以及仅用于组装简单JWT的代码页.不再! 本教程将向您展示如何使用现有的JWT库来做两件 ...
- 如何创建密钥对,使用密钥登录服务器
在我们平时使用Linux系统时候,通常使用的Linux SSH登录方式是用户名加密码的登录方式,但是这种密码登录的方式很容易造成密码泄露或者被暴力破解,非常不安全,下面我们采用一种相对安全的登录方式- ...
- HIDL示例-JAVA服务创建-Client验证-Android10.0 HwBinder通信原理(四)
摘要:本节主要来讲解Android10.0 JAVA层的HIDL服务创建和JAVA层的Client验证 阅读本文大约需要花费15分钟. 文章首发微信公众号:IngresGe 专注于Android系统级 ...
最新文章
- ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl
- 深入了解SAP S4 HANA Business Partner【中英文双语版】
- 道路游戏(洛谷 P1070)
- 代码签名证书,让软件真正拥有姓名!
- Arduino_esp32_WiFi代码
- 数塔问题-------给你有哪些启示?
- sharepoint2010基于表单认证
- atitit。自定义uml MOF EMF体系eclipse emf 教程o7t
- 根据吴安德(斯坦福大学深度学习讲座),您应该如何阅读研究论文
- matlab画动态简单轨迹,利用MATLAB绘制相轨迹
- 爬虫:爬取网页表格内容,写入scv文件并绘图
- 英语语法 - the + 形容词 的意义
- 谈一谈PAC学习理论
- 头晕和眩晕是怎样的感觉?3件小事来缓解!
- 【面经】2021 中国农业银行 笔试编程题
- Windows 当前所接的屏幕检测
- 宁波市教育学院计算机系主任,欢迎宁波诺丁汉大学计算机系主任白瑞斌教授一行到访南科大...
- 微信小程序无法弹出授权登录窗口
- 【NB-Iot自我学习之路_3】NB平台介绍【电信篇】+【移动篇】
- asp手机拍照显示_WeX5V3.1手机拍照例子-后台ASP.NET
热门文章
- Debian 7 Gitlab `GLIBC_2.14 not found`
- C语言 n的作业,C语言作业练习
- L1-077 大笨钟的心情 (15 分)-PAT 团体程序设计天梯赛 GPLT
- [Java] 蓝桥杯ALGO-119 算法训练 寂寞的数
- 蓝桥杯 ADV-182 算法提高 前10名
- 1048. 数字加密(20)-浙大PAT乙级真题
- JAVA中运行看不见窗口_eclipse中已经把窗口设置为可视,为什么运行 时还是看不到窗口?...
- mycat php pdo,mycat程序写入和读取中文乱码解决
- Oracle 导出、导入某用户所有数据(包括表、视图、存储过程...)
- TypeError: unhashable type: 'list'