1、安装apache

sudo apt-get install apache2

root@ubuntu:/etc/apache2/mods-enabled# apache2 -v
Server version: Apache/2.2. (Ubuntu)
Server built: Jul ::

注意apache 的版本为2.2

2、配置SSL,支持HTTPS

这步的作用是启用SSL模块和令网站支持SSL协议。

cd到 /etc/apache2/sites-enabled ,然后执行

sudo ln -s ../sites-available/default-ssl .

cd到 /etc/apache2/mods-enabled ,然后执行

sudo ln -s ../mods-available/ssl.* .

3、安装mod_spdy

https://developers.google.com/speed/spdy/mod_spdy/下载,我是64bit的,选择

下载后,
sudo dpkg -i mod-spdy-beta_current_amd64.deb
 
4、重启apache
sudo service apache2 restart
5、验证 SPYD module 可以运行
用chrome以https协议访问当前开启了SSL的apache server,并打开Network监控台,如果SPDY生效,则会在Headers里看到x-mod-spdy。
 
 
 
 6、禁用DH秘钥
 

国内的网上很多资料没提到这点:Wireshark不能解密应用了DH(Diffie–Hellman)秘钥的SSL密文。

用命令打开:

sudo gedit /etc/apache2/mods-enabled/ssl.conf

找到这行

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

注释掉改成:

#SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLCipherSuite RSA

更保险地是改成

SSLCipherSuite RSA+AES256+SHA

 7、转换出pkcs8格式的私钥key给wireshark使用

Wireshark不能解密应用了DH(Diffie–Hellman)秘钥的SSL密文。

(TLS也是可以解密的,要从第一次握手该host开始全部的包都截到才行

在/etc/apache2/sites-enabled/default-ssl.conf文件中,能看到这行

SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

它表示了默认的私钥文件路径。但这个目录只有root用户可以打开,所以先用命令行操作把它复制出来并加上访问权限:

cd ~

sudo cp /etc/ssl/private/ssl-cert-snakeoil.key .

sudo chmod 777 ssl-cert-snakeoil.key

然后是转换:

openssl pkcs8 -nocrypt -in ssl-cert-snakeoil.key -out key.pem -outform PEM

转换出来的key.pem将交给Wireshark使用来解密。

 8、设置wireshark

先去 https://1.as.dl.wireshark.org/win64/下载Wireshark-win64-1.12.2.exe 支持spdy插件的wireshark,

在wireshark的ssl协议中添加私钥
菜单:Edit->Preferences->Protocols->SSL->Edit
解释
apache 服务器ip和端口:192.168.230.136和443
私钥路径:D:\server.pem
 

第五步,启动wireshark抓取spdy包

启动wireshark,输入过滤条件

 
打开apache的首页
通过chrome浏览器打开 https:192.168.85.136
 
 
通过wireshark查看抓包结果
 
 
 
参考:
http://blog.csdn.net/hursing/article/details/20049381
http://blog.csdn.net/hursing/article/details/20543837
http://www.tuicool.com/articles/eMJbey
http://blog.csdn.net/chq123456/article/details/40710611

Ubuntu 12.04 LTS 下配置 apache支持SPDY, 使用wireshark 抓包分析SPDY 协议的更多相关文章

  1. Ubuntu 12.04环境下配置Postgresql和phppgadmin

    Ubuntu 12.04环境下配置Postgresql 9.1 和phppgadmin 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/zjianb ...

  2. 在Ubuntu 12.04 LTS下成功访问Windows域共享(mount //192.168.1.102/share -o user=DOMIAN\\user,pass=passwd /mnt)

    Ubuntu 12.04 LTS下成功访问Windows域共享: 1,在命令行模式下 mount //192.168.1.102/share -o user=DOMIAN\\user,pass=pas ...

  3. Ubuntu 12.04 LTS下logomaker的安装

    学校嵌入式课程实验,本地装的时候遇到了一系列问题,因为基本不会linux所以到处搜解决方法,中间还走了不少弯路,作个笔记. 1.解压安装倒是没什么问题,运行时提示找不到共享库 logomaker: e ...

  4. 如何让Ubuntu 12.04 LTS更炫更具吸引力

    Ubuntu 12.04 LTS震撼发布   适逢七周岁生日之际,Ubuntu正式推出了第四个LTS长期支持版本,开发代号Precise Pangolin的Ubuntu 12.04在2012年4月26 ...

  5. 转载 - Vim 的 Python 编辑器详细配置过程 (Based on Ubuntu 12.04 LTS)

    出处:http://www.cnblogs.com/ifantastic/p/3185665.html Vim 的 Python 编辑器详细配置过程 (Based on Ubuntu 12.04 LT ...

  6. Ubuntu 12.04 LTS为例演示vsftpd虚拟用户 的配置

    vsftpd虚拟用户   2012-05-19 15:46:59|  分类: GNU/Linux |  标签:ubuntu  vsftpd  ftp  虚拟用户  |举报|字号 订阅 我们登录FTP有 ...

  7. Lamp(Ubuntu 12.04 LTS) 之 htaccess的使用

    环境说明:Ubuntu 12.04 LTS Lamp (以apt方式分别安装) 一.明确目标:要确保.htaccess文件起作用,只需要三个重要点: 1.开启apache rewrite模块: (1) ...

  8. (转)Ubuntu 12.04 LTS 构建高可用分布式 MySQL 集群

    本文的英文版本链接是 http://www.mrxuri.com/index.php/2013/11/20/install-mysql-cluster-on-ubuntu-12-04-lts.html ...

  9. 【转】ubuntu 12.04 LTS将关闭最大化最小化移动到右上角

    原文网址:http://www.4byte.cn/learning/114801.html ubuntu 12.04 LTS将关闭最大化最小化移动到右上角   还是按下“ALT +F2”组合键,输入g ...

随机推荐

  1. 修改选择排序 Exercise07_20

    import java.util.Scanner; /** * @author 冰樱梦 * 时间:2018年12月 * 题目:修改选择排序 * */ public class Exercise07_2 ...

  2. 【BZOJ2763/洛谷p4563】【分层图最短路】飞行路线

    2763: [JLOI2011]飞行路线 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 4630  Solved: 1797[Submit][Stat ...

  3. SQL的in的参数化查询

    SqlCommand cmd=con.CreateCommand(); cmd.CommandText="exec('select * from novel where novelid in ...

  4. Java---线程多(工作内存)和内存模型(主内存)分析

    首先解读Java内存模型(这里区别于JVM的内存模型,堆.栈.工作区) Java 内存模型来屏蔽掉各种硬件和操作系统的内存差异,达到跨平台的内存访问效果.JLS(Java语言规范)定义了一个统一的内存 ...

  5. 【转】如何修改maven工程jdk版本

    1.使用maven的时候,默认会使用1.5版本的JDK,并且也是编译成1.5的,我的电脑里面用的JDK是1.7的,1.8也出来了,没理由还用1.5的吧!所以我手动改成了1.7,郁闷的是,每次 mave ...

  6. iOS Contact框架功能研究

    兄弟们,直接复制,感谢度娘,感谢谷哥!!! 1.读取联系人通讯录 /** *  读取联系人通讯录 */ -(NSMutableArray*)getContactList{ NSMutableArray ...

  7. 浅谈JVM-类加载器结构与双亲委派机制

    一.类加载器结构 1.引导类加载器(bootstrap class loader) 它用来加载Java的核心库(JAVA_HOME/jre/lib/rt.jar),是用原声代码来实现的,并不继承自ja ...

  8. Swift基础类型

    1.使用 let 来声明常量,使用 var 来声明变量. 注:你能够在一行中声明多个常量或者多个变量.用逗号隔开. 2.类型标注 假设初始值没有提供足够的信息(或者没有初始值),那你须要在变量后面声明 ...

  9. 【spring cloud】分布式ID,雪花算法

    分布式ID生成服务 参考地址:https://blog.csdn.net/wangkang80/article/details/77914849 算法描述: 最高位是符号位,始终为0,不可用. 41位 ...

  10. Apache下error.log文件太大的处理

    偶尔发现Apache下的错误日志非常的大,有4G多,先停止Apache服务的所有进程,最简单就是输命令:net stop apache2.2,然后删除 Apache2/logs/目录下的 error. ...