Mercurial > hg > thermostat-ng > web-gateway
changeset 202:c0140877e78b
[TLS] Add self-signed certificate.
Reviewed-by: jkang, stooke
Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-July/024125.html
author | Severin Gehwolf <sgehwolf@redhat.com> |
---|---|
date | Mon, 17 Jul 2017 11:37:33 +0200 |
parents | f65dffb9f0f0 |
children | de32338d6dcd |
files | buildfiles/certs/generate_in.txt buildfiles/certs/generate_self_signed_cert.sh distribution/pom.xml distribution/src/cert/thermostat.jks |
diffstat | 4 files changed, 79 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/buildfiles/certs/generate_in.txt Mon Jul 17 11:37:33 2017 +0200 @@ -0,0 +1,10 @@ +changeme +changeme +Thermostat Developer +Red Hat +Red Hat +Raleigh +North Carolina +US +yes +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/buildfiles/certs/generate_self_signed_cert.sh Mon Jul 17 11:37:33 2017 +0200 @@ -0,0 +1,52 @@ +#!/bin/bash +# +# Copyright 2012-2017 Red Hat, Inc. +# +# This file is part of Thermostat. +# +# Thermostat is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published +# by the Free Software Foundation; either version 2, or (at your +# option) any later version. +# +# Thermostat is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with Thermostat; see the file COPYING. If not see +# <http://www.gnu.org/licenses/>. +# +# Linking this code with other modules is making a combined work +# based on this code. Thus, the terms and conditions of the GNU +# General Public License cover the whole combination. +# +# As a special exception, the copyright holders of this code give +# you permission to link this code with independent modules to +# produce an executable, regardless of the license terms of these +# independent modules, and to copy and distribute the resulting +# executable under terms of your choice, provided that you also +# meet, for each linked independent module, the terms and conditions +# of the license of that module. An independent module is a module +# which is not derived from or based on this code. If you modify +# this code, you may extend this exception to your version of the +# library, but you are not obligated to do so. If you do not wish +# to do so, delete this exception statement from your version. +# + +ALIAS="thermostat" +VALIDITY_DAYS="365" +KEYSTORE_FILE=$(echo "$(pwd)/../../distribution/src/cert/thermostat.jks") + +if [ -e ${KEYSTORE_FILE} ]; then + rm ${KEYSTORE_FILE} +fi +echo "Generating self signed cert with alias ${ALIAS} in ${KEYSTORE_FILE} ..." +keytool -genkey -keyalg RSA -alias ${ALIAS} -keystore ${KEYSTORE_FILE} -validity ${VALIDITY_DAYS} -keysize 4096 < generate_in.txt > /dev/null 2>&1 +if [ $? -eq 0 ]; then + echo "Completed successfully." +else + echo "Failed." + exit 1 +fi
--- a/distribution/pom.xml Tue Jul 18 10:36:46 2017 -0400 +++ b/distribution/pom.xml Mon Jul 17 11:37:33 2017 +0200 @@ -144,6 +144,23 @@ </configuration> </execution> <execution> + <!-- Certificate is generated with buildfiles/certs/generate_self_signed_cert.sh --> + <id>copy-cert</id> + <phase>prepare-package</phase> + <goals> + <goal>copy-resources</goal> + </goals> + <configuration> + <outputDirectory>${project.build.directory}/image</outputDirectory> + <resources> + <resource> + <directory>src/cert</directory> + <filtering>false</filtering> + </resource> + </resources> + </configuration> + </execution> + <execution> <id>copy-etc</id> <phase>prepare-package</phase> <goals>