内网数字证书的生成与使用

  • 内网数字证书的生成与使用
    • SSL加密原理
    • Java生成数字证书
    • 服务器间的数字证书应用

内网数字证书的生成与使用

   虽然在企业内网之间,通过http明文访问,安全性的影响不大,因为服务器之间主要依靠内外网防火墙隔离来保证安全性,但是考虑到有一些数据的敏感性,通过ssl加密服务器之间的数据传输,能够大大提高安全性。比如黑客突破防火墙进入内网后,可能截取数据,这些在电影中经常上演。所以在服务器之间,或者部分重要服务器上,要求使用数字证书访问,是有一定的作用的。但是如果有外部CA机构颁发证书,需要额外的成本,且因为数据并不发布到公网上,也没有必要做此类工作,可以通过Java自带的证书生成工具来实现。

SSL加密原理

通俗的讲就是通过非对称密钥算法,通过握手协议,客户端利用公钥加密密码,服务器端收到后通过私钥解密获得客户端的密码,然后服务器端以客户端的密码加密内容将数据发送给客户端,客户端由于保持通路时存储了发送的密码,于是通过密码解密,得到传输的内容。具体可以见引用别人的文章
SSL原理

Java生成数字证书

在Java安装路径bin目录下,有keytool.exe文件
1、生成KeyStore文件
keytool -genkey -validity 360 -alias www.baidu.com -keyalg RSA -keystore d:\baidu.keystore
其中
-genkey表示生成密钥
-validity指定证书有效期(天)
-alias指定别名
-keyalg指定算法,公钥算法一般RSA
-keystore指定存储位置,这里是d:\baidu.keystore
2、生成自签名证书
证书就是外部使用的公钥,是给客户端使用的。
keytool -export -keystore d:\baidu.keystore -alias www.baidu.com -file d:\baidu.cer -rfc
-export指定为导出操作
-keystore指定keystore文件
-alias指定导出keystore文件中的别名
-file指向导出路径
-rfc以文本格式输出,也就是以BASE64编码输出

服务器间的数字证书应用

目前以Tomcat启用ssl应用为例,其他的容器可以参考具体容器的使用方案。
一、打开conf/server.xml被注释的配置

<!-- <Connector SSLEnabled="true" clientAuth="false"  maxThreads="150" port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https" secure="true" sslProtocol="TLS"/> -->

取消相关注释
二、指定对应的keystore文件
如上文的baidu.keystore,当然若生成keystore时,忘记指定路径,则默认是在C:\Users<账号名称>下,有一个.keystore的文件。将该文件复制到server.xml的同目录下

第三步,配置server.xml
在第一步的配置中添加两个配置:keystoreFile=“路径/.keystore” keystorePass=“即生成keystore文件时使用的密码”

保存好之后重启tomcat

客户端中需要导入证书,例如浏览器中可以通过安全导入数字证书,由于我们自己创建的证书不是公认的CA机构,所以导入时需要选择导入“受信任的根证书颁发机构”,导入完成后再访问,你会发现网站的前端的安全警告变成了小锁图标,标识证书生效了。

访问https://localhost:8443即可。

内网数字证书的生成与使用相关推荐

  1. 内网ssl证书颁发_使用SSL和开放源证书颁发机构消除垃圾邮件

    内网ssl证书颁发 MailCleaner是功能丰富的开源反垃圾邮件解决方案. 它的可分发虚拟设备(VM)开箱即用,带有针对Web界面和MTA服务的自签名证书. 这要求您提供自己的有效的,公共信任的证 ...

  2. 内网后渗透,生成免杀后门!!

    大家好,初来CSDN请大家多多关注.今天给大家带来的是后内网渗透---免杀木马生成!! 经过本人的一段时间研究终于研究出了一个过火绒等免杀后门,过程有点复杂,待我细细道来. 一.在自己公网服务器上面装 ...

  3. java生成数字证书_java生成数字证书方法

    Java 中生成数字证书也很简单的. 1.创建证书 Java 中的 keytool.exe (位于 JDKBin 目录下)可以用来创建数字证书,所有的数字证书是以一条一条(采用别名区别)的形式存入证书 ...

  4. 计算机内的数字证书怎么删除,支付宝数字证书怎么删除?数字证书卸载方法教程...

    支付宝数字证书是保护资金安全的利器,支付宝规定:一旦安装数字证书后,只能在已经安装数字证书的电脑上进行支付操作,换到一台陌生电脑后需要重新安装数字证书才能支付.那么支付宝数字证书怎么删除?下面小编就为 ...

  5. 计算机内的数字证书怎么删除,如何删除电脑中的农业银行数字证书

    把旧电脑上的证书导出,然后导如到新电脑浏览器证书导出(备份)流程浏览器证书下载以后,一般需要将其导出成文件来备份,以备在不同的机器上使用时再次安装.一般情况下,刚下载的浏览器证书是允许被导出的,因此, ...

  6. 数字证书应用综合揭秘(包括证书生成、加密、解密、签名、验签)

    引言 数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件.为现实网络安全化标准如今大部分的 B2B.B2C.P2P.O2O 等商业网站含有重要企业资料个人资料的信息资信网站 ...

  7. HTTPS生成数字证书

    由于 HTTPS 具有良好的安全性,在开发中得到了越来越广泛 的应 像微信公众号 .小 程序 等的开发都要 使用 HTTPS 来完成. 在\j dk \ bin 录下 ,通过这个 工具可 以自己 生成 ...

  8. http\https的连接过程及数字证书详解

    http\https的连接过程及数字证书详解 内推军p185 http连接过程(相当于输入url会发生什么) 1.域名解析 2.发起TCP的三次握手 3.Web浏览器向服务器发送http请求命令 4. ...

  9. 内网离线 k3s Rancher 高可用安装部署流程

    文章目录 1. 总体架构 1.1 节点规划 1.2 架构设计 2. 节点准备 2.1 NTP 时间同步服务 2.1.1 NTP 程序包下载 2.1.2 NTP 服务端安装 2.1.3 NTP 客户端安 ...

  10. 数字证书KeyTool使用(第二篇)

    http://my.oschina.net/frankies/blog/344914 J2SDK提供了keytool命令行工具,可以根据指定的参数来创建数字证书.生成的证书或证书库默认保存在命令行当前 ...

最新文章

  1. JS Array.reduce 对象属性累加
  2. 一步一步学Silverlight 2系列(18):综合实例之RSS阅读器
  3. python redis 消息队列_python中利用redis构建任务队列(queue)
  4. java正则替换标点
  5. 重磅发布!吴恩达 AI 完整课程资源超级大汇总!
  6. php中bc,php中BC高精确度函数库
  7. linux 统计_聊聊 Linux 的内存统计
  8. 用JavaScript实现的设计模式之commandline(命令行)模式
  9. Java加密与解密的艺术~SM4实现
  10. 排序算法之----快速排序(快速上手快速排序)
  11. navicat连接批量删除_多连接数据库管理工具:Navicat Premium for Mac
  12. 【随记】还原SQL Server数据库步骤
  13. Excel的设置 .net
  14. 计算机程序员的英文求职面试,程序员英文面试自我介绍
  15. python百度地图标注自己的店名_百度地图上怎么显示店名 百度地图标注店名方法...
  16. 《国际经济学(商学院)》
  17. 安费诺面试经验(已面试,等通知)
  18. jQuery教程_编程入门自学教程_菜鸟教程-免费教程分享
  19. eclipse项目名旁边一个红xx,解决办法
  20. x射线管的kV、mA、mAs

热门文章

  1. python量化交易策略实例_Python写一个量化股票提醒系统实例
  2. ads的designguide打不开报错
  3. ubuntu更改网卡设置等出现输入default keyring密码的解决方法
  4. PCL中3D点云特征描述与提取(二)
  5. Payton猜词游戏
  6. c语言解除键盘锁定,笔记本键盘怎么解除锁定
  7. 【我是老中医】codeblocks无法编译的问题解决方法
  8. spark-streaming 编程(四)自定义输出foreachRDD
  9. 5分钟学会用代码发送邮件
  10. 修改linux的ip地址及网关,Linux 修改 IP地址 和 网关