55 lines
1.0 KiB
Makefile
55 lines
1.0 KiB
Makefile
|
CERT_DAYS=10000
|
||
|
COMMAND="./server-main.sh"
|
||
|
COUNTRY=LT
|
||
|
DOMAIN=localhost
|
||
|
|
||
|
|
||
|
.PHONY: default
|
||
|
default: server
|
||
|
|
||
|
|
||
|
### Server ---------------------------------------------------------------------
|
||
|
|
||
|
.PHONY: server
|
||
|
server: socat-server
|
||
|
|
||
|
|
||
|
.PHONY: ncat-server
|
||
|
ncat-server: certs
|
||
|
ncat -v \
|
||
|
--listen --keep-open -p 1965 \
|
||
|
--ssl --ssl-cert "certs/${DOMAIN}.crt" --ssl-key "certs/${DOMAIN}.key" \
|
||
|
-c "${COMMAND}"
|
||
|
|
||
|
|
||
|
.PHONY: socat-server
|
||
|
socat-server: certs
|
||
|
socat -d \
|
||
|
OPENSSL-LISTEN:1965,cert=certs/${DOMAIN}.crt,key=certs/${DOMAIN}.key,verify=0,reuseaddr,fork \
|
||
|
EXEC:${COMMAND}
|
||
|
|
||
|
|
||
|
### Certificates ---------------------------------------------------------------
|
||
|
|
||
|
.PHONY: show-cert
|
||
|
show-cert:
|
||
|
openssl x509 -in "certs/${DOMAIN}.crt" -text
|
||
|
|
||
|
|
||
|
.PHONY: clean-certs
|
||
|
clean-certs:
|
||
|
rm "certs/${DOMAIN}"*
|
||
|
|
||
|
|
||
|
.PHONY: certs
|
||
|
certs: \
|
||
|
certs/${DOMAIN}.crt
|
||
|
|
||
|
|
||
|
certs/${DOMAIN}.crt: certs/${DOMAIN}.key
|
||
|
echo -en ".\n.\n.\n.\n.\n${DOMAIN}\n.\n" | \
|
||
|
openssl req -x509 -key "certs/${DOMAIN}.key" -out "$@" -days ${CERT_DAYS} -nodes
|
||
|
|
||
|
certs/${DOMAIN}.key:
|
||
|
openssl genrsa -out "$@" 4096
|