文档章节

ssh证书验证

阿帆提
 阿帆提
发布于 2016/11/15 18:45
字数 1353
阅读 10
收藏 0
点赞 0
评论 0

---------------------ssh证书登陆------------------------

证书登录的步骤

 

1.客户端生成证书:私钥和公钥,然后私钥放在客户端,妥当保存,一般为了安全,访问有黑客拷贝客户端的私钥,客户端在生成私钥时,会设置一个密码,以后每次登录ssh服务器时,客户端都要输入密码解开私钥(如果工作中,你使用了一个没有密码的私钥,有一天服务器被黑了,你是跳到黄河都洗不清)。

 

2.服务器添加信用公钥:把客户端生成的公钥,上传到ssh服务器,添加到指定的文件中,这样,就完成ssh证书登录的配置了。

 

假设客户端想通过私钥要登录其他ssh服务器,同理,可以把公钥上传到其他ssh服务器。

 

真实的工作中:员工生成好私钥和公钥(千万要记得设置私钥密码),然后把公钥发给运维人员,运维人员会登记你的公钥,为你开通一台或者多台服务器的权限,然后员工就可以通过一个私钥,登录他有权限的服务器做系统维护等工作,所以,员工是有责任保护他的私钥的,如果被别人恶意拷贝,你又没有设置私钥密码,那么,服务器就全完了,员工也可以放长假了。

客户端建立私钥和公钥

 

在客户端终端运行命令

 

ssh-keygen -t rsa

 

rsa是一种密码算法,还有一种是dsa,证书登录常用的是rsa。

 

假设用户是blue,执行 ssh-keygen 时,才会在我的home目录底下的 .ssh/ 这个目录里面产生所需要的两把 Keys ,分别是私钥 (id_rsa) 与公钥 (id_rsa.pub)。

 

另外就是私钥的密码了,如果不是测试,不是要求无密码ssh,那么对于passphrase,不能输入空(直接回车),要妥当想一个有特殊字符的密码。

ssh服务端配置

 

ssh服务器配置如下:

复制代码

 

vim /etc/ssh/sshd_config

#禁用root账户登录,非必要,但为了安全性,请配置

PermitRootLogin no

 

# 是否让 sshd 去检查用户家目录或相关档案的权限数据,

# 这是为了担心使用者将某些重要档案的权限设错,可能会导致一些问题所致。

# 例如使用者的 ~.ssh/ 权限设错时,某些特殊情况下会不许用户登入

StrictModes no

 

# 是否允许用户自行使用成对的密钥系统进行登入行为,仅针对 version 2。

# 至于自制的公钥数据就放置于用户家目录下的 .ssh/authorized_keys 内

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile      %h/.ssh/authorized_keys

 

#有了证书登录了,就禁用密码登录吧,安全要紧

PasswordAuthentication no

 

复制代码

 

配置好ssh服务器的配置了,那么我们就要把客户端的公钥上传到服务器端,然后把客户端的公钥添加到authorized_keys

 

在客户端执行命令

 

scp ~/.ssh/id_rsa.pub blue@<ssh_server_ip>:~

 

在服务端执行命令

 

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

 

如果有修改配置/etc/ssh/sshd_config,需要重启ssh服务器

 

/etc/init.d/ssh restart

 

 

客户端通过私钥登录ssh服务器

 

ssh命令

 

ssh -i /blue/.ssh/id_rsa blue@<ssh_server_ip>

 

scp命令

 

scp -i /blue/.ssh/id_rsa filename blue@<ssh_server_ip>:/blue

 

每次敲命令,都要指定私钥,是一个很繁琐的事情,所以我们可以把私钥的路径加入ssh客户端的默认配置里

 

修改/etc/ssh/ssh_config

 

#其实默认id_rsa就已经加入私钥的路径了,这里只是示例而已

IdentityFile ~/.ssh/id_rsa

#如果有其他的私钥,还要再加入其他私钥的路径

IdentityFile ~/.ssh/blue_rsa

 

其他应用场景

SecureCRT密钥key远连接程ssh证书登录Linux

 

  国内大部分人用的系统是windows,而windows下有很多ssh客户端图形工作,最流行,功能最强大的就是SecureCRT了,所以我会单独针对SecureCRT简单讲下实现ssh证书登录Linux的要点,步骤如下:

 

  1:在SecureCRT创建私钥和公钥:主菜单->工具->创建公钥->选择RSA->填写私钥的密码->密钥长度填为1024->点击完成,生成两个文件,默认名为identity和identity.pub

 

  2.把私钥和公钥转换为OpenSSH格式:主菜单->工具->转换私钥到OpenSSH格式->选择刚生成私钥文件identity->输入私钥的密码->生成两个文件,指定为id_rsa,id_rsa.pub

 

  3.把公钥id_rsa.pub上传到ssh服务器,按照之前配置服务器端的证书,再配置一次。

 

  另外,如果你之前用windows的 SecureCRT的证书登录linux的,有一天你换成了linux,并希望通过原来的私钥登录公司的服务器,那么可以把id_rsa拷贝倒~/.ssh/目录下,配置ssh客户端参考上文。

 

  备注:ssh对证书的文件和目录权限比较敏感,要么根据出错提示设置好文件和目录权限,要么是把StrictModes选项设置为no

hadoop部署的无密码ssh登录

 

hadoop要求master要无密码跳转到每个slave,那么master就是上文中的ssh客户端了,步骤如下

 

   在hadoop master上,生成公钥私钥,这个场景下,私钥不能设置密码。

© 著作权归作者所有

共有 人打赏支持
阿帆提
粉丝 8
博文 54
码字总数 188729
作品 0
朝阳
程序员
Openssl及加密解密(二)openssl

openssl是一个条件实现了上百种算法、实现了单向加密工具等一组套件,代码量很小但是功能强大。它有三部分组成: libcrypto:通用功能的加密库,软件开发时可以直接调用 libssl:实现TLS/SSL...

linuxjavachen
2017/05/13
0
0
配置 Linux 服务器 SSH 安全访问的四个小技巧

以 CentOS 为例,简单地总结一下如何配置 SSH安全访问。 Linux SSH 安全策略一:关闭无关端口   网络上被攻陷的大多数主机,是黑客用扫描工具大范围进行扫描而被瞄准上的。所以,为了避免被...

lichao19881026
2014/05/16
0
0
Linux开启证书登录

要设置证书登录首先得有生成一个证书。拿centos来说。输入命令ssh-keygen -t rsa 这是生成证书的一个通用命令。rsa是指定加密方式是rsa 。然后会提示你输入密码。你可以自己指定任意一个密码...

安西都护府首席程序员
01/17
0
0
基于SSL的Mysql主从复制

一、实验目的: 1.跨越互联网加密复制 mysql基于SSL加密连接,为安全从服配置证书,从服拿账号到主服复制时,必须得到主服验证。双方建立SSL会话。 二、实验架构 在分布式架构中,时间必须同...

aha45
06/29
0
0
原来HTTPS SSH SSL是可以轻松被监听的

文章 The End of SSL and SSH? 实现方法 http://www.ibm.com/developerworks/cn/security/s-sniff/part1/index.html http://blog.chinaunix.net/uid-2469966-id-2595315.html 证实了我那个猜......

Foou
2013/12/20
2.7K
4
OpenSSH 7.2 发布,支持 SHA-256/512 RSA 签名

OpenSSH 7.2 发布了,并且很块可在所有支持的平台下载。 根据内部发布公告,OpenSSH 7.2 主要是 bug 修复,修改了自 OpenSSH 7.1p2 以来由用户报告和开发团队发现的问题,但是我们可以看到几...

oschina
2016/03/09
2.5K
4
SSH、SSL、HTTPS 摘要

SSH配置: 1、在10.0.0.6机器创建SSH Key,生成公钥和私钥,执行:ssh-keygen -t rsa -C "root-06@an.com" -f "root-06" 将10.0.0.6公钥拷贝到远程机器10.0.0.4,scp ~/.ssh/root-06.pub ro...

netpeak
2017/02/07
0
0
OpenSSH dropbear

SSL/TLS: SSL:安全的套接字层;1.0 2.0 3.0 TLS:传输层安全;1.0 1.1 1.2 1.3 SSL会话过程四个阶段: SSL Handshake Protocol: 第一阶段:ClientHello 1.协商所支持的协议的版本,如tls...

杨铄
06/26
0
0
SSH HTTPS 公钥、秘钥、对称加密、非对称加密、 总结理解

作者:shede333 主页:http://my.oschina.net/shede333 && http://blog.sina.com.cn/u/1509658847 版权声明:原创文章,版权声明:自由转载-非商用-非衍生-保持署名 [Creative Commons BY-N...

shede333
2014/12/22
0
4
SSH 与 SSH-Key

ssh 提供两种级别的安全认证: 基于口令的安全认证 基于证书的安全认证 基于口令的安全认证 知道用户名和密码即可登录。连接是加密的,但客户端不能确认目标主机是否为“伪造的”,也不能保证...

傅易
2016/10/31
46
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

SpringBoot | 第十章:Swagger2的集成和使用

前言 前一章节介绍了mybatisPlus的集成和简单使用,本章节开始接着上一章节的用户表,进行Swagger2的集成。现在都奉行前后端分离开发和微服务大行其道,分微服务及前后端分离后,前后端开发的...

oKong
今天
5
0
Python 最小二乘法 拟合 二次曲线

Python 二次拟合 随机生成数据,并且加上噪声干扰 构造需要拟合的函数形式,使用最小二乘法进行拟合 输出拟合后的参数 将拟合后的函数与原始数据绘图后进行对比 import numpy as npimport...

阿豪boy
今天
1
0
云拿 无人便利店

附近(上海市-航南路)开了家无人便利店.特意进去体验了一下.下面把自己看到的跟大家分享下. 经得现场工作人员同意后拍了几张照片.从外面看是这样.店门口的指导里强调:不要一次扫码多个人进入....

周翔
昨天
1
0
Java设计模式学习之工厂模式

在Java(或者叫做面向对象语言)的世界中,工厂模式被广泛应用于项目中,也许你并没有听说过,不过也许你已经在使用了。 简单来说,工厂模式的出现源于增加程序序的可扩展性,降低耦合度。之...

路小磊
昨天
165
1
npm profile 新功能介绍

转载地址 npm profile 新功能介绍 npm新版本新推来一个功能,npm profile,这个可以更改自己简介信息的命令,以后可以不用去登录网站来修改自己的简介了 具体的这个功能的支持大概是在6这个版...

durban
昨天
1
0
Serial2Ethernet Bi-redirection

Serial Tool Serial Tool is a utility for developing serial communications, custom protocols or device testing. You can set up bytes to send accordingly to your protocol and save......

zungyiu
昨天
1
0
python里求解物理学上的双弹簧质能系统

物理的模型如下: 在这个系统里有两个物体,它们的质量分别是m1和m2,被两个弹簧连接在一起,伸缩系统为k1和k2,左端固定。假定没有外力时,两个弹簧的长度为L1和L2。 由于两物体有重力,那么...

wangxuwei
昨天
0
0
apolloxlua 介绍

##项目介绍 apolloxlua 目前支持javascript到lua的翻译。可以在openresty和luajit里使用。这个工具分为两种模式, 一种是web模式,可以通过网页使用。另外一种是tool模式, 通常作为大规模翻...

钟元OSS
昨天
2
0
Mybatis入门

简介: 定义:Mybatis是一个支持普通SQL查询、存储过程和高级映射的持久层框架。 途径:MyBatis通过XML文件或者注解的形式配置映射,实现数据库查询。 特性:动态SQL语句。 文件结构:Mybat...

霍淇滨
昨天
2
0
开发技术瓶颈期,如何突破

前言 读书、学习的那些事情,以前我也陆续叨叨了不少,但总觉得 “学习方法” 就是一个永远在路上的话题。个人的能力、经验积累与习惯方法不尽相同,而且一篇文章甚至一本书都很难将学习方法...

_小迷糊
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部