„src/initserver.sh“ hinzufügen

This commit is contained in:
2022-11-25 12:01:27 +01:00
parent fe257ee010
commit b52e2fc664

71
src/initserver.sh Normal file
View File

@ -0,0 +1,71 @@
#!/bin/bash
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
if [[ ! -f /opt/config || $INIT == 'yes' ]]; then
cat /opt/envvars | grep 'CLD_' > /opt/envs
source /opt/envs
sleep 5s
export turnsecret=$(openssl rand -hex 32)
export janusapikey=$(openssl rand -base64 16)
export hashkey=$(openssl rand -hex 16)
export blockkey=$(openssl rand -hex 16)
export ncsharedkey=$(openssl rand -hex 16)
echo "NextCloudHPBSecret: $ncsharedkey" > /root/keys.txt
echo "TurnSecret: $turnsecret" >> /root/keys.txt
echo "VARS that must be passed through env: CLOUDURL - COTURNLISTENERIP - COTURNMINPORT - COTURNMAXPORT - REALM - COTURNCERTSPASS - JANUSRTPPORTRANGE - ICEINTERFACE - INIT"
cd /opt
openssl req -new -newkey rsa:4096 -nodes -keyout turn_server_pkey.pem -out turn_server.csr -subj "/C=EG/ST=Cairo/L=Heliopolis/O=DevOps/OU=Awesomeness/CN=$CLD_REALM/emailAddress=myname@malaty.net"
openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 -subj "/C=EG/ST=Cairo/L=Heliopolis/O=DevOps/OU=Awesomeness/CN=$CLD_REALM/emailAddress=myname@malaty.net" -keyout turn_server_pkey.pem -out turn_server_cert.pem
openssl dhparam -dsaparam -out dhp.pem 4096
SIGNALINGCONF='/etc/signaling/server.conf'
sed -i "s|<janusapikey>|${janusapikey}|g" $SIGNALINGCONF
sed -i "s|<hashkey>|${hashkey}|g" $SIGNALINGCONF
sed -i "s|<blockkey>|${blockkey}|g" $SIGNALINGCONF
sed -i "s|<url>|${CLD_CLOUDURL}|g" $SIGNALINGCONF
sed -i "s|<ncsharedsecret>|${ncsharedkey}|g" $SIGNALINGCONF
sed -i "s|<turnsecret>|${turnsecret}|g" $SIGNALINGCONF
sed -i "s|<coturnlistenerip>|${CLD_COTURNLISTENERIP}|g" $SIGNALINGCONF
COTURNCONF='/etc/turnserver.conf'
sed -i "s|<coturnlistenerip>|${CLD_COTURNLISTENERIP}|g" $COTURNCONF
sed -i "s|<COTURNMINPORT>|${CLD_COTURNMINPORT}|g" $COTURNCONF
sed -i "s|<COTURNMAXPORT>|${CLD_COTURNMAXPORT}|g" $COTURNCONF
sed -i "s|<turnsecret>|${turnsecret}|g" $COTURNCONF
sed -i "s|<REALM>|${CLD_REALM}|g" $COTURNCONF
sed -i "s|<COTURNCERTSPASS>|${CLD_COTURNCERTSPASS}|g" $COTURNCONF
mkdir -p /var/log/coturn
mkdir -p /var/lib/turn/
chown -R turnserver: /var/lib/turn/
chown -R turnserver:turnserver /var/log/coturn
chown turnserver: /opt/turn_server_pkey.pem
JANUSCONF='/etc/janus/janus.jcfg'
sed -i "s|<JANUSRTPPORTRANGE>|${CLD_JANUSRTPPORTRANGE}|g" $JANUSCONF
sed -i "s|<ICEINTERFACE>|${CLD_ICEINTERFACE}|g" $JANUSCONF
sed -i "s|<janusapikey>|${janusapikey}|g" $JANUSCONF
sed -i "s|<coturnlistenerip>|${CLD_COTURNLISTENERIP}|g" $JANUSCONF
systemctl restart coturn
systemctl restart janus
systemctl restart signaling
touch /opt/config
fi