环境:linux

配置https协议,需要2大步骤:

一、生成服务器证书

  1、安装openssl软件

    yum install -y openssl mod_ssl

  2、生成服务器私匙,生成server.key文件

    openssl genrsa -des3 -out server.key 1024

  3、填写证书信息,生成server.csr文件

    openssl req -new -key server.key -out server.csr

  4、为证书签证,生成server.crt文件

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

  5、移动生成的server.key文件,server.crt文件移到Apache的conf目录下

二、修改配置文件

  1、修改httpd.conf文件,去掉下面两行代码的注释

    LoadModule ssl_module modules/mod_ssl.so
    Include conf/extra/httpd-ssl.conf

  2、修改httpd-ssl.conf文件,增加下面这些代码

    <VirtualHost 192.169.20.1:443>                               ------配置虚拟主机
            DocumentRoot /apache/htdoc                            ------要与httpd.conf的DocumentRoot的文件路一样
            ServerName www.xxoo.com                              -------在浏览器里输入的域名
            SSLEngine on                  -------开启ssl连接
            SSLCertificateFile /etc/httpd/conf/server.crt     ------与第一大步骤的第5小步骤的文件路径对应
            SSLCertificateKeyFile /etc/httpd/conf/server.key    ------与第一大步骤的第5小步骤的文件路径对应
    </VirtualHost>

  3、把httpd-ssl.conf文件中所有的apache的路径替换为当前安装的APACHE的路径(挺重要的)

  4、修改httpd-ssl.conf的代码

    SSLMutex  "/usr/local/Apache2/logs/ssl_mutex"

    改成

    SSLMutex default

完成以上两个步骤后,重启Apache服务器。这时会要求输入密码(生成server.key时的密码)。最坑的是,密码输入正确了,但apache还是没开启,这个问题可以这样解决:问题解决,照做以下步骤即可:

  cp server.key server.key.tmp

  openssl rsa -in server.key.tmp -out server.key   --------  这时会要求你输入密码,输入生成server.key时的密码时就行

好了,现在重启apache就不会有输入密码的提示了。(其实,是清空了密码)。现在在浏览器输入:  https://www.xxoo.com。就会出现跟http协议不一样的神奇页面了

在linux下的apache配置https协议,开启ssl连接的更多相关文章

  1. Apache 配置HTTPS协议搭载SSL配置

    在设置Apache + SSL之前, 需要做:     安装Apache, 请参见: Windows环境下Apache的安装与虚拟目录的配置, 下载安装Apache时请下载带有ssl版本的Apache ...

  2. Apache配置HTTPS协议搭载SSl配置全过程

    1.首先要开启相应的扩展和辅助的dll(ssleay32.dll,libeay32.dll)到system32下 2.生成服务器证书 安装好在bin目录下有一个openssl.exe文件,用来生成证书 ...

  3. apache配置https协议

    安装openssl有两种方式,第一种直接下载安装包,装上就可运行:第二种可以自己下载源码,自己编译.下面对两种方式均进行详细描述. 一.下载和安装openss 方法一:直接使用openssl安装包 W ...

  4. Linux下设置Apache支持Https服务

    HTTPS的主要作用: 1)建立一个信息安全通道,来保证数据传输的安全性 2)确认网站的真实性 HTTPS与HTTP的区别: 1)HTTPS协议需要到ca申请证书,免费证书较少 2)HTTP是超文本传 ...

  5. 【转】Linux下nginx配置https协议访问的方法

    一.配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module 查看nginx编译参数:/usr/local/nginx/sbin/ ...

  6. Linux下Apache配置HTTPS功能

    Apache配置HTTPS功能  转 https://www.cnblogs.com/liaojiafa/p/6028816.html 一.yum 安装openssl和openssl-devel,ht ...

  7. Linux服务之nginx服务篇四(配置https协议访问)

    一.配置nginx支持https协议访问 编译安装nginx的时候需要添加相应的模块--with-http_ssl_module和--with-http_gzip_static_module(可通过/ ...

  8. tomcat配置https协议

    tomcat配置https协议 1.找到本地jdk底下的bin目录,bin目录底下存在文件keytool.exe(在bin目录下空白处,按住shift右击,打开命令窗口,如下图) 2.在cmd的命令窗 ...

  9. PHP扩展类ZipArchive实现压缩解压Zip文件和文件打包下载 && Linux下的ZipArchive配置开启压缩 &&搞个鸡巴毛,写少了个‘/’号,浪费了一天

    PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有 ...

随机推荐

  1. Performance Tuning of Spring/Hibernate Applications---reference

    http://java.dzone.com/articles/performance-tuning For most typical Spring/Hibernate enterprise appli ...

  2. jQuery各种选择器总结

    首先介绍几个简单的: id选择器 $('#p1').html('<font color='red'>nihao</font>); 类选择器:表示页面上所有应用了a样式的标签 $ ...

  3. ssh 无密码登录远程服务器

    在讲下文之前,我都默许大家都已经生成了自己的ssh公钥和密钥,在自己的~/.ssh 目录下面,如果没有,请使用 ssh-keygen -t rsa -C "你的邮箱" 命令生成 1 ...

  4. 为当前的div 动态添加一个样式

    $("#target").addClass("newClass");

  5. .Net程序员学习Linux(二)

    本次知识点:递归命令符,wc命令,文档编辑器 vi的简单使用,文本常用操作命令,find查询文件命令,grep匹配文本中对应的关键字 递归命令符 递归对于程序猿来说不默认,经常用于级联关系,一层套一层 ...

  6. MySQL Workbench 6.3 CE 不显示MySql、infomation_schema等数据库

    MySQL Workbench 6.3 CE 不显示MySql.infomation_schema等数据库 通过修改偏好设置可显示: 1.Edit-->Preferences....-----& ...

  7. linux启动黑屏或无法进入会话管理器

    原因是因为更新软件时删除了/etc中的xserver配置文件,进入livecd将相关文件拷贝即可

  8. WCF 无法生成 client

    在MVC中调用WCF 总是没有client 后来在网上查找原因,去掉Reuse type in referrenced assenbiles ,就可以生成代理代码.

  9. Java学习----有风险的代码(异常)

    Exception继承了Throwable,但是它本身是有异常类的父类. RuntimeException:运行时异常 Exception->RuntimeException->NullP ...

  10. python细节

    1.assert 断言语句,可判断一句话真假,若为假会抛出AssertionError. eg. assert 1==1     assert 1==2则AssertionError 2.单引号双引号 ...