]> git.donarmstrong.com Git - bin.git/blobdiff - add_openvpn_host
* fix chmod call
[bin.git] / add_openvpn_host
index fbfd7e96ea9f0260d7199bee3857dd4b00621d1f..adcb633743a6ee1997ab767b6ae1493c940c1e8a 100755 (executable)
@@ -26,6 +26,8 @@ $1
     
 EOF
 
+ORIGDIR=$(pwd);
+
 (cd $TMPDIR;
     if [ ! -e database ]; then
        touch database database.attr
@@ -38,19 +40,22 @@ EOF
     # characters.
        perl -e 'print unpack(q(H*),pack(q(NN),time,$$)),qq(\n)' > serial
     fi;
-)
-openssl ca -config "$TMPDIR"/config -policy policy_anything -keyfile "${CAKEY}" -cert "${CACERT}" \
-    -out "$TMPDIR"/"${HOST}".cert -outdir "$TMPDIR" -notext -days 9000 -batch -infiles "${HOST}".req; #> /dev/null 2>&1
-(
-    cd "${TMPDIR}"
+    openssl ca -config "$TMPDIR"/config -policy policy_anything -keyfile "${ORIGDIR}"/"${CAKEY}" -cert "${ORIGDIR}"/"${CACERT}" \
+       -out "$TMPDIR"/"${HOST}".cert -outdir "$TMPDIR" -notext -days 9000 -batch -infiles "${HOST}".req; #> /dev/null 2>&1
     chmod a+r "${HOST}".cert
     rm -f "${HOST}".req
-    ln -sf "${HOST}".cert "${CLIENT_CERT}"
-    ln -sf "${HOST}".pem "${CLIENT_KEY}"
+    mv "${HOST}".cert "${CLIENT_CERT}"
+    mv "${HOST}".pem "${CLIENT_KEY}"
 )
-cp "${CLIENT_CONF}" "${TMPDIR}"/;
+
+cp "${CONF}" "${TMPDIR}"/;
+cp "${SERVER_CACERT}" "${TMPDIR}"/;
 
 tar -zcf "${HOST}".tar.gz -C "${TMPDIR}" \
-    "${HOST}".cert "${HOST}".pem "${CLIENT_CERT}" "${CLIENT_CONF}" \
+    "${CLIENT_CERT}" "${CONF}" \
     "${CLIENT_KEY}" "${SERVER_CACERT}"
 rm -rf "${TMPDIR}"
+
+cp ../ccd/__template__ ../ccd/"${HOST}";
+chmod 0644 ../ccd/"${HOST}";
+HOST="${HOST}" perl -pi -e 's/HOSTNAME/$ENV{HOST}/g' ../ccd/"${HOST}";