Apache站点安全配置及配置详解
Apache是当今最为流行的web服务器,apache的站点安全可以通过身份验证、来源控制和加密访问来解决。首先我们安装一下http,至于rpm安装小编就不在这里多说了。下面给大家好好讲解一下httpd.conf这个文件里面的内容。我都给大家很好的注释在了上面,好好了解一下他们,很有助于我们来解决apache的站点安全。http://www.centoscn.com/uploads/allimg/131028/0102552423-0.png
http://www.centoscn.com/uploads/allimg/131028/01025561T-1.png
http://www.centoscn.com/uploads/allimg/131028/0102552135-2.png
服务器监听端口: Listen 80 监听端口
http://www.centoscn.com/uploads/allimg/131028/0102552630-3.png
http://www.centoscn.com/uploads/allimg/131028/010255O38-4.png
http://www.centoscn.com/uploads/allimg/131028/010255F46-5.png
下面我们来看一下第一种站点安全的解决方法:
1.身份验证
在配置文件中修改 alloworverride all
http://www.centoscn.com/uploads/allimg/131028/0102551L6-6.png
编辑一下说明文件 .htaccess
http://www.centoscn.com/uploads/allimg/131028/0102552164-7.png
authuserfile /var/www/.htpasswd
authname "please input your name and password"
authtype basic
require valid-user
http://www.centoscn.com/uploads/allimg/131028/0102553954-8.png
产生帐号文件
htpasswd-c 张号文件帐号
http://www.centoscn.com/uploads/allimg/131028/0102551K7-9.png
http://www.centoscn.com/uploads/allimg/131028/0102555247-10.png
下面我们来看看访问效果
http://www.centoscn.com/uploads/allimg/131028/0104421I3-0.png
http://www.centoscn.com/uploads/allimg/131028/01044262R-1.png
http://www.centoscn.com/uploads/allimg/131028/0104426424-2.png
2.来源控制
在站点主目录中我们可以限制访问的ip地址来达到来源的控制,实现站点安全
Order allow,deny
deny from 192.168.2.100
allow from all
我们要注意的是Order allow,deny 中allow和deny的顺序,他们的顺序决定了是先执行的顺序。
http://www.centoscn.com/uploads/allimg/131028/0104424207-3.png
http://www.centoscn.com/uploads/allimg/131028/0104422a0-4.png
http://www.centoscn.com/uploads/allimg/131028/01044213J-5.png
http://www.centoscn.com/uploads/allimg/131028/0104425L4-6.png
3.加密访问
【原理】
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
【环境】
服务器Linuxrhel5.4
客服端windows xp
安装的软件包httpd-2.2.3-31.el5.i386.rpm
mod_ssl-2.2.3-31.el5.i386.rpm
distcache-1.4.5-14.1.i386.rpm
【实验拓扑图】
http://www.centoscn.com/uploads/allimg/131028/0104424033-7.png
【实现步骤】
首先检查是否安装openssl
http://www.centoscn.com/uploads/allimg/131028/01044260E-8.png
http://www.centoscn.com/uploads/allimg/131028/0104425R8-9.png
http://www.centoscn.com/uploads/allimg/131028/0104423591-10.png
实现摘要:
文件实现方法:openssl md5/sha文件名
信息实现方法: echo “信息” |openssl md5/sha
http://www.centoscn.com/uploads/allimg/131028/01044245b-11.png
http://www.centoscn.com/uploads/allimg/131028/0104423J8-12.png
http://www.centoscn.com/uploads/allimg/131028/010442KG-13.png
公钥私钥对的产生:
私钥的产生:openssl gensa 1024产生一个1024位长度的私钥
openssl gensa 1024 >key.pem 产生到key.pem文件中去
私钥需要严格保管,需要修改权限:
chmod600 key.pem
公钥可以在私钥中提取:
openssl rsa -in key.pem-pubout -outpublic.key
证书的实现步骤:
openssl genrsa 1024 >私钥文件
openssl req -new -key 私钥文件 -out 请求文件
openssl ca-in 请求文件-out 证书
创建CAlinux CA【openca】
简易的我们一般使用【openssl】
1.vim/etc/pki/tls/openssl.conf
http://www.centoscn.com/uploads/allimg/131028/0104422459-14.png
http://www.centoscn.com/uploads/allimg/131028/010442J62-15.png
http://www.centoscn.com/uploads/allimg/131028/0104422596-16.png
2.进入/etc/pki/CA创建文件夹和文件
mkdircertsnewcertscrl
touchindex.txt serial
http://www.centoscn.com/uploads/allimg/131028/010F63137-0.png
http://www.centoscn.com/uploads/allimg/131028/010FBV8-1.png
3.私钥过程:
创建私钥 openssl genrsa 1024 >private/cakey.pem
修改权限Chmod 600private/*
http://www.centoscn.com/uploads/allimg/131028/010FAa5-2.png
给自己创建一个证书openssl req -new -key private/cakey.pem -x509 -out cacert.pem
http://www.centoscn.com/uploads/allimg/131028/010F62B3-3.png
web server
安装模块
http://www.centoscn.com/uploads/allimg/131028/010FB9A-4.png
查看一下安装生成的文件
http://www.centoscn.com/uploads/allimg/131028/010F62X9-5.png
创建目录
http://www.centoscn.com/uploads/allimg/131028/010F61135-6.png
产生私钥文件openssl genrsa1024 >私钥文件
产生请求文件openssl req -new -key 私钥文件 -out 请求文件
http://www.centoscn.com/uploads/allimg/131028/010F64Y3-7.png
产生证书:openssl ca -in 请求文件 -out 证书
cd /etc/httpd/certs
http://www.centoscn.com/uploads/allimg/131028/010FA440-8.png
捆绑 ssl.conf
Vim /etc/httpd/conf.d/ssl.conf
http://www.centoscn.com/uploads/allimg/131028/010F62b1-9.png
接下来重启service httpd restart
查看一下端口是否打开
http://www.centoscn.com/uploads/allimg/131028/010FC0T-10.png
下面我们来看看访问效果
http://www.centoscn.com/uploads/allimg/131028/010F64Z2-11.png
我们可以看到浏览器呈现了证书
http://www.centoscn.com/uploads/allimg/131028/010F63528-12.png
因为在客户端上没有证书,所以才会说不是由受信任的公司颁发
Vim /etc/httpd/conf.d/ssl.conf
http://www.centoscn.com/uploads/allimg/131028/010TIO5-0.png
http://www.centoscn.com/uploads/allimg/131028/010TJR6-1.png
将证书安装一下,查看一下受信任的证书颁发机构
http://www.centoscn.com/uploads/allimg/131028/010TGS4-2.png
再次访问一下
http://www.centoscn.com/uploads/allimg/131028/010THP9-3.png
发现名称无效或不匹配
我们需要在本机hosts文件中加入
192.168.2.100 www.abc.com
然后在/etc/httpd/conf/httpd.conf中禁用80端口再来访问
http://www.centoscn.com/uploads/allimg/131028/010TJZ3-4.png
页:
[1]