ssh认证
密钥认证
密码验证会造成账户口令的外泄,不安全,基于账号的保密性考虑,可以采用密钥验证实现远程连接。
Linux--Linux
1.Linux客户端主机上生成密钥文件
ssh-keygen -t rsa
选择密钥文件保存位置:【回车】默认保存在/.ssh/
为私钥文件设置密码:【回车】 不设置密码
再次输入密码:【回车】不设置密码
生成文件:id_rsa 私钥 id_rsa.pub 公钥
私钥文件被他人取得,会非法利用远程连接,基于安全的考虑,为私钥文件设置密码
如果为私钥文件设置密码,则在使用私钥时需先验证私钥密码
启用私钥文件 ssh-add /root/.ssh/id_rsa
验证私钥文件的密码
2.将公钥上传至ssh服务器
scp /.ssh/id_rsa.pub root@172.18.209.220:/.ssh/authorized_keys
3.测试
ssh root@172.18.49.100 无需验证密码直接登录
windows--linux
1.windows客户端生成密钥,将公钥传至linux Server
(公钥验证存放在linux服务器,私钥解密存放在客户端)
Puttygen 通过捕捉鼠标走向的算法生成密钥
公钥保存为无后缀的(例如pub),因要传至linux,linux下文件无后缀,利用WinSCP传至linux
私钥两种情况:保存为设置密码的私钥和不设置密码的私钥
2.转换密钥格式
将公钥pub内容转换格式存放到linux下的公钥验证文件 /root/.ssh/authorized_keys
ssh-keygen -i -f pub(上传的公钥)>> /root/.ssh/authorized_keys
vim /etc/ssh/sshd_config ssh的主配置文件
PasswordAuthentication yes改成no 不支持密码验证
service sshd restart
3.测试
putty 密码验证 不能登录
putty 左侧【SSH】 --【Auth】--【浏览】选择私钥文件
先用没有设置密码的私钥登录成功
再用设置密码的私钥登录--要求输入私钥密码
WinSCP 同样支持需要私钥
linux--windows
1.linux服务器端生成密钥,将私钥发放给授权的客户端
ssh-keygen -t rsa
选择密钥文件保存位置:【回车】默认保存在/.ssh/
为私钥文件设置密码:【回车】 不设置密码
再次输入密码:【回车】不设置密码
重命名公钥文件,以用于验证:mv id_rsa.pub authorized_keys
将私钥id_rsa利用WinSCP传至windows客户端
私钥两种情况:保存为设置密码的私钥和不设置密码的私钥
2.转换密钥格式
利用puttygen软件将收到的私钥文件转换格式
转换设置密码的私钥文件时需提供密码
【载入】已有私钥--【保存】转换格式之后的私钥
3.测试
putty WinSCP 支持密钥验证
ssh认证的更多相关文章
- ssh 认证指定端口
[root@database2 ~]# cat ssh.sh if [ ! $# -eq 2 ] ;then echo "请输入用户密码以空格分开" exit else ssh-k ...
- 批量的单向的ssh 认证
<pre name="code" class="python">if [ ! $# -eq 2 ] ;then echo "请输入用户密码 ...
- debian下使用gitosis+gitweb搭建SSH认证的git服务器
搭建完成Git服务器后,需要使用两台机器进行测试,一台机器作为服务器端server,一台服务器作为客户端client.整个系统,需要三个计算机账户,这里假设server端的账户名为git,client ...
- github添加ssh认证
总概:在使用git的时候,和目标仓库建立关系有两种方式https,ssh.一般用的是https认证(这样简单方便),但有个缺点,pull,push等操作需要频繁输入用户验证.虽然可以把用户验证账号密码 ...
- Linux学习笔记总结--ssh认证登录
原理简介 SSH证书认证登录的基础是一对唯一匹配密钥: 私钥(private key)和公钥(public key).公钥用于对数据进行加密,而且只能用于加密.而私钥只能对使用所匹配的公钥,所加密过的 ...
- git ssh认证
一般新手用git时,使用HTTPS都需要输入用户名和密码,这是一个很低效的开发过程.(虽然有时可以让开发人员减少push的次数).github提供了几种连接方式,其中以https:开头的代表https ...
- 华为SSH认证配置
[设备型号]华为switch-S5700s ————1: [SW1] rsa/dsa local-key-pair create #创建本地密钥对 The key name will be: SW1_ ...
- Jenkins - SSH认证方式拉取Git代码
1.本地生成密钥 [root@root ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which ...
- ssh 认证
ssh 秘钥认证流程 ssh配置认证 基于口令(密码)的安全验证 [root@m01 ~]# ssh 10.0.0.41 hostname root@10.0.0.41's password: bac ...
- [Linux] 一次SSH认证失败引发的关于通过日志查错误的思考
一.缘由: 早上在用SSH公钥认证打通所有的机器,有一台机器在完成一些列操作后密钥登陆失败,其他机器一切正常. 错误如下:Public-key authentication with the serv ...
随机推荐
- 使用Gradle管理第三方依赖
http://blog.bsdn.org/2012/01/02/%E4%BD%BF%E7%94%A8gradle%E7%AE%A1%E7%90%86%E7%AC%AC%E4%B8%89%E6%96%B ...
- Codeforces 1082 C. Multi-Subject Competition-有点意思 (Educational Codeforces Round 55 (Rated for Div. 2))
C. Multi-Subject Competition time limit per test 2 seconds memory limit per test 256 megabytes input ...
- CF1025B Weakened Common Divisor【数论/GCD/思维】
#include<cstdio> #include<string> #include<cstdlib> #include<cmath> #include ...
- 洛谷——P3908 异或之和
P3908 异或之和 题目描述 求1 \bigoplus 2 \bigoplus\cdots\bigoplus N1⨁2⨁⋯⨁N 的值. A \bigoplus BA⨁B 即AA , BB 按位异或. ...
- centos7 crontab管理
crontab -l 当前用户的任务 crontab -e 编辑任务列表 crontab -r 删除当前用户的任务
- Python开发基础-Day18继承派生、组合、接口和抽象类
类的继承与派生 经典类和新式类 在python3中,所有类默认继承object,但凡是继承了object类的子类,以及该子类的子类,都称为新式类(在python3中所有的类都是新式类) 没有继承obj ...
- 多协议注入工具t50
多协议注入工具t50 t50是Kali Linux自带的一款网络数据包注入工具.该工具支持15种协议,不仅涵盖常规协议(ICMP.TCP.UDP),还涵盖基础协议和路由协议(GRE.IPSec.R ...
- 分享Kali Linux 2017年第31周镜像文件
分享Kali Linux 2017年第31周镜像文件 Kali Linux官方于7月30日发布2017年的第31周镜像.这次维持了11个镜像文件的规模.默认的Gnome桌面的4个镜像,E17.KD ...
- ES5 方法学习
Object 1. Object.getPrototypeOf(o)获取对象的prototype对象.等价于以前的o.__proto__ var o = {}; Object.getPrototype ...
- Nginx简单认识
写在前面: 最近一直在学习,这几天了解了下Nginx,虽然看了些资料,斌哥也讲解了一下,但是貌似缺少了实践,就显得对其认识的不那么深刻.这里也还是简单的记录下把. 什么是Nginx? Nginx (e ...