当前位置:文档之家› HTTPS服务器搭建

HTTPS服务器搭建

HTTPS服务器搭建
HTTPS服务器搭建

HTTPS服务器搭建

1前言

本文档描述了利用Apache和OpenSSL搭建HTTPS服务器的流程。

搭建环境:

1)操作系统:Win7_64位

2)Perl版本:Perl_V5.24.0

3)MS SDK:Visual Studio 2015

4)Apache版本:Apache_V2.2.25

5)OpenSSL版本:OpenSSL_V0.9.8

2安装和配置过程

2.1安装Perl

双击ActivePerl-5.24.0.2400-MSWin32-x64-300558.exe进行安装,安装过程采用默认设置。

若PC已安装Perl5,此步骤可以省略。

2.2安装 Visual Stdio

双击vs_community__340839533.1480386567.exe进行安装,安装过程采用默认设置。

若PC已安装Visual Stdio,此步骤可省略。

2.3安装 Apache+OpenSSL0.9.8

双击httpd-2.2.25-win32-x86-openssl-0.9.8y.msi进行安装。

安装过程中注意事项:

1)将安装路径修改为 C:\Apache2.2\,如下图所示。

2)注意的就是正确设置Network Domain和Server Name这两项。如果想远程也能访问,这里就填本机ip地址;如果只想本地测试,那么就填localhost或内网IP (如192.168.1.105)。

安装完成后会生成以下文件:

1)Apache配置文件

C:/Apache2.2/conf/httpd.conf

C:/Apache2.2/conf/extra/httpd-ssl.conf

2)SSL相关的文件

C:/Apache2.2/modules/ mod_ssl.so

C:/Apache2.2/bin/ openssl.exe

C:/Apache2.2/bin/libeay32.dll

C:/Apache2.2/bin/ssleay32.dll

C:/Apache2.2/conf/ https://www.doczj.com/doc/6810542637.html,f

图 2.1 修改Apache安装路径

2.4设置HTTPS访问的根目录

用文本编辑器(记事本或NotePad++等)打开C:/Apache2.2/conf/httpd.conf,修改DocumentRoot、ServerName和Directory(如图2.2和图2.3所示)。

注:DocumentRoot设置的目录即客户端在访问该服务器时的文件根目录,后面的需与DocumetRoot保持一致;建议这两个路径保持默认设置即可,即C:/Apache2.2/htdocs。

图 2.2 修改DocumentRoot和ServerName

图 2.3 设置

2.5生成SSL证书

1)打开cmd, cd到apache安装目录的bin目录,运行openssl命令:

openssl req -config ..\conf\https://www.doczj.com/doc/6810542637.html,f -new -out my-server.c sr

运行该命令后会提示输入密码、Province Name、Common Name等,如图2.4所示。

注:

(1)“my-server“是自己取的名字,可以换成其他的,但后面设置中使用的名字必须与此保持一致。

(2)设置的密码很重要,必须记住!后面的设置过程中还会用到该密码的。

(3)提示输入“Common Name”,填本机IP地址

2)运行OpenSSL命令:

openssl rsa -in privkey.pem -out my-server.key

运行后会提示输入密码,输入1)中设置的密码即可。

3)运行OpenSSL命令:

openssl x509 -in my-server.csr -out my-server.crt -req -signkey my-server.key -days 4000

该命令将会生成一个有效期为4000天的证书

4)运行OpenSSL命令:

openssl x509 -in my-server.crt -out my-server.der.crt -outform DER

5)运行完以上命令后,会在当前目录(即C:/Apache2.2/bin/)生成以下5个文件:

privkey.pem、my-server.der.crt、my-server.csr、my-server.key和my-server.cert

将以上文件剪切到C:/Apache2.2/conf/ssl/目录下。

注:当服务器IP地址发生改变了,需重新执行上述过程,重新生成证书。

2.6设置Apache支持OpenSSL

1)修改C:/Apache2.2/conf/ httpd.conf

将LoadModule ssl_module modules/mod_ssl.so和Include conf/extra/httpd-ssl.conf前的注释符删掉。

2)修改C:/Apache2.2/conf/extra/httpd-ssl.conf,增加HTTPS访问权限将以下三行用#注释掉:

SSLOptions +StdEnvVars

增加以下行:

SSLOptions +StdEnvVars

Options +Indexes FollowSymLinks +ExecCGI

AllowOverride AuthConfig FileInfo

Order allow,deny

Allow from all

如图2.4所示。

图 2.4 修改httpd-ssl.conf

2.7修改证书和密钥文件路径

修改C:/Apache2.2/conf/extra/httpd-ssl.conf文件中SSLCertificateFile和SSLCertificateKeyFile的值,分别改为证书和私钥的文

件位置,即:

SSLCertificateFile "C:/Apache2.2/conf/ssl/my-server.crt"

SSLCertificateKeyFile "C:/Apache2.2/conf/ssl/my-server.key"

如图2.5所示。

图 2.5 修改证书和私钥的文件路径

3测试服务器

1)在开始菜单中运行Apache的Test Configuration工具, 检查设置文件是否正确

2)重新启动Apache 2.2.x

3)顺利启动之后, 在浏览器中输入 https://localhost 看看是否可以访问, 如果可以访问, 则设置成功!

若弹出以下提示界面(如图3.1),说明SSL证书未加载。

图 3.1 未加载SSL证书提示

4)加载SSL证书

打开IE浏览器的Internet选项,依次点击“内容”->“证书”,如图3.2所示。

图3.2 打开IE浏览器的证书选项

在弹出的“证书”窗口中,分别点击进入“受信任的根证书颁发机构”和“受信任的发布者”,并点击“导入(I...)”,导入前面生成的my-server.der.crt文件(C:/Apache2.2/conf/ssl/my-server.der.crt)。

图 3.3 IE浏览器导入SSL证书

完成以上证书的导入后,重新打开浏览器即可正常访问https://localhost。

相关主题
文本预览
相关文档 最新文档