#! /bin/sh # source: daemon.sh # Copyright Gerhard Rieger and contributors (see file CHANGES) # Published under the GNU General Public License V.2, see file COPYING # This script assumes that you create group daemon1 and user daemon1 before. # they need only the right to exist (no login etc.) # Note: this pid file mechanism is not robust! # You will adapt these variables USER=daemon1 GROUP=daemon1 INIF=fwnonsec.domain.org OUTIF=fwsec.domain.org TARGET=w3.intra.domain.org INPORT=80 DSTPORT=80 # INOPTS="fork,setgid=$GROUP,setuid=$USER" OUTOPTS= PIDFILE=/var/run/socat-$INPORT.pid OPTS="-d -d -lm" # notice to stderr, then to syslog SOCAT=/usr/local/bin/socat if [ "$1" = "start" -o -z "$1" ]; then $SOCAT $OPTS tcp-l:$INPORT,bind=$INIF,$INOPTS tcp:$TARGET:$DSTPORT,bind=$OUTIF,$OUTOPTS $PIDFILE elif [ "$1" = "stop" ]; then /bin/kill $(/bin/cat $PIDFILE) fi