Apache是当今最为流行的web服务器,apache的站点安全可以通过身份验证、来源控制和加密访问来解决。首先我们安装一下http,至于rpm安装小编就不在这里多说了。下面给大家好好讲解一下httpd.conf这个文件里面的内容。我都给大家很好的注释在了上面,好好了解一下他们,很有助于我们来解决apache的站点安全。

Apache站点安全配置及配置详解_password

Apache站点安全配置及配置详解_require_02

Apache站点安全配置及配置详解_web服务器_03



服务器监听端口 Listen 80 监听端口

Apache站点安全配置及配置详解_apache_04

Apache站点安全配置及配置详解_apache_05

Apache站点安全配置及配置详解_web服务器_06


下面我们来看一下第一种站点安全的解决方法:

1.身份验证

在配置文件中修改 alloworverride all

Apache站点安全配置及配置详解_web服务器_07

编辑一下说明文件 .htaccess

Apache站点安全配置及配置详解_require_08

authuserfile /var/www/.htpasswd

authname "please input your name and password"

authtype basic

require valid-user

Apache站点安全配置及配置详解_web服务器_09

产生帐号文件

htpasswd -c 张号文件 帐号

Apache站点安全配置及配置详解_配置文件_10

Apache站点安全配置及配置详解_配置文件_11

下面我们来看看访问效果

Apache站点安全配置及配置详解_web服务器_12

Apache站点安全配置及配置详解_password_13

Apache站点安全配置及配置详解_require_14


2.来源控制

站点主目录中我们可以限制访问的ip地址来达到来源的控制,实现站点安全

Order allow,deny

deny from 192.168.2.100

allow from all

我们要注意的是Order allow,deny allowdeny的顺序,他们的顺序决定了是先执行的顺序。

Apache站点安全配置及配置详解_web服务器_15

Apache站点安全配置及配置详解_web服务器_16

Apache站点安全配置及配置详解_password_17

Apache站点安全配置及配置详解_配置文件_18


3.加密访问

原理

HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标HTTP通道,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。它的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。

环境

服务器Linux rhel5.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

【实验拓扑图】

Apache站点安全配置及配置详解_require_19

【实现步骤】

首先检查是否安装openssl

Apache站点安全配置及配置详解_apache_20

Apache站点安全配置及配置详解_web服务器_21

Apache站点安全配置及配置详解_apache_22


实现摘要:

文件实现方法: openssl md5/sha 文件名

信息实现方法: echo “信息” |openssl md5/sha

Apache站点安全配置及配置详解_配置文件_23

Apache站点安全配置及配置详解_apache_24

Apache站点安全配置及配置详解_web服务器_25


公钥私钥对的产生:

私钥的产生:openssl gensa 1024 产生一个1024位长度的私钥

openssl gensa 1024 >key.pem 产生到key.pem文件中去

私钥需要严格保管,需要修改权限:

chmod 600 key.pem

公钥可以在私钥中提取:

openssl rsa -in key.pem -pubout -out public.key

证书的实现步骤:

openssl genrsa 1024 >私钥文件

openssl req -new -key 私钥文件 -out 请求文件

openssl ca -in 请求文件 -out 证书

创建CAlinux CA openca

简易的我们一般使用【openssl

1.vim /etc/pki/tls/openssl.conf

Apache站点安全配置及配置详解_require_26

Apache站点安全配置及配置详解_require_27

Apache站点安全配置及配置详解_require_28

2.进入/etc/pki/CA创建文件夹和文件

mkdir certs newcerts crl

touch index.txt serial

Apache站点安全配置及配置详解_require_29

Apache站点安全配置及配置详解_web服务器_30


3.私钥过程:

创建私钥 openssl genrsa 1024 >private/cakey.pem

修改权限Chmod 600 private/*

Apache站点安全配置及配置详解_web服务器_31

给自己创建一个证书openssl req -new -key private/cakey.pem -x509 -out cacert.pem

Apache站点安全配置及配置详解_web服务器_32

web server

安装模块

Apache站点安全配置及配置详解_password_33

查看一下安装生成的文件

Apache站点安全配置及配置详解_apache_34

创建目录

Apache站点安全配置及配置详解_apache_35

产生私钥文件openssl genrsa 1024 >私钥文件

产生请求文件openssl req -new -key 私钥文件 -out 请求文件

Apache站点安全配置及配置详解_apache_36

产生证书 openssl ca -in 请求文件 -out 证书

cd /etc/httpd/certs

Apache站点安全配置及配置详解_web服务器_37

捆绑 ssl.conf

Vim /etc/httpd/conf.d/ssl.conf

Apache站点安全配置及配置详解_web服务器_38

接下来重启service httpd restart

查看一下端口是否打开

Apache站点安全配置及配置详解_配置文件_39

下面我们来看看访问效果

Apache站点安全配置及配置详解_require_40

我们可以看到浏览器呈现了证书

Apache站点安全配置及配置详解_配置文件_41

因为在客户端上没有证书,所以才会说不是由受信任的公司颁发

Vim /etc/httpd/conf.d/ssl.conf

Apache站点安全配置及配置详解_require_42

Apache站点安全配置及配置详解_password_43


将证书安装一下,查看一下受信任的证书颁发机构

Apache站点安全配置及配置详解_password_44

再次访问一下

Apache站点安全配置及配置详解_web服务器_45

发现名称无效或不匹配

我们需要在本机hosts文件中加入

192.168.2.100 www.abc.com

然后在/etc/httpd/conf/httpd.conf中禁用80端口再来访问

Apache站点安全配置及配置详解_require_46