bbf883
From 3f40655ad0708b74a4a41b13c2b21995b157c14d Mon Sep 17 00:00:00 2001
71fb5d
From: Alexander Scheel <ascheel@redhat.com>
bbf883
Date: Wed, 5 Aug 2020 15:53:45 -0400
71fb5d
Subject: [PATCH] Don't clobber existing files on bootstrap
71fb5d
bbf883
Rebased: v3.0.20
bbf883
71fb5d
Signed-off-by: Alexander Scheel <ascheel@redhat.com>
71fb5d
---
bbf883
 raddb/certs/bootstrap | 35 +++++++++++++++++++----------------
bbf883
 1 file changed, 19 insertions(+), 16 deletions(-)
71fb5d
71fb5d
diff --git a/raddb/certs/bootstrap b/raddb/certs/bootstrap
bbf883
index 0f719aa..336a2bd 100755
71fb5d
--- a/raddb/certs/bootstrap
71fb5d
+++ b/raddb/certs/bootstrap
bbf883
@@ -31,52 +31,55 @@ fi
71fb5d
 #  Don't edit the following text.  Instead, edit the Makefile, and
71fb5d
 #  re-generate these commands.
71fb5d
 #
71fb5d
-if [ ! -f dh ]; then
71fb5d
+if [ ! -e dh ]; then
71fb5d
   openssl dhparam -out dh 2048 || exit 1
71fb5d
-  if [ -e /dev/urandom ] ; then
71fb5d
-	ln -sf /dev/urandom random
71fb5d
-  else
71fb5d
-	date > ./random;
71fb5d
-  fi
71fb5d
+  ln -sf /dev/urandom random
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f server.key ]; then
71fb5d
+if [ ! -e server.key ]; then
71fb5d
   openssl req -new  -out server.csr -keyout server.key -config ./server.cnf || exit 1
bbf883
+  chmod g+r server.key
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f ca.key ]; then
71fb5d
+if [ ! -e ca.key ]; then
71fb5d
   openssl req -new -x509 -keyout ca.key -out ca.pem -days `grep default_days ca.cnf | sed 's/.*=//;s/^ *//'` -config ./ca.cnf || exit 1
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f index.txt ]; then
71fb5d
+if [ ! -e index.txt ]; then
71fb5d
   touch index.txt
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f serial ]; then
71fb5d
+if [ ! -e serial ]; then
71fb5d
   echo '01' > serial
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f server.crt ]; then
71fb5d
+if [ ! -e server.crt ]; then
71fb5d
   openssl ca -batch -keyfile ca.key -cert ca.pem -in server.csr  -key `grep output_password ca.cnf | sed 's/.*=//;s/^ *//'` -out server.crt -extensions xpserver_ext -extfile xpextensions -config ./server.cnf || exit 1
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f server.p12 ]; then
71fb5d
+if [ ! -e server.p12 ]; then
71fb5d
   openssl pkcs12 -export -in server.crt -inkey server.key -out server.p12  -passin pass:`grep output_password server.cnf | sed 's/.*=//;s/^ *//'` -passout pass:`grep output_password server.cnf | sed 's/.*=//;s/^ *//'` || exit 1
bbf883
+  chmod g+r server.p12
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f server.pem ]; then
71fb5d
+if [ ! -e server.pem ]; then
71fb5d
   openssl pkcs12 -in server.p12 -out server.pem -passin pass:`grep output_password server.cnf | sed 's/.*=//;s/^ *//'` -passout pass:`grep output_password server.cnf | sed 's/.*=//;s/^ *//'` || exit 1
71fb5d
   openssl verify -CAfile ca.pem server.pem || exit 1
bbf883
+  chmod g+r server.pem
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f ca.der ]; then
71fb5d
+if [ ! -e ca.der ]; then
71fb5d
   openssl x509 -inform PEM -outform DER -in ca.pem -out ca.der || exit 1
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f client.key ]; then
71fb5d
+if [ ! -e client.key ]; then
71fb5d
   openssl req -new  -out client.csr -keyout client.key -config ./client.cnf
bbf883
+  chmod g+r client.key
71fb5d
 fi
bbf883
 
71fb5d
-if [ ! -f client.crt ]; then
71fb5d
+if [ ! -e client.crt ]; then
71fb5d
   openssl ca -batch -keyfile ca.key -cert ca.pem -in client.csr  -key `grep output_password ca.cnf | sed 's/.*=//;s/^ *//'` -out client.crt -extensions xpclient_ext -extfile xpextensions -config ./client.cnf
71fb5d
 fi
71fb5d
+
71fb5d
+chown root:radiusd dh ca.* client.* server.*
bbf883
+chmod 640 dh ca.* client.* server.*
bbf883
-- 
bbf883
2.26.2
71fb5d