在Apache服务器上安装SSL支持的教程

 更新时间:2015年06月11日 09:26:39   作者:Adrian Dinu  
这篇文章主要介绍了在Apache服务器上安装SSL支持的教程,SSL协议是目前运用最广泛的加密协议,本文演示环境基于Ubuntu,需要的朋友可以参考下

今天我会讲述如何为你的个人网站或者博客安装SSL 证书,来保护你的访问者和网站之间通信的安全。

安全套接字层或称SSL,是一种加密网站和浏览器之间连接的标准安全技术。这确保服务器和浏览器之间传输的数据保持隐私和安全。它被成千上万的人使用来保护他们与客户的通信。要启用SSL链接,Web服务器需要安装SSL证书。

你可以创建你自己的SSL证书,但是这默认不会被浏览器所信任,要解决这个问题,你需要从受信任的证书机构(CA)处购买证书,我们会向你展示如何获取证书并在apache中安装。生成一个证书签名请求

证书机构(CA)会要求你在你的服务器上生成一个证书签名请求(CSR)。这是一个很简单的过程,只需要一会儿就行,你需要在你的服务器上运行下面的命令并输入需要的信息:

   

复制代码 代码如下:
# openssl req -new -newkey rsa:2048 -nodes -keyout yourdomainname.key -out yourdomainname.csr

输出看上去会像这样:

201561192452216.jpg (800×371)

这一步会生成两个文件:一个用于解密SSL证书的私钥文件,一个证书签名请求(CSR)文件(用于申请你的SSL证书)。

根据你申请的机构,你会需要上传csr文件或者在网站表格中粘帖该文件内容。
在Apache中安装实际的证书

生成步骤完成之后,你会收到新的数字证书。本篇教程中我们使用Comodo SSL,并在一个它发给我们的zip文件中收到了证书。要在apache中使用它,你首先需要用下面的命令用收到的证书创建一个组合的证书:

   

复制代码 代码如下:
# cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > bundle.crt

201561192513280.jpg (800×68)

    用下面的命令确保ssl模块已经加载进apache了:

   

复制代码 代码如下:
# a2enmod ssl

如果你看到了“Module ssl already enabled”这样的信息就说明你成功了,如果你看到了“Enabling module ssl”,那么你还需要用下面的命令重启apache:

   

复制代码 代码如下:
# service apache2 restart

最后像下面这样修改你的虚拟主机文件(通常在/etc/apache2/sites-enabled 下):

   

复制代码 代码如下:
DocumentRoot /var/www/html/
    ServerName linoxide.com
    SSLEngine on
    SSLCertificateFile /usr/local/ssl/crt/yourdomainname.crt
    SSLCertificateKeyFile /usr/local/ssl/yourdomainname.key
    SSLCACertificateFile /usr/local/ssl/bundle.crt

你现在应该可以用https://YOURDOMAIN/(注意使用‘https'而不是‘http')来访问你的网站了,并可以看到SSL的进度条了(通常在你浏览器中用一把锁来表示)。

注意: 现在所有的内容链接都必须指向https,如果网站上的一些内容(像图片或者css文件等)仍旧指向http链接的话,你会在浏览器中得到一个警告,要修复这个问题,请确保每个链接都指向了https。
在你的网站上重定向HTTP请求到HTTPS中

如果你希望重定向常规的HTTP请求到HTTPS,添加下面的文本到你希望修改的虚拟主机,或者如果希望给服务器上所有网站都添加的话就加入到apache.conf中:

   

复制代码 代码如下:
RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

相关文章

  • Linux使用suid vim.basic文件实现提权

    Linux使用suid vim.basic文件实现提权

    这篇文章主要介绍了Linux使用suid vim.basic文件实现提权,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • linux下使用 CentOS7安装jdk1.7

    linux下使用 CentOS7安装jdk1.7

    这篇文章主要介绍了linux下使用 CentOS7安装jdk1.7的相关资料,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • Apache Kafka单节点极速部署指南及搭建开发单节点环境的操作步骤

    Apache Kafka单节点极速部署指南及搭建开发单节点环境的操作步骤

    本文介绍了如何在10分钟内快速部署Apache Kafka单节点开发环境,首先,简要介绍了Kafka的背景、特性和应用场景,然后,详细描述了环境准备、安装、配置文件详解、配置为系统服务、验证服务和关键配置项深度解析等内容,感兴趣的朋友一起看看吧
    2025-03-03
  • Ubuntu配置静态IP的两种方法

    Ubuntu配置静态IP的两种方法

    在本教程中,您将了解有关 Ubuntu 静态 IP 地址配置的所有信息,我们将为读者Ubuntu配置静态IP的两种方法以及详细的配置过程,通过图文介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • Linux下利用unzip命令如何解压多个文件详解

    Linux下利用unzip命令如何解压多个文件详解

    这篇文章主要给大家介绍了关于在Linux下利用unzip命令如何解压多个文件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-09-09
  • Linux中BT5关于修改静态IP和DNS方法

    Linux中BT5关于修改静态IP和DNS方法

    本篇文章给大家整理了关于Linux中BT5关于修改静态IP和DNS的方法,有需要的朋友可以参考学习下。
    2018-02-02
  • Linux下如何安装Logstash

    Linux下如何安装Logstash

    这篇文章主要介绍了Linux下如何安装Logstash问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 在Linux上搭建Minecraft服务器的方法步骤

    在Linux上搭建Minecraft服务器的方法步骤

    在 Linux(Ubuntu 12.04)上设置 Minecraft 服务器是一个相当简单的任务,只需通过命令行即可完成,本文通过代码示给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-11-11
  • Linux VPS/服务器 网站及数据库自动本地备份并FTP上传备份脚本

    Linux VPS/服务器 网站及数据库自动本地备份并FTP上传备份脚本

    Linux VPS/服务器 网站及数据库自动本地备份并FTP上传备份脚本的操作时怎样进行的?如今备份已经成为一种非常重要的操作技术,掌握好数据库备份,对大家以后的工作会很有帮助
    2012-05-05
  • Ubuntu下pycharm无法导入类的解决方法

    Ubuntu下pycharm无法导入类的解决方法

    下面小编就为大家分享一篇Ubuntu下pycharm无法导入类的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12

最新评论