https是一个安全的访问方式,数据在传输过程中是加密的,https基于SSL。

一、安装apache和ssl模块

1、安装apache

#yum install httpd

2、安装ssl模块

#yum install mod_ssl

重启apache:

#service httpd restart

安装完mod_ssl会创建一个默认的SSL证书,路径位于/etc/pki/tls,此时可以立即通过https访问服务器了:

https://X.X.X.X/

如果不使用默认的证书,也可以使用openssl手动创建证书。

二、使用openssl手动创建证书
1、安装openssl

#yum install openssl

2、生成服务器私钥

#cd /etc/pki/tls
#openssl genrsa -out server.key 1024

注意:server.key是私钥。

3、用私钥server.key文件生成证书请求文件csr

#openssl req -new -key server.key -out server.csr

注:server.csr是证书请求文件。

此步骤需要输入一些证书信息:
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:shanghai
Locality Name (eg, city) [Default City]:shanghai
Organization Name (eg, company) [Default Company Ltd]:ccc
Organizational Unit Name (eg, section) []:bbb
Common Name (eg, your name or your server's hostname) []:www.test.com
Email Address []:a@a.com

输入国家、省份、城市、公司、部门、姓名或服务器名、电子邮箱,随后会要求输入一个challengepassword(密码),无需输入,后面一律直接回车即可。

4、生成数字签名crt文件(证书文件)

#openssl x509 -days 365 -req -in server.csr -signkey server.key -outserver.crt

用私钥签名证书请求文件,证书的申请机构和颁发机构都是自己。

5、编辑apache的ssl配置文件

vim/etc/httpd/conf.d/ssl.conf

/etc/httpd/conf.d/ssl.conf文件配置具体如下:

<VirtualHost _default_:443>

DocumentRoot "/var/www/https"      //设置网页存放目录

ServerName *:443                  //服务器的端口

DirectoryIndex index.html index.html.var  //首页名称

SSLEngine on

SSLCertificateFile /etc/pki/tls/server.crt    //证书

SSLCertificateKeyFile /etc/pki/tls/server.key  //私钥

</VirtualHost> 
6、重启apache
#servicehttpd restart
访问https://ip/,就能看到证书信息了。

由于不是第三方根证书颁发机构颁发的证书,而是自己颁发的证书,所以浏览器会提示安全证书不受信任。

!!!注意:首页index.html 的文件权限为755,否则将会出现如上提示:

Forbidden

Youdon't have permission to access /main.html on this server.

解决方法:修改首页index.html读写权限。

#Chmod755  index.html

关于openssl指令的补充说明:

#openssl [操作]  -out  filename  [bits]

参数说明:

[操作]  主要的操作有如下两个:

genrsa,建立RSA加密的Public key

req,建立凭证要求文件或者是凭证文件

-out ,后面加上输出的文件名,就是那把key name

bits,用在genrsa加密的公钥的长度

-x509,X.509,CertificateData  Management.  一种验证的管理方式

例:建立一支长度为1024bits的Public Key,注意文件名。

#openssl genrsa  -out  Server.key 1024

生成证书请求命令

#Openssl req  -new  -key file.key  -out  file.csr -config  /path/to/openssl.cnf

-config:指定openssl的配置文件路径,不指定时,默认会访问Unix格式的默认路径:/usr/local/ssl/openssl.cnf。

例:#openssl req -new -key server.key -outserver.csr

CentOS服务器下安装配置SSL的更多相关文章

  1. centos 7下安装配置Supervisor

    1.安装Supervisor centos下安装yum install supervisor 2. systemctl enable supervisord 开机自启 systemctl start ...

  2. CentOS系统下安装配置ftp服务

    安装配置步骤: rpm -ivh /opt/bak/vsftpd-2.2.2-11.el6.x86_64.rpm --本地安装vsftpd ll /etc/vsftpd/  --查看vsftpd的配置 ...

  3. CentOS 7下安装配置proftpd搭建ftp服务器

    proftpd全称:Professional FTP daemon,是针对Wu-FTP的弱项而开发的,除了改进的安全性,还具备许多Wu-FTP没有的特点,能以Stand-alone.xinetd模式运 ...

  4. 阿里云服务器下安装配置 vsftpd —— 基于CentOS 6.3 【简洁版】

    原文链接:http://www.tuicool.com/articles/nuiQBja 1.更新yum源 我是直接 yum update 更新的 2.安装vsftp 使用yum命令安装vsftpd ...

  5. 阿里云CentOS服务器下安装Golang1.13并配置代理

    注:root账户或添加sudo命令运行. 下载到/usr/local位置并解压 cd /usr/local wget https://studygolang.com/dl/golang/go1.13. ...

  6. CentOS.7下安装配置FTP和SFTP服务

    一: FTP Centos7中默认已经安装了sshd服务(sftp), vsftpd需要手动安装 1.安装并启动FTP服务 1.1 安装vsftpd 使用 yum 安装 vsftpd yum inst ...

  7. CentOS 7下安装配置搭建jdk+tomcat+MariaDB环境

    1.JDK安装 注意:rpm与软件相关命令 相当于window下的软件助手 管理软件 步骤: 1)查看当前Linux系统是否已经安装java 输入 rpm -qa | grep java 2)卸载两个 ...

  8. CentOS 7下安装配置FTP

    安装vsftpd yum install -y vsftpd 编辑ftp配置文件 vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO #anonymous_e ...

  9. 阿里云服务器下安装配置phpMyAdmin

    1.下载phpMyAdmin wget http://www.phpmyadmin.net/home_page/downloads.php 2.解压下载的文件 tar -zvxf phpMyAdmin ...

随机推荐

  1. 【转载】轻松搞懂WebService工作原理

    用更简单的方式给大家谈谈WebService,让你更快更容易理解,希望对初学者有所帮助. WebService是基于网络的.分布式的模块化组件. 我们直接来看WebService的一个简易工作流程: ...

  2. ActiveMQ(四) 转

    package pfs.y2017.m11.mq.activemq.demo04; import javax.jms.Connection; import javax.jms.ConnectionFa ...

  3. Hdu 4274 Spy&#39;s Work

    Spy's Work Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  4. Dell服务器相关操作

    1. Raid相关: # 删除已有的Raid配置 MegaCli64 -CfgLdDel -LALL -aALL # 获取设备ID和槽号 MegaCli64 -PDList -aALL|egrep ' ...

  5. openwrt procd

    接着前面写过的一篇关于 procd 的笔记. procd 在 STATE_INIT 时会运行 /etc/inittab 中描述的几个级别指定程序. procd_inittab_run("re ...

  6. JOIN ,LEFT JOIN ,ALL JOIN 等的区别和联系

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录  right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) ...

  7. 一个简单的EBNF范式的实现

    最近无事在看书的时候发现了这个东西刹那间突然觉得大学时候编译原理书上的的什么语法分析书.上下文无关等晦涩难懂的概念清晰了许多今天把它贴出来希望也能让你回想起些往事... 至于EBNF范式是什么东西,网 ...

  8. SpringMVC实战(注解)

    1.前言 前面几篇介绍了SpringMVC中的控制器以及视图之间的映射方式,这篇来解说一下SpringMVC中的注解,通过注解能够非常方便的訪问到控制器中的某个方法. 2.配置文件配置 2.1 注解驱 ...

  9. De Moivre–Laplace theorem 掷硬币

    De Moivre–Laplace theorem - Wikipedia https://en.wikipedia.org/wiki/De_Moivre%E2%80%93Laplace_theore ...

  10. Vue.js新手入门指南

    最近在逛各大网站,论坛,以及像SegmentFault等编程问答社区,发现Vue.js异常火爆,重复性的提问和内容也很多,楼主自己也趁着这个大前端的热潮,着手学习了一段时间的Vue.js,目前用它正在 ...