From ad6d9ebd7043f6a9f5bbce64f5f750b30873458a Mon Sep 17 00:00:00 2001 From: Matt Rude Date: Wed, 30 Jan 2019 15:16:05 -0600 Subject: New Update Proccess --- _config.yml | 92 ++++++++++++++++--------------- site-updater.sh | 35 ++++++++++++ update-site-certs.sh | 150 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 230 insertions(+), 47 deletions(-) create mode 100755 site-updater.sh create mode 100755 update-site-certs.sh diff --git a/_config.yml b/_config.yml index 16bb4ad..801c539 100644 --- a/_config.yml +++ b/_config.yml @@ -1,61 +1,53 @@ ########################################################################### # XMPP Site Configuration -title: soderparr.com Communication Service -email: matt@mattrude.com + +title: "example.com Communication Service" description: "" -url: "https://im.soderparr.com" -name: "soderparr.com" -baseurl: "soderparr.com" -destination: "/var/www/im.soderparr.com" -ejabberd-version: "18.12.78" -ejabberd-gitversion: "23e5b3756c39df6028fdb38e57712016ba540a14" -ejabberd-upload-days: "1825" -ejabberd-upload-fsize: "1 GB" +url: "https://im.example.com" +name: "example.com" +baseurl: "im.example.com" +destination: "/var/www/im.example.com" owner-name: "Matt Rude" owner-pgpkey: "0xc4909ee495b0761f" -owner-url: "https://mattrude.com/" -owner-xmpp: "matt@mattrude.com" -#owner-email: "matt@mattrude.com" +owner-url: "https://example.com/" +owner-xmpp: "matt@example.com" owner-twitter: "mdrude" owner-github: "mattrude" -xmpp-url: "soderparr.com" # The domain name of the XMPP service -xmpp-host: "im.soderparr.com" -xmpp-conference-url: "conference.soderparr.com" # The domain name of the conference XMPP service -xmpp-proxy-url: "proxy.soderparr.com" # XEP-0065: SOCKS5 Bytestreams (Proxy) -xmpp-upload-url: "upload.soderparr.com" # XEP-0065: SOCKS5 Bytestreams (Proxy) -user-guide: 0 +xmpp-url: "example.com" # The XMPP domain url +xmpp-host: "im.example.com" # The hostname of the server +xmpp-conference-url: "conference.example.com" # Multi-User Chat xep-0045 +xmpp-proxy-url: "proxy.example.com" # XEP-0065: SOCKS5 Bytestreams (Proxy) +xmpp-upload-url: "upload.example.com" # XEP-0065: SOCKS5 Bytestreams (Proxy) + server-features: 1 +user-guide: 0 -xep-0163: 1 -xep-0237: 0 -xep-0280: 1 -xep-0191: 1 -xep-0045: 1 -xep-0198: 1 -xep-0313: 1 -xep-0352: 1 -xep-0363: 1 -xep-0065: 1 -xep-0357: 1 +########################################################################### +# The below values should auto update + +ejabberd-version: +ejabberd-gitversion: +ejabberd-upload-days: +ejabberd-upload-fsize: fingerprints: 1 -fingerprint-expires: "Apr 26 06:00:14 2019 GMT" -fingerprint-im-expires: "Apr 27 11:07:20 2019 GMT" -fingerprint-conference-expires: "Apr 27 11:07:20 2019 GMT" -fingerprint-proxy-expires: "Apr 27 11:07:20 2019 GMT" -fingerprint-upload-expires: "Apr 27 11:07:20 2019 GMT" -fingerprint-sha1: "5D:2D:B4:E8:75:99:B4:CB:A7:54:39:CE:05:D3:22:13:16:D0:AC:87" -fingerprint-sha256: "21:79:97:B9:AA:8B:7B:F4:9C:58:2E:C7:42:37:70:C9:17:62:27:5E:79:61:F0:10:F3:CE:CA:6C:46:4D:D6:EA" -fingerprint-im-sha1: "00:28:05:9F:D6:19:BB:21:E4:AB:E7:6B:52:33:5A:EF:56:F4:92:CE" -fingerprint-im-sha256: "3B:A4:BB:68:45:D1:6C:21:AA:23:F6:7C:63:73:14:78:05:B8:71:25:64:F2:89:15:A5:15:00:FA:36:EA:36:E0" -fingerprint-conference-sha1: "00:28:05:9F:D6:19:BB:21:E4:AB:E7:6B:52:33:5A:EF:56:F4:92:CE" -fingerprint-conference-sha256: "3B:A4:BB:68:45:D1:6C:21:AA:23:F6:7C:63:73:14:78:05:B8:71:25:64:F2:89:15:A5:15:00:FA:36:EA:36:E0" -fingerprint-proxy-sha1: "00:28:05:9F:D6:19:BB:21:E4:AB:E7:6B:52:33:5A:EF:56:F4:92:CE" -fingerprint-proxy-sha256: "3B:A4:BB:68:45:D1:6C:21:AA:23:F6:7C:63:73:14:78:05:B8:71:25:64:F2:89:15:A5:15:00:FA:36:EA:36:E0" -fingerprint-upload-sha1: "00:28:05:9F:D6:19:BB:21:E4:AB:E7:6B:52:33:5A:EF:56:F4:92:CE" -fingerprint-upload-sha256: "3B:A4:BB:68:45:D1:6C:21:AA:23:F6:7C:63:73:14:78:05:B8:71:25:64:F2:89:15:A5:15:00:FA:36:EA:36:E0" +fingerprint-expires: +fingerprint-im-expires: +fingerprint-conference-expires: +fingerprint-proxy-expires: +fingerprint-upload-expires: +fingerprint-sha1: +fingerprint-sha256: +fingerprint-im-sha1: +fingerprint-im-sha256: +fingerprint-conference-sha1: +fingerprint-conference-sha256: +fingerprint-proxy-sha1: +fingerprint-proxy-sha256: +fingerprint-upload-sha1: +fingerprint-upload-sha256: # Analytics settings #google_analytics_id: UA-9532791-9 @@ -66,18 +58,24 @@ permalink: pretty highlighter: rouge date: YYYY-MM-DD HH:MM -include: [".well-known"] +include: +- .well-known/host-meta + exclude: - README.md - CONTRIBUTING.md - LICENSE +- Gemfile +- Gemfile.lock - css/syntax.less - css/site.less - css/small.less +- site-updater.sh +- update-site-certs.sh plugins: - jekyll-sitemap -#- jekyll-press + #- jekyll-press jekyll-press: exclude: 'robots.txt, contact.txt, contact-ecc.txt' # Exclude files from processing - file name, glob pattern or array of file names and glob patterns diff --git a/site-updater.sh b/site-updater.sh new file mode 100755 index 0000000..d5c3c47 --- /dev/null +++ b/site-updater.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +DIR="/var/src/xmpp-site/sites/lite/" +VERSION=`ejabberdctl status |tail -1 |awk '{ print $2 }'` +GITVERSION=`git --git-dir=/var/src/ejabberd/.git log |head -1 |awk '{print $2}'` +UPLOADDAYS=`grep -A1 mod_http_upload_quota /etc/ejabberd/ejabberd.yml |grep max_days |awk '{ print $2 }'` +UPLOADFSIZ=`grep -A8 "mod_http_upload:$" /etc/ejabberd/ejabberd.yml |grep max_size |awk '{ print $2 }' |awk '{ byte =$1 /1024/1024/1024; print byte " GB" }'` +DOMAINS=`sed -n -e '/^hosts:/,/^##/ p' /etc/ejabberd/ejabberd.yml |grep "^ -" |awk '{ print $2 }' |sed 's/"//g'` + +for DOMAIN in ${DOMAINS} +do + cd ${DIR} + rm -f current-config.yml + if [ "${DOMAIN}" != "mattrude.com" ]; then + sed "s/mattrude.com/${DOMAIN}/g" _config.yml |sed "s/matt@${DOMAIN}/matt@mattrude.com/g" > current-config.yml + else + cp _config.yml current-config.yml + fi + sed -i "s/^ejabberd-version.*/ejabberd-version: \"${VERSION}\"/g" current-config.yml + sed -i "s/^ejabberd-gitversion.*/ejabberd-gitversion: \"${GITVERSION}\"/g" current-config.yml + sed -i "s/^ejabberd-upload-days.*/ejabberd-upload-days: \"${UPLOADDAYS}\"/g" current-config.yml + sed -i "s/^ejabberd-upload-fsize.*/ejabberd-upload-fsize: \"${UPLOADFSIZ}\"/g" current-config.yml + if [ -x ${DIR}/update-site-certs.sh ]; then + ${DIR}/update-site-certs.sh ${DOMAIN} + else + sed -i '/^fingerprint/d' current-config.yml + fi + cd ${DIR} && \ + rm -rf /var/www/im.${DOMAIN} && \ + bundle exec jekyll build -c current-config.yml -q + chown -R www-data:www-data /var/www/im.${DOMAIN} + rm -rf /var/www/im.${DOMAIN}/files +done + +if [ -x /etc/ejabberd/bin/update-tlsa.sh ]; then /etc/ejabberd/bin/update-tlsa.sh; fi diff --git a/update-site-certs.sh b/update-site-certs.sh new file mode 100755 index 0000000..5d24404 --- /dev/null +++ b/update-site-certs.sh @@ -0,0 +1,150 @@ +#!/bin/bash + +cd /var/src/xmpp-site/sites/lite/ +CONFIG="current-config.yml" +DOMAIN="$1" +#for DOMAIN in mattrude.com soderparr.com therudes.com +#do + ### + ### The Primary Cert Tests + ### + DOMAINFL="im.${DOMAIN}" + if [ -f /etc/ejabberd/certs/$DOMAIN/fullchain.pem ]; then + if [ `openssl x509 -noout -text -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |grep "DNS:$DOMAIN" |wc -l` -gt 0 ]; then + EXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-expires: "/g' |sed 's/$/"/g'` + SHA1=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-sha1: "/g' |sed 's/$/"/g'` + SHA256=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-sha256: "/g' |sed 's/$/"/g'` + else + EXPIRES='fingerprint-expires: "No Key Found"' + SHA1='fingerprint-sha1: "No Key Found"' + SHA256='fingerprint-sha256: "No Key Found"' + fi + else + if [ -f /etc/ejabberd/certs/${DOMAIN}/fullchain.pem ]; then + if [ `openssl x509 -noout -text -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |grep "DNS:$DOMAIN" |wc -l` -gt 0 ]; then + EXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-expires: "/g' |sed 's/$/"/g'` + SHA1=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-sha1: "/g' |sed 's/$/"/g'` + SHA256=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/${DOMAIN}/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-sha256: "/g' |sed 's/$/"/g'` + else + EXPIRES='fingerprint-expires: "No Key Found"' + SHA1='fingerprint-sha1: "No Key Found"' + SHA256='fingerprint-sha256: "No Key Found"' + fi + fi + fi + sed -i "/fingerprint-expires/c$EXPIRES" ${CONFIG} + sed -i "/fingerprint-sha1/c$SHA1" ${CONFIG} + sed -i "/fingerprint-sha256/c$SHA256" ${CONFIG} + + ### + ### The IM Cert Tests + ### + if [ -f /etc/letsencrypt/live/im.$DOMAIN/fullchain.pem ]; then + IMEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/im.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-im-expires: "/g' |sed 's/$/"/g'` + SHA1IM=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/im.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-im-sha1: "/g' |sed 's/$/"/g'` + SHA256IM=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/im.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-im-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/letsencrypt/live/$DOMAINFL/fullchain.pem ]; then + IMEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-im-expires: "/g' |sed 's/$/"/g'` + SHA1IM=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-im-sha1: "/g' |sed 's/$/"/g'` + SHA256IM=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-im-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem ]; then + IMEXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-im-expires: "/g' |sed 's/$/"/g'` + SHA1IM=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-im-sha1: "/g' |sed 's/$/"/g'` + SHA256IM=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-im-sha256: "/g' |sed 's/$/"/g'` + else + IMEXPIRES='fingerprint-im-expires: "No Key Found"' + SHA1IM='fingerprint-im-sha1: "No Key Found"' + SHA256IM='fingerprint-im-sha256: "No Key Found"' + fi + fi + fi + sed -i "/fingerprint-im-expires/c$IMEXPIRES" ${CONFIG} + sed -i "/fingerprint-im-sha1/c$SHA1IM" ${CONFIG} + sed -i "/fingerprint-im-sha256/c$SHA256IM" ${CONFIG} + + ### + ### The Conference Cert Tests + ### + if [ -f /etc/letsencrypt/live/conference.$DOMAIN/fullchain.pem ]; then + CONFERENCEEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/conference.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-conference-expires: "/g' |sed 's/$/"/g'` + SHA1CONFERENCE=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/conference.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-conference-sha1: "/g' |sed 's/$/"/g'` + SHA256CONFERENCE=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/conference.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-conference-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/letsencrypt/live/$DOMAINFL/fullchain.pem ]; then + CONFERENCEEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-conference-expires: "/g' |sed 's/$/"/g'` + SHA1CONFERENCE=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-conference-sha1: "/g' |sed 's/$/"/g'` + SHA256CONFERENCE=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-conference-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem ]; then + CONFERENCEEXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-conference-expires: "/g' |sed 's/$/"/g'` + SHA1CONFERENCE=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-conference-sha1: "/g' |sed 's/$/"/g'` + SHA256CONFERENCE=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-conference-sha256: "/g' |sed 's/$/"/g'` + else + CONFERENCEEXPIRES='fingerprint-conference-expires: "No Key Found"' + SHA1CONFERENCE='fingerprint-conference-sha1: "No Key Found"' + SHA256CONFERENCE='fingerprint-conference-sha256: "No Key Found"' + fi + fi + fi + sed -i "/fingerprint-conference-expires/c$CONFERENCEEXPIRES" ${CONFIG} + sed -i "/fingerprint-conference-sha1/c$SHA1CONFERENCE" ${CONFIG} + sed -i "/fingerprint-conference-sha256/c$SHA256CONFERENCE" ${CONFIG} + + ### + ### The Proxy Cert Tests + ### + if [ -f /etc/letsencrypt/live/proxy.$DOMAIN/fullchain.pem ]; then + PROXYEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/proxy.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-proxy-expires: "/g' |sed 's/$/"/g'` + SHA1PROXY=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/proxy.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-proxy-sha1: "/g' |sed 's/$/"/g'` + SHA256PROXY=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/proxy.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-proxy-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/letsencrypt/live/im.${DOMAIN}/fullchain.pem ]; then + PROXYEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/im.${DOMAIN}/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-proxy-expires: "/g' |sed 's/$/"/g'` + SHA1PROXY=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/im.${DOMAIN}/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-proxy-sha1: "/g' |sed 's/$/"/g'` + SHA256PROXY=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/im.${DOMAIN}/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-proxy-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem ]; then + PROXYEXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-proxy-expires: "/g' |sed 's/$/"/g'` + SHA1PROXY=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-proxy-sha1: "/g' |sed 's/$/"/g'` + SHA256PROXY=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-proxy-sha256: "/g' |sed 's/$/"/g'` + else + PROXYEXPIRES='fingerprint-proxy-expires: "No Key Found"' + SHA1PROXY='fingerprint-proxy-sha1: "No Key Found"' + SHA256PROXY='fingerprint-proxy-sha256: "No Key Found"' + fi + fi + fi + sed -i "/fingerprint-proxy-expires/c$PROXYEXPIRES" ${CONFIG} + sed -i "/fingerprint-proxy-sha1/c$SHA1PROXY" ${CONFIG} + sed -i "/fingerprint-proxy-sha256/c$SHA256PROXY" ${CONFIG} + + ### + ### The Upload Cert Tests + ### + if [ -f /etc/letsencrypt/live/upload.$DOMAIN/fullchain.pem ]; then + UPLOADEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/upload.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-upload-expires: "/g' |sed 's/$/"/g'` + SHA1UPLOAD=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/upload.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-upload-sha1: "/g' |sed 's/$/"/g'` + SHA256UPLOAD=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/upload.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-upload-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/letsencrypt/live/$DOMAINFL/fullchain.pem ]; then + UPLOADEXPIRES=`openssl x509 -noout -text -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-upload-expires: "/g' |sed 's/$/"/g'` + SHA1UPLOAD=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-upload-sha1: "/g' |sed 's/$/"/g'` + SHA256UPLOAD=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/letsencrypt/live/$DOMAINFL/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-upload-sha256: "/g' |sed 's/$/"/g'` + else + if [ -f /etc/ejabberd/certs/im.${DOMAIN}/fullchain.pem ]; then + UPLOADEXPIRES=`openssl x509 -noout -text -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |grep "Not After : " |sed 's/ Not After : /fingerprint-upload-expires: "/g' |sed 's/$/"/g'` + SHA1UPLOAD=`openssl x509 -noout -fingerprint -sha1 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA1 Fingerprint=/fingerprint-upload-sha1: "/g' |sed 's/$/"/g'` + SHA256UPLOAD=`openssl x509 -noout -fingerprint -sha256 -inform pem -in /etc/ejabberd/certs/im.$DOMAIN/fullchain.pem |sed 's/SHA256 Fingerprint=/fingerprint-upload-sha256: "/g' |sed 's/$/"/g'` + else + UPLOADEXPIRES='fingerprint-upload-expires: "No Key Found"' + SHA1UPLOAD='fingerprint-upload-sha1: "No Key Found"' + SHA256UPLOAD='fingerprint-upload-sha256: "No Key Found"' + fi + fi + fi + sed -i "/fingerprint-upload-expires/c$UPLOADEXPIRES" ${CONFIG} + sed -i "/fingerprint-upload-sha1/c$SHA1UPLOAD" ${CONFIG} + sed -i "/fingerprint-upload-sha256/c$SHA256UPLOAD" ${CONFIG} +#done -- cgit v1.2.3-59-ga6da