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
下一篇 2017-04-20

相关推荐

  • 马哥教育网络班21期-第三周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who|cut -d" " -f1|uniq -c|awk '{print $2}' 2、取出最后登录到当前系统的用户的相关信息。 last |awk 'NR==1{print $0}' last |sed -n &…

    Linux干货 2016-07-29
  • Linux下用户属性的更改

      Linux下更改用户的属性一般使用usermod命令   基本格式如下:            Usermod[options]  login      [options]中具体参数如下:    -u  U…

    Linux干货 2017-05-30
  • python使用paramiko 模块建立ssh通讯

    一 paramiko简介 下文是我从别人博客那里copy下来的: paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。 由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux, Solaris, BSD, MacOSX, Windows…

    Linux干货 2017-03-07
  • 加密解密基础、PKI以及自建私有CA

    加密解密基础、PKI以及自建私有CA 加密是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。 解密就是加密的逆向操作,将加密过的不可读的数据经过处理,能够是之前不可读的信息还原成可读信息。 PKI是Public Key Infrastructure的首字母缩写,翻译过来就是公钥基础设施;…

    Linux干货 2016-12-07
  • 优云老王(四)干货总结:数据带来的奇妙世界

    作为产品经理的我们,不仅仅需要业务敏感的直觉,还需要数据驱动我们的产品不断创新!关于如何看数据,我列了主要的四个场景。 场景一:看页面点击,了解用户关注什么,卡在哪里 给谁看:产品经理和交互设计师 看什么: 由于我们对Web应用的所有界面,可交互元素都做了埋点,那么我们就可以看用户在页面里都做了哪些点击动作。首先是整个页面的横向比较,每个页面本身的操作数(重…

    2016-09-19
  • Linux基础知识(一)-linux哲学思想,基础命令,FHS

    1.描述计算机的组成及其功能 2.按系列罗列Linux 的发行版,并描述不通发行版之间的联系和区别. 3.描述Linux的哲学思想,并按照自己的理解对其进行解释 4.说明Linux系统命令的使用格式,详细介绍ifconfig,echo,tty,startx,export.pwd,history,shutdown,poweroff,reboot,hwclock…

    Linux干货 2016-09-22