https基本配置

https是http over ssl的缩写。监听在TCP的443端口上,可以基于ssl或tls协议实现http协议的安全传输。可以帮助客户端完成服务器认证,即可确保访问的服务器为所要访问的服务器,又能保证数据传输的完整性、保密性。

用户和服务器端基于https进行会话的时候,首先要建立SSL会话,下面图是建立SSL会话的过程:

一、其中建立SSL的过程为:

(1) 客户端发送给服务器端可供选择的加密方式,并向服务器请求证书;

(2) 服务器端发送证书以及选定的加密方式给客户端;

(3) 证书验正:

如果信任给其发证书的CA:

(a)验正证书来源的合法性;用CA的公钥解密证书上数字签名;

(b)验正证书的内容的合法性:完整性验正

(c)检查证书的有效期限;

(d)检查证书是否被吊销;

(e)证书中拥有者的名字,与访问的目标主机要一致;

(4) 客户端生成临时会话密钥(对称密钥),并使用服务器端的公钥加密此数据发送给服务器,完成密钥交换;

(5) 服务用此密钥加密用户请求的资源,响应给客户端;

注意:SSL会话是基于IP地址创建;所以单IP的主机上,仅可以使用一个https虚拟主机;

二、配置httpd支持https

(1) 为服务器申请数字证书;

测试:通过私建CA发证书

(a) 创建私有CA

(b) 在服务器创建证书签署请求

(c) CA签证

(2) 配置httpd支持使用ssl,及使用的证书;

# yum -y install mod_ssl

配置文件:/etc/httpd/conf.d/ssl.conf

DocumentRoot

ServerName

SSLCertificateFile

SSLCertificateKeyFile

(3) 测试基于https访问相应的主机;

# openssl s_client [-connecthost:port] [-cert filename] [-CApath directory] [-CAfile filename]

举例:

这里准备三个虚拟机,V1作为web服务器端,V2为客户端,V3为证书服务器。

1、在V3主机上建立私有CA:

2、建立自签证书:

3、填入CA信息:

4、给证书创建数据库索引文件和序列号:

至此证书就建立完成了。建立的CA为cacert.pem。

5、在V1端创建秘钥:

6、建立证书签署请求(主机名一定要和服务器的主机名保持一致,否则会验证不通过):

(邮箱地址和面可以选填)

7、在V1上把V1的证书签署请求发给证书服务器V3上,随便放在一个目录中即可:

8、在V3上签署V1的证书请求:

9、在V3上把V3签署后的证书发到V1上

这样,证书签署就完成了。

下面开始zai V1上配置httpd

由于http默认没有ssl模块,所以要安装一下组件(一定要配置好yum仓库啊!!!)

yuminstall –y mod_ssl

修改ssl.conf配置文件

再编辑V1的httpd配置文件/etc/httpd/conf/httpd.conf修改虚拟主机并修改V2的/etc/host文件,此编辑方法在上一篇文章中有,不再赘述;

启动httpd服务器service httpd start

查看443端口是否开启ss –tnl 1 | grep 443

在V1中编辑好页面后用V3给V2发一份证书

并在V2上用openssl访问V1测试

至此,就可以访问基于ssl的http服务器了^_^~

以上内容如有偏颇,望及时指正!

时间: 2024-10-26 15:38:16

https基本配置的相关文章

GitLab ce 社区版本的https方式配置(yum)

上次安装了gitlab 但是不是https现在需要全民https了今天就给大家配置https.(默认的不是https的访问登陆和git也不https的) 先备份一下咱们的配置和文件,以防咱们修改错误回退 备份配置直接执行,先进入自己的备份目录. tar -zPcf$(date  "+etc-gitlab_%Y%m%d_%H%M%S.tar.gz") /etc/gitlab 备份文件,默认在 /var/opt/gitlab/backup目录不知道可以看配置文件 gitlab_rails[

Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)

通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的.它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小. 非商业版本可以通过keytool来生成. 用keytool工具生成证书与配置 1.相关工具说明 此处使用1.7.0_79版本,如图所示: 切换到jdk bin目录下面,如图: 证书密钥生成 1.创建证书 keytool -genkey -alias [your_alias_name] -keyalg RSA -keystore

HTTPS Web配置举例

http://www.h3c.com.cn/Products___Technology/Technology/Security_Encrypt/Other_technology/Representative_collocate_enchiridion/201010/697325_30003_0.htm 关键词:HTTPS.SSL.PKI.CA.RA 摘   要:HTTPS是支持SSL的HTTP协议.用户可以通过HTTPS协议安全地登录设备,通过Web页面实现对设备的控制.本文介绍了HTTPS的配

HTTPS 证书配置

HTTPS 证书配置 现在阿里云和腾讯云都支持申请 HTTPS 证书,这里不再提,有需要的可自行google解决方案. 本文主要介绍的是通过 letsencrypt 申请免费的HTTPS证书,并将其配置在IIS WEB服务器上. 0. 申请 HTTPS 证书 在 https://www.sslforfree.com/ 申请证书,这里我以 http://sparktodo.weihanli.xyz/ 为例申请设置 输入要使用HTTPS的证书地址,生成证书及验证文件 验证域名 验证域名支持三种方式,

ASP.NET MVC https全局配置

//https全局配置 ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true; 原文地址:https://www.cnblogs.com/gaobing/p/12061471.html

基于openssl 的https服务配置

1.安装mod_ssl 2.在另一台机器上创建CA cd /etc/pki/CA (umask 077; openssl genrsa -out private/cakey.pem 2048) 3.生成文件的权限是600 4.vim  ../tls/openssl.cnf 5.找到 [ req_distinguished_name ] 6.将默认城市改成CN 7.将默认省份名称stateOrProvinceName_default 改为Hebei 8.城市名称 localityName_defa

IIS反向代理/Rewrite/https卸载配置

目标,使IIS具有类似与Nginx的功能,将指定域名的请求重定向到IIS内.IIS外.其他机器上的其他端口,并且实现https卸载功能 重点预告: 1.安装最新版urlrewrite(微软开发的)插件 2.安装最新版ARR插件(Application Request Routing) 3.添加重定向规则 4.流量:外网==>IIS==>指定网站==>UrlRewrite==>ARR==>你的目标程序的url 如果只转发到IIS内网站,则不需要ARR.如果要转发到其他程序或机器

Apache服务的HTTPS支持配置

附加题: u 案例需求 1. 基于编译安装的httpd服务器,添加HTTPS协议支持以提高安全性. 2. 当客户机通过HTTP方式访问站点时,能够自动跳转为HTTPS方式访问. u 知识提示 HTTPS指的是Hyper Text Transfer Protocol Secure,安全超文本传输协议.HTTPS实际上使用了SSL(安全套接字层)作为HTTP应用层的子层,针对明文传输的HTTP通信流进行加密,从而避免敏感信息被捕获或窃听,因此HTTPS协议在网上银行.安全邮箱等Web访问场合比较常见

Tomcat服务器https协议配置简介

一. 数字签名证书制作 1. 用jdk自带的keytool工具生成证书: 2. 导出证书: 3. 交给CA签名认证: 注意:制作详细步骤示例参见附录. 二.修改server.xml文件 修改conf/server.xml,添加以下配置 <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="htt