1. mqtt第三方库支持openssl a, 编译openssl库(我使用的是1.0.1),在mqtt源码目录下创建openssl文件夹,并拷贝编译完成的库文件与头文件到此文件夹下。 b, 修改mqtt(源码从git上获取https://github.com/eclipse/paho.mqtt.c.git )编译选项,PAHO_WITH_SSL,OPENSSL_SEARCH_PATH。修改后需要重新清除,重新编译。
OpenSSL是一个功能极其强大的命令行工具,可以用来完成公钥体系(Public Key Infrastructure)及HTTPS相关的很多任务。这个速查手册整理了常用的OpenSSL命令的使用方法,例如生成私钥、生成证书签名请求以及证书格式转换等。
生成CA私钥(.key)–>生成CA证书请求(.csr)–>自签名得到根证书(.crt)(CA给自已颁发的证书)。
SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道(Secure socketlayer(SSL),SSL安全协议主要用来提供对用户和服务器的认证;对传送的数据进行加密和隐藏;确保数据在传送中不被改变,即数据的完整性,现已成为该领域中全球化的标准。由于SSL技术已建立到所有主要的浏览器和WEB服务器程序中,因此,仅需安装服务器证书就可以激活该功能了)。即通过它可以激活SSL协议,实现数据信息在客户端和服务器之间的加密传输,可以防止数据信息的泄露。保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否是真实可靠。 SSL网站不同于一般的Web站点,它使用的是“HTTPS”协议,而不是普通的“HTTP”协议。因此它的URL(统一资源定位器)格式为“https://www.baidu.com”。
SSL 是目前网站的标配了,如果你还需要使用 Google 或者 Apple 的服务的话,你的网站要求必须使用 SSL。
wget http://www.openssl.org/source/openssl-1.0.0a.tar.gz
今天工作中需要给tomcat7配置SSL证书,以使用https访问tomcat服务。以前都是自签名,照着网上的文档完成的,这回有一点不同的是https证书已经从GoDaddy买回来了,配置过程中遇到了一点坑,这里记录一下。 tomcat7配置SSL证书 从GoDaddy买来的证书包括3个文件,test.com.key, test.com.crt, godaddy_intermediate.crt。这里稍微解释一下,这3个文件。 test.com.key是私钥文件,文件内容如下: -----BEGIN RSA
为了防止内网渗透,将gitlab服务的访问添加了ssl,具体步骤如下: 修改配置文件 [xieshuang@VM_177_101_centos gitlab]$ sudo vim /etc/gitlab/gitlab.rb #13行的 http >> https external_url 'https://ip:port' #修改nginx配置 810行 nginx['redirect_http_to_https'] =true nginx['ssl_certificate'] = "/e
Csr 是证书请求文件,用于申请证书。在制作csr文件的时,必须使用自己的私钥来签署申,还可以设定一个密钥。
这是因为 Nginx 将 Apache 配置需要的 3 个文件中的 2 个文件合并成一个文件了。
下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下) 1.首先要生成服务器端的私钥(key文件): openssl genrsa -des3 -out server.key 1024 [root@airwaySSL openssl]# cd ssl/ [root@airwaySSL ssl]# pwd /home/openssl/ssl [root@airwaySSL ssl]# ls certs man misc openssl.cnf private server.csr server.key 运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施! 去除key文件口令的命令: openssl rsa -in server.key -out server.key 2.openssl req -new -key server.key -out server.csr -config openssl.cnf [root@airwaySSL bin]# openssl req -new -key server.key -out server.csr -config openssl.cnf Enter pass phrase for server.key:12345 You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:china Locality Name (eg, city) []:wuhan Organization Name (eg, company) [Internet Widgits Pty Ltd]:airway Organizational Unit Name (eg, section) []:airway Common Name (eg, YOUR name) []:airway Email Address []: Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []: 生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可. 3.对客户端也作同样的命令生成key及csr文件: openssl genrsa -des3 -out client.key 1024 Generating RSA private key, 1024 bit long modulus ...........++++++ ..++++++ e is 65537 (0x10001) Enter pass phrase for client.key:12345 Verifying - Enter pass phrase for client.key:12345 openssl req -new -key client.key -out client.csr -config openssl.cnf [root@airwaySSL bin]# openssl req -new -key client.key -out client.csr -config openssl.cnf Enter pass phrase for client.key:1234
辉哥在学习蚂蚁BAAS系统时,发现了一堆证书或者公私钥名称,包括trustCa,ca.crt,client.crt,client.key,pub.txt,MyPKCS12.p12等等文件,不知道干什么用,内心是奔溃的。后来在阿里专家孙善禄的指导下,输出了《蚂蚁区块链第8课 如何创建新的账户?》搞清楚了user.key和pub.txt文件的作用。 本文着重于介绍SSL/TLS工作原理,带着大家一起学习trustCa,ca.crt,client.key,client.crt,client.key等文件的作用。
本文部分参考: https://www.wosign.com/faq/faq2016-0309-03.htm https://www.wosign.com/faq/faq2016-0309-04.htm http://blog.csdn.net/hherima/article/details/52469674
下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下)
最近在使用RC的时候碰到了一个问题:创建RC后无法自动创建Pod 网上搜索,得到出现该问题的原因是:身份认证。 解决的办法有两种:(1)跳过认证(2)解决认证 跳过认证 跳过认证的解决办法是
在现代企业环境中,保障数据的安全和完整是至关重要的。消息队列作为系统间通信的重要桥梁,其安全性直接关系到企业数据的安全。RabbitMQ作为一个广泛应用的消息中间件,提供了多种安全机制,其中SSL/TLS加密是非常重要的一环。为了保障消息传输的安全,我们计划为现有的RabbitMQ镜像集群配置SSL加密。
[root@www.linuxidc.com]#yum -y install mod_ssl
创建自签名根根证书过程:生成CA私钥(.key)-->生成CA证书请求(.csr)-->自签名得到根证书(.crt)(CA给自已颁发的证书)
查看证书信息命令 openssl x509 -in myCA.crt -noout -text
openssl genrsa -out keys/RootCA.key 2048
PostgreSQL 有一个对使用 SSL 连接加密客户端/服务器通讯的本地支持,它可以增加安全性。这个特性要求在客户端和服务器端都安装 OpenSSL 并且在编译 PostgreSQL 的时候打开这个支持(见Chapter 16)。
说明:之前说过LNMP环境配置SSL证书最简单教程和Nginx环境强制http 301跳转https的方法,可能有人强制http跳转到https://www.yourdomain.com后,会出现这样的情况,浏览器直接输入https://yourdomain.com跳转不到之前设置的https://www.yourdomain.com,相信很多强迫症的人会很不习惯,这可能之前只设置了80端口的跳转,没设置443端口,这里说下方法。
LAMP下配置HTTPS非常简单,本文主要介绍ubuntu下apache配置https的具体步骤和流程,证书为服务器生成的本地证书,希望对大家有所帮助。
C:\Users\wood>openssl genrsa -des3 -out root.key Generating RSA private key, 2048 bit long modulus …………………………………………………………….+++ .+++ e is 65537 (0x10001) Enter pass phrase for root.key: Verifying – Enter pass phrase for root.key:
在公网环境下,设备接入要保证安全性,server端既要验证设备的身份,设备也要验证server端的身份,这时就需要做双端互相认证。
利用OpenSSL生成库和命令程序,在生成的命令程序中包括对加/解密算法的测试,openssl程序,ca程序.利用openssl,ca可生成用于C/S模式的证书文件以及CA文件.
访问地址 https://192.168.70.206 私钥和自有签名 https://raw.githubusercontent.com/michaelliao/itranswarp.js/master/conf/ssl/gencert.sh
注意,这里的 Organization Name (eg, company) [Internet Widgits Pty Ltd]: 后面生成客户端和服务器端证书的时候也需要填写,O和OU不要写成一样的!!!
& 简介: Netscape公司提出的安全套接层(Secure Sockets Layer)的概念,简称SSL。顾名思义,这是一个建立在Socket层的安全协议,它屏蔽了高层协议如telnet、ftp、http的区别,把安全建立在了传输之上。目前该协议以被广泛采纳,它所定义的很多功能都成了下一代IP协议IPV6的一部分。 & 所需资源: &1.2.1 所需包 1. Apache 1.3.19.tar.gz 下载网址: http://www.tux.org/pub/net/apache/dist/apache_1.3.17.tar.gz 2. openssl 0.9.6 要用他来生成密钥和签署证书 下载网址: http://www.openssl.org/source/openssl-0.9.6.tar.gz 3. mod_ssl 2.8.0 下载网址: http://www.modssl.org/source/mod_ssl-2.8.0-1.3.19.tar.gz &1.2.2 安装过程 1. 编译 OpenSSL: cd /usr/local tar zxvf openssl-0.9.6.tar.gz cd /usr/local/openssl-0.9.6 ./config --prefix=/usr/local/openssl #注意,这里是 config 而不是 configure。 make make test make install 2. 编译MOD_SSL cd /usr/local tar zxvf mod_ssl-2.8.0-1.3.19 cd /usr/local/mod_ssl-2.8.0-1.3.19 ./configure --with-apache=../apache_1.3.19 3. 编译apache cd /usr/local tar zxvf apache_1.3.19 cd /usr/local/apache_1.3.19 SSL_BASE=../openssl-0.9.6 \ ./configure --prefix=/usr/local/apache_1.3.19 \ --enable-module=ssl \ --enable-shared=ssl make 4.生成CA make certificate TYPE=custom 说明:这一步要生成你自己的 CA (如果你不知道,我也不能细说了,简单地说就是认证中心),和用它来为你的服务器签署证书。 STEP 0: 选择算法,使用缺省的 RSA STEP 1: 生成 ca.key,CA的私人密钥 STEP 2: 为CA生成X.509的认证请求 ca.csr 要输入一些信息: Country Name: cn 国家代码,两个字母 State or Provice name: An Hui 省份 Locality Name: Bengbu 城市名 Organization Name: Home CA 组织名,随便写吧 Organization Unit Name: Mine CA Common Name: Mine CA Email Address: sunstorm@263.net 我的Email Certificate Validity: 4096 四千多天,够了吧 STEP 3: 生成CA的签名,ca.crt STEP 4: 生成服务器的私人密钥,server.key STEP 5: 生成服务器的认证请求,server.csr 要输入一些信息,和STEP 2类似, 不过注意 Common Name是你的网站域名,如 www.mydomain.com Certificate Validity不要太大,365就可以了。 STEP 6: 为你的服务器签名,得到server.crt STEP 7-8: 为你的 ca.key 和 server.key 加密,要记住pass phrase。 下面完成apache的安装 make install vi /usr/local/apache/conf/httpd.conf 修改BindAddress 和 ServerName 如果要改变 DocumentRoot 要记得把httpd.conf里SSL Virtual Host Conte
执行完以上命令后,当前目录会多出“domain.key”和“domain.csr”文件
工作中我相信你一定会遇到处理数字证书的时候。各种平台,各种语言,它们采用的证书格式与标准都不相同,多多少少存在一些差异。实际上证书仍然是那个证书,只是格式发生了变化。 公私钥 分开存储 公私钥合并为一个文件 有些采用二进制文件 有些事二进制文件做了BASE64编码 有些证书做了签名 有些证书加入了密码 不同组织有不同的编码。例如微软喜欢使用 x509 下面内容节节选自《Netkiller Cryptography 手札》 接下来几天我们将讨论密钥证书相关话题。 文章出处: http://www.netk
Kubernetes 系统提供了三种认证方式:CA 认证、Token 认证 和 Base 认证。 CA 双向认证方式是最为严格和安全的集群安全配置方式,也是我们今天要介绍的主角。
CSR:证书签名请求,即公钥,生成证书时需要将此提交给证书机构,生成 X509 数字证书前,一般先由用户提交证书申请文件,然后由 CA 来签发证书
在做银联支付的时候,因为是多商户的,所以采用单独的私钥加密,需要提取 pfx 中的私钥
Redis 6实现了通道加密,提高了redis的安全性。Redis作为缓存数据库,里面很有可能缓存重要的敏感信息,所以支持tls通道加密还是很有必要的,当然敏感信息还是建议加密保存。
前提条件:已经准备好CA根证书(etcd在制作CA证书时需要CA根证书),并且把CA根证书文件ca.key和ca.crt拷贝到3个etcd节点的/etc/kubernetes/pki目录下。 3台主机的IP地址分别为192.168.3.135、192.168.3.136、192.168.3.137。 要安装的etcd版本:v3.4.13-linux-amd64。
上述命令将生成一个 EC 私钥文件 root.key,使用 prime256v1 曲线参数。
总的来说,客户端使用自签名证书供服务端验证可以加强通信的安全性和可靠性,确保通信双方的身份和数据的安全,建立起信任关系,从而提高整体系统的安全性。
在go 1.15以上版本,必须使用SAN方式,否则会报"transport: authentication handshake failed: x509: certificate relies on legacy Common Name field, use SANs instead"
命令:openssl req -new -key server.key > server.csr
1、客户端向服务端发送SSL协议版本号、加密算法种类、随机数等信息。 2、服务端给客户端返回SSL协议版本号、加密算法种类、随机数等信息,同时也返回服务器端的证书,即公钥证书 3、客户端使用服务端返回的信息验证服务器的合法性,包括:
openssl自建CA默认签署的是单域名证书,因为单台服务器上有多个https域名,签署多域名证书能方便很多,今天找了很久,除了一些卖证书的网站上有scr工具能加“使用者备用名称”,都没有找到openssl相关的添加方法。
编辑文件并在里面填入我们得到以上文件 的 —–BEGIN PRIVATE KEY—– 和 —–END PRIVATE KEY—- 之间的部分
第二步:输入密码。这里会输入两次,填写一样即可,随意填写一个,下一步就会删除这个密码。
在Apache中要启用HTTPS访问,需要开启Openssl,也就需要crt和key两个和证书相关的文件了,那如果用制作呢?之前发过博文介绍过用在线生成的方式,但搞PHP编程的人有些东西还是想在自己的电脑上搞定,今天就介绍一下,如何用PHP中的Openssl在本地生成csr、key、crt证书文件的方法。本地生成的证书文件虽然浏览器认证都通不过,但用于本地的开发环境测试还是没有问题的。
在上一篇文章里我们大致介绍了安装 k8s集群需要安装哪些组件以及我们的环境,在这篇文章里我们主要介绍制作ssl证书,我们以制作docker server和docker client证书为例。后面集群安装还需要很多证书,例如etcd,kube-apiserver,kubelet,harbor,kube-dashboard,nginx-ingress,tiller等等,都可以以这里作为参考。另外再额外说一下,我们后面安装docker开启了docker的tcp访问,也就是说可以远程连接操作docker,并且开启双向ssl client auth,所以在这里制作docker的server和client证书。默认docker client和docker server是通过unix sock通讯的(在同一台机器),在实际环境中要根据自己需要来决定是否开启tcp通讯。
openssl采用C语言作为开发语言,这使得它具有优秀的跨平台性能。openssl支持Linux、UNIX、windows、Mac等平台。openssl目前最新的版本是0.9.8e.
总之,使用 CA 签发证书可以确保通信的安全性、可靠性和完整性,为网络通信提供了重要的保护和信任基础。
etcd通过客户端证书支持SSL/TLS以及身份验证,客户端到服务器以及对等(服务器到服务器/群集)通信。
领取专属 10元无门槛券
手把手带您无忧上云