OpenStack安全策略提升

Posted 人间忽晚,山河以秋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenStack安全策略提升相关的知识,希望对你有一定的参考价值。

一、 首先要了解一下HTTP协议与HTTPS协议的区别(可以百度了解一下)
本质就是将HTTP协议提升为HTTPS协议,HTTPS协议 = HTTP协议 + SSL/TLS协议

 SSL的全称是Secure Sockets Layer,即安全套接层协议,是为网络通信提供安全及数据完整性的一种安全协议。SSL协议在1994年被Netscape发明,后来各个浏览器均支持SSL,其最新的版本是3.0
 
TLS的全称是Transport Layer Security,即安全传输层协议,最新版本的TLS(Transport Layer Security,传输层安全协议)是IETF(Internet Engineering Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本。在TLS与SSL3.0之间存在着显著的差别,主要是它们所支持的加密算法不同,所以TLS与SSL3.0不能互操作。虽然TLS与SSL3.0在加密算法上不同,但是在我们理解HTTPS的过程中,我们可以把SSL和TLS看做是同一个协议。

所以在这里我们就是在HTTP协议加上一些安全协议

直观的感受一下变化:
1、没有进行安全策略提升的,也就是使用HTTP协议的
浏览器地址:在这里插入图片描述

浏览器内的样子:在这里插入图片描述

2、进行了安全策略提升的,也就是HTTPS协议
浏览器地址:在这里插入图片描述
浏览器内的样子:(明显不安全的字样变成了红色)
在这里插入图片描述

二、配置https协议
1、配置yum源
上传了一个压缩包https-repo.tar.gz,用作yum源

[root@controller ~]# ls
anaconda-ks.cfg             CentOS-7-x86_64-DVD-1511.iso  https-repo.tar.gz
CentOS_7.2_x86_64_XD.qcow2  cirros-0.3.4-x86_64-disk.img  XianDian-IaaS-v2.2.iso
[root@controller ~]# tar -zxvf https-repo.tar.gz -C /opt
[root@controller ~]# vi /etc/yum.repos.d/ssl.repo
[ssl]
name=ssl
baseurl=file:///opt/https-repo
gpgcheck=0
enabled=1
[root@controller ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: centos iaas ssl
Cleaning up everything
Cleaning up list of fastest mirrors
[root@controller ~]# yum repolist
Loaded plugins: fastestmirror
centos                                                                                                | 3.6 kB  00:00:00     
iaas                                                                                                  | 2.9 kB  00:00:00     
ssl                                                                                                   | 2.9 kB  00:00:00     
(1/4): centos/group_gz                                                                                | 155 kB  00:00:00     
(2/4): iaas/primary_db                                                                                | 2.3 MB  00:00:00     
(3/4): ssl/primary_db                                                                                 | 8.3 kB  00:00:00     
(4/4): centos/primary_db                                                                              | 2.8 MB  00:00:00     
Determining fastest mirrors
repo id                                                     repo name                                                  status
centos                                                      centos                                                     3,723
iaas                                                        iaas                                                       1,688
ssl                                                         ssl                                                            8
repolist: 5,419

2、安装服务

[root@controller ~]# yum install -y mod_wsgi httpd mod_ssl

安装时出的错
在这里插入图片描述

我的环境需要我安装一个依赖,(根据他的提示找到的依赖包 https://blog.csdn.net/ruoxiyun/article/details/86980974)
下载依赖包的rpm包然后上传安装

[root@controller ~]# ls
anaconda-ks.cfg             CentOS-7-x86_64-DVD-1511.iso  https-repo.tar.gz                        XianDian-IaaS-v2.2.iso
CentOS_7.2_x86_64_XD.qcow2  cirros-0.3.4-x86_64-disk.img  openssl-libs-1.0.2k-21.el7_9.x86_64.rpm
[root@controller ~]# rpm -ivh openssl-libs-1.0.2k-21.el7_9.x86_64.rpm --force
warning: openssl-libs-1.0.2k-21.el7_9.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:openssl-libs-1:1.0.2k-21.el7_9   ################################# [100%]

然后再重新安装

3、修改ssl配置文件
修改/etc/httpd/conf.d/ssl.conf配置文件,具体修改内容如下:

#SSLProtocol all -SSLv2 -SSLv3    //找到该行,并注释
SSLProtocol all -SSLv2            //添加该行  

4、开启SSL
配置/etc/openstack-dashboard/local_settings 配置文件,修改参数如下所示:

CSRF_COOKIE_SECURE = True             //将该行的注释取消
SESSION_COOKIE_SECURE = True          //将该行的注释取消
USE_SSL = True                           //添加该行
SESSION_COOKIE_HTTPONLY = True       //添加该行

5、重启服务
在修改完上述的配置文件后,重启httpd服务和缓存服务,命令如下:

[root@controller ~]# service httpd restart
Redirecting to /bin/systemctl restart httpd.service
[root@controller ~]# service memcached restart
Redirecting to /bin/systemctl restart memcached.service

最后浏览器访问dashboard
输入IP地址进行访问:https://172.33.16.10/dashboard,通过https访问dashboard管理平台,如下图所示:
在这里插入图片描述
到这里,将OpenStack的Dashboard访问策略提升至https成功。

以上是关于OpenStack安全策略提升的主要内容,如果未能解决你的问题,请参考以下文章

从虚拟机上可以反向查询openstack管理机器么

VsCode 代码片段-提升研发效率

OpenStack云主机配置VIP

几条jQuery代码片段助力Web开发效率提升

OpenStack平台调度策略优化

Office365混合部署进阶系列教程一:使用SPF+DKIM+DMARC技术提升邮件安全