配置私钥和公钥

先检查一下服务器的ssh配置文件

/etc/ssh/sshd_config

RSAAuthentication yes # 启用 RSA 认证 默认为 yes

PubkeyAuthentication yes # 启用公钥认证,默认为yes

在客户端执行命令  ssh-keygen -t rsa 生成密钥,会生成一个私钥和一个公钥文件,在提示输入 passphrase 时如果不输入,直接回车,那么以后你登录服务器就不会验证密码,否则会要求你输入 passphrase,默认会将私钥放在 /root/.ssh/id_rsa 公钥放在 /root/.ssh/id_rsa.pub。

windows 下面是一样的命令 我这里用的是git的命令窗口:

密钥文件会保存到,C:\Users\你的用户名\.ssh 文件夹下面

将公钥拷贝到远程服务器上的/root/.ssh/authorized_keys文件中,注意,文件名一定要叫authorized_keys。如果有多个客户端,将多个公钥以换行分开,一行一个客户端。

客户端上保留私钥,公钥可以删除。服务器上保存公钥,客户端上保存私钥。这样就可以实现无密码验证登录了。

如果想要获得最大化的安全性,禁止口令登录,

可以修改 /etc/ssh/sshd_conf 中的

PasswordAuthentication yes 改为

PasswordAuthentication no

即只能使用密匙认证的 openssh,禁止使用口令认证。

如果希望ssh公钥生效需满足至少下面两个条件:

1) .ssh目录的权限必须是700

2) .ssh/authorized_keys文件权限必须是600

LINUX SSH 建立密钥对的更多相关文章

  1. Linux SSH建立连接过程分析

    https://blog.csdn.net/qwertyupoiuytr/article/details/71213463 SSH建立连接的过程主要分为下面几个阶段: SSH协议版本协商阶段.SSH目 ...

  2. 两台linux之间建立信任关系,实现免密码ssh远程登录或scp数据上传

    两台linux之间建立信任关系,实现免密码远程登录或数据上传 1.执行ssh-keygen命令,生成建立安全信任关系的证书: linux1上:执行命令  ssh-keygen  -t rsa 在程序提 ...

  3. linux ssh免密登陆

    大致流程: 两台linux系统A B 如果A要登陆到B 1.生成A的密钥对 2.将A的公钥拷贝到B的authorized_keys中即可 可以使用命令:ssh-copy-id -i ~/.ssh/id ...

  4. (转)Linux SSH批量分发管理

    Linux SSH批量分发管理 原文:http://blog.51cto.com/chenfage/1831166 第1章 SSH服务基础介绍 1.1 SSH服务 1.1.1SSH介绍 SSH是Sec ...

  5. Linux SSh scp使用【远程文件/目录的传输】

    一:Linux ssh scp的简介及作用: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们 ...

  6. ubuntu设置 SSH 通过密钥对登录

    1. 制作密钥对 首先在服务器上制作密钥对.登录到打算使用密钥登录的账户,然后执行以下命令: [root@host ~]$ ssh-keygen <== 建立密钥对 Generating pub ...

  7. Linux 下建立 Git 与 GitHub 的连接

    Git 是一款开源的分布式版本控制系统,而 GitHub 是依托 Git 的代码托管平台. GitHub 利用 Git 极其强大的克隆和分支功能,使得社区成员能够自由地参与到开源项目中去. 不过,在开 ...

  8. linux机器间建立信任关系

    linux机器间建立信任关系 如何建立信任关系 在shell脚本中,需要使用scp命令将本地的文件复制到另一台机器中备份.但通常执行scp命令后都需要输入用户密码,这样在定时自动执行shell脚本中就 ...

  9. python-django项目-Linux系统建立django项目_20191117

    python-django项目-Linux系统建立django项目 1,Linux系统下面,cd /usr/local/lib/  看这个下面会有两个python版本,一个2.7,一个3.5,我们使用 ...

随机推荐

  1. DispatchAction和ForwardAction

    添加功能的步骤:做页面——编写DAO类中的方法——编写和配置action. 如果多个action 使用一个formbean,这种事儿多发生在统一模块中,就可以用一个Action集中处理多个操作,而不要 ...

  2. SQL Server ->> Move characters in string N position(s) forward/backward based on ASCII table(根据ASCII表的排列顺序将字符串内的数值往前或者后移N个位)

    去年无聊的时候想到想玩一下根据ASCII表的排列顺序将字符串内的数值往前或者后移N个位,顺便看一下是T-SQL性能好还是用C#写CLR函数处理得快.结果是在50万行以下其实两者差距很小,当然这是在我的 ...

  3. mysqldump备份脚本一例

    参考三思老师书中所写,感觉挺好用,记录下来,虽然是抄袭,但是手抄还是很累的,其中用到的其他脚本,在博客中已经记录: mysql_full_backup.sh#!/bin/sh#Created by C ...

  4. March 29 2017 Week 13 Wednesday

    It's during our darkest moments that we must focus to see the light. 在最黑暗的时刻,最该努力看到光. I always thoug ...

  5. POJ-2886 Who Gets the Most Candies?---线段树+约瑟夫环

    题目链接: https://cn.vjudge.net/problem/POJ-2886 题目大意: N个人围成一圈第一个人跳出圈后会告诉你下一个谁跳出来跳出来的人(如果他手上拿的数为正数,从他左边数 ...

  6. css relative

    一.relative和absolute相煎关系 relative限制absolute 1.限制left/top/right/bottom定位 如果父元素有relative,只能根据父元素进行定位 2. ...

  7. redis未授权访问getshell

    redis未授权访问的问题一年前就爆了,当时刚开始学安全,还不太懂.今天借着工作的机会来搞一把,看看能不能拿下一台服务器.其实前几天就写好了一直想找个实际环境复现一下,一直没有找到,只说下大致思路. ...

  8. Educational Codeforces Round 10 D. Nested Segments 【树状数组区间更新 + 离散化 + stl】

    任意门:http://codeforces.com/contest/652/problem/D D. Nested Segments time limit per test 2 seconds mem ...

  9. stixel-net绘制指标图

    需解决问题: 1.离散点进行平滑曲线画法 https://blog.csdn.net/cdqn10086/article/details/70143616 def draw_curve(x,y,img ...

  10. lucene&solr学习——solr学习(一)

    1.什么是solr solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文检索服务器.Solr提供了比lucene风味丰富的查询语言,同时实现了可配置,可扩展,并对索 ...