M22 Centos6上编译安装httpd2.4并实现HTTPS浏览

随着网络技术的发展,人们对信息安全越来越重视,传统的http浏览互联网的方式由于未经加密,其安全性广为人们诟病,https协议作为加密的互联网解决方案解决了这一问题。下面我就简要说明下如何实现通过https发布web页面的。

 

实验目的:

模拟Centos6上安装httpd2.4,并实现https加密访问主页

实验器材:

Centos6.8虚拟机

实验步骤:

1 生成自签名证书

2 下载并编译安装httpd2.4及其相关组件

3 安装ssl模块并修改httpd配置文件

实验过程:

1 生成自签名证书

https协议是基于SSL协议的,在使用https协议之前首先要获得SSLCA证书,在生产情况下此证书需要向CA证书颁发机构购买,而在实验环境下可以使用openssl工具生成自签名证书。

1)  创建根CA证书

CA证书是CA认证机构必须有的,在本实验需要先创建此证书才能为自建网站颁发证书。

cd /etc/pki/CA/ #进入CA目录
touch index.txt #创建index.txt文件,此文件记录了根CA颁发的所有证书
echo 01 > serial #添加起始计数
(umask 077;openssl genrsa -out private/cakey.pem 4096)#生成私钥
openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650 #生成根证书

2)  创建网站CA申请

(umask 066;openssl genrsa -out private/client.key 1024) #生成私钥
openssl req -new -key private/client.key -days 356 -out client.csr #通过私钥生成证书申请文件

3)  申请网站CA证书

openssl ca -in client.csr -out certs/client.cer

至此,网站的CA证书创建完成,证书文件client.cer与私钥client.key备用

2 下载并编译安装httpd2.4及其相关组件

         安装httpd2.4需要的组件包括apr-1.5.0apr-util-1.5.3httpd-2.4.10pcre及openssl-devel

1)  下载编译安装apr-1.5.0

wget http://archive.apache.org/dist/apr/apr-1.5.0.tar.gz
tar xf apr-1.5.0.tar.gz 
cd apr-1.5.0
./configure --prefix=/usr/local/apr
make && make install

2)下载编译安装apr-util-1.5.3

wget http://archive.apache.org/dist/apr/apr-util-1.5.3.tar.gz
tar xf apr-util-1.5.3.tar.gz
cd apr-util-1.5.3
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
make && make install

4)  安装pcre及openssl-devel

yum install -y pcre-devel
yum install –y openssl-devel

5)  下载编译安装httpd-2.4.10

wget http://archive.apache.org/dist/httpd/httpd-2.4.10.tar.gz
tar xf httpd-2.4.10.tar.gz
cd httpd-2.4.10
./configure --prefix=/usr/local/apache24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --enable-modules=most --enable-mpm-shared=all --with-mpm=prefork
make && make install

3 安装ssl模块并修改httpd配置文件

1) 安装ssl模块

yum install mod_ssl -y
httpd -M | grep ssl #查看模块安装情况

2)修改配置文件/usr/local/apache24/conf/httpd.conf

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

3)修改配置文件/usr/local/apach24/conf/extra/httpd-ssl.conf

DocumentRoot "/var/www/html"
ServerName www.magedu.com
SSLCertificateFile /usr/local/apach24/ssl/client.csr
SSLCertificateKeyFile /usr/local/apach24/ssl/client.key

4)修改域名

ServerName www.magedu.com:443

重启服务

/usr/local/apache24/bin/apachectl restart

原创文章,作者:realmaster,如若转载,请注明出处:http://www.178linux.com/73814

(0)
realmasterrealmaster
上一篇 2017-04-20 21:17
下一篇 2017-04-20 23:28

相关推荐

  • 运维自动化之系统安装

    自动化安装系统,cobbler的安装使用

    Linux干货 2018-01-15
  • Linux系统上命令的使用格式

    第一部分:Linux系统上命令的使用格式 命令的语法通用格式:      COMMAND OPTIONS ARGUMENTS     发起一个命令:请求内核将某个二进制程序运行为一个进程;      程序 —-> 进程   &nbs…

    Linux干货 2016-08-15
  • 系统启动这块的一些实验及基本内容–下

    下面我来讲下grub,grub在编辑的时候可以进入一种模式就是单用户模式,就是当grub.conf文件未写入密码时,普通用户将直接忽略系统密码进入系统,所以这可以称为一个捷径,也可以成为一个漏洞,当然linux的前辈们不可能连这个都想不到,他们也有自己的办法,这就是我们grub的两层加密机制,在选定登陆界面之前可以设置一次,启动内核时也可以设置一次,密码也可…

    Linux干货 2016-09-13
  • find命令基本应用

       简单的find命令查找 Find +路径+条件(支持文件通配)+找到后执行的操作 条件: 可根据文件类型查找:-type   f为普通文件 d为目录文件 l为链接文件(常用) 可根据属主和属组查找:-uid  -gid 可根据时间戳来查找:alime(查看时间)ctime(文件属性更改时间)m…

    Linux干货 2017-04-11
  • Linux文件类型及颜色标识

    文件类型(共7种): – :普通文件 d:目录文件 (directory) c:字符设备文件 (char) b:块设备文件 (block) s:本地域套接口 (socket) p:有名管道 (pipeline) l:符号连接 (link) 关于硬链接、软连接、复制之间的区别说明: 上图中,我为photo.png这个图片文件建立了一个拷贝(phot…

    Linux干货 2016-10-16
  • find 命令详解

    Find 命令详解 find:   实时查找工具, 通过遍历指定路径完成文件查找;   工作特点:     查找速度略慢     精确查找     实时查找 可能只搜索用户具备读取和执行权限的目录   语法:   find [OP…

    2017-04-09