密钥认证

 密码验证会造成账户口令的外泄,不安全,基于账号的保密性考虑,可以采用密钥验证实现远程连接。

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认证的更多相关文章

  1. ssh 认证指定端口

    [root@database2 ~]# cat ssh.sh if [ ! $# -eq 2 ] ;then echo "请输入用户密码以空格分开" exit else ssh-k ...

  2. 批量的单向的ssh 认证

    <pre name="code" class="python">if [ ! $# -eq 2 ] ;then echo "请输入用户密码 ...

  3. debian下使用gitosis+gitweb搭建SSH认证的git服务器

    搭建完成Git服务器后,需要使用两台机器进行测试,一台机器作为服务器端server,一台服务器作为客户端client.整个系统,需要三个计算机账户,这里假设server端的账户名为git,client ...

  4. github添加ssh认证

    总概:在使用git的时候,和目标仓库建立关系有两种方式https,ssh.一般用的是https认证(这样简单方便),但有个缺点,pull,push等操作需要频繁输入用户验证.虽然可以把用户验证账号密码 ...

  5. Linux学习笔记总结--ssh认证登录

    原理简介 SSH证书认证登录的基础是一对唯一匹配密钥: 私钥(private key)和公钥(public key).公钥用于对数据进行加密,而且只能用于加密.而私钥只能对使用所匹配的公钥,所加密过的 ...

  6. git ssh认证

    一般新手用git时,使用HTTPS都需要输入用户名和密码,这是一个很低效的开发过程.(虽然有时可以让开发人员减少push的次数).github提供了几种连接方式,其中以https:开头的代表https ...

  7. 华为SSH认证配置

    [设备型号]华为switch-S5700s ————1: [SW1] rsa/dsa local-key-pair create #创建本地密钥对 The key name will be: SW1_ ...

  8. Jenkins - SSH认证方式拉取Git代码

    1.本地生成密钥 [root@root ~] ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which ...

  9. ssh 认证

    ssh 秘钥认证流程 ssh配置认证 基于口令(密码)的安全验证 [root@m01 ~]# ssh 10.0.0.41 hostname root@10.0.0.41's password: bac ...

  10. [Linux] 一次SSH认证失败引发的关于通过日志查错误的思考

    一.缘由: 早上在用SSH公钥认证打通所有的机器,有一台机器在完成一些列操作后密钥登陆失败,其他机器一切正常. 错误如下:Public-key authentication with the serv ...

随机推荐

  1. 洛谷——P1478 陶陶摘苹果(升级版)

    题目描述 又是一年秋季时,陶陶家的苹果树结了n个果子.陶陶又跑去摘苹果,这次她有一个a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与NOIp2005普及组第一题不同的是:陶陶之前搬凳子,力 ...

  2. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals) Cards Sorting(树状数组)

    Cards Sorting time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  3. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

  4. NOIP2005 day1 t1 谁拿了最多奖学金

    题目描述 某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同: 1) 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1 ...

  5. JZYZOJ1349 SPOJ839 星屑幻想 xor 网络流 最大流

    http://172.20.6.3/Problem_Show.asp?id=1349 调了两个小时发现数组开小了[doge].题意:给出几个点,有的点的权值确定,连接两点的边的权值为两点值的异或和,求 ...

  6. 【20181019T2】硬币【矩阵快速幂优化DP】

    题面 [错解] 哎\(N \leq 50\)?双向搜索? 切了切-- 等下,好像要求方案数-- 好像搜不了 哎他给\(V_{i} | V_{i+1}\)干嘛? 肯定有用啊 为了体现条件的用处,我在搜下 ...

  7. [USACO 2017 Feb Gold] Tutorial

    Link: 传送门 A: 分层图最短路(其实就是最短路转移时多记录一维的数据 #include <bits/stdc++.h> using namespace std; #define X ...

  8. [CODECHEF]TREECNT2

    题意:一棵带边权的树,边权可单边修改,问初始时和每次修改后有多少条路径$\gcd=1$ 首先考虑用反演求答案,设$f(n)$为路径$\gcd=n$的路径条数,$g(n)$为路径$\gcd$是$n$倍数 ...

  9. 【BFS】bzoj2252 [2010Beijing wc]矩阵距离

    要注意一开始将所有为'1'的点入队,然后通过一次BFS去更新所有点的距离,直到无法更新为止. #include<cstdio> #include<queue> #include ...

  10. [Andrew Stankevich's Contest#21] Lempel-Ziv Compression

    Time Limit: 20000/10000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others)     Special Judge ...