三种方式实现web站点安全
因为apache底层走的是tcp协议,而tcp协议是明文的,当你访问一些购物网站或银行网站办理业务时就非常不安全,因为是明文传递,容易被人抓包。为了实现apache站点安全,一般采用身份验证、来源控制、https这三种方式。下面分别有3个小案例简要介绍这3种方式
案例一:
身份验证方式维护站点安全
首先安装apache软件包,安装完成后我们查看下安装的位置
现在我们先来查看一下httpd服务的配置文件,因为配置文件有900多行,下面只列出需要修改和重要的几行
上面列出的截图有几点需要说明,首先是httpd它的运行者身份是apache,之所以是它,是为了安全考虑。我们现在查看下/etc/passwd中有关apache的相关信息
可以看到apache没有登入权限,因此即使有人***你的web服务器得到了apache的账号密码,他也没有权限登入系统
我们再来看一下httpd.pid这个文件
上图我们可以知道apache是通过产生子进程来响应用户请求的,而httpd.pid记录的httpd父进程的pid
现在我们通过修改配置文件来实现身份验证
然后我们需要创建账号文件,并且添加账号
在/var/www/html下创建说明文件.htaccess
我在站点的主目录下新建了一个html网页,现在重启httpd服务访问一下我们的站点试一下
可以看到只有通过身份验证的用户才能查看我们的站点
案例二:
利用来源控制维护站点安全
如果利用来源控制来维护站点安全,我们只需要修改配置文件中的内容即可。我们可以在<directory> </directory>之间插入限制条件来达到目的
现在用192.168.2.106来访问我们的站点看是否能访问
可以看到出现了一个测试页,这个测试页又是从哪来的,我们的站点根目录下只有一个index.html啊。
现在我们在把配置文件中的限制条件修改为允许全部访问看一下效果
上图又出现了我们index.html内容,说明192.168.2.106又可以访问我们的站点了。由此我们知道可以通过在配置文件中加入限制条件来达到来源控制筛选流量维护站点安全的目的。
案例三:
https(http+ssl)实现维护站点的安全
**我们应该知道http走的是80端口,而https走的是443端口
在做之前我们简单了解一下加密和数字证书
首先加密就是将我们的明文信息变成密文信息,更安全。加密又分为对称加密和非对称加密,对称加密即收发双方拥有相同的密钥且加密解密钥匙相同可互相推导,一般用于会话;而非对称加密是加密解密钥匙不同且不可互相推导。
因为非对称加密的牵扯到公钥的传递,而数字证书就是传递公钥,确保公钥完整性和不可抵赖性的。同时应该知道数字证书是由CA 颁发的。
现在我们开始实现https,首先安装openssl,并且查看安装形成的目录及文件
现在编辑openssl的配置文件
因为上面提到的目录和文件除了CA外都没有,需要我们手工创建
创建之后我们产生CA的私钥并利用私钥产生公钥和请求文件
现在加装ssl模块,实现https
现在可以为我们的web服务器颁发证书了,注意顺序是首先产生私钥,利用私钥产生请求文件,最后产生证书。**X509表示的是证书格式
现在已经为我们的web服务器颁发了一份证书,来看一下index.txt中是否有相关记录
将apache配置文件中的80端口禁用,只使用443加密端口
修改/etc/httpd/conf.d/ssl.conf
注意128行是默认关闭的,要把它打开并修改使客户端相信颁发证书的CA,现在访问https://192.168.2.100
现在将CA的证书安装到客户端,使客户端相信我们颁发证书的CA
安装完成后,客户端已经相信了颁发证书的CA,我们再来访问https://192.168.2.100
这次问题是因为证书上的名称与站点名称不匹配,我们可以用dns做一个指向或者修改hosts文件,我在这里修改hosts文件
然后我们来访问https://www.emo.com
可以看到网页正常显示,没有出现验证证书的页面
转载于:https://blog.51cto.com/windowsemo/1282729
三种方式实现web站点安全相关推荐
- 在Linux安装配置Tomcat 并部署web应用 ( 三种方式 )
系统版本:centos6.5版本 java版本:1.7 一.准备工作 1.java -version 检查是否有java环境,没有则需要去安装并配置到环境变量中. 2.下载tomcat包,下载地址:h ...
- 大数据WEB阶段 (十)Response、ServletConfig、ServletContext、资源跳转三种方式
Response.ServletConfig.ServletContext.资源跳转三种方式 - (一)Response 一.Response概述 在doGet和doPost方法的参数中,HttpSe ...
- 使用三种方式搭建IIS web 网站
实验环境:在Windows 2008虚拟机上安装IIS 服务 实验目的:使用三种方式搭建虚拟主机网站(一个是安装好IIS服务默认的网站,还有一个是自己搭建的网站) 1. 两个网站同一个ip,不同的端口 ...
- Web CSS #id 标签选择器 style display 类选择器.class 使用CSS的三种方式 列表装饰 绝对定位
文章目录 CSS使用的三种方式 内联定义方式 实现代码 实现结果 样式块方式 实现代码 显示结果 链入外部样式表文件 实现代码 图是结果 #id 选择器 #id名 实现代码 实现结果 标签选择器 标签 ...
- 【小家Spring】SpringBoot中使用Servlet、Filter、Listener三大组件的三种方式以及原理剖析
每篇一句 要么就安逸的穷,要么就拼命的干 前提概要 web开发使用Controller基本能解决大部分的需求,但是有时候我们也需要使用Servlet,因为相对于拦截和监听来说,有时候原生的还是比较好用 ...
- vue 函数 路由跳转_vue中通过路由跳转的三种方式
router-view 实现路由内容的地方,引入组件时写到需要引入的地方 需要注意的是,使用vue-router控制路由则必须router-view作为容器. 通过路由跳转的三种方式 1.router ...
- spring配置datasource三种方式
转自:http://blog.csdn.net/yangyz_love/article/details/8199207 1.使用org.springframework.jdbc.datasource. ...
- spring配置datasource三种方式 数据库连接
1.使用org.springframework.jdbc.datasource.DriverManagerDataSource 说明:DriverManagerDataSource建立连接是只要有连 ...
- 【Spring MVC学习】WebApplicationContext初始化的三种方式
ApplicationContext是Spring的核心,Context我们通常解释为上下文环境,我想用"容器"来表述它更容易理解一些,ApplicationContext则是&q ...
最新文章
- 语言中什么时候加大括号_日本留学语言学校申请季你知道是几月吗?从什么时候开始准备...
- [更新中]Lucene.net,中文分词技术 ICTCLAS研究
- LeetCode Super Pow(快速求幂算法)
- OpenGL中摄像机矩阵的计算原理
- Android fingerprint指纹/face人脸代码导读
- windows操作系统_windows操作系统如何格式化u盘【操作方法】
- java cp命令:命令行指定需要加载的类classpath
- 使用docker安装easy-mock
- 下载Google Earth的地图并用ArcMap对其georeferencing
- system verilog语法(一)
- 51单片机99秒倒计时C语言程序,单片机课程设计-99秒倒计时
- iOS性能优化系列篇之“优化总体原则”
- 直播预告 | 自监督学习在推荐系统中的应用
- 运放放大倍数计算公式_运算放大器基本电路大全(转)
- 蓝桥 超级玛丽 JAVA
- 题解 P1757 【通天之分组背包】
- 回收站清空的文件能恢复吗?
- omap3530支持gpu模块
- android 5.0一键刷机教程,HTC D820t (Desire 820 移动4G Android 5.0)一键刷机教程,轻松刷机...
- Jmeter分布式压测介绍、原理及实操(一台master-windows控制机,三台slaves-linux负载机)