一、HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

  那https到底是怎么开启的,随着疑问自己也了解https配置原理并在Ubuntu服务器上开启了https。
  我本地配置的域名是https://extend.me
 二、配置证书
  
   配置https一个很重要的步骤就是配置证书。
  1、创建证书
sudo apt-get install ssl-cert
make-ssl-cert
    #生成证书的方法有两种,一种是根据生成按工具默认的方式生成,一种是按模板文件生成
   #默认的方式生成
sudo make-ssl-cert generate-default-snakeoil
   #按模板文件生成
sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/ssl/private/apache2.pem
  2、通过openssl命令行创建自签名证书(这里生成的证书也采用pem格式,这个pem格式档案中包含了私钥和公钥(证书)两部分内容。如果你将keyout和out分别采用不同的文件名,那keyout和out所对应的文件就会分别存放私钥和公钥(证书)。)
sudo openssl req -x509 -newkey rsa: -keyout /etc/ssl/private/apache.pem -out /etc/ssl/private/apache.pem -nodes -days 
  #信息注解
 Country Name ( letter code) [AU]:CN ←输入国家代码
  State or Province Name (full name) [Some-State]:JIANGSU ← 输入省名
  Locality Name (eg, city) []:SHANGHAI ←输入城市名
  Organization Name (eg, company) [Internet Widgits Pty Ltd]:YIQU ← 输入公司名
  Organizational Unit Name (eg, section) []:RSA ← 输入组织单位名
  Common Name (eg, YOUR name) []:extend.me ← 输入主机名(想要开启https的主机名)
  Email Address []:dybaid@.com ←输入电子邮箱地址

  
3、签署证书
sudo  openssl genrsa (-des3)  >server.key //括号里的 命令可以不加  这个是密码验证 加了使用证书就需要输入密码
  4、生成证书请求文件
openssl req -new -key server.key > server.csr
 三、配置Apache
  
、开启SSL模块
  a2enmod ssl
  、启用SSL站点
  a2ensite default-ssl
 、加入监听端口
  sudo vim /etc/apache2/ports.conf
#编辑Apache端口配置,加入443端口(HTTPS采用的443端口传输数据)
  Listen
 、配置虚拟主机
  编辑default-ssl文件,加入证书对应的主机头。
  sudo vim /etc/apache2/sites-enabled/default-ssl
ServerName extend.me
、配置SSL证书
按如下配置
  SSLEngine on
  SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
  SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
  SSLCertificateChainFile /etc/ssl/certs/server-ca.crt
  重新启动Apache
然后https://extend.me 测试下
浏览器可能会报证书不合法 可以添加例外或者其他仍然访问就好了 自签名证书浏览器一般会提示不合法
 配置完之后大家可以用抓包工具看下数据传输是否加密了。

Ubuntu下配置apache开启https的更多相关文章

  1. ubuntu下配置Apache

    ubuntu下配置Apache Apache的默认文档根目录是在Ubuntu上的/var/www目录 配置文件是/ etc/apache2/apache2.conf配置存储在的子目录在/etc/apa ...

  2. Ubuntu下配置Apache的Worker模式

    其实Apache本身的并发能力是足够强大的,但是Ubuntu默认安装的是Prefork模式下的Apache.所以导致很多人后面盲目的去 安装lighttpd或者nginx一类替代软件.但是这类软件有一 ...

  3. Ubuntu 下配置apache和APR

    软件环境:ubuntu14.04  虚拟机Vmware  软件:http://httpd.apache.org/  httpd-2.2.29.tar.gz  不需要单独下载APR. 1.解压apach ...

  4. 在ubuntu下配置apache运行python脚本

    2008-12-05    常用的简单命令 sudo apt-get remove --purge apache apache2 (彻底删除)   sudo /etc/init.d/apache2 r ...

  5. ubuntu下配置Apache+mod_wsgi+Django项目(个人测试)

    经过了一个星期的摸索,查找资料以及实验,我搭建的环境基本能用(还有就是Django后台的静态文件加载的问题) 这里面只是介绍一下我的过程,因为对应Apache还不是很熟练,特别是配置文件.只能供大家参 ...

  6. Ubuntu下配置Apache以及搭载CGI

    在Windows下自己下载应用过Apache,在Linux下也用到了服务器,就选择了Apache.Apache的安装在Ubuntu下异常简单. 1. 上网下载自动包安装 sudo apt-get in ...

  7. 在Ubuntu下配置Apache多域名服务器

    1. 目标: 在本机 实现访问不同域名 可以访问不同的目录. 即:访问a.com 进入 /var/www/a 目录下的程序,访问b.com 进入/var/www/b目录下的程序. 2.遇到的问题: / ...

  8. https----------如何在phpstudy环境下配置apache的https访问以及访问http自动跳转成https

    1.首先在 httpd.conf里面修改几个地方 找到 #LoadModule ssl_module modules/mod_ssl.so 去掉前面的# Include conf/vhosts.con ...

  9. Windows 下配置 Apache 支持 https

    1.打开cmd ,输入  F: // 切换到Apache安装路径,我的Apache安装目录在 F盘 2.cd F:\Apache\bin 3.set "openssl_conf = F:\A ...

随机推荐

  1. C++中的变长参数

    新参与的项目中,为了使用共享内存和自定义内存池,我们自己定义了MemNew函数,且在函数内部对于非pod类型自动执行构造函数.在需要的地方调用自定义的MemNew函数.这样就带来一个问题,使用stl的 ...

  2. 移动先行之谁主沉浮? 带着你的Net飞奔吧!

    移动系源码:https://github.com/dunitian/Windows10 移动系文档:https://github.com/dunitian/LoTDotNet/tree/master/ ...

  3. WPF 微信 MVVM

    公司的同事离职了,接下来的日子可能会忙碌,能完善DEMO的时间也会少了,因此,把做的简易DEMO整体先记录一下,等后续不断的完善. 参考两位大神的日志:WEB版微信协议部分功能分析.[完全开源]微信客 ...

  4. html5的web存储

    在html5标准之前,web存储信息需要cookie来完成,但是cookie不适合大量数据存储.因为需要等待服务器响应,所以速度慢/效率低. 本地存储的特点: localstorage是仅存储在用户的 ...

  5. 使用SecureCRT连接虚拟机(ubuntu)配置记录

    这种配置方法,可以非常方便的操作虚拟机里的Linux系统,且让VMware在后台运行,因为有时候我直接在虚拟机里操作会稍微卡顿,或者切换速度不理想,使用该方法亲测本机效果确实ok,特此记录. Secu ...

  6. C#使用Aspose.Cells导出Excel简单实现

    首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://downloads.aspose.com/cells/net 将DataTable导出Xlsx格式的文件下载(网页输出) ...

  7. java中易错点(二)

    java,exe是java虚拟机 javadoc.exe用来制作java文档 jdb.exe是java的调试器 javaprof,exe是剖析工具 解析一: sleep是线程类(Thread)的方法, ...

  8. equals变量在前面或者在后面有什么区别吗?这是一个坑点

    我就不废话那么多,直接上代码: package sf.com.mainTest; public class Test { public static void main(String[] args) ...

  9. 一个软件开发者的BPM之路

    我是小林,一名普通的软件工程师,从事BPM(业务流程管理)软件开发工作.我没有几十年的技术底蕴,无法像大牛们一样高谈阔论,品评BPM开发之道:也不是资深的流程管理专家,能与大家分析流程管理的时弊.我只 ...

  10. ASP.NET Aries 3.0发布(附带通用API设计及基本教程介绍)

    主要更新: 1:升级处理机制(js请求由同步变更为异步) 2:优化前端JS:包括API和配置方式. 3:增加InputDialog功能. 4:增远远程验证功能. 5:优化权限安全机制. 6:增加一次请 ...