一、  安装准备



1.    安装Openssl 

要使Apache支持SSL,须要首先安装Openssl支持。这里使用的是openssl-0.9.8k.tar.gz   

下载Openssl:http://www.openssl.org/source/

       tar -zxf openssl-0.9.8k.tar.gz    //解压安装包   

       cd openssl-0.9.8k                 //进入已经解压的安装包   

       ./config                          //配置安装。推荐使用默认配置   

       make && make install              //编译及安装   

openssl默认将被安装到/usr/local/ssl 



2.    安装Apache

http://httpd.apache.org/下载httpd源码,这里使用的是httpd2.2.22;

./configure --prefix=/usr/local/httpd2.2.22 --enable-so --enable-ssl --with-ssl=/usr/local/ssl --enable-mods-shared=all                               //配置安装。

推荐动态编译模块   

make && make install  

动态编译Apache模块,便于模块的载入管理。Apache 将被安装到/usr/local/apache   



二、  生成证书

为了高速搭建好可用的httpsserver,须要在/usr/local/httpd2.2.22/conf/文件夹下

(也能够在别的文件夹下生成,将生成后的文件复制到/usr/local/httpd2.2.22/conf/文件夹下)

依次执行下面命令:

1. openssl req -new -text -out server.req

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

3. openssl req -x509 -in server.req -text -key server.key -out server.crt

详细的能够參考openssl文档;

三、  Apache 的配置   

打开apache安装文件夹下conf文件夹中的httpd.conf文件,找到   

#LoadModule ssl_module modules/mod_ssl.so   

删除行首的配置语句凝视符号“#”   

保存退出。   

打开apache安装文件夹下conf文件夹中的ssl.conf文件,找到   

在配置文件里查找下面配置语句   

SSLCertificateFile conf/ssl.crt/server.crt             将服务器证书配置到该路径下   

SSLCertificateKeyFile conf/ssl.key/server.key        将服务器证书私钥配置到该路径下   

#SSLCertificateChainFile conf/ssl.crt/ca.crt          删除行首的“#”号凝视符,并将中级CA证书intermediate.crt配置到该路径下   

保存退出。并重新启动Apache。

重新启动方式:   

进入Apache安装文件夹下的bin文件夹,执行例如以下命令   

./apachectl -k -stop   

./apachectl start



通过https方式訪问您的网站,測试网站证书的安装配置。

此时即能够通过http和https訪问搭建好的server;

參考文档:

http://sarsgetaway.iteye.com/blog/1121495

http://www.postgresql.org/docs/8.4/static/ssl-tcp.html

linux 搭建https server (apache)的更多相关文章

  1. Linux 搭建SVN server

    一. SVN 简单介绍 Subversion(SVN) 是一个开源的版本号控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository ...

  2. Linux搭建mysql、apache、php服务总结

    本随笔文章,由个人博客(鸟不拉屎)转移至博客园 写于:2018 年 04 月 22 日 原地址:https://niaobulashi.com/archives/linux-mysql-apache- ...

  3. linux搭建zabbix server

    一.linux配置jdk 1.安装rpm包,安装完成位置:/usr/java/jdk1.8.0_152 2.配置环境变量/etc/profile: JAVA_HOME=/usr/java/jdk1.. ...

  4. (总结)CentOS Linux搭建SVN Server配置详解

         PS:虽然在公司linux服务器上搭建过几次svn,但是时间长了,有些配置操作会忘掉,上网搜索的结果都不大满意,有幸在前几天看到一篇算是最满意的svn搭建文章,转载一下以备以后使用,原文地址 ...

  5. Linux搭建SQL server服务器

    我们知道在Linux下安装服务有很多方式,最为简单的也就是yum安装,但是很多服务通过yum是无法安装的,如果想使用yum安装,需要指定yum安装仓库,我们今天需要安装MSQL Server,所以需要 ...

  6. Linux搭建PHP+MySQL+Apache环境

    环境: CentOS 6.4 MySQL详细安装可参考:http://www.cnblogs.com/yangxia-test/archive/2012/11/12/2766237.html Apac ...

  7. linux 搭建gitlab server

    以root 身份进行登录linux 1.先安装相关依赖: sudo yum install -y curl policycoreutils-python openssh-server 2.开启SSH开 ...

  8. scalaWindows和Linux搭建

    Windows搭建 https://www.cnblogs.com/freeweb/p/5623372.html Linux搭建 https://www.cnblogs.com/freeweb/p/5 ...

  9. Linux apache自建证书搭建https

    前言          搭建https有两种方式,分为单向认证和双向认证.单向认证就是传输的数据加密过了,但是不会校验客户端的来源,也就只有客户端验证服务端证书.   单向认证 1.安装mod_ssl ...

随机推荐

  1. JSP执行原理图

  2. InputStream和Reader

    java.io下面有两个抽象类:InputStream和ReaderInputStream是表示字节输入流的所有类的超类Reader是用于读取字符流的抽象类InputStream提供的是字节流的读取, ...

  3. T-SQL语句以及几个数据库引擎

    创建表 注意事项: A.自增长             B.数据库引擎, ISAM 是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数.因此,IS ...

  4. JS——indexOf replace search

    indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置 注释:indexOf() 方法对大小写敏感!如果要检索的字符串值没有出现,则该方法返回 -1. 语法:searchvalue, ...

  5. inflate(int resource, ViewGroup root, boolean attachToRoot)见解

    /** * Inflate a new view hierarchy from the specified xml resource. Throws * {@link InflateException ...

  6. UIResponder详解

    UIResponder Class Reference Managing the Responder Chain 1.- (UIResponder *)nextResponder 返回接收者的下一个相 ...

  7. include和require区别

    1.  include()执行的时候需要引用的文件每次都要进行读取评估; require()执行时需要引用的文件只处理一次(实际上执行时需要引用的文件内容替换了require()语句) 可以看出若有包 ...

  8. C解析config

    #cat bb.c #include <stdio.h> #include <stdlib.h> #include <string.h> #include < ...

  9. Python学习【第5篇】:Python之函数(自定义函数,内置函数,装饰器,迭代器,生成器、模块)

    一.为什么要使用函数? 1.避免代码重用 2.提高代码的可读性 二.函数的定义与调用 1. def  函数名(参数1,参数2): ''' 函数注释''' print('函数体') return 返回值 ...

  10. 棋盘DP三连——洛谷 P1004 方格取数 &&洛谷 P1006 传纸条 &&Codevs 2853 方格游戏

    P1004 方格取数 题目描述 设有N $\times N$N×N的方格图(N $\le 9$)(N≤9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字00.如下图所示(见样例): A ...