tried to fix again

master
Keith Irwin 2022-09-11 18:48:31 -06:00
parent 47f96088ab
commit f9d2f31385
Signed by: ki9
GPG Key ID: DF773B3F4A88DA86
1 changed files with 8 additions and 10 deletions

View File

@ -109,11 +109,9 @@ address="${ipv4}/${IPV4_NET##*/},${ipv6}/${IPV6_NET##*/}"
for_server_do() { for_server_do() {
[[ ${server_hostname:0:1} = \# ]] && return # Ignore comments [[ ${server_hostname:0:1} = \# ]] && return # Ignore comments
server_hostname="${1}"; server_ipv4="${2}"; server_ipv6="${3}"; server_pubkey="${4}" server_hostname="${1}"; server_ipv4="${2}"; server_ipv6="${3}"; server_pubkey="${4}"
server_endpoint="${5}"; server_admin="${6}"; server_secret="${7}"; server_blocks="${8}" server_endpoint="${5}"; server_admin="${6}"; server_secret="${7}"
server_psk="$(/usr/bin/wg genpsk)" server_psk="$(/usr/bin/wg genpsk)"
# Print next line to stdout so it can be captured as the new global server_blocks server_blocks="${server_blocks}\n[Peer] # ${server_hostname}.${TLD}\nPublicKey=${server_pubkey}\nPresharedKey=${server_psk}\nAllowedIPs=${server_ipv4}/32,${server_ipv6}/128\nEndpoint=${server_endpoint}\n"
printf '%s\n[Peer] # %s.%s\nPublicKey=%s\nPresharedKey=%s\nAllowedIPs=%s\nEndpoint=%s\n' \
"${server_blocks}" "${server_hostname}" "${TLD}" "${server_pubkey}" "${server_psk}" "${server_ipv4}/32,${server_ipv6}/128" "${server_endpoint}"
if [ "${server_hostname}" == "${LOCAL_SERVER}" ]; then if [ "${server_hostname}" == "${LOCAL_SERVER}" ]; then
# Add new user to local server # Add new user to local server
if "${LIB_DIR}/wg_peer_add" "${pubkey}" "${server_psk}" "${ipv4}/32,${ipv6}/128"; then if "${LIB_DIR}/wg_peer_add" "${pubkey}" "${server_psk}" "${ipv4}/32,${ipv6}/128"; then
@ -149,9 +147,9 @@ fi
# Do the wireguard and tell the user # Do the wireguard and tell the user
server_blocks='' server_blocks=''
{ while IFS=$'\t' read -r server_hostname server_ipv4 server_ipv6 server_pubkey server_endpoint server_admin server_secret while IFS=$'\t' read -r server_hostname server_ipv4 server_ipv6 server_pubkey server_endpoint server_admin server_secret
do server_blocks="$(for_server_do "${server_hostname}" "${server_ipv4}" "${server_ipv6}" "${server_pubkey}" "${server_endpoint}" "${server_admin}" "${server_secret}" "${server_blocks}")" \ do for_server_do "${server_hostname}" "${server_ipv4}" "${server_ipv6}" "${server_pubkey}" "${server_endpoint}" "${server_admin}" "${server_secret}" &
& [ $( jobs | wc -l ) -ge $( nproc ) ] && wait [ $( jobs | wc -l ) -ge $( nproc ) ] && wait
done <"${SERVERS_FILE}" } && \ done <"${SERVERS_FILE}"; wait
wg_config="[Interface] # ${hostname}.${username}.${TLD}\nPrivateKey=${privkey:?}\nAddress=${address:?}\n${WG_DNS}\n${server_blocks:?}" \ wg_config="[Interface] # ${hostname}.${username}.${TLD}\nPrivateKey=${privkey:?}\nAddress=${address:?}\n${WG_DNS}\n${server_blocks:?}"
&& <<<"${wg_config}" "${LIB_DIR}/http_res" 202 <<<"${wg_config}" "${LIB_DIR}/http_res" 202