gebase/Makefile

63 lines
1.2 KiB
Makefile

CERT_DAYS=10000
DOMAIN=localhost
SERVE_REQUEST="./serve-request.sh"
.PHONY: default
default: server
### Server ---------------------------------------------------------------------
.PHONY: server
server: ncat-server
.PHONY: ncat-server
ncat-server: certs
ncat \
--listen --keep-open -p 1965 \
--ssl --ssl-cert "certs/${DOMAIN}.crt" --ssl-key "certs/${DOMAIN}.key" \
--exec ${SERVE_REQUEST}
.PHONY: socat-server
socat-server: certs
socat -d \
OPENSSL-LISTEN:1965,cert=certs/${DOMAIN}.crt,key=certs/${DOMAIN}.key,verify=0,reuseaddr,fork \
EXEC:${SERVE_REQUEST}
.PHONY: stunnel-server
stunnel-server: certs
stunnel stunnel.conf
### Certificates ---------------------------------------------------------------
.PHONY: show-cert
show-cert:
openssl x509 -in "certs/${DOMAIN}.crt" -text
.PHONY: clean-certs
clean-certs:
rm -f "certs/${DOMAIN}"*
.PHONY: certs
certs: \
certs/${DOMAIN}.crt
certs/${DOMAIN}.crt: certs/${DOMAIN}.key
mkdir -p certs
echo -en ".\n.\n.\n.\n.\n.\n${DOMAIN}\n.\n" \
| openssl req -x509 -nodes \
-days ${CERT_DAYS} \
-key "certs/${DOMAIN}.key" \
-out "certs/${DOMAIN}.crt"
certs/${DOMAIN}.key:
mkdir -p certs
openssl genrsa -out "$@" 4096