AnrDaemon

Server config generator

Jun 21st, 2017
330
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.78 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. set -e
  4.  
  5. test "$USER"
  6. getent passwd "$USER" | (
  7.   set -e
  8.  
  9.   IFS=: read -r USER _ UID GID _ HOME _
  10.  
  11.   test -d "$HOME"
  12.  
  13.   FPORT=$(( 1 + $UID % 64511 ))
  14.   XPORT=$(( 1024 + $UID % 64511 ))
  15.   XADR1=$(( 1 + ( $UID / 64511 ) % 254 ))
  16.  
  17.   for f in *.tpl; do
  18.     _f="$(basename "$f" .tpl)"
  19.     sed -e "s*@USER@*$USER*g;
  20.      s*@HOME@*$HOME*g;
  21.      s*@UID@*$UID*g;
  22.      s*@FPORT@*$FPORT*g;
  23.      s*@XADR1@*$XADR1*g;
  24.      s*@XPORT@*$XPORT*g;" > "$_f.conf" < "$f"
  25.     if [ "$1" = "-i" ]; then
  26.       case "$_f" in
  27.         apache*|nginx*|php*)
  28.           _t="${_f#*-}"
  29.           if [ "$_t" = "$_f" ]; then
  30.             continue
  31.           fi
  32.           if [ "$_t" ]; then
  33.             mv -b -- "$_f.conf" "$_t.conf"
  34.           fi
  35.           ;;
  36.       esac
  37.     fi
  38.   done
  39. )
Advertisement
Add Comment
Please, Sign In to add comment