How to enable HTTPS on Openstack Dashboard

--

First Install mod_ssl on Openstack Controller node

[root@ems-sv4-controller ~]# sudo yum install mod_ssl

Modify the following configuration file to enable HTTPS

[root@ems-sv4-controller conf.d]# cat 15-horizon_vhost.conf
# ************************************
# Vhost template in module puppetlabs-apache
# Managed by Puppet
# ************************************
#
# Configure http redirect
<VirtualHost *:80>
ServerName ems-sv4-controller.es.equinix.com
ServerAlias 10.195.231.11
RedirectMatch permanent (.*) https://ems-sv4-controller.es.equinix.com
#RewriteEngine On
#RewriteCond %{HTTPS} off
#RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost># change port to 443
<VirtualHost *:443>
ServerName ems-sv4-controller.es.equinix.com
## Vhost docroot
DocumentRoot “/var/www/”
## Alias declarations for resources outside the DocumentRoot
Alias /dashboard/static “/usr/share/openstack-dashboard/static”
## Directories, there should at least be a declaration for /var/www/<Directory “/var/www/”>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Require all granted
</Directory>
## Logging
ErrorLog “/var/log/httpd/horizon_error.log”
ServerSignature Off
CustomLog “/var/log/httpd/horizon_access.log” combined
## RedirectMatch rules
RedirectMatch permanent ^/$ /dashboard
## Server aliases
ServerAlias 10.195.231.11
ServerAlias ems-sv4-controller.es.equinix.com
ServerAlias localhost
# add SSL module and certification path
SSLEngine on
SSLCertificateFile “/etc/pki/tls/certs/openstack.crt”
SSLCertificateKeyFile “/etc/pki/tls/private/openstack.key”
SSLCertificateChainFile “/etc/pki/tls/certs/openstack_bundle.crt”
## WSGI configuration
WSGIApplicationGroup %{GLOBAL}
WSGIDaemonProcess apache display-name=horizon group=apache processes=12 threads=1 user=apache
WSGIProcessGroup apache
WSGIScriptAlias /dashboard “/usr/share/openstack-dashboard/openstack_dashboard/wsgi.py”
</VirtualHost>

Change keystone trusted_dashboard URL to https

[root@ems-sv4-controller conf.d]# vim /etc/keystone/keystone.conf
trusted_dashboard =https://ems-sv4-controller.es.equinix.com/dashboard/auth/websso/

Add iptables

[root@ems-sv4-controller conf.d]# iptables -I INPUT -p tcp -m multiport --dports 443 -m comment --comment "001 horizon 443 incoming" -j ACCEPT

Restart httpd service

[root@ems-sv4-controller conf.d]# systemctl restart httpd

--

--

No responses yet