aboutsummaryrefslogtreecommitdiffstats
path: root/certs/Makefile
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2010-12-03 16:40:42 +0100
committerKim Alvefur <zash@zash.se>2010-12-03 16:40:42 +0100
commita7033c663994f5fb8a57ce05e5c3df250b5237d9 (patch)
tree3da4196806f86291cc39e7e992a8a44a636f0803 /certs/Makefile
parent44b11d97304cd941ca805cfb19086083f11d4070 (diff)
downloadprosody-a7033c663994f5fb8a57ce05e5c3df250b5237d9.tar.gz
prosody-a7033c663994f5fb8a57ce05e5c3df250b5237d9.zip
certs: Add a default OpenSSL configuration file, and a Makefile.
Diffstat (limited to 'certs/Makefile')
-rw-r--r--certs/Makefile28
1 files changed, 28 insertions, 0 deletions
diff --git a/certs/Makefile b/certs/Makefile
new file mode 100644
index 00000000..17b9dfa9
--- /dev/null
+++ b/certs/Makefile
@@ -0,0 +1,28 @@
+.DEFAULT: localhost.cert
+keysize=2048
+
+# How to:
+# First, `make yourhost.cnf` which creates a openssl config file.
+# Then edit this file and fill in the details you want it to have,
+# and add or change hosts and components it should cover.
+# Then `make yourhost.key` to create your private key, you can
+# include keysize=number to change the size of the key.
+# Then you can either `make yourhost.csr` to generate a certificate
+# signing request that you can submit to a CA, or `make yourhost.cert`
+# to generate a self signed certificate.
+
+# To request a cert
+%.csr: %.cnf %.key
+ openssl req -new -key $(lastword $^) -out $@ -utf8 -config $(firstword $^)
+
+# Self signed
+%.cert: %.cnf %.key
+ openssl req -new -x509 -nodes -key $(lastword $^) -days 365 \
+ -sha1 -out $@ -utf8 -config $(firstword $^)
+
+%.cnf:
+ sed 's,example\.com,$*,g' openssl.cnf > $@
+
+%.key:
+ openssl genrsa $(keysize) > $@
+ @chmod 400 -c $@